strndup: fix improper m4 caching
[gnulib.git] / ChangeLog
1 2009-09-09  Eric Blake  <ebb9@byu.net>
2
3         strndup: fix improper m4 caching
4         * m4/strndup.m4 (gl_FUNC_STRNDUP): Rework to avoid side effects
5         inside AC_CACHE_CHECK.  Use REPLACE_STRNDUP, not HAVE_STRNDUP.
6         (gl_PREREQ_STRNDUP): Delete.
7         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Update default.
8         * modules/string (Makefile.am): Substitute it.
9         * lib/string.in.h (strndup): Modernize prototype.
10
11         getcwd: port to mingw
12         * m4/getcwd.m4 (gl_FUNC_GETCWD): Mingw directories are very
13         different from the POSIX assumptions made throughout the getcwd
14         module; fortunately, the mingw getcwd does not need replacement.
15         (gl_FUNC_GETCWD_NULL): Skip test on mingw.
16         * modules/getcwd-tests: New test.
17         * tests/test-getcwd.c: Likewise.
18
19         link: fix platform bugs
20         * m4/link.m4 (gl_FUNC_LINK): Detect Solaris and Cygwin bugs.
21         * lib/link.c (link): Work around them.  Fix related mingw bug.
22         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add REPLACE_LINK.
23         * modules/unistd (Makefile.am): Substitute it.
24         * lib/unistd.in.h (link): Declare replacement.
25         * doc/posix-functions/link.texi (link): Document this.
26         * modules/link (Depends-on): Add strdup-posix, sys_stat.
27
28         test-link: consolidate into single C program, test more cases
29         * tests/test-link.sh: Delete.
30         * tests/test-link.c: Test more error conditions.  Exposes bugs on
31         at least Cygwin and Solaris.
32         * modules/link-tests (Files): Remove unused file.
33         (Depends-on): Add errno, sys_stat.
34         (Makefile.am): Simplify.
35
36 2009-09-08  Bruno Haible  <bruno@clisp.org>
37
38         Work around towlower, towupper bug on mingw.
39         * lib/wctype.in.h (towlower, towupper) [__MINGW32__]: New replacements.
40         * m4/wctype.m4 (gl_WCTYPE_H): Replace <wctype.h> also on mingw.
41         * doc/posix-functions/towlower.texi: Mention the mingw bug.
42         * doc/posix-functions/towupper.texi: Likewise.
43         Reported by Eric Blake.
44
45 2009-09-08  Jim Meyering  <meyering@redhat.com>
46
47         build: don't try to run autoheader if we don't use it
48         * build-aux/bootstrap: Define AUTOHEADER=true when AC_CONFIG_HEADERS
49         is not used in configure.ac.
50
51 2009-09-08  Eric Blake  <ebb9@byu.net>
52
53         euidaccess: fix compilation error
54         * lib/euidaccess.c (includes): Add <fcntl.h>, for AT_EACCESS.
55
56         rawmemchr: relax license
57         * modules/rawmemchr (License): Derived from glibc, so LGPLv2+ is
58         okay.
59         Reported by Jim Meyering.
60
61         mkfifoat: new module
62         * modules/mkfifoat: New file.
63         * lib/mkfifoat.c: Likewise.
64         * m4/mkfifoat.m4 (gl_FUNC_MKFIFOAT): Likewise.
65         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses.
66         * modules/sys_stat (Makefile.am): Use them.
67         * lib/sys_stat.in.h (mkfifoat, mknodat): Declare them.
68         * MODULES.html.sh (File system functions): Mention module.
69         * doc/posix-functions/mkfifoat.texi (mkfifoat): Likewise.
70         * doc/posix-functions/mknodat.texi (mknodat): Likewise.
71         * modules/mkfifoat-tests: New test.
72         * tests/test-mkfifoat.c: Likewise.
73
74         strchrnul: relax license
75         * modules/strchrnul (License): Derived from glibc, so LGPLv2+ is
76         okay.
77         Reported by Jim Meyering.
78
79 2009-09-08  Eric Blake  <ebb9@byu.net>
80
81         fstatat: fix compilation on Solaris
82         * lib/fstatat.c (includes): Add fcntl.h.
83         Reported by Pádraig Brady.
84
85 2009-09-07  Eric Blake  <ebb9@byu.net>
86
87         rename: modernize replacement
88         * modules/rename (Depends-on): Add stdio.
89         (configure.ac): Declare witness.
90         * m4/rename.m4 (gl_FUNC_RENAME): Ensure dependency order, and let
91         stdio take care of replacement.
92         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
93         * modules/stdio (Makefile.am): Substitute them.
94         * lib/stdio.in.h (rename): Declare replacement.
95         * lib/rename.c (includes): Allow cross-compilation to non-windows
96         machines.
97         * doc/posix-functions/rename.texi (rename): Improve
98         documentation.
99
100         stdio: sort witness names
101         * modules/stdio (Makefile.am): Sort replacements.
102         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
103         * lib/stdio.in.h: Likewise.
104
105         getcwd: minor cleanups
106         * lib/getcwd.c (AT_FDCWD): Delete; rely on <fcntl.h> instead.
107         (is_ENAMETOOLONG): Delete; ENAMETOOLONG is portable.
108
109         openat: provide more convenience names
110         * modules/faccessat (configure.ac): Add C witness.
111         * lib/unistd.in.h (readlinkat): Fix typo.
112         * lib/openat.h (statat, lstatat, accessat, euidaccessat): New
113         convenience wrappers.
114         * top/maint.mk (sc_prohibit_openat_without_use): Allow these
115         wrappers in syntax checks.
116
117 2009-09-06  Eric Blake  <ebb9@byu.net>
118
119         doc: fix comments in recent patches
120         * lib/faccessat.c: Mention correct function.
121         * lib/fchmodat.c: Likewise.
122         * lib/fchownat.c: Likewise.
123         * lib/symlinkat.c: Likewise.
124         * doc/posix-headers/fcntl.texi (fcntl.h): Cygwin 1.7 has AT_*
125         constants.
126
127         faccessat, symlinkat: continue cleanup of previous patch
128         * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Ensure dependency order.
129         * m4/faccessat.m4 (gl_FUNC_FACCESSAT): Likewise.
130         * modules/unistd (Makefile.am): Substitute GNULIB_READLINKAT.
131         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Offer GNULIB_READLINKAT.
132         * modules/symlinkat (configure.ac): Set GNULIB_READLINKAT.
133         * lib/unistd.in.h (readlinkat): Declare if GNULIB_READLINKAT is
134         set.
135
136 2009-09-06  Bruno Haible  <bruno@clisp.org>
137
138         * lib/sys_stat.in.h (fchmodat): Declare if GNULIB_FCHMODAT is set.
139         (fstatat): Declare if GNULIB_FSTATAT is set.
140         (mkdirat): Declare if GNULIB_MKDIRAT is set.
141         * lib/unistd.in.h (fchownat): Declare if GNULIB_FCHOWNAT is set.
142         (unlinkat): Declare if GNULIB_UNLINKAT is set.
143         * modules/fcntl-h (Files): Remove m4/openat.m4.
144         * modules/sys_stat (Files): Remove m4/openat.m4.
145         (Makefile.am): Substitute GNULIB_FCHMODAT, GNULIB_FSTATAT,
146         GNULIB_MKDIRAT instead of GNULIB_OPENAT.
147         * modules/unistd (Files): Remove m4/openat.m4.
148         (Makefile.am): Substitute GNULIB_FCHOWNAT, GNULIB_UNLINKAT instead of
149         GNULIB_OPENAT.
150         * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Initialize GNULIB_OPENAT,
151         HAVE_OPENAT here. Don't require gl_OPENAT_DEFAULTS.
152         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize
153         GNULIB_FCHMODAT, GNULIB_FSTATAT, GNULIB_MKDIRAT, HAVE_FCHMODAT,
154         HAVE_FSTATAT, HAVE_MKDIRAT, REPLACE_FSTATAT here. Don't require
155         gl_OPENAT_DEFAULTS.
156         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_FCHOWNAT,
157         GNULIB_UNLINKAT, HAVE_FCHOWNAT, HAVE_UNLINKAT, REPLACE_FCHOWNAT here.
158         Don't require gl_OPENAT_DEFAULTS.
159         * m4/openat.m4 (gl_FUNC_OPENAT): Require gl_FCNTL_H_DEFAULTS,
160         gl_SYS_STAT_H_DEFAULTS, gl_UNISTD_H_DEFAULTS. Set GNULIB_FCHMODAT,
161         GNULIB_FSTATAT, GNULIB_MKDIRAT, GNULIB_FCHOWNAT, GNULIB_UNLINKAT.
162         (gl_OPENAT_DEFAULTS): Remove macro.
163
164 2009-09-06  Bruno Haible  <bruno@clisp.org>
165
166         * modules/openat (configure.ac): Remove unneeded witness.
167
168 2009-09-06  Bruno Haible  <bruno@clisp.org>
169
170         Set errno to ENOSYS when a function is entirely unsupported.
171         * lib/chown.c (rpl_chown) [!HAVE_CHOWN]: Set errno to ENOSYS instead of
172         EOPNOTSUPP.
173         * lib/lchown.c (lchown) [!HAVE_CHOWN]: Likewise.
174         * modules/chown (Depends-on): Remove errno.
175
176 2009-09-06  Bruno Haible  <bruno@clisp.org>
177
178         * doc/posix-headers/fcntl.texi (AT_*): Mention affected platforms.
179
180 2009-09-06  Bruno Haible  <bruno@clisp.org>
181
182         * lib/sys_stat.in.h: Fix preprocessor command indentation.
183
184 2009-09-06  Ben Pfaff  <blp@gnu.org>
185             Bruno Haible  <bruno@clisp.org>
186
187         Work around a glibc bug in strtok_r.
188         * lib/string.in.h (strtok_r): Replace if REPLACE_STRTOK_R is set.
189         Undefine if UNDEFINE_STRTOK_R is set.
190         * lib/strtok_r.c (strtok_r, __strtok_r) [!_LIBC]: Don't undefine.
191         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
192         REPLACE_STRTOK_R and UNDEFINE_STRTOK_R.
193         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Check against the glibc bug.
194         * modules/string (Makefile.am): Substitute REPLACE_STRTOK_R,
195         UNDEFINE_STRTOK_R.
196         * doc/posix-functions/strtok_r.texi: Mention the glibc 2.7 bug.
197
198 2009-09-06  Sergey Poznyakoff  <gray@gnu.org.ua>
199
200         exclude: minor fix
201         * lib/exclude.c: Include wctype.h
202
203 2009-09-06  Akim Demaille  <demaille@gostai.com>
204
205         bootstrap: improve error message
206         * build-aux/bootstrap (find_tool): Upon failure, report the list
207         of candidates.
208         Honor the initial value of the envvar.
209
210 2009-09-05  Eric Blake  <ebb9@byu.net>
211
212         symlinkat: new module
213         * modules/symlinkat: New file.
214         * lib/symlinkat.c: Likewise.
215         * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Likewise.
216         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witnesses.
217         * modules/unistd (Makefile.am): Use them.
218         * lib/unistd.in.h (symlinkat, readlinkat): Declare them.
219         (faccessat) [GNULIB_POSIXCHECK]: Fix typo.
220         * lib/at-func.c (FUNC_RESULT): New macro, defaulting to int.
221         * MODULES.html.sh (File system functions): Mention module.
222         * doc/posix-functions/symlinkat.texi (symlinkat): Likewise.
223         * doc/posix-functions/readlinkat.texi (readlinkat): Likewise.
224         * modules/symlinkat-tests: New test.
225         * tests/test-symlinkat.c: Likewise.
226
227         test-openat-safer: add more checks
228         * tests/test-openat-safer.c (main): Check more code paths.
229
230 2009-09-05  Jim Meyering  <meyering@redhat.com>
231
232         syntax-check: detect unnecessary inclusion of openat.h
233         * top/maint.mk (sc_prohibit_openat_without_use): New rule.
234
235 2009-09-05  Bruno Haible  <bruno@clisp.org>
236
237         Support towlower, towupper.
238         * doc/posix-functions/towlower.texi: Mention module wctype.
239         * doc/posix-functions/towupper.texi: Likewise.
240         * lib/wctype.in.h (towlower, towupper): New functions.
241         * tests/test-wctype.c: Include stdio.h, stdlib.h.
242         (ASSERT): New macro.
243         (e): New variable.
244         (main): Test also towlower, towupper. Test WEOF argument.
245         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
246
247 2009-09-05  Bruno Haible  <bruno@clisp.org>
248
249         Fix conversion behaviour when the input is invalid.
250         * lib/striconveh.c (mem_cd_iconveh_internal): Fix storing of question
251         mark occurring in first pass of indirect conversion.
252         * tests/test-striconveh.c (main): Test conversion of invalid ASCII
253         input.
254         Found by clang's static analyzer.
255
256 2009-09-05  Bruno Haible  <bruno@clisp.org>
257
258         * tests/test-striconveh.c (main): Test indirect conversion on platforms
259         where direct conversion is possible.
260
261 2009-09-04  Eric Blake  <ebb9@byu.net>
262
263         openat: fail with ENOENT on empty name
264         * lib/openat-proc.c (openat_proc_name): Special-case the empty
265         buffer.
266
267         link-follow: fix logic bug in prior patch
268         * m4/link-follow.m4 (gl_FUNC_LINK_FOLLOWS_SYMLINK): Fix bug that
269         reversed sense of yes and no in prior patch.  Avoid confusing
270         compilation failure with desired semantics.
271
272         link-follow: accomodate mingw and cross-compilation
273         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Rename...
274         (gl_FUNC_LINK_FOLLOWS_SYMLINK): ...to this.  Change
275         cross-compilation results to -1, to make linkat easier to
276         implement when cross-compiling.  Trivially support mingw.
277         * modules/link-follow (configure.ac): Call new name.
278         * NEWS: Mention this.
279
280 2009-09-03  Eric Blake  <ebb9@byu.net>
281
282         faccessat: compile replacement
283         * m4/faccessat.m4 (gl_FUNC_FACCESSAT): Build replacement when
284         needed.
285
286         fts: fix compilation error
287         * lib/fts.c (includes): Re-add "openat.h", for
288         openat_needs_fchdir.
289
290         faccessat: new module
291         * modules/faccessat: New file.
292         * lib/faccessat.c: Likewise.
293         * m4/faccessat.m4 (gl_FUNC_FACCESSAT): Likewise.
294         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
295         * modules/unistd (Makefile.am): Use it.
296         * lib/unistd.in.h (faccessat): Declare it.
297         (F_OK, X_OK, W_OK, R_OK): Provide definitions.
298         * lib/fcntl.in.h (AT_SYMLINK_FOLLOW, AT_EACCESS): Likewise.
299         * MODULES.html.sh (File system functions): Mention it.
300         * doc/posix-functions/faccessat.texi (faccessat): Likewise.
301         * doc/posix-headers/fcntl.texi (fcntl.h): Likewise.
302
303         euidaccess: prefer POSIX over non-standard implementation
304         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Check for faccessat.
305         * lib/euidaccess.c (euidaccess): Use it if available.
306
307         openat: make template easier to use
308         * lib/at-func.c (CALL_FUNC): Allow AT_FUNC_USE_F1_COND and
309         AT_FUNC_F2 to be undefined.
310         (VALIDATE_FLAG): New macro; use it to reject bad flags.
311         (AT_FUNC_USE_F1_COND): Change sense to just flag bit.
312         * lib/fchmodat.c (AT_FUNC_USE_F1_COND): Adjust.
313         * lib/fchownat.c (AT_FUNC_USE_F1_COND): Likewise.
314         * lib/openat.c (AT_FUNC_USE_F1_COND) [fstatat, unlinkat]:
315         Likewise.
316         * lib/mkdirat.c (AT_FUNC_F2, AT_FUNC_USE_F1_COND): Delete.
317         * lib/selinux-at.c (AT_FUNC_F2, AT_FUNC_USE_F1_COND)
318         [getfileconat, lgetfileconat, setfileconat, lsetfileconat]:
319         Likewise.
320
321         openat: declare in POSIX headers
322         * NEWS: Mention this.
323         * modules/openat (configure.ac): Declare witnesses.
324         (Depends-on): Add fcntl-h, sys_stat, unistd.
325         (Include): Mention correct headers.
326         * modules/fcntl-h (Depends-on): Add link-warning.
327         (Files): Add openat.m4.
328         (Makefile.am): Substitute witnesses.
329         * modules/sys_stat (Files, Makefile.am): Likewise.
330         * modules/unistd (Files, Makefile.am): Likewise.
331         * m4/openat.m4 (gl_FUNC_OPENAT, gl_FUNC_FCHOWNAT): Set witnesses.
332         (gl_OPENAT_DEFAULTS): New macro.
333         * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Use it.
334         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Likewise.
335         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Likewise.
336         (SYS_STAT_H): Remove unused variable.
337         * doc/posix-headers/fcntl.texi (fcntl.h): Update content.
338         * lib/fcntl--.h (includes): Remove unneeded header.
339         * lib/openat-safer.c (includes): Likewise.
340         * lib/openat.h (AT_FDCWD, AT_SYMLINK_NOFOLLOW, AT_REMOVEDIR)
341         (openat, fstatat, unlinkat, mkdirat, fchmodat, fchownat): Move to
342         appropriate headers.
343         (__OPENAT_PREFIX): Delete.
344         * lib/fcntl.in.h (openat): Provide declaration.
345         (AT_FDCWD): Fix Solaris bug.
346         (AT_SYMLINK_NOFOLLOW, AT_REMOVEDIR): Provide macros.
347         * lib/sys_stat.in.h (fstatat, mkdirat): Provide declaration.
348         * lib/fchmodat.c (includes):  Adjust to find declaration.
349         * lib/fchownat.c (includes): Likewise.
350         * lib/mkdirat.c (includes): Likewise.
351         * lib/fstatat.c (includes): Likewise.  Ensure original fstatat is
352         still visible.
353
354 2009-09-02  Eric Blake  <ebb9@byu.net>
355
356         errno: use consistently
357         * lib/c-stack.c (ENOTSUP): <errno.h> guarantees a definition.
358         * lib/canonicalize-lgpl.c (ENAMETOOLONG): Likewise.
359         * lib/canonicalize.c (ELOOP): Likewise.
360         * lib/inet_ntop.c (EAFNOSUPPORT): Likewise.
361         * lib/inet_pton.c (EAFNOSUPPORT): Likewise.
362         * lib/lchown.c (EOPNOTSUPP): Likewise.
363         * lib/openat-priv.h (ENOSYS, EOPNOTSUPP): Likewise.
364         * lib/savewd.c (ESTALE): Likewise.
365         * lib/settime.c (ENOSYS): Likewise.
366         * lib/utimens.c (ENOSYS): Likewise.
367         * lib/xgethostname.c (ENAMETOOLONG): Likewise.
368         * lib/chdir-safer.c (ELOOP): Likewise.
369         (chdir_no_follow): Use HAVE_READLINK, not ELOOP, as witness.
370         * modules/c-stack (Depends-on): Add errno.
371         * modules/canonicalize (Depends-on): Likewise.
372         * modules/chdir-safer (Depends-on): Likewise.
373         * modules/fdopendir (Depends-on): Likewise.
374         * modules/inet_ntop (Depends-on): Likewise.
375         * modules/inet_pton (Depends-on): Likewise.
376         * modules/lchown (Depends-on): Likewise.
377         * modules/openat (Depends-on): Likewise.
378         * modules/savewd (Depends-on): Likewise.
379         * modules/settime (Depends-on): Likewise.
380         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Check for readlink.
381
382         fts: avoid leaking fds
383         * modules/fts (Depends-on): Add cloexec.
384         * lib/fts.c (opendirat, diropen, fts_build): Set close-on-exec
385         flag.
386
387         fts: make directory fds more robust
388         * lib/fts.c (O_DIRECTORY): Let <fcntl.h> take care of this.
389         (opendirat): Specify O_DIRECTORY, and add fallbacks for safety.
390
391         backupfile, chdir-long, fts, savedir: make safer
392         * lib/backupfile.c (includes): Use "dirent--.h", since
393         numbered_backup can write to stderr during readdir.
394         * lib/savedir.c (includes): Likewise.
395         * lib/chdir-long.c (includes): Use "fcntl--.h", since openat
396         emulation can write to stderr on failure.
397         * lib/fts.c (includes) [!_LIBC]: Likewise for opendir and openat.
398         * lib/getcwd.c: Document why opendir_safer is unused.
399         * lib/glob.c: Likewise.
400         * lib/scandir.c: Likewise.
401         * lib/openat-proc.c: Likewise, for open_safer.
402         * modules/backupfile (Depends-on): Add dirent-safer.
403         * modules/savedir (Depends-on): Likewise.
404         * modules/fts (Depends-on): Add dirent-safer and openat-safer.
405         * modules/chdir-long (Depends-on): Add openat-safer.
406
407         openat-safer: new module
408         * modules/openat-safer: New file.
409         * lib/openat-safer.c: Likewise.
410         * m4/fcntl-safer.m4 (gl_OPENAT_SAFER): New macro.
411         * lib/fcntl-safer.h (openat_safer): Declare.
412         * lib/fcntl--.h (openat): Override.
413         * MODULES.html.sh (File descriptor based I/O): Mention it.
414         * lib/openat.h: Add double-inclusion guards.
415         * lib/openat.c (includes): Only include "fcntl-safer.h", not
416         "fcntl--.h", so we can implement openat.
417         * modules/openat-safer-tests: New test.
418         * tests/test-openat-safer.c: New file.
419
420         dirent-safer: new module
421         * modules/dirent-safer: New file.
422         * lib/dirent--.h: Likewise.
423         * lib/dirent-safer.h: Likewise.
424         * lib/opendir-safer.c: Likewise.
425         * m4/dirent-safer.m4: Likewise.
426         * MODULES.html.sh (Enhancements for POSIX:2008): Mention it.
427         * modules/dirent-safer-tests: New test.
428         * tests/test-dirent-safer.c: New file.
429         * lib/fdopendir.c (includes): Ensure fdopendir is also safe.
430
431         fdopendir: optimize on mingw
432         * lib/unistd.in.h (_gl_directory_name): New prototype.
433         * lib/fchdir.c (_gl_directory_name): Implement it.
434         (fchdir): Use it to simplify implementation.
435         * lib/fdopendir.c (fdopendir) [REPLACE_FCHDIR]: Use metadata from
436         fchdir, when available, to avoid calling [f]chdir().
437
438         fdopendir: split into its own module
439         * lib/openat.c (fdopendir): Move...
440         * lib/fdopendir.c: ...into new file.
441         * modules/fdopendir: New module.
442         * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): New file.
443         * modules/openat (Depends-on): Add fdopendir.
444         * m4/openat.m4 (gl_FUNC_OPENAT): No longer need to check for
445         fdopendir here.
446         * modules/savedir (Depends-on): Only need fdopendir, not full
447         openat.
448         * lib/savedir.c (include): Use <dirent.h>, not "openat.h".
449         * lib/openat.h (fdopendir): Drop prototype.
450         * lib/dirent.in.h (fdopendir): Provide prototype.
451         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Add replacements.
452         * modules/dirent (Makefile.am): Substitute them.
453         * MODULES.html.sh (File system functions): Mention it.
454         * doc/posix-functions/fdopendir.texi (fdopendir): Likewise.
455         * modules/fdopendir-tests: New file.
456         * tests/test-fdopendir.c: Likewise.
457
458         fchdir: use more consistent macro convention
459         * lib/fcntl.in.h (_gl_register_fd): Move declaration to unistd.
460         * lib/sys_stat.in.h (rpl_fstat): Declare via make-time
461         REPLACE_FCHDIR, rather than relying on config.h macros.
462         * lib/unistd.in.h (fchdir): Move all fchdir internal declarations
463         inside a single make-time REPLACE_FCHDIR block, rather than using
464         the config.h FCHDIR_REPLACEMENT.
465         * m4/fchdir.m4 (gl_FUNC_FCHDIR): REPLACE_FCHDIR was already
466         AC_SUBST'd, also AC_DEFINE it.  Don't define FCHDIR_REPLACEMENT.
467         Manage fstat replacement.
468         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Pick up
469         REPLACE_FCHDIR.
470         * modules/sys_stat (Files): Add m4/unistd_h.m4.
471         (Makefile.am): Substitute REPLACE_FCHDIR.
472         * lib/close.c (rpl_close): Use REPLACE_FCHDIR, not
473         FCHDIR_REPLACEMENT.
474         * lib/dup-safer.c (dup_safer): Likewise.
475         * lib/dup2.c (rpl_dup2): Likewise.
476         * lib/dup3.c (rpl_dup3): Likewise.
477         * lib/open.c (rpl_open): Likewise.
478
479         fchdir: simplify error handling, and support dup3
480         * modules/fchdir (Depends-on): Use strdup-posix, not strdup.  Add
481         stdbool, malloc-posix, realloc-posix.
482         * lib/fchdir.c (struct dir_info_t): Delete saved_errno.
483         (ensure_dirs_slot): Return false on allocation failure.
484         (rpl_dup2): Delete.
485         (_gl_register_dup): New function.
486         (_gl_unregister_fd, rpl_opendir, rpl_dup): Update callers.
487         (_gl_register_fd): Close fd on allocation failure.
488         * lib/fcntl.in.h (_gl_register_fd): Update signature.
489         * lib/unistd.in.h (_gl_register_dup) [FCHDIR_REPLACEMENT]: New
490         prototype.
491         (rpl_dup2_fchdir): Delete prototype.
492         * lib/open.c (open): Update caller.
493         * lib/dup2.c (dup2): Track fchdir metadata.
494         * lib/dup3.c (dup3): Likewise.
495         * m4/dup2.m4 (gl_REPLACE_DUP2): New macro.
496         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Use it.
497
498 2009-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
499
500         * gnulib-tool (func_create_testdir, func_create_megatestdir): Use
501         AC_CONFIG_HEADERS instead of AM_CONFIG_HEADER. Use AC_CONFIG_FILES and
502         don't pass arguments to AC_OUTPUT.
503
504 2009-09-02  Bruno Haible  <bruno@clisp.org>
505
506         * modules/mkdtemp (License): Relicense under LGPLv2+.
507         Reported by Paolo Bonzini.
508
509 2009-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
510
511         Replace uses of obsolete autoconf macros in Jim's modules.
512         The Autoconf macros AC_TRY_CPP, AC_TRY_COMPILE, AC_TRY_LINK and
513         AC_TRY_RUN have been obsolete since Autoconf 2.55, and each use
514         can evoke a warning from autoconf when run with -Wobsolete
515         enabled.  They were declared obsolete for good reasons (see
516         the `AC_FOO_IFELSE vs AC_TRY_FOO' node in the Autoconf manual,
517         recently renamed to `AC_ACT_IFELSE vs AC_TRY_ACT'), and we
518         should not continue using the deprecated macros.
519         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Replace
520         obsolete Autoconf macros with modern counterparts.
521         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
522         * m4/dos.m4 (gl_AC_DOS): Likewise.
523         * m4/fpending.m4 (gl_FUNC_FPENDING): Likewise.
524         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Likewise.
525         * m4/getloadavg.m4 (gl_PREREQ_GETLOADAVG): Likewise.
526         * m4/jm-winsz1.m4 (gl_WINSIZE_IN_PTEM): Likewise.
527         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Likewise.
528         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Likewise.
529         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Likewise.
530         * m4/mode_t.m4 (gl_PROMOTED_TYPE_MODE_T): Likewise.
531         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
532         Likewise.
533         * m4/rename.m4 (gl_FUNC_RENAME): Likewise.
534         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
535         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Likewise.
536         * m4/st_dm_mode.m4 (AC_STRUCT_ST_DM_MODE): Likewise.
537         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
538         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
539
540 2009-09-01  Eric Blake  <ebb9@byu.net>
541
542         fchdir: fix off-by-one bug in previous patch
543         * lib/fchdir.c (rpl_fstat): Use correct bounds.
544         (_gl_unregister_fd): Delete useless if.
545
546 2009-09-01  Daniel P. Berrange  <berrange@redhat.com>
547
548         maint.mk: sort the list of syntax-check rules
549         * top/maint.mk (syntax-check-rules): Sort syntax-check rules, so it's
550         easier to get a sense of progress when the rules are run sequentially
551         and take a long time.
552
553 2009-09-01  Simon Josefsson  <simon@josefsson.org>
554
555         * modules/arpa_inet: Use $(MKDIR_P) instead of @MKDIR_P@.
556         * modules/netinet_in: Likewise.
557         * modules/sys_file: Likewise.
558         * modules/sys_ioctl: Likewise.
559         * modules/sys_select: Likewise.
560         * modules/sys_socket: Likewise.
561         * modules/sys_stat: Likewise.
562         * modules/sys_time: Likewise.
563         * modules/sys_times: Likewise.
564         * modules/sys_utsname: Likewise.
565         * modules/sys_wait: Likewise.
566
567 2009-09-01  Jim Meyering  <meyering@redhat.com>
568
569         fts: help ensure that return values are not ignored
570         * lib/fts_.h (__GNUC_PREREQ): Define.
571         (__attribute_warn_unused_result__): Define.
572         (fts_children, fts_close, fts_open, fts_read): Declare with
573         __attribute_warn_unused_result__.
574
575         fts: fts_close now fails also when closing a dir file descriptor fails
576         * lib/fts.c (fts_close): Detect close failure, not just fchdir failure,
577         and propagate to caller, along with errno.
578
579         announce-gen: correct formatting in --help output
580         * build-aux/announce-gen (usage): Move the one-line description in
581         --help output "up", to where it belongs, just after Usage:.
582
583 2009-08-31  Eric Blake  <ebb9@byu.net>
584
585         fchdir: port to mingw
586         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Check for mingw bug.
587         * lib/open.c (open) [FCHDIR_REPLACEMENT]: If directories can't be
588         opened, then use a substitute.
589         * lib/sys_stat.in.h (fstat) [REPLACE_OPEN_DIRECTORY]: Declare
590         replacement.
591         * lib/fchdir.c (fstat) [REPLACE_OPEN_DIRECTORY]: Implement it.
592         (_gl_register_fd): No need to check stat if open already filters
593         all directories.
594         (fchdir): Fix error condition to match POSIX.
595         * modules/fchdir (Depends-on): Add sys_stat.
596         * doc/posix-functions/open.texi (open): Document the limitation.
597         * modules/fchdir-tests: New file.
598         * tests/test-fchdir.c: Likewise.
599
600         canonicalize: allow cross-testing from cygwin to mingw
601         * modules/canonicalize-tests (configure.ac): Define HAVE_SYMLINK.
602         (Makefile.am): Pass it through TESTS_ENVIRONMENT.
603         * modules/canonicalize-lgpl-tests (configure.ac, Makefile.am):
604         Likewise.
605         * tests/test-canonicalize.sh: Also skip test if 'ln -s' works, but
606         target does not support symlinks.
607         * tests/test-canonicalize-lgpl.sh: Likewise.
608
609         chown: avoid compilation warning on mingw
610         * m4/chown.m4 (gl_FUNC_CHOWN): Recognize missing chown.
611         * lib/chown.c (rpl_chown) [!HAVE_CHOWN]: Always return failure on
612         mingw.
613         * lib/lchown.c (lchown) [!HAVE_CHOWN]: Likewise.
614         * modules/chown (Depends-on): Add errno.
615
616 2009-08-31  Stefano Lattarini  <stefano.lattarini@gmail.com>  (tiny change)
617
618         * gnulib-tool: Fix test whether $CONFIG_SHELL has a working 'echo'
619         command.
620
621 2009-08-31  Jim Meyering  <meyering@redhat.com>
622
623         canonicalize: remove useless initialization
624         * lib/canonicalize.c (canonicalize_filename_mode): Remove useless
625         initialization of local, "end".
626
627 2009-08-30  Bruno Haible  <bruno@clisp.org>
628
629         Fix an unnecessary error on Solaris 10 on NFSv3 file systems.
630         * lib/set-mode-acl.c (qset_acl) [Solaris 10 new]: Treat EOPNOTSUPP like
631         ENOSYS.
632
633 2009-08-30  Bruno Haible  <bruno@clisp.org>
634
635         * tests/test-pipe-filter-ii1.sh: Prefer /usr/xpg6/bin/tr over
636         /usr/xpg4/bin/tr when it exists.
637         * tests/test-pipe-filter-gi1.sh: Likewise.
638
639 2009-08-30  Bruno Haible  <bruno@clisp.org>
640
641         Work around deficient /usr/bin/id program on Solaris.
642         * tests/test-file-has-acl.sh (ID): New variable.
643         * tests/test-set-mode-acl.sh (ID): Likewise.
644         * tests/test-copy-acl.sh (ID): Likewise.
645         * tests/test-copy-file.sh (ID): Likewise.
646
647 2009-08-30  Bruno Haible  <bruno@clisp.org>
648
649         New module 'xstriconveh'.
650         * lib/xstriconveh.h: New file.
651         * lib/xstriconveh.c: New file.
652         * modules/xstriconveh: New file.
653
654 2009-08-30  Bruno Haible  <bruno@clisp.org>
655
656         Make it easier to use mem_cd_iconveh.
657         * lib/striconveh.h (iconveh_t): New type.
658         (iconveh_open, iconveh_close): New declarations.
659         (mem_cd_iconveh, str_cd_iconveh): Replace the three iconv_t arguments
660         with a single 'const iconveh_t *' argument.
661         * lib/striconveh.c (iconveh_open, iconveh_close): New functions.
662         (mem_cd_iconveh, str_cd_iconveh): Replace the three iconv_t arguments
663         with a single 'const iconveh_t *' argument.
664         (mem_iconveh, str_iconveh): Use iconveh_open, iconveh_close.
665         * tests/test-striconveh.c (main): Update.
666         * NEWS: Mention the change.
667
668 2009-08-30  Bruno Haible  <bruno@clisp.org>
669
670         * doc/posix-functions/iconv_open.texi: Mention indirect conversion
671         problem.
672
673 2009-08-30  Bruno Haible  <bruno@clisp.org>
674
675         Work around iconv_open problem on Solaris.
676         * lib/iconv_open-solaris.gperf: New file.
677         * lib/iconv_open.c (ICONV_FLAVOR_SOLARIS): New macro.
678         * m4/iconv_open.m4 (gl_FUNC_ICONV_OPEN): Also handle Solaris.
679         * modules/iconv_open (Files): Add lib/iconv_open-solaris.gperf.
680         (Makefile.am): Add rule for iconv_open-solaris.h. Augment
681         BUILT_SOURCES, MOSTLYCLEANFILES, MAINTAINERCLEANFILES, EXTRA_DIST.
682         * doc/posix-functions/iconv_open.texi: Mention the Solaris problem.
683
684 2009-08-29  Jim Meyering  <meyering@redhat.com>
685
686         maint.mk: remove more coreutils-specific targets; XZ_OPT=-9ev
687         * top/maint.mk (cvs-check): Remove target; it was just an alias
688         to the better-named vc-diff-check.
689         (maintainer-distcheck): Remove rule.  It was used only from
690         the (alpha/beta/major) target, and all of its commands but one
691         were coreutils-specific.
692         (vc-dist): Remove rule.
693         (alpha beta major): Run "$(MAKE) distcheck" explicitly.
694         Run vc-diff-check, not vc-dist.
695         Run $(MAKE) dist with XZ_OPT=-9ev.  Note spelling, with "-".
696
697 2009-08-27  Bruno Haible  <bruno@clisp.org>
698
699         * tests/test-bitrotate.c (main): Remove test that uses a shift count
700         of 0.
701
702 2009-08-27  Bruno Haible  <bruno@clisp.org>
703
704         * tests/test-func.c (main): Don't verify sizeof __func__ on SunPRO C
705         compilers.
706         * doc/func.texi: Document the SunPRO C bug.
707
708 2009-08-27  Bruno Haible  <bruno@clisp.org>
709
710         Fix link error on Solaris.
711         * tests/test-parse-duration.c (xstrdup): Remove function.
712
713 2009-08-26  Pádraig Brady  <P@draigbrady.com>
714
715         ignore-value: handle pointer types, too
716         * lib/ignore-value.h (__attribute__): Remove definition.
717         (ignore_value): Remove use of "__attribute__ ((unused))" in favor
718         of a more concise and more-often effective "(void) i" statement.
719         (ignore_ptr): New function to suppress warnings from functions that
720         return pointers, and to make it explicit that one function doesn't
721         handle all cases.
722
723 2009-08-25  Bruno Haible  <bruno@clisp.org>
724
725         dup2: work around a Linux bug.
726         * m4/dup2.m4 (gl_FUNC_DUP2): Test for the Linux bug.
727         * lib/dup2.c (rpl_dup2): Correct the return value if it is -EBADF.
728         * doc/posix-functions/dup2.texi: Mention the Linux bug.
729         Reported by Simon Josefsson.
730
731 2009-08-25  Jim Meyering  <meyering@redhat.com>
732
733         libguestfs uses gnulib
734         * users.txt: Add libguestfs.
735
736 2009-08-24  Eric Blake  <ebb9@byu.net>
737
738         dup2, pipe2: fix some recent test failures on cygwin 1.5.x
739         * lib/pipe2.c (includes): Add binary-io.h.
740         * lib/dup2.c (rpl_dup2): Correct buggy errno value.
741
742 2009-08-24  Bruno Haible  <bruno@clisp.org>
743
744         Tolerate declared but missing accept4 syscall.
745         * lib/accept4.c (accept4): Invoke original accept4 function first, if
746         available.
747         * lib/sys_socket.in.h (accept4): If the function is already present,
748         override it.
749         * m4/accept4.m4 (gl_FUNC_ACCEPT4): Remove AC_LIBOBJ invocation.
750         * modules/accept4 (Makefile.am): Compile accept4.c always.
751         Reported by Paolo Bonzini and Eric Blake.
752
753 2009-08-23  Bruno Haible  <bruno@clisp.org>
754
755         New module 'accept4'.
756         * lib/sys_socket.in.h (accept4): New declaration.
757         * lib/accept4.c: New file.
758         * m4/accept4.m4: New file.
759         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
760         GNULIB_ACCEPT4, HAVE_ACCEPT4.
761         * modules/sys_socket (Makefile.am): Substitute GNULIB_ACCEPT4,
762         HAVE_ACCEPT4.
763         * modules/accept4: New file.
764         * doc/glibc-functions/accept4.texi: Mention the new module.
765
766 2009-08-24  Jim Meyering  <meyering@redhat.com>
767
768         progname: also set global program_invocation_name, when possible
769         Before this change, a libtool-enabled program that calls glibc's
770         error function would report the program name as
771         "/abs/dir/.libs/lt-program_name" rather than the desired program_name.
772         * modules/progname (configure.ac): Check for a declaration of
773         program_invocation_name.
774         * lib/progname.c:  Include <errno.h>.
775         (set_program_name) [HAVE_DECL_PROGRAM_INVOCATION_NAME]:
776         Set program_invocation_name.
777
778 2009-08-23  Bruno Haible  <bruno@clisp.org>
779
780         * lib/dup3.c: Include <string.h>.
781
782 2009-08-23  Bruno Haible  <bruno@clisp.org>
783
784         * lib/dup3.c (dup3): Test only once whether the system actually exists.
785         * lib/pipe2.c (pipe2): Likewise.
786         Suggested by Eric Blake.
787
788 2009-08-23  Bruno Haible  <bruno@clisp.org>
789
790         Tolerate declared but missing dup3 syscall.
791         * lib/dup3.c (dup3): Invoke original dup3 function first, if available.
792         * lib/unistd.in.h (dup3): If the function is already present,
793         override it.
794         * m4/dup3.m4 (gl_FUNC_DUP3): Remove AC_LIBOBJ invocation.
795         * modules/dup3 (Makefile.am): Compile dup3.c always.
796         Reported by Paolo Bonzini.
797
798 2009-08-23  Bruno Haible  <bruno@clisp.org>
799
800         Tolerate declared but missing pipe2 syscall.
801         * lib/pipe2.c (pipe2): Invoke original pipe2 function first, if
802         available.
803         * lib/unistd.in.h (pipe2): If the function is already present,
804         override it.
805         * m4/pipe2.m4 (gl_FUNC_PIPE2): Remove AC_LIBOBJ invocation.
806         * modules/pipe2 (Makefile.am): Compile pipe2.c always.
807         Reported by Paolo Bonzini.
808
809 2009-08-23  Bruno Haible  <bruno@clisp.org>
810
811         * lib/pipe2.c (pipe2): Move #ifs inside function.
812
813 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
814
815         quotearg: document limitations of quote_these_too
816         * lib/quotearg.c (quotearg_buffer_restyled): Add comments where
817         those limitations are created.
818         * lib/quotearg.h (set_char_quoting): Document that digits and
819         letters that are special after backslash are not permitted.
820         (quotearg_char): Cross-reference set_char_quoting documentation.
821
822 2009-08-23  Joel E. Denny  <jdenny@clemson.edu>
823
824         quotearg: implement custom_quoting_style
825         * lib/quotearg.c: (struct quoting_options): Add left_quote and
826         right_quote fields.
827         (set_custom_quoting): New public function.
828         (quotearg_buffer_restyled): Add left_quote and right_quote
829         arguments, handle them very much like locale quoting, and update
830         all uses.
831         (quotearg_n_custom): New public function.
832         (quotearg_n_custom_mem): New public function.
833         (quotearg_custom): New public function.
834         (quotearg_custom_mem): New public function.
835         * lib/quotearg.h: Prototype and document new public functions.
836         (enum quoting_style): For escape_quoting_style and
837         clocale_quoting_style, comment that QA_SPLIT_TRIGRAPHS is
838         ignored even though they're otherwise like c_quoting_style.
839         Add custom_quoting_style member and document with comparison to
840         clocale_quoting_style.
841         * tests/test-quotearg.c (custom_quotes): New array.
842         (custom_results): New array.
843         (main): Extend to test custom quoting.
844
845 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
846
847         quotearg: fix right quote escaping when it's in quote_these_too
848         * lib/quotearg.c (quotearg_buffer_restyled): Upon seeing a right
849         quote, be sure to prepend only one backslash.
850         * tests/test-quotearg.c (use_quote_double_quotes): New function.
851         (main): Test it.
852
853 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
854
855         quotearg-tests: test escaping of embedded locale quotes
856         * tests/test-quotearg.c (struct result_strings): Add member for
857         new input.
858         (LQ_ENC, RQ_ENC, RQ_ESC): New macros.
859         (inputs): Add new input.
860         (results_g): Add expected results.
861         (flag_results): Likewise.
862         (locale_results): Likewise.
863         (compare_strings): Check those.
864
865 2009-08-23  Bruno Haible  <bruno@clisp.org>
866
867         Tests for module 'dup3'.
868         * modules/dup3-tests: New file.
869         * tests/test-dup3.c: New file.
870
871         New module 'dup3'.
872         * lib/unistd.in.h (dup3): New declaration.
873         * lib/dup3.c: New file.
874         * m4/dup3.m4: New file.
875         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_DUP3 and
876         HAVE_DUP3.
877         * modules/unistd (Makefile.am): Substitute GNULIB_DUP3 and HAVE_DUP3.
878         * modules/dup3: New file.
879         * doc/glibc-functions/dup3.texi: Mention the new module.
880
881 2009-08-23  Bruno Haible  <bruno@clisp.org>
882
883         Tweak the dup2 test.
884         * tests/test-dup2.c (main): Create the test file empty. Verify that an
885         out-of-range fd yields EBADF. Verify that after writing to /dev/null,
886         the test file is still empty. Fix argument order of lseek.
887
888 2009-08-23  Bruno Haible  <bruno@clisp.org>
889
890         Avoid test link errors when the modules getopt-gnu, gettext are used.
891         * modules/getopt-posix-tests (Makefile.am): Define test_getopt_LDADD.
892         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
893
894 2009-08-23  Bruno Haible  <bruno@clisp.org>
895
896         Fix getdtablesize() on mingw.
897         * lib/getdtablesize.c (getdtablesize): Implement differently.
898         * lib/unistd.in.h (getdtablesize): Improve comment.
899
900 2009-08-23  Bruno Haible  <bruno@clisp.org>
901
902         New module 'mkostemp'.
903         Based on Ulrich Drepper's 2007-08-10 change in glibc.
904         * lib/stdlib.in.h (mksotemp): New declaration.
905         * lib/mkostemp.c: New file, from glibc with modifications.
906         * lib/tempname.h (GT_FILE): Remove outdated comment.
907         (gen_tempname): Add flags argument.
908         * lib/tempname.c (__GT_BIGFILE): Remove macro.
909         (__GT_FILE): Map to 1.
910         (small_open, large_open): Remove macros.
911         (__gen_tempname): Add flags argument. Remove code for __GT_BIGFILE.
912         * lib/mkstemp.c (mkstemp): Update.
913         * lib/mkdtemp.c (mkdtemp): Likewise.
914         * m4/mkostemp.m4: New file.
915         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_MKOSTEMP,
916         HAVE_MKOSTEMP.
917         * modules/stdlib (Makefile.am): Substitute GNULIB_MKOSTEMP,
918         HAVE_MKOSTEMP.
919         * modules/mkostemp: New file, based on modules/mkstemp.
920         * doc/glibc-functions/mkostemp.texi: Mention the new module.
921         * NEWS: Mention the change.
922
923 2009-08-23  Bruno Haible  <bruno@clisp.org>
924
925         * lib/pipe2.c (pipe2): Support O_TEXT, O_BINARY on all platforms.
926         Reported by Eric Blake.
927
928 2009-08-23  Bruno Haible  <bruno@clisp.org>
929
930         * lib/pipe2.c (pipe2): Fix test of fcntl's return value.
931         Reported by Eric Blake.
932
933 2009-08-23  Bruno Haible  <bruno@clisp.org>
934
935         * modules/fchdir (Depends-on): Use fcntl-h instead of fcntl.
936         * modules/pipe2 (Depends-on): Likewise.
937
938 2009-08-23  Eric Blake  <ebb9@byu.net>
939
940         fcntl-h: add O_TTY_INIT support
941         * lib/fcntl.in.h (O_TTY_INIT): Support another POSIX macro.
942         * tests/test-fcntl-h.c (o): Test it.
943         * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
944
945         fcntl-h: rename from fcntl, in preparation for fcntl(2)
946         * modules/fcntl: Move <fcntl.h> header replacement...
947         * modules/fcntl-h: ...to new name, so as not to collide with
948         like-named function.
949         * tests/test-fcntl.c: Rename...
950         * tests/test-fcntl-h.c: ...to this.  Test FD_CLOEXEC.
951         * modules/fcntl-tests: Rename...
952         * modules/fcntl-h-tests: ...to this.  Update test file name.
953         * modules/chdir-long (Depends-on): Update clients.
954         * modules/chdir-safer (Depends-on): Likewise.
955         * modules/fcntl-safer (Depends-on): Likewise.
956         * modules/fts (Depends-on): Likewise.
957         * modules/mkancesdirs (Depends-on): Likewise.
958         * modules/mkdir-p (Depends-on): Likewise.
959         * modules/open (Depends-on): Likewise.
960         * modules/savewd (Depends-on): Likewise.
961         * MODULES.html.sh (systems lacking POSIX:2008): Update name.
962         * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
963
964 2009-08-22  Bruno Haible  <bruno@clisp.org>
965
966         * modules/binary-io (License): Relicense under LGPL.
967         * modules/pipe2 (License): Likewise.
968
969 2009-08-22  Bruno Haible  <bruno@clisp.org>
970
971         * lib/pipe-filter-ii.c (pipe_filter_ii_execute): Fix test of fcntl's
972         return value.
973         * lib/pipe-filter-gi.c (filter_init): Likewise.
974         Reported by Eric Blake.
975
976 2009-08-22  Bruno Haible  <bruno@clisp.org>
977
978         * lib/pipe.c (create_pipe): Use pipe2 instead of _pipe.
979         * modules/pipe (Depends-on): Add pipe2.
980
981 2009-08-22  Bruno Haible  <bruno@clisp.org>
982
983         Tests for module 'pipe2'.
984         * modules/pipe2-tests: New file.
985         * tests/test-pipe2.c: New file.
986
987         New module 'pipe2'.
988         * lib/unistd.in.h (pipe2): New declaration.
989         * lib/pipe2.c: New file.
990         * m4/pipe2.m4: New file.
991         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_PIPE2 and
992         HAVE_PIPE2.
993         * modules/unistd (Makefile.am): Substitute GNULIB_PIPE2 and HAVE_PIPE2.
994         * modules/pipe2: New file.
995         * doc/glibc-functions/pipe2.texi: Mention the new module.
996
997 2009-08-22  Bruno Haible  <bruno@clisp.org>
998
999         Reference some new glibc functions.
1000         * doc/glibc-functions/accept4.texi: New file.
1001         * doc/glibc-functions/dup3.texi: New file.
1002         * doc/glibc-functions/mkostemp.texi: New file.
1003         * doc/glibc-functions/pipe2.texi: New file.
1004         * doc/gnulib.texi (Glibc stdlib.h): Refer to mkostemp.
1005         (Glibc sys/socket.h): Refer to accept4.
1006         (Glibc unistd.h): Refer to dup3, pipe2.
1007         Reported by Eric Blake.
1008
1009 2009-08-22  Jim Meyering  <meyering@redhat.com>
1010             Bruno Haible  <bruno@clisp.org>
1011
1012         annotate automake snippets with $(AM_V_GEN) and $(AM_V_at)
1013         This makes it so packages using automake-1.11's silent-rules option
1014         can print e.g., a single "GEN    configmake.h" line, rather than
1015         the 30+ statements that perform the job.  If you want to see the
1016         actual commands, you can still run "make V=1".
1017         * modules/alloca-opt: Add $(AM_V_GEN) and $(AM_V_at) prefixes
1018         so that make output is abbreviated when those variables are defined
1019         appropriately.
1020         * modules/argz: Likewise.
1021         * modules/arpa_inet: Likewise.
1022         * modules/byteswap: Likewise.
1023         * modules/configmake: Likewise.
1024         * modules/dirent: Likewise.
1025         * modules/errno: Likewise.
1026         * modules/fcntl: Likewise.
1027         * modules/float: Likewise.
1028         * modules/fnmatch: Likewise.
1029         * modules/getopt-posix: Likewise.
1030         * modules/glob: Likewise.
1031         * modules/iconv_open: Likewise.
1032         * modules/inttypes: Likewise.
1033         * modules/localcharset: Likewise.
1034         * modules/locale: Likewise.
1035         * modules/math: Likewise.
1036         * modules/netdb: Likewise.
1037         * modules/netinet_in: Likewise.
1038         * modules/poll: Likewise.
1039         * modules/posix_spawnp-tests: Likewise.
1040         * modules/sched: Likewise.
1041         * modules/search: Likewise.
1042         * modules/selinux-h: Likewise.
1043         * modules/signal: Likewise.
1044         * modules/spawn: Likewise.
1045         * modules/stdarg: Likewise.
1046         * modules/stdbool: Likewise.
1047         * modules/stddef: Likewise.
1048         * modules/stdint: Likewise.
1049         * modules/stdio: Likewise.
1050         * modules/stdlib: Likewise.
1051         * modules/string: Likewise.
1052         * modules/strings: Likewise.
1053         * modules/sys_file: Likewise.
1054         * modules/sys_ioctl: Likewise.
1055         * modules/sys_select: Likewise.
1056         * modules/sys_socket: Likewise.
1057         * modules/sys_stat: Likewise.
1058         * modules/sys_time: Likewise.
1059         * modules/sys_times: Likewise.
1060         * modules/sys_utsname: Likewise.
1061         * modules/sys_wait: Likewise.
1062         * modules/sysexits: Likewise.
1063         * modules/time: Likewise.
1064         * modules/unistd: Likewise.
1065         * modules/wchar: Likewise.
1066         * modules/wctype: Likewise.
1067
1068 2009-08-22  Jim Meyering  <meyering@redhat.com>
1069
1070         announce-gen: detect write failure
1071         * build-aux/announce-gen: Add Coda at end.
1072         Remove equivalent-but-more-verbose block at top.
1073
1074 2009-08-19  Akim Demaille  <demaille@gostai.com>
1075
1076         bootstrap: --help to stdout.
1077         * bootstrap (usage): Don't send --help to stderr.
1078         Use a here doc instead of a long string.
1079
1080 2009-08-21  Eric Blake  <ebb9@byu.net>
1081
1082         test-popen-safer: split from test-popen
1083         * tests/test-popen.c (main): Move...
1084         * tests/test-popen.h: ...into new file.
1085         * tests/test-popen-safer2.c: New file.
1086         * modules/popen-tests (Files): Add test-popen.h.
1087         * modules/popen-safer-tests (Files): Add test-popen-safer2.c.
1088         Suggested by Bruno Haible.
1089
1090         test-fcntl-safer: split from test-open
1091         * tests/test-open.c (main): Move...
1092         * tests/test-open.h: ...into new file.
1093         * tests/test-fcntl-safer.c: New file.
1094         * modules/open-tests (Files): Add test-open.h.
1095         * modules/fcntl-safer-tests: New file.
1096         Suggested by Bruno Haible.
1097
1098         test-fopen-safer: split from test-fopen
1099         * tests/test-fopen.c (main): Move...
1100         * tests/test-fopen.h: ...into new file.
1101         * tests/test-fopen-safer.c: New file.
1102         * modules/fopen-tests (Files): Add test-fopen.h.
1103         * modules/fopen-safer-tests: New file.
1104         Suggested by Bruno Haible.
1105
1106 2009-08-21  Paolo Bonzini  <bonzini@gnu.org>
1107
1108         popen-safer: test O_CLOEXEC at run-time.
1109         * lib/popen-safer.c: Test O_CLOEXEC at run-time.
1110
1111 2009-08-21  Paolo Bonzini  <bonzini@gnu.org>
1112
1113         fcntl: move more flags to the header
1114         * lib/cloexec.c: Do not define FD_CLOEXEC here.
1115         * lib/popen-safer.c: Do not alias O_NOINHERIT to O_CLOEXEC here.
1116         * lib/fcntl.in.h: Do both things here.
1117
1118 2009-08-21  Jim Meyering  <meyering@redhat.com>
1119
1120         consistently remove $@-t before redirecting to it
1121         * modules/argz: Remove $@-t and $@ before redirecting to the former.
1122         * modules/alloca-opt: Likewise.
1123         * modules/byteswap: Likewise.
1124         * modules/fnmatch: Likewise.
1125         * modules/getopt-posix: Likewise.
1126         * modules/glob: Likewise.
1127         * modules/poll: Likewise.
1128         * modules/posix_spawnp-tests: Likewise.
1129         * modules/sys_socket: Likewise.
1130         * modules/sysexits: Likewise.
1131
1132 2009-08-21  Eric Blake  <ebb9@byu.net>
1133
1134         popen: simplify access to original popen
1135         * lib/popen.c (rpl_popen): No need to worry about popen being a
1136         macro.
1137         Reported by Bruno Haible.
1138
1139 2009-08-20  Eric Blake  <ebb9@byu.net>
1140
1141         build: avoid some compiler warnings
1142         * lib/selinux-at.h: Use dir_fd, not dirfd, to avoid shadowing.
1143         * lib/exclude.c (fnmatch_pattern_has_wildcards): Use correct
1144         type.
1145         (new_exclude_segment, excluded_file_pattern_p)
1146         (excluded_file_name_p): Reduce scope.
1147         * lib/vasnprintf.c (decimal_point_char): Avoid warning on
1148         old-style declaration.
1149
1150 2009-08-20  Simon Josefsson  <simon@josefsson.org>
1151
1152         * tests/test-exclude1.sh: Handle Windows EOL.
1153         * tests/test-exclude2.sh: Likewise.
1154         * tests/test-exclude3.sh: Likewise.
1155         * tests/test-exclude4.sh: Likewise.
1156         * tests/test-exclude5.sh: Likewise.
1157         * tests/test-exclude6.sh: Likewise.
1158         * tests/test-exclude7.sh: Likewise.
1159
1160 2009-08-19  Akim Demaille  <demaille@gostai.com>
1161
1162         bootstrap: find sha1sum when named gsha1sum.
1163         * bootstrap (find_tool): New.
1164         ($SHA1SUM): New.
1165         Use it.
1166
1167 2009-08-20  Jim Meyering  <meyering@redhat.com>
1168
1169         maint.mk: _header_without_use: fix a quoting bug and remove a bash'ism
1170         * top/maint.mk (_header_without_use): Use "\\\\", not "\\" in the sed
1171         expression that converts "." in a file name to "\." in the resulting
1172         regexp.  Start with a dummy statement, so that prior shell variable
1173         definitions are expanded portably.  Reported by Simon Josefsson.
1174
1175 2009-08-20  Paolo Bonzini  <bonzini@gnu.org>
1176
1177         Fix polling for writeability of a screen buffer.
1178         * lib/poll.c: Distinguish input and screen buffers for the
1179         Win32 implementation.
1180         * lib/select.c: Likewise.
1181
1182 2009-08-19  Eric Blake  <ebb9@byu.net>
1183
1184         popen-safer: prevent popen from clobbering std descriptors
1185         * modules/popen-safer: New file.
1186         * lib/popen-safer.c: Likewise.
1187         * m4/stdio-safer.m4 (gl_POPEN_SAFER): New macro.
1188         * lib/stdio--.h (popen): Provide override.
1189         * lib/stdio-safer.h (popen_safer): Provide declaration.
1190         * tests/test-popen.c (includes): Partially test this.
1191         * modules/popen-safer-tests: New file, for more tests.
1192         * tests/test-popen-safer.c: Likewise.
1193         * MODULES.html.sh (file stream based Input/Output): Mention it.
1194
1195         tests: test some of the *-safer modules
1196         * modules/fopen-safer (Depends-on): Add fopen.
1197         * modules/fcntl-safer (Depends-on): Add fcntl.
1198         * modules/stdlib-safer (Depends-on): Add stdlib.
1199         (configure.ac): Set indicator.
1200         * modules/unistd-safer (configure.ac): Likewise.
1201         * modules/tmpfile-safer (configure.ac): Likewise.
1202         (Depends-on): Add tmpfile.
1203         * lib/stdio--.h (fopen, tmpfile): Don't override unless module is
1204         active.
1205         * tests/test-fopen.c (includes): Test safer versions when they are
1206         in use.
1207         * tests/test-open.c (includes): Likewise.
1208
1209         popen: fix cygwin 1.5 bug when stdin closed
1210         * doc/posix-functions/popen.texi (popen): Document cygwin bugs.
1211         * modules/popen: New file.
1212         * modules/popen-tests: Likewise.
1213         * tests/test-popen.c: Likewise.
1214         * m4/popen.m4: Likewise.
1215         * lib/popen.c: Likewise.
1216         * lib/stdio.in.h (popen): New declaration.
1217         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add popen.
1218         * modules/stdio (Makefile.am): Likewise.
1219         * MODULES.html.sh (systems lacking POSIX:2008): Mention it.
1220
1221 2009-08-17  Joel E. Denny  <jdenny@clemson.edu>
1222
1223         maint.mk: give full control over update-copyright exclusions
1224         * top/maint.mk (VC_LIST_EXCEPT): Instead of ChangeLog, use
1225         ${VC_LIST_EXCEPT_DEFAULT-ChangeLog} as the default exclusion.
1226         (update-copyright): Don't force inclusion of top-level
1227         ChangeLog.  Don't force exclusion of all COPYING files, but make
1228         them the default exclusion instead.
1229
1230 2009-08-16  Bruno Haible  <bruno@clisp.org>
1231
1232         Fix test failures on Solaris 10.
1233         * tests/uniconv/test-u8-conv-from-enc.c (main): Disable autodetect_jp
1234         tests when Solaris iconv() is used.
1235         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
1236         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
1237         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
1238         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
1239         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
1240
1241 2009-08-16  Bruno Haible  <bruno@clisp.org>
1242
1243         Fix test failures on Solaris 10.
1244         * tests/test-pipe-filter-ii1.sh: Determine the filename of a working
1245         'tr' program and pass it as first argument.
1246         * tests/test-pipe-filter-gi1.sh: Likewise.
1247         * tests/test-pipe-filter-ii1.c (main): Except the filename of a 'tr'
1248         program as first argument.
1249         * tests/test-pipe-filter-gi1.c (main): Likewise.
1250
1251 2009-08-16  Eric Blake  <ebb9@byu.net>
1252
1253         fpurge: fix previous commits
1254         * modules/fpurge (Makefile.am): Make replacement conditional,
1255         partially reverting 2007-04-29 change; missed in previous
1256         attempt.
1257         * m4/fpurge.m4 (gl_FUNC_FPURGE): Also compile fpurge.c when fpurge
1258         is missing.
1259
1260 2009-08-16  Bruno Haible  <bruno@clisp.org>
1261
1262         Clarify fpurge's effect on the file position.
1263         * lib/stdio.in.h (fpurge): Specify the file position after fpurge.
1264         * tests/test-fpurge.c (main): Make a second pass for checking the file
1265         position.
1266
1267 2009-08-16  Bruno Haible  <bruno@clisp.org>
1268
1269         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't compile fpurge.c if only the
1270         declaration of fpurge is missing.
1271         * tests/test-fpurge.c (main): Check that the file has not more contents
1272         than expected. Close the file before removing it.
1273
1274 2009-08-15  Eric Blake  <ebb9@byu.net>
1275
1276         fpurge: don't wrap working cygwin implementation
1277         * lib/fpurge.c (fpurge): Fix comment typo.
1278         * m4/fpurge.m4 (gl_FUNC_FPURGE): Detect BSD bug, allowing cygwin
1279         1.7 to avoid replacement.
1280         * tests/test-fpurge.c (main): Enhance test.
1281
1282 2009-08-15  Eric Blake  <ebb9@byu.net>
1283         and Jim Meyering  <meyering@redhat.com>
1284
1285         test-update-copyright: skip if perl is insufficient
1286         * tests/test-update-copyright.sh: Failure to run maintainer tool
1287         should not cause testsuite failure on cygwin 1.5.
1288
1289 2009-08-14  Eric Blake  <ebb9@byu.net>
1290
1291         doc: mention more functions added in cygwin 1.7.0
1292         * doc/posix-headers/limits.texi (limits.h): Update for recent
1293         cygwin additions.
1294         * doc/posix-headers/wordexp.texi (wordexp.h): Likewise.
1295         * doc/posix-functions/wordexp.texi (wordexp): Likewise.
1296         * doc/posix-functions/wordfree.texi (wordfree): Likewise.
1297         * doc/posix-functions/setlocale.texi (setlocale): Likewise.
1298         * doc/posix-functions/nl_langinfo.texi (nl_langinfo): Likewise.
1299
1300 2009-08-14  Eric Blake  <ebb9@byu.net>
1301
1302         maint.mk: simplify update-copyright rule
1303         * top/maint.mk (update-copyright-local): Delete, and document how
1304         to do it in cfg.mk instead.
1305         (update-copyright-exclude-regexp): Delete, and document how to do
1306         it in .x-update-copyright instead.
1307         (update-copyright): Simplify, thanks to VC_LIST_EXCEPT.  Don't
1308         exclude ChangeLog.
1309
1310 2009-08-14  Bruno Haible  <bruno@clisp.org>
1311
1312         * m4/wchar.m4 (gl_WCHAR_H): Undo invalid optimization in last commit.
1313
1314 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
1315
1316         maint.mk: support update-copyright-env
1317         * top/maint.mk (update-copyright-env): Define place-holder.
1318         (update-copyright): Expand $(update-copyright-env) before
1319         invoking update-copyright.
1320
1321 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
1322
1323         update-copyright: implement forced reformatting
1324         * build-aux/update-copyright: Implement and document
1325         UPDATE_COPYRIGHT_FORCE.
1326         * tests/test-update-copyright.sh: Test it.
1327
1328 2009-08-14  Eric Blake  <ebb9@byu.net>
1329         and Bruno Haible  <bruno@clisp.org>
1330
1331         stddef: fix NetBSD 5.0 NULL bug, rather than working around it
1332         * tests/test-locale.c: Revert previous patch related to NULL.
1333         * tests/test-stdio.c: Likewise.
1334         * tests/test-stdlib.c: Likewise.
1335         * tests/test-string.c: Likewise.
1336         * tests/test-unistd.c: Likewise.
1337         * modules/time-tests (Depends-on): Add verify.
1338         * modules/wchar-tests (Depends-on): Likewise.
1339         * tests/test-time.c: Test for NULL compliance.
1340         * tests/test-wchar.c: Likewise.
1341         * modules/locale (Depends-on): Add stddef.
1342         * modules/stdio (Depends-on): Likewise.
1343         * modules/stdlib (Depends-on): Likewise.
1344         * modules/string (Depends-on): Likewise.
1345         * modules/time (Depends-on): Likewise.
1346         * modules/unistd (Depends-on): Likewise.
1347         * modules/wchar (Depends-on): Likewise.
1348         * lib/locale.in.h (includes): Use <stddef.h> to fix NULL.
1349         * lib/stdlib.in.h (includes): Likewise.
1350         * lib/string.in.h (includes): Likewise.
1351         * lib/time.in.h (includes): Likewise.
1352         * lib/unistd.in.h (includes): Likewise.
1353         * m4/locale_h.m4 (gl_LOCALE_H): Replace locale.h if stddef.h was
1354         replaced.
1355         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
1356         * m4/stddef_h.m4: New file.
1357         * modules/stddef: Likewise.
1358         * lib/stddef.in.h: Likewise.
1359         * modules/stddef-tests: Likewise.
1360         * tests/test-stddef.c: Likewise.
1361         * MODULES.html.sh (Basic types <stddef.h>): Mention new module.
1362         * doc/posix-headers/stddef.texi (stddef.h): Document the bug.
1363         * doc/posix-headers/locale.texi (locale.h): Likewise.
1364         * doc/posix-headers/stdio.texi (stdio.h): Likewise.
1365         * doc/posix-headers/stdlib.texi (stdlib.h): Likewise.
1366         * doc/posix-headers/string.texi (string.h): Likewise.
1367         * doc/posix-headers/time.texi (time.h): Likewise.
1368         * doc/posix-headers/unistd.texi (unistd.h): Likewise.
1369         * doc/posix-headers/wchar.texi (wchar.h): Likewise.
1370
1371 2009-08-14  Eric Blake  <ebb9@byu.net>
1372
1373         doc: improve git diff of texinfo files
1374         * .gitattributes: Add rule for *.texi files, with hint on how to
1375         use it.
1376         Copied from m4, and based on a report by Bruno Haible.
1377
1378 2009-08-14  Bruno Haible  <bruno@clisp.org>
1379
1380         Disable multithread support by default on Cygwin 1.5.x for real.
1381         * m4/threadlib.m4 (gl_THREADLIB_EARLY_BODY): Fix last commit.
1382
1383 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
1384
1385         update-copyright: much ado about intervals
1386         * build-aux/update-copyright: Implement and document
1387         UPDATE_COPYRIGHT_USE_INTERVALS to control expansion and collapse
1388         of copyright year intervals.
1389         Also, document UPDATE_COPYRIGHT_YEAR.
1390         * tests/test-update-copyright.sh: Test it.
1391
1392         update-copyright: convert 2-digit to 4-digit years
1393         * build-aux/update-copyright: Implement and document.
1394         * tests/test-update-copyright.sh: Update.
1395
1396 2009-08-14  Jim Meyering  <meyering@redhat.com>
1397
1398         test-exclude: avoid coreutils "make check" failure
1399         * tests/test-exclude.c (ARGMATCH_DIE_DECL) [ARGMATCH_DIE_DECL]: Define,
1400         just as in test-argmatch.c.
1401
1402 2009-08-13  Eric Blake  <ebb9@byu.net>
1403
1404         test-dup2: fix bad assumption
1405         * tests/test-dup2.c (main): Tolerate leaked fds from environment.
1406         Reported by Peter Breitenlohner <peb@mppmu.mpg.de>.
1407
1408         test-version-etc: fix CRLF portability issue
1409         * tests/test-version-etc.sh: Use tr, not sed, as not all sed
1410         recognize \r.
1411         * tests/test-argp-version-etc-1.sh: Likewise.
1412
1413         getopt: update client modules
1414         * modules/argp (Depends-on): Use getopt-gnu.
1415         * modules/git-merge-changelog (Depends-on): Likewise.
1416         * modules/long-options (Depends-on): Likewise.
1417         * modules/xstrtol (Depends-on): Likewise.
1418
1419 2009-08-13  Simon Josefsson  <simon@josefsson.org>
1420
1421         * tests/test-version-etc.sh: Don't fail on different
1422         project/version.  Don't fail on CRLF differences.  Rewrite to use
1423         multiple -e instead of multiple sed forks, suggested by Eric Blake
1424         <ebb9@byu.net>.
1425         * tests/test-argp-version-etc-1.sh: Likewise.
1426
1427 2009-08-13  Simon Josefsson  <simon@josefsson.org>
1428
1429         * tests/test-version-etc.sh: Don't fail on different
1430         project/version.
1431
1432 2009-08-12  Bruno Haible  <bruno@clisp.org>
1433
1434         Tests for modules 'getopt-posix', 'getopt-gnu'.
1435         * modules/getopt-posix-tests: New file.
1436         * tests/test-getopt.c: New file.
1437         * tests/test-getopt.h: New file.
1438         * tests/test-getopt_long.h: New file.
1439
1440         New modules 'getopt-posix', 'getopt-gnu'.
1441         * modules/getopt-gnu: New file, renamed from modules/getopt.
1442         * modules/getopt-posix: New file.
1443         * modules/getopt: Turn into an obsolete alias for getopt-gnu.
1444         * m4/getopt.m4 (gl_FUNC_GETOPT_POSIX, gl_FUNC_GETOPT_GNU): New macros.
1445         (gl_GETOPT): Remove macro.
1446         (gl_GETOPT_CHECK_HEADERS): Do some checks only for gl_FUNC_GETOPT_GNU.
1447         Disable the test against BSD systems that declare optreset. Test
1448         against mingw bug. Test against lack of support of optional arguments
1449         on many platforms.
1450         * doc/glibc-headers/getopt.texi: Update module name and list of
1451         relevant platforms.
1452         * doc/posix-functions/getopt.texi: Mention modules 'getopt-posix' and
1453         'getopt-gnu' and more portability problems.
1454         * NEWS: Mention the changes.
1455
1456 2009-08-12  Bruno Haible  <bruno@clisp.org>
1457
1458         Ensure that optarg etc. get declared by <unistd.h>.
1459         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Require
1460         AC_USE_SYSTEM_EXTENSIONS.
1461         * modules/getopt (Depends-on): Add 'extensions'.
1462
1463 2009-08-12  Bruno Haible  <bruno@clisp.org>
1464
1465         Avoid test link errors.
1466         * modules/pipe-filter-ii-tests (Makefile.am): Define
1467         test_pipe_filter_ii1_LDADD and test_pipe_filter_ii2_main_LDADD.
1468         * modules/pipe-filter-gi-tests (Makefile.am): Define
1469         test_pipe_filter_gi1_LDADD and test_pipe_filter_gi2_main_LDADD.
1470         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
1471
1472 2009-08-12  Bruno Haible  <bruno@clisp.org>
1473
1474         * m4/getopt.m4 (gl_REPLACE_GETOPT): New macro, was called
1475         gl_GETOPT_SUBSTITUTE before.
1476         (gl_GETOPT): Use it.
1477         * m4/argp.m4 (gl_ARGP): Update.
1478         Reported by Sergey Poznyakoff.
1479
1480         * m4/getopt.m4: Reorder macros.
1481         (gl_GETOPT): Inline gl_GETOPT_SUBSTITUTE.
1482         (gl_GETOPT_SUBSTITUTE): Remove macro.
1483
1484 2009-08-12  Sergey Poznyakoff  <gray@gnu.org.ua>
1485
1486         Minor improvement in gitlog-to-changelog
1487
1488         * build-aux/gitlog-to-changelog: New option `--format' makes
1489         output format string configurable.
1490
1491 2009-08-12  Sergey Poznyakoff  <gray@gnu.org.ua>
1492
1493         Optimize exclude: use hash tables for non-wildcard patterns.
1494
1495         * lib/exclude.c: Include hash.h and mbuiter.h
1496         (struct exclude_pattern, exclude_segment): New data types.
1497         (struct exclude): Rewrite.
1498         (fnmatch_pattern_has_wildcards): New function.
1499         (new_exclude_segment, free_exclude_segment): New functions.
1500         (excluded_file_pattern_p, excluded_file_name_p): New functions.
1501         (excluded_file_name, add_exclude): Rewrite using new struct exclude.
1502         * lib/exclude.h (is_fnmatch_pattern): New prototype.
1503         * modules/exclude: Depend on hash and mbuiter.
1504
1505         * modules/exclude-tests: New file.
1506         * tests/test-exclude.c: New file.
1507         * tests/test-exclude1.sh: New file.
1508         * tests/test-exclude2.sh: New file.
1509         * tests/test-exclude3.sh: New file.
1510         * tests/test-exclude4.sh: New file.
1511         * tests/test-exclude5.sh: New file.
1512         * tests/test-exclude6.sh: New file.
1513         * tests/test-exclude7.sh: New file.
1514
1515 2009-08-12  Bruno Haible  <bruno@clisp.org>
1516
1517         Ensure that getopt() gets declared by <unistd.h>.
1518         * lib/unistd.in.h: Conditionally include getopt.h.
1519         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Require gl_UNISTD_H_DEFAULTS.
1520         Set GNULIB_UNISTD_H_GETOPT.
1521         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
1522         GNULIB_UNISTD_H_GETOPT.
1523         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_GETOPT.
1524
1525 2009-08-12  Bruno Haible  <bruno@clisp.org>
1526
1527         Clarify logic.
1528         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS, gl_GETOPT_IFELSE): Use
1529         gl_replace_getopt instead of GETOPT_H.
1530
1531 2009-08-12  Bruno Haible  <bruno@clisp.org>
1532
1533         * m4/getopt.m4: Add comments.
1534
1535 2009-08-12  Bruno Haible  <bruno@clisp.org>
1536
1537         Disable multithread support by default on Cygwin 1.5.x.
1538         * m4/threadlib.m4 (gl_THREADLIB_EARLY_BODY): On Cygwin 1.5.x and older,
1539         set gl_use_threads=no if not specified otherwise.
1540
1541 2009-08-11  Bruno Haible  <bruno@clisp.org>
1542
1543         Avoid compilation error on NetBSD 5.0.
1544         * tests/test-locale.c: Write sizeof (NULL) instead of sizeof NULL.
1545         * tests/test-stdio.c: Likewise.
1546         * tests/test-stdlib.c: Likewise.
1547         * tests/test-string.c: Likewise.
1548         * tests/test-unistd.c: Likewise.
1549         Reported by Greg Troxel <gdt@ir.bbn.com>
1550         at <https://savannah.gnu.org/support/?106973>.
1551
1552 2009-08-11  Bruno Haible  <bruno@clisp.org>
1553
1554         * modules/dup2-tests (Depends-on): Remove close.
1555
1556         Undo 2009-07-19 commit.
1557         * modules/acl-tests (Depends-on): Remove close.
1558         * modules/binary-io-tests (Depends-on): Likewise.
1559         * modules/closein-tests (Depends-on): Likewise.
1560         * modules/flock-tests (Depends-on): Likewise.
1561         * modules/fsync-tests (Depends-on): Likewise.
1562         * modules/lseek-tests (Depends-on): Likewise.
1563         * modules/pipe-tests (Depends-on): Likewise.
1564         * modules/posix_spawn-tests (Depends-on): Likewise.
1565         * modules/posix_spawnp-tests (Depends-on): Likewise.
1566         * modules/stat-time-tests (Depends-on): Likewise.
1567         * modules/yesno-tests (Depends-on): Likewise.
1568
1569 2009-08-10  Bruno Haible  <bruno@clisp.org>
1570
1571         * lib/vasnprintf.c (DCHAR_SET): Undefine at the end.
1572
1573 2009-08-10  Bruno Haible  <bruno@clisp.org>
1574
1575         Fix a gcc warning.
1576         * lib/write.c (rpl_write): Cast result of _get_osfhandle.
1577
1578 2009-08-10  Bruno Haible  <bruno@clisp.org>
1579
1580         Don't optimize AC_LIBOBJs, as they may appear in different contexts.
1581         * m4/close.m4 (gl_REPLACE_CLOSE): Execute AC_LIBOBJ unconditionally,
1582         not only the first time.
1583         * m4/fclose.m4 (gl_REPLACE_FCLOSE): Likewise.
1584         * m4/open.m4 (gl_REPLACE_OPEN): Likewise.
1585         * m4/strstr.m4 (gl_FUNC_STRSTR): Execute AC_LIBOBJ when REPLACE_STRSTR
1586         is 1, not only the the first time.
1587
1588 2009-08-10  Bruno Haible  <bruno@clisp.org>
1589
1590         Make it possible to use module 'gethostname' without module 'close'.
1591         * lib/unistd.in.h (close): Evoke a link error only if
1592         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS is set.
1593         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
1594         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1595         * modules/unistd (Makefile.am): Substitute
1596         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1597         * lib/sys_ioctl.in.h (ioctl): Evoke a link error only if
1598         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS is set.
1599         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H_DEFAULTS): Initialize
1600         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1601         * modules/sys_ioctl (Makefile.am): Substitute
1602         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1603         * modules/socket (configure.ac): On native Windows, set
1604         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS and
1605         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1606         Reported by Sam Steingold <sds@gnu.org>.
1607
1608 2009-08-10  Bruno Haible  <bruno@clisp.org>
1609
1610         * m4/close.m4 (gl_FUNC_CLOSE): Add comment.
1611         * modules/ioctl (configure.ac): Likewise.
1612
1613 2009-08-10  Bruno Haible  <bruno@clisp.org>
1614
1615         Avoid collision between gnulib wrapper and libintl wrapper.
1616         * lib/stdio-write.c (printf): Don't define if a printf wrapper is
1617         already defined in intl/printf.c.
1618         (vprintf): Test REPLACE_VPRINTF_POSIX, not REPLACE_VFPRINTF_POSIX.
1619         (vfprintf): Test REPLACE_VFPRINTF_POSIX, not REPLACE_VPRINTF_POSIX.
1620
1621 2009-08-09  Bruno Haible  <bruno@clisp.org>
1622
1623         Make <sys/select.h> really self-contained, also on Solaris 10.
1624         * lib/sys_select.in.h: Include <string.h>.
1625         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Test also against
1626         Solaris 10 problem.
1627         * tests/test-sys_select.c (main): Add check that FD_ZERO can be used.
1628         * doc/posix-headers/sys_select.texi: Mention the Solaris 10 problem.
1629         Reported by Jim Meyering.
1630
1631 2009-08-09  Bruno Haible  <bruno@clisp.org>
1632
1633         Avoid warnings from 'aclocal' that are due to a use of macro name
1634         AM_XGETTEXT_OPTION that is not defined in automake.
1635         * modules/argp (configure.ac): Hide use of AM_XGETTEXT_OPTION from
1636         automake.
1637         * modules/error (configure.ac): Likewise.
1638         * modules/propername (configure.ac): Likewise.
1639         * modules/vasprintf (configure.ac): Likewise.
1640         * modules/verror (configure.ac): Likewise.
1641         * modules/xprintf (configure.ac): Likewise.
1642         * modules/xvasprintf (configure.ac): Likewise.
1643
1644 2009-08-08  Bruno Haible  <bruno@clisp.org>
1645
1646         Avoid compilation error in C++ mode.
1647         * lib/gettimeofday.c (rpl_gettimeofday): Cast timezone argument.
1648         Reported by Sam Steingold <sds@gnu.org>.
1649
1650 2009-08-08  Bruno Haible  <bruno@clisp.org>
1651
1652         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Define HOST_NAME_MAX also
1653         for the various Unix platforms.
1654         * doc/posix-headers/limits.texi: Update platforms list regarding
1655         HOST_NAME_MAX.
1656         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
1657
1658 2009-08-07  Jim Meyering  <meyering@redhat.com>
1659
1660         selinux-at: fix typo in a comment
1661         * lib/selinux-at.h: s/getfileconat/getfilecon/ in a comment.
1662         Spotted by Paolo Bonzini.
1663
1664         selinux-at: remove redundant m4 code, add documentation
1665         * modules/selinux-at (configure.ac): Remove redundant code.
1666         LIB_SELINUX is already set via the dependent module, selinux-h.
1667         (Include): Add quotes around selinux-at.h.
1668         * lib/selinux-at.h: Add documentation.
1669         Reported by Bruno Haible in
1670         http://marc.info/?l=gnulib-bug&m=124958988300749
1671
1672 2009-08-07  Bruno Haible  <bruno@clisp.org>
1673
1674         Avoid link error on MacOS X 10.3 and 10.4.
1675         * lib/argp-ba.c (argp_program_bug_address): Explicitly zero-initialize
1676         on non-ELF systems.
1677         * lib/argp-pv.c (argp_program_version): Likewise.
1678         Reported by Simon Josefsson.
1679
1680 2009-08-07  Simon Josefsson  <simon@josefsson.org>
1681
1682         * tests/test-version-etc.sh: Use $EXEEXT.
1683
1684 2009-08-06  Joel E. Denny  <jdenny@clemson.edu>
1685
1686         update-copyright: update documentation to point to maint.mk
1687         * build-aux/update-copyright: Here.
1688
1689 2009-08-06  Jim Meyering  <meyering@redhat.com>
1690
1691         maint.mk: support update-copyright-local
1692         * top/maint.mk (update-copyright-local): Define place-holder.
1693         (update-copyright): Depend on $(update-copyright-local).
1694
1695 2009-08-06  Jim Meyering  <meyering@redhat.com>
1696
1697         selinux-at: new module
1698         Initially written for coreutils, this module will soon be
1699         used by findutils, too.
1700         * MODULES.html.sh [Misc]: Add selinux-at.
1701         * lib/selinux-at.h: New file, from coreutils.
1702         * lib/selinux-at.c: Likewise.
1703         * modules/selinux-at: Likewise.
1704         (License): Change from LGPL to GPL, since it depends
1705         on the GPL'd openat module.
1706
1707         doc: update README
1708         * README: Remove references to cogito.
1709         Remove cvs-repo-updating instructions from 2007.
1710         Don't imply that CVS is better if you have limited disk space.
1711
1712 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1713
1714         update-copyright: support C-style comments
1715         * build-aux/update-copyright: Implement and document.
1716         * tests/test-update-copyright.sh: Test.
1717
1718 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1719
1720         update-copyright: support omitted "(C)"
1721         * build-aux/update-copyright: Implement and document.  Also,
1722         allow variable whitespace before "(C)".
1723         * tests/test-update-copyright.sh: Test.
1724
1725 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1726
1727         update-copyright: don't trip on non-FSF copyright statements
1728         * build-aux/update-copyright: Fix so that the first correctly
1729         formatted FSF copyright statement is recognized no matter what
1730         appears before it.  Update documentation.
1731         * tests/test-update-copyright.sh: Test that.
1732
1733 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1734
1735         update-copyright: clean up code a little
1736         * build-aux/update-copyright: Append "_re" to the name of any
1737         variable holding a regular expression.
1738         Replace "old" and "new" with "stmt" in variable names.
1739         Do not accept 2-digit UPDATE_COPYRIGHT_YEAR, which was not
1740         handled correctly.
1741         Format code more consistently.
1742
1743 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1744
1745         update-copyright-tests: improve portability
1746         * tests/test-update-copyright.sh: Use cmp if diff cannot handle
1747         -u or /dev/null.  Suggested by Jim Meyering and Eric Blake.
1748
1749 2009-08-03  Joel E. Denny  <jdenny@clemson.edu>
1750
1751         update-copyright: support @copyright{} and &copy;
1752         * build-aux/update-copyright: Implement and document.
1753         * tests/test-update-copyright.sh: Test.
1754
1755 2009-08-04  Jim Meyering  <meyering@redhat.com>
1756
1757         update-copyright-tests: correctly test EOL=\r\n handling
1758         * tests/test-update-copyright.sh: Put \r at the end of some lines
1759         for the dos-eol tests.  Based on a patch by Joel E. Denny.
1760
1761         maint.mk: make update-copyright exclusion list more configurable
1762         * top/maint.mk (update-copyright): Default to excluding COPYING,
1763         but allow an override, in case someone does want to update that file.
1764
1765         maint.mk: don't update copyright date in COPYING
1766         * top/maint.mk (update-copyright): Exclude COPYING.
1767
1768         maint.mk: add a copyright-updating rule
1769         * top/maint.mk (update-copyright): New rule.
1770         Derived from coreutils/Makefile.am.
1771
1772         update-copyright: rename some variables
1773         * build-aux/update-copyright: Rename a few variables for clarity.
1774         Tweak syntax.  List Joel E. Denny as coauthor.
1775
1776 2009-08-03  Joel E. Denny  <jdenny@clemson.edu>
1777
1778         update-copyright: fix bug for 2-digit last year and add tests
1779         * build-aux/update-copyright: Fix bug.
1780         Use UPDATE_COPYRIGHT_YEAR from environment as current year if
1781         specified.
1782         * modules/update-copyright-tests: New
1783         * tests/test-update-copyright.sh: New.
1784
1785 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
1786
1787         update-copyright: handle leading tabs in line prefix
1788         * build-aux/update-copyright: Count leading tabs as 8 spaces
1789         when computing margin.  This helps with the formatting of
1790         ChangeLogs, for example.
1791         Fix documentation a little.
1792
1793 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
1794
1795         update-copyright: support EOL=\r\n
1796         * build-aux/update-copyright: Implement that.
1797
1798 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
1799
1800         update-copyright: automatically format copyright statements
1801         * build-aux/update-copyright: Implement that.
1802         Also, be a little more predictable and safer by always failing
1803         when the full copyright format is not perfectly recognized as an
1804         unbroken whole.  Discussed at
1805         <http://lists.gnu.org/archive/html/bug-gnulib/2009-07/msg00131.html>.
1806         Rewrite documentation.
1807
1808 2009-08-03  Bruno Haible  <bruno@clisp.org>
1809
1810         * m4/iconv.m4 (AM_ICONV): Fix displayed message with autoconf-2.64.
1811
1812 2009-08-02  Bruno Haible  <bruno@clisp.org>
1813
1814         Tests for module 'uname'.
1815         * modules/uname-tests: New file.
1816         * tests/test-uname.c: New file.
1817
1818         New module 'uname'.
1819         * lib/uname.c: New file.
1820         * m4/uname.m4: New file.
1821         * modules/uname: New file.
1822         * doc/posix-functions/uname.texi: Mention the new module.
1823
1824 2009-08-02  Bruno Haible  <bruno@clisp.org>
1825
1826         Tests for module 'sys_utsname'.
1827         * modules/sys_utsname-tests: New file.
1828         * tests/test-sys_utsname.c: New file.
1829
1830         New module 'sys_utsname'.
1831         * lib/sys_utsname.in.h: New file, based on glibc's <sys/utsname.h>.
1832         * m4/sys_utsname_h.m4: New file.
1833         * modules/sys_utsname: New file.
1834         * doc/posix-headers/sys_utsname.texi: Mention the new module.
1835
1836 2009-08-02  Bruno Haible  <bruno@clisp.org>
1837
1838         Implicitly initialize the sockets library.
1839         * lib/gethostname.c: Include sockets.h.
1840         (rpl_gethostname): Invoke gl_sockets_startup.
1841         * lib/socket.c: Include sockets.h.
1842         (rpl_socket): Invoke gl_sockets_startup.
1843         * modules/gethostname (Depends-on): Add sockets.
1844         * modules/socket (Depends-on): Likewise.
1845         * tests/test-poll.c: Don't include sockets.h.
1846         (main): Don't invoke gl_sockets_startup.
1847         * tests/test-select.c: Don't include sockets.h.
1848         (main): Don't invoke gl_sockets_startup.
1849
1850 2009-08-02  Bruno Haible  <bruno@clisp.org>
1851
1852         Allow multiple calls to gl_sockets_startup.
1853         * lib/sockets.c (initialized_sockets_version): New variable.
1854         (gl_sockets_startup): Do nothing if already called for this or a higher
1855         version.
1856         (gl_sockets_cleanup): Reset initialized_sockets_version.
1857
1858 2009-08-03  Simon Josefsson  <simon@josefsson.org>
1859
1860         * tests/test-argp-version-etc-1.sh: Use EXEEXT.  Don't fail on
1861         different project/version.
1862
1863 2009-08-02  Paolo Bonzini  <bonzini@gnu.org>
1864             Bruno Haible  <bruno@clisp.org>
1865
1866         Tests for module 'pipe-filter-gi'.
1867         * modules/pipe-filter-gi-tests: New file.
1868         * tests/test-pipe-filter-gi1.sh: New file.
1869         * tests/test-pipe-filter-gi1.c: New file.
1870         * tests/test-pipe-filter-gi2.sh: New file.
1871         * tests/test-pipe-filter-gi2-main.c: New file.
1872         * tests/test-pipe-filter-gi2-child.c: New file.
1873
1874         New module 'pipe-filter-gi'.
1875         * lib/pipe-filter-gi.c: New file.
1876         * modules/pipe-filter-gi: New file.
1877
1878 2009-08-02  Bruno Haible  <bruno@clisp.org>
1879             Paolo Bonzini  <bonzini@gnu.org>
1880
1881         Tests for module 'pipe-filter-ii'.
1882         * modules/pipe-filter-ii-tests: New file.
1883         * tests/test-pipe-filter-ii1.sh: New file.
1884         * tests/test-pipe-filter-ii1.c: New file.
1885         * tests/test-pipe-filter-ii2.sh: New file.
1886         * tests/test-pipe-filter-ii2-main.c: New file.
1887         * tests/test-pipe-filter-ii2-child.c: New file.
1888
1889         New module 'pipe-filter-ii'.
1890         * lib/pipe-filter.h: New file.
1891         * lib/pipe-filter-ii.c: New file.
1892         * lib/pipe-filter-aux.h: New file.
1893         * modules/pipe-filter-ii: New file.
1894
1895 2009-08-02  Simon Josefsson  <simon@josefsson.org>
1896
1897         * lib/gc-libgcrypt.c: Change copyright to FSF.
1898         * lib/gc-gnulib.c: Likewise.
1899
1900 2009-08-02  Martin Lambers  <marlam@marlam.de>  (tiny change)
1901
1902         * lib/gethostname.c: Include limits.h.
1903
1904 2009-08-02  Simon Josefsson  <simon@josefsson.org>
1905             Bruno Haible  <bruno@clisp.org>
1906
1907         Ensure HOST_NAME_MAX as part of the gethostname module.
1908         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): On native Windows platforms,
1909         define also HOST_NAME_MAX.
1910         * tests/test-gethostname.c: Include <limits.h>.
1911         (main): Check also HOST_NAME_MAX.
1912         * doc/posix-headers/limits.texi: Document the mingw problem.
1913
1914 2009-08-02  Bruno Haible  <bruno@clisp.org>
1915
1916         * lib/gethostname.c (gethostname): Fix handling of large len argument.
1917         Add comments.
1918
1919 2009-03-31  Simon Josefsson  <simon@josefsson.org>
1920
1921         * lib/gethostname.c: Add Windows wrapper.
1922         * m4/gethostname.m4: Look for gethostname in -lws2_32.
1923         * modules/gethostname: Depend on sys_socket & errno, for also
1924         added lib/w32sock.h.  Add GETHOSTNAME_LIB link directive.
1925         * modules/gethostname-tests: Link to @GETHOSTNAME_LIB@.
1926
1927 2009-07-31  Jim Meyering  <meyering@redhat.com>
1928
1929         getloadavg: fix symbol name in comment
1930         * lib/getloadavg.c: Correct a typo I introduced when adding
1931         comments to Matt's change: s/NLIST_POINTER/N_NAME_POINTER/.
1932         Matt Kraai spotted the problem.
1933
1934 2009-07-29  Matt Kraai  <mkraai@beckman.com>
1935
1936         getloadavg: check whether n_name is a pointer, for QNX 6.4.1
1937         * lib/getloadavg.c (getloadavg): Use the strcpy-into-nlist.n_name
1938         code also if ! defined N_NAME_POINTER.
1939         * m4/getloadavg.m4 (gl_GETLOADAVG): Add a link-test for N_NAME_POINTER.
1940         This is required on QNX 6.4.1, where /usr/include/nlist.h exists,
1941         but the n_name member is a 12-byte array.
1942
1943 2009-07-29  Joel E. Denny  <jdenny@clemson.edu>
1944
1945         update-copyright: generalize comment handling
1946         * build-aux/update-copyright: Handle copyright statements
1947         within more comment styles.
1948         Document usage.
1949         Report any file with an external copyright holder or parse failure.
1950
1951 2009-07-29  Jim Meyering  <meyering@redhat.com>
1952
1953         mktime: correct setting of REPLACE_MKTIME
1954         * m4/mktime.m4 (gl_FUNC_MKTIME): Set REPLACE_MKTIME=0, when required.
1955
1956         update-copyright: new module
1957         * modules/update-copyright: New file.
1958         * build-aux/update-copyright: New file.
1959         * MODULES.html.sh (maint+release support): Add update-copyright.
1960
1961 2009-07-27  Bruno Haible  <bruno@clisp.org>
1962
1963         Fix compilation error when <ctime> is used and mktime is replaced.
1964         * lib/time.in.h (mktime): New declaration.
1965         * m4/mktime.m4 (gl_FUNC_MKTIME): Require gl_HEADER_TIME_H_DEFAULTS. Set
1966         REPLACE_MKTIME instead of defining mktime in config.h.
1967         * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize REPLACE_MKTIME.
1968         * modules/time (Makefile.am): Substitute REPLACE_MKTIME.
1969         Reported by Ross McFarland <rwmcfa1@neces.com>.
1970
1971 2009-07-27  Bruno Haible  <bruno@clisp.org>
1972
1973         * lib/math.in.h (cosl, logl, sinl): Undefine before declaring it.
1974         Reported by Matt Kraai <mkraai@beckman.com>.
1975
1976 2009-07-25  Jim Meyering  <meyering@redhat.com>
1977
1978         maint.mk: avoid warnings about missing files
1979         * top/maint.mk (PREV_VERSION): Suppress stderr, to hide a
1980         diagnostic when .prev-version does not exist.
1981         (_cfg_mk): Define, so it can be empty when cfg.mk does not exist.
1982         (syntax-check-rules): Use $(_cfg_mk) to avoid a diagnostic about
1983         nonexistent cfg.mk.
1984         Suggestions from Simon Josefsson.
1985
1986 2009-07-25  Bruno Haible  <bruno@clisp.org>
1987
1988         * lib/math.in.h (cosl, logl, sinl): Don't declare if they are already
1989         defined as macros. Needed on QNX 6.4.1.
1990         Reported by Matt Kraai <mkraai@beckman.com>.
1991
1992 2009-07-23  Jim Meyering  <meyering@redhat.com>
1993
1994         maint.mk: invoke "make dist" with a working value of XZ_OPT
1995         * top/maint.mk (vc-dist): Use no "-" in the value of XZ_OPT.
1996
1997 2009-07-22  Matt Kraai  <mkraai@beckman.com>  (tiny change)
1998
1999         Make fseeko.c compile on QNX.
2000         * lib/fseeko.c (rpl_fseeko): Use the numerical value of _MWRITE.
2001
2002 2009-07-22  Peter Simons  <simons@cryp.to>
2003
2004         C++: wrap md2,md5,sha1,etc. function declarations in extern "C" scope
2005         * lib/md2.h [__cplusplus]: Wrap declarations in extern "C" scope.
2006         * lib/md4.h: Likewise.
2007         * lib/md5.h: Likewise.
2008         * lib/sha1.h: Likewise.
2009         * lib/sha256.h: Likewise.
2010         * lib/sha512.h: Likewise.
2011
2012         tests-sha1: don't assign literal string to 'char *' variable
2013         * tests/test-sha1.c (main): Declare locals with "const" to match
2014         attributes of the right hand side.
2015
2016 2009-07-21  Eric Blake  <ebb9@byu.net>
2017
2018         dup2: fix more mingw problems
2019         * lib/dup2.c (rpl_dup2) [_WIN32]: Avoid hanging when duplicating
2020         fd to itself.
2021         * doc/posix-functions/dup2.texi (dup2): Document the bug.
2022         * lib/unistd.in.h (dup2) [REPLACE_FCHDIR]: Avoid name collision.
2023         * lib/fchdir.c (dup2): Manage preprocessor macros correctly.
2024         (rpl_dup2_fchdir): Rename from rpl_dup2, and let dup2 module take
2025         care of mingw bugs.
2026
2027 2009-07-21  Jim Meyering  <meyering@redhat.com>
2028
2029         vc-list-files: avoid failure when /bin/sh is dash
2030         * build-aux/vc-list-files: Avoid a shell portability problem with dash.
2031         On some Debian based systems, /bin/sh is a symlink to dash, and running
2032         this command would omit the "/" following each 'tests' prefix:
2033           dash -x build-aux/vc-list-files -C . tests
2034         That is because bash and dash work differently:
2035           $ for i in bash dash; do $i -c 'a=odd; a=ok b=$a; echo '$i' $b'; done
2036           bash ok
2037           dash odd
2038
2039 2009-07-21  Eric Blake  <ebb9@byu.net>
2040
2041         dup2-tests: test previous patch
2042         * modules/dup2-tests: New file.
2043         * tests/test-dup2.c: Likewise.
2044         * tests/test-open.c (main): Avoid unspecified behavior.
2045         * tests/test-pipe.c (child_main): Use dup2 semantics to simplify
2046         test.
2047
2048         dup2: work around mingw and cygwin 1.5 bug
2049         * m4/dup2.m4 (gl_FUNC_DUP2): Detect mingw bug.
2050         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
2051         * modules/unistd (Makefile.am): Substitute it.
2052         * lib/unistd.in.h (dup2): Declare the replacement.
2053         * lib/dup2.c (dup2) [REPLACE_DUP2]: Implement it.
2054         * doc/posix-functions/dup2.texi (dup2): Document the bugs.
2055         * lib/fchdir.c (rpl_dup2): Don't collide with mingw replacement.
2056         * modules/execute (Depends-on): Add dup2.
2057         * modules/fseterr (Depends-on): Likewise.
2058         * modules/pipe (Depends-on): Likewise.
2059         * modules/posix_spawn-internal (Depends-on): Likewise.
2060
2061 2009-07-21  Bruno Haible  <bruno@clisp.org>
2062
2063         * modules/.gitattributes: New file.
2064
2065 2009-07-20  Bruno Haible  <bruno@clisp.org>
2066
2067         * tests/test-pipe.c (BACKUP_STDERR_FILENO): New macro.
2068         (main): Use it.
2069
2070 2009-07-20  Eric Blake  <ebb9@byu.net>
2071
2072         test-pipe: make a bit more robust.
2073         * tests/test-pipe.c (myerr): Allow error messages regardless of
2074         what we do to stderr.
2075         (test_pipe): Rearrange to avoid deadlock.
2076         (child_main): Try a larger read, to ensure we avoided deadlock.
2077         * lib/pipe.c (create_pipe) [_WIN32]: Fix comment.
2078         * lib/pipe.h (create_pipe_bidi): Document potential for deadlock
2079         if misused.
2080
2081 2009-07-19  Jim Meyering  <meyering@redhat.com>
2082
2083         fts: avoid false-positive cycle-detection
2084         * lib/fts.c (fts_read): Reinitialize cycle-detection data structures
2085         for each new command line argument.
2086
2087 2009-07-19  Bruno Haible  <bruno@clisp.org>
2088
2089         Fix build error on mingw with the modules sys_select and unistd.
2090         * modules/acl-tests (Depends-on): Add close.
2091         * modules/binary-io-tests (Depends-on): Likewise.
2092         * modules/closein-tests (Depends-on): Likewise.
2093         * modules/flock-tests (Depends-on): Likewise.
2094         * modules/fsync-tests (Depends-on): Likewise.
2095         * modules/lseek-tests (Depends-on): Likewise.
2096         * modules/pipe-tests (Depends-on): Likewise.
2097         * modules/posix_spawn-tests (Depends-on): Likewise.
2098         * modules/posix_spawnp-tests (Depends-on): Likewise.
2099         * modules/stat-time-tests (Depends-on): Likewise.
2100         * modules/yesno-tests (Depends-on): Likewise.
2101
2102 2009-07-19  Bruno Haible  <bruno@clisp.org>
2103
2104         Unify conditionals.
2105         * lib/pipe.h: Detect native Win32 by looking at _WIN32 and __WIN32__
2106         macros, not at the compiler macros.
2107         * lib/pipe.c: Likewise.
2108         * lib/execute.c: Likewise.
2109         * lib/spawni.c: Likewise.
2110
2111 2009-07-19  Bruno Haible  <bruno@clisp.org>
2112
2113         Fix handling of closed stdin/stdout/stderr on mingw.
2114         * lib/w32spawn.h: Include unistd.h.
2115         (dup_noinherit): Return -1 if the old handle is invalid. Allocate new
2116         file descriptor with O_NOINHERIT flag.
2117         (fd_safer_noinherit): New function, based on fd-safer.c.
2118         (dup_safer_noinherit): New function, based on dup-safer.c.
2119         (undup_safer_noinherit): New function.
2120         * lib/execute.c (execute) [WIN32]: Use dup_safer_noinherit instead of
2121         dup_noinherit. Use undup_safer_noinherit instead of dup2 and close.
2122         * lib/pipe.c (create_pipe) [WIN32]: Likewise. Use fd_safer_noinherit
2123         instead of fd_safer.
2124         * tests/test-pipe.c: Include <windows.h>.
2125         (child_main) [WIN32]: Test the handle of STDERR_FILENO, not its close() result.
2126
2127         * tests/test-pipe.c (child_main, parent_main): New functions, extracted
2128         from main.
2129         (test_pipe): Pass an extra argument for disambiguation.
2130         (main): Invoke parent_main or child_main.
2131
2132         * tests/test-pipe.c (test_pipe): Pass slave_process = true argument
2133         consistently.
2134
2135 2009-07-18  Eric Blake  <ebb9@byu.net>
2136
2137         test-pipe: fix mingw build
2138         * tests/test-pipe.c (main): Avoid fcntl on mingw.
2139
2140 2009-07-18  Bruno Haible  <bruno@clisp.org>
2141
2142         * modules/pipe-tests (Makefile.am): Fix typo.
2143
2144 2009-07-18  Eric Blake  <ebb9@byu.net>
2145
2146         error: fix mingw build
2147         * lib/error.c (error, error_at_line): Avoid fcntl on mingw.
2148         Reported by Bruno Haible.
2149
2150         error: avoid undefined use of stdout
2151         * lib/error.c (error, error_at_line): Check that fd 1 is open
2152         before flushing stdout.  Avoids a crash on cygwin when libsigsegv
2153         is handling faults and the close_stdout module wants to report the
2154         detection of closed stdout as an error.
2155
2156 2009-07-17  Eric Blake  <ebb9@byu.net>
2157
2158         pipe: be robust in face of closed fds
2159         * lib/pipe.c (create_pipe): Closed standard descriptors in parent
2160         should cause child to misbehave.
2161         * modules/pipe-tests: New module.
2162         * tests/test-pipe.c: New file.
2163         * tests/test-pipe.sh: New file.
2164         Reported by Akim Demaille.
2165
2166 2009-07-14  Bruno Haible  <bruno@clisp.org>
2167
2168         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Guess it works on glibc systems.
2169         Reported by anonymous kc.
2170
2171 2009-07-07  Jim Meyering  <meyering@redhat.com>
2172
2173         maint.mk: don't look for translatable strings in *.m4 or *.mk
2174         * top/maint.mk (sc_po_check): Skip *.m4 and *.mk files,
2175         when searching for translatable strings.
2176
2177 2009-07-05  Jim Meyering  <meyering@redhat.com>
2178
2179         remove superfluous parentheses in STREQ definition
2180         * tests/test-argv-iter.c (STREQ): Remove redundant parentheses.
2181         * lib/getugroups.c (STREQ): Likewise.
2182         * lib/fnmatch.c (STREQ): Likewise.
2183         Spotted by Bruno Haible.
2184
2185 2009-07-04  Jim Meyering  <meyering@redhat.com>
2186
2187         argv-iter: new module
2188         * MODULES.html.sh: Add argv-iter.
2189         * lib/argv-iter.c, lib/argv-iter.h: New files.
2190         * modules/argv-iter: New file.
2191         * modules/argv-iter-tests: New file.
2192         * tests/test-argv-iter.c: Test it.
2193
2194 2009-07-04  Bruno Haible  <bruno@clisp.org>
2195
2196         Fix assertion.
2197         * lib/git-merge-changelog.c (compute_mapping): In the case where file1
2198         contains more exact copies of a given entry than file2, leave the extra
2199         copies unpaired rather than aborting.
2200         Reported by Eric Blake.
2201
2202 2009-07-02  Bruno Haible  <bruno@clisp.org>
2203
2204         Speedup git-merge-changelog for git cherry-pick.
2205         * lib/git-merge-changelog.c (struct entries_mapping): New type.
2206         (entries_mapping_get): New function, extracted from compute_mapping.
2207         (entries_mapping_reverse_get): New function.
2208         (compute_mapping): Add a 'full' argument. Return the result in a
2209         'struct entries_mapping'.
2210         (main): Update. Access the mappings through entries_mapping_get.
2211         Reported by Eric Blake.
2212
2213 2009-07-02  Bruno Haible  <bruno@clisp.org>
2214
2215         * lib/git-merge-changelog.c (compute_mapping): Fix determination of
2216         best_i.
2217
2218 2009-07-02  Bruno Haible  <bruno@clisp.org>
2219
2220         Speed up approximate search for matching ChangeLog entries.
2221         * lib/git-merge-changelog.c (entry_fstrcmp): Add a lower_bound
2222         argument. Call fstrcmp_bounded instead of fstrcmp.
2223         (compute_mapping, try_split_merged_entry, main): Update callers.
2224
2225 2009-07-02  Bruno Haible  <bruno@clisp.org>
2226
2227         * lib/git-merge-changelog.c (main): Add comment about git cherry-pick.
2228
2229 2009-06-30  Bruno Haible  <bruno@clisp.org>
2230
2231         Reduce the number of uc_is_cased calls.
2232         * lib/unicase.h (casing_suffix_context_t): Add
2233         'first_char_except_ignorable' field.
2234         * lib/unicase/context.h (SCC_FINAL_SIGMA_MASK): Remove macro.
2235         (SCC_MORE_ABOVE_MASK, SCC_BEFORE_DOT_MASK): Update.
2236         * lib/unicase/empty-suffix-context.c (unicase_empty_suffix_context):
2237         Update initializer.
2238         * lib/unicase/u-casemap.h (FUNC): Don't invoke uc_is_cased on
2239         case-ignorable characters.
2240         * lib/unicase/u-ct-totitle.h (FUNC): Likewise.
2241         * lib/unicase/u-suffix-context.h (FUNC2): Don't call uc_is_cased here.
2242         * modules/unicase/u8-suffix-context (Depends-on): Remove unicase/cased.
2243         * modules/unicase/u16-suffix-context (Depends-on): Likewise.
2244         * modules/unicase/u32-suffix-context (Depends-on): Likewise.
2245
2246 2009-06-30  Bruno Haible  <bruno@clisp.org>
2247
2248         Tests for module 'unicase/ignorable'.
2249         * modules/unicase/ignorable-tests: New file.
2250         * tests/unicase/test-ignorable.c: New file, generated by
2251         gen-uni-tables.
2252
2253         Tests for module 'unicase/cased'.
2254         * modules/unicase/cased-tests: New file.
2255         * tests/unicase/test-cased.c: New file, generated by gen-uni-tables.
2256         * tests/unicase/test-predicate-part1.h: New file, derived from
2257         tests/unictype/test-predicate-part1.h.
2258         * tests/unicase/test-predicate-part2.h: New file, same as
2259         tests/unictype/test-predicate-part2.h.
2260
2261         Fix evaluation of "Before C" condition of FINAL_SIGMA.
2262         * lib/gen-uni-tables.c (is_cased, is_case_ignorable): New functions.
2263         (output_casing_properties): New function.
2264         (main): Call it.
2265         * lib/unicase/cased.h: New file, generated by gen-uni-tables.
2266         * lib/unicase/cased.c: Include unictype/bitmap.h.
2267         (uc_is_cased): Define through a bitmap lookup.
2268         * lib/unicase/ignorable.h: New file, generated by gen-uni-tables.
2269         * lib/unicase/ignorable.c: Include unictype/bitmap.h.
2270         (uc_is_case_ignorable): Define through a bitmap lookup.
2271         * modules/unicase/cased (Files): Add lib/unicase/cased.h,
2272         lib/unictype/bitmap.h.
2273         (Depends-on): Add inline. Clean up.
2274         * modules/unicase/ignorable (Files): Add lib/unicase/ignorable.h,
2275         lib/unictype/bitmap.h.
2276         (Depends-on): Add inline. Clean up.
2277         * tests/unicase/test-u8-tolower.c (main): Add more tests of FINAL_SIGMA
2278         recognition.
2279         * tests/unicase/test-u16-tolower.c (main): Likewise.
2280         * tests/unicase/test-u32-tolower.c (main): Likewise.
2281
2282 2009-06-30  Bruno Haible  <bruno@clisp.org>
2283
2284         * lib/unicase/u8-casemap.c: Don't include uniwbrk.h.
2285         * lib/unicase/u16-casemap.c: Likewise.
2286         * lib/unicase/u32-casemap.c: Likewise.
2287
2288 2009-06-29  Bruno Haible  <bruno@clisp.org>
2289
2290         Define u32_casefold as a wrapper around u32_ct_casefold.
2291         * lib/unicase/u32-casefold.c: Update.
2292         * modules/unicase/u32-casefold (Depends-on): Add
2293         unicase/u32-ct-casefold, unicase/empty-prefix-context,
2294         unicase/empty-suffix-context. Clean up.
2295
2296         Define u16_casefold as a wrapper around u16_ct_casefold.
2297         * lib/unicase/u16-casefold.c: Update.
2298         * modules/unicase/u16-casefold (Depends-on): Add
2299         unicase/u16-ct-casefold, unicase/empty-prefix-context,
2300         unicase/empty-suffix-context. Clean up.
2301
2302         Define u8_casefold as a wrapper around u8_ct_casefold.
2303         * lib/unicase/u-casefold.h (FUNC): Delegate to U_CT_CASEFOLD.
2304         * lib/unicase/u8-casefold.c: Update.
2305         * modules/unicase/u8-casefold (Depends-on): Add unicase/u8-ct-casefold,
2306         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
2307
2308         Define u32_totitle as a wrapper around u32_ct_totitle.
2309         * lib/unicase/u32-totitle.c: Update.
2310         * modules/unicase/u32-totitle (Depends-on): Add unicase/u32-ct-totitle,
2311         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
2312
2313         Define u16_totitle as a wrapper around u16_ct_totitle.
2314         * lib/unicase/u16-totitle.c: Update.
2315         * modules/unicase/u16-totitle (Depends-on): Add unicase/u16-ct-totitle,
2316         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
2317
2318         Define u8_totitle as a wrapper around u8_ct_totitle.
2319         * lib/unicase/u-totitle.h (is_cased, is_case_ignorable): Remove
2320         functions.
2321         (FUNC): Delegate to U_CT_TOTITLE.
2322         * lib/unicase/u8-totitle.c: Update.
2323         * modules/unicase/u8-totitle (Depends-on): Add unicase/u8-ct-totitle,
2324         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
2325
2326         * lib/unicase/u32-tolower.c (u32_tolower): Update u32_casemap
2327         invocation.
2328         * modules/unicase/u32-tolower (Depends-on): Add
2329         unicase/empty-prefix-context, unicase/empty-suffix-context.
2330
2331         * lib/unicase/u16-tolower.c (u16_tolower): Update u16_casemap
2332         invocation.
2333         * modules/unicase/u16-tolower (Depends-on): Add
2334         unicase/empty-prefix-context, unicase/empty-suffix-context.
2335
2336         * lib/unicase/u8-tolower.c (u8_tolower): Update u8_casemap invocation.
2337         * modules/unicase/u8-tolower (Depends-on): Add
2338         unicase/empty-prefix-context, unicase/empty-suffix-context.
2339
2340         * lib/unicase/u32-toupper.c (u32_toupper): Update u32_casemap
2341         invocation.
2342         * modules/unicase/u32-toupper (Depends-on): Add
2343         unicase/empty-prefix-context, unicase/empty-suffix-context.
2344
2345         * lib/unicase/u16-toupper.c (u16_toupper): Update u16_casemap
2346         invocation.
2347         * modules/unicase/u16-toupper (Depends-on): Add
2348         unicase/empty-prefix-context, unicase/empty-suffix-context.
2349
2350         * lib/unicase/u8-toupper.c (u8_toupper): Update u8_casemap invocation.
2351         * modules/unicase/u8-toupper (Depends-on): Add
2352         unicase/empty-prefix-context, unicase/empty-suffix-context.
2353
2354         New module 'unicase/u32-ct-casefold'.
2355         * lib/unicase/u32-ct-casefold.c: New file.
2356         * modules/unicase/u32-ct-casefold: New file.
2357
2358         New module 'unicase/u16-ct-casefold'.
2359         * lib/unicase/u16-ct-casefold.c: New file.
2360         * modules/unicase/u16-ct-casefold: New file.
2361
2362         New module 'unicase/u8-ct-casefold'.
2363         * lib/unicase/u8-ct-casefold.c: New file.
2364         * lib/unicase/u-ct-casefold.h: New file, derived from
2365         lib/unicase/u-casefold.h.
2366         * modules/unicase/u8-ct-casefold: New file.
2367
2368         New module 'unicase/u32-ct-totitle'.
2369         * lib/unicase/u32-ct-totitle.c: New file.
2370         * modules/unicase/u32-ct-totitle: New file.
2371
2372         New module 'unicase/u16-ct-totitle'.
2373         * lib/unicase/u16-ct-totitle.c: New file.
2374         * modules/unicase/u16-ct-totitle: New file.
2375
2376         New module 'unicase/u8-ct-totitle'.
2377         * lib/unicase/u8-ct-totitle.c: New file.
2378         * lib/unicase/u-ct-totitle.h: New file, derived from
2379         lib/unicase/u-totitle.h.
2380         * modules/unicase/u8-ct-totitle: New file.
2381
2382         New module 'unicase/u32-ct-tolower'.
2383         * lib/unicase/u32-ct-tolower.c: New file.
2384         * modules/unicase/u32-ct-tolower: New file.
2385
2386         New module 'unicase/u16-ct-tolower'.
2387         * lib/unicase/u16-ct-tolower.c: New file.
2388         * modules/unicase/u16-ct-tolower: New file.
2389
2390         New module 'unicase/u8-ct-tolower'.
2391         * lib/unicase/u8-ct-tolower.c: New file.
2392         * modules/unicase/u8-ct-tolower: New file.
2393
2394         New module 'unicase/u32-ct-toupper'.
2395         * lib/unicase/u32-ct-toupper.c: New file.
2396         * modules/unicase/u32-ct-toupper: New file.
2397
2398         New module 'unicase/u16-ct-toupper'.
2399         * lib/unicase/u16-ct-toupper.c: New file.
2400         * modules/unicase/u16-ct-toupper: New file.
2401
2402         New module 'unicase/u8-ct-toupper'.
2403         * lib/unicase/u8-ct-toupper.c: New file.
2404         * modules/unicase/u8-ct-toupper: New file.
2405
2406         Add context arguments to u*_casemap functions.
2407         * lib/unicase/unicasemap.h: Include unicase.h.
2408         (u8_casemap, u16_casemap, u32_casemap): Add prefix_context and
2409         suffix_context arguments.
2410         * lib/unicase/u-casemap.h (is_cased, is_case_ignorable): Remove
2411         functions.
2412         (FUNC): Add prefix_context and suffix_context arguments. Use
2413         uc_is_cased and uc_is_case_ignorable.
2414         * lib/unicase/u8-casemap.c: Include caseprop.h and context.h.
2415         * lib/unicase/u16-casemap.c: Likewise.
2416         * lib/unicase/u32-casemap.c: Likewise.
2417         * modules/unicase/u8-casemap (Files): Add lib/unicase/context.h.
2418         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
2419         * modules/unicase/u16-casemap (Files): Add lib/unicase/context.h.
2420         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
2421         * modules/unicase/u32-casemap (Files): Add lib/unicase/context.h.
2422         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
2423
2424         New module 'unicase/u32-suffix-context'.
2425         * lib/unicase/u32-suffix-context.c: New file.
2426         * modules/unicase/u32-suffix-context: New file.
2427
2428         New module 'unicase/u16-suffix-context'.
2429         * lib/unicase/u16-suffix-context.c: New file.
2430         * modules/unicase/u16-suffix-context: New file.
2431
2432         New module 'unicase/u8-suffix-context'.
2433         * lib/unicase/u8-suffix-context.c: New file.
2434         * lib/unicase/u-suffix-context.h: New file.
2435         * modules/unicase/u8-suffix-context: New file.
2436
2437         New module 'unicase/empty-suffix-context'.
2438         * lib/unicase/empty-suffix-context.c: New file.
2439         * modules/unicase/empty-suffix-context: New file.
2440
2441         New module 'unicase/u32-prefix-context'.
2442         * lib/unicase/u32-prefix-context.c: New file.
2443         * modules/unicase/u32-prefix-context: New file.
2444
2445         New module 'unicase/u16-prefix-context'.
2446         * lib/unicase/u16-prefix-context.c: New file.
2447         * modules/unicase/u16-prefix-context: New file.
2448
2449         New module 'unicase/u8-prefix-context'.
2450         * lib/unicase/u8-prefix-context.c: New file.
2451         * lib/unicase/u-prefix-context.h: New file.
2452         * lib/unicase/context.h: New file.
2453         * modules/unicase/u8-prefix-context: New file.
2454
2455         New module 'unicase/empty-prefix-context'.
2456         * lib/unicase/empty-prefix-context.c: New file.
2457         * modules/unicase/empty-prefix-context: New file.
2458
2459         New module 'unicase/ignorable'.
2460         * lib/unicase/ignorable.c: New file.
2461         * modules/unicase/ignorable: New file.
2462
2463         New module 'unicase/cased'.
2464         * lib/unicase/caseprop.h: New file.
2465         * lib/unicase/cased.c: New file.
2466         * modules/unicase/cased: New file.
2467
2468         New functions for case mapping of substrings.
2469         * lib/unicase.h (casing_prefix_context_t): New type.
2470         (unicase_empty_prefix_context): New variable.
2471         (u8_casing_prefix_context, u16_casing_prefix_context,
2472         u32_casing_prefix_context, u8_casing_prefixes_context,
2473         u16_casing_prefixes_context, u32_casing_prefixes_context): New
2474         declarations.
2475         (casing_suffix_context_t): New type.
2476         (unicase_empty_suffix_context): New variable.
2477         (u8_casing_suffix_context, u16_casing_suffix_context,
2478         u32_casing_suffix_context, u8_casing_suffixes_context,
2479         u16_casing_suffixes_context, u32_casing_suffixes_context,
2480         u8_ct_toupper, u16_ct_toupper, u32_ct_toupper, u8_ct_tolower,
2481         u16_ct_tolower, u32_ct_tolower, u8_ct_totitle, u16_ct_totitle,
2482         u32_ct_totitle, u8_ct_casefold, u16_ct_casefold, u32_ct_casefold): New
2483         declarations.
2484
2485 2009-06-28  Jim Meyering  <meyering@redhat.com>
2486
2487         boostrap: indent only with spaces
2488         * build-aux/bootstrap: Indent only with spaces, never TABs.
2489
2490         bootstrap: split long lines
2491         * build-aux/bootstrap: Keep line length < 80.
2492
2493         bootstrap: sync from coreutils
2494         * build-aux/bootstrap: Honor variables like $ACLOCAL, etc.,
2495         just as autoreconf does.  Verify a list of prerequisite
2496         package-name,version-number pairs if defined in bootstrap.conf.
2497         Refer to README-prereq, if prerequisites are not satisfied.
2498
2499 2009-06-27  Eric Blake  <ebb9@byu.net>
2500
2501         tests: add test for bogus NULL definition
2502         * tests/test-stdio.c: Ensure POSIX 2008 requirement on NULL.
2503         * tests/test-stdlib.c: Likewise.
2504         * tests/test-string.c: Likewise.
2505         * tests/test-locale.c: Likewise.
2506         * tests/test-unistd.c: Likewise.
2507         * modules/stdio-tests (Depends-on): Add verify.
2508         * modules/stdlib-tests (Depends-on): Likewise.
2509         * modules/string-tests (Depends-on): Likewise.
2510         * modules/locale-tests (Depends-on): Likewise.
2511         * modules/unistd-tests (Depends-on): Likewise.
2512
2513 2009-06-27  Paolo Bonzini  <bonzini@gnu.org>
2514
2515         * m4/selinux-context-h (gl_HEADERS_SELINUX_CONTEXT_H): Remove
2516         self-explaining comment.
2517         * m4/selinux-selinux-h: Update serial.
2518         (gl_LIBSELINUX): New macro, adding a warning for missing development
2519         packages to code extracted from...
2520         (gl_HEADERS_SELINUX_SELINUX_H): ... this one.  Require gl_LIBSELINUX.
2521         Add warning for missing development packages here, too.
2522
2523 2009-06-26  Paolo Bonzini  <bonzini@gnu.org>
2524
2525         * build-aux/bootstrap: Do not use GIT_CONFIG_LOCAL.
2526
2527 2009-06-25  Eric Blake  <ebb9@byu.net>
2528
2529         version-etc: fix regression
2530         * lib/version-etc.h (ATTRIBUTE_SENTINEL): Define for new enough
2531         gcc.
2532         (version_etc): Use it, to catch bugs with trailing NULL.
2533         * lib/version-etc.c (version_etc_arn): Delete unused argument.
2534         (version_etc_va): Fix logic bug.
2535         * modules/version-etc-tests: Add test.
2536         * tests/test-version-etc.c: New file.
2537         * tests/test-version-etc.sh: Likewise.
2538
2539 2009-06-25  Sam Steingold  <sds@gnu.org>
2540
2541         * mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): Include <stdlib.h>, for the
2542         mbtowc declaration.
2543
2544 2009-06-25  Eric Blake  <ebb9@byu.net>
2545
2546         fpurge: migrate into <stdio.h>
2547         * lib/fpurge.h: Delete...
2548         * lib/stdio.in.h (fpurge): ...and declare here, instead.
2549         * lib/fpurge.c (fpurge): Change declaring header.
2550         * modules/fpurge (Files): Drop deleted file.
2551         (Depends-on): Add stdio.
2552         (configure.ac): Set witness.
2553         * modules/stdio (Makefile.am): Support fpurge macros.
2554         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
2555         * m4/fpurge.m4 (gl_FUNC_FPURGE): Set appropriate variables.
2556         * lib/fflush.c: Update client.
2557         * tests/test-fpurge.c: Likewise.
2558         * NEWS: Mention the change.
2559
2560 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
2561
2562        * lib/argp-version-etc.c (program_authors): Add const
2563        qualifier.
2564        * lib/version-etc.c: Fix typos in the comments.
2565        * modules/argp-version-etc: Depends on version-etc.
2566
2567 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
2568
2569         argp-version-etc: new module.
2570
2571         * lib/argp-version-etc.c: New file.
2572         * lib/argp-version-etc.h: New file.
2573         * modules/argp-version-etc: New file.
2574         * modules/argp-version-etc-tests: New file.
2575         * tests/test-argp-version-etc.c: New test.
2576         * tests/test-argp-version-etc-1.sh: New test.
2577
2578 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
2579
2580         Provide additional interfaces and documentation for version-etc
2581         module.
2582
2583         * lib/version-etc.c (version_etc_arn, version_etc_ar): New
2584         interfaces.
2585         * lib/version-etc.h (version_etc_arn, version_etc_ar): New
2586         prototypes.
2587
2588 2009-06-24  Bruno Haible  <bruno@clisp.org>
2589
2590         * m4/lib-link.m4 (AC_LIB_HAVE_LINKFLAGS): Fix description of
2591         HAVE_LIB${NAME} macro.
2592         Reported by Sam Steingold <sds@gnu.org>.
2593
2594 2009-06-23  Simon Josefsson  <simon@josefsson.org>
2595
2596         * modules/hash-tests (test_hash_LDADD): Link to libintl when
2597         needed.
2598
2599 2009-06-21  Bruno Haible  <bruno@clisp.org>
2600
2601         Make two consecutive identical invocations of AC_LIB_HAVE_LINKFLAGS
2602         work.
2603         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Reset HAVE_LIB${NAME}
2604         together with LIB${NAME}, LTLIB${NAME}.
2605         Reported by Sam Steingold <sds@gnu.org>.
2606
2607 2009-06-20  Jim Meyering  <meyering@redhat.com>
2608
2609         tests: make sc_require_test_exit_idiom more generic
2610         * top/maint.mk (Exit_witness_file): New overridable variable.
2611         (sc_require_test_exit_idiom): Don't hard-code tests/test-lib.sh.
2612         Relax test for /^Exit \$fail$$/ to just /^Exit ./.
2613
2614 2009-06-19  Jim Meyering  <meyering@redhat.com>
2615
2616         hash: reverse order of src/dst parameters in an internal interface
2617         * lib/hash.c (transfer_entries): Reverse order of parameters to
2618         put DST before SRC.  Adjust callers.
2619
2620         tests: test-hash: avoid wholesale duplication
2621         * tests/test-hash.c (main): Don't copy/paste a 60-line loop.
2622         Instead, use a loop and add a single conditional.
2623
2624         tests: test-hash: allow seed selection via a command line argument
2625         * tests/test-hash.c (get_seed): New function.
2626         (main): Use it.
2627
2628 2009-06-19  Eric Blake  <ebb9@byu.net>
2629
2630         hash: avoid memory leak on allocation failure
2631         * lib/hash.c: (hash_rehash): Avoid memory leak on allocation
2632         failure.  Factor repeated algorithm...
2633         (transfer_entries): ...into new helper routine.
2634         (hash_delete): React to hash_rehash return value.
2635
2636         hash: reduce memory pressure in hash_rehash no-op case
2637         * lib/hash.c (next_prime): Avoid overflow.
2638         (hash_initialize): Factor bucket size computation...
2639         (compute_bucket_size): ...into new helper function.
2640         (hash_rehash): Use new function and open coding to reduce memory
2641         pressure, and avoid a memory leak in USE_OBSTACK code.
2642         Reported by Jim Meyering.
2643
2644 2009-06-18  Eric Blake  <ebb9@byu.net>
2645
2646         hash: make rotation more obvious
2647         * modules/hash (Depends-on): Add bitrotate and stdint.
2648         * lib/bitrotate.h (rotl_sz, rotr_sz): New functions.
2649         * lib/hash.c (headers): Drop limits.h.  Add stdint.h.
2650         (SIZE_MAX): Rely on headers for definition.
2651         (hash_string) [USE_DIFF_HASH]: Use rotl_sz.
2652         (raw_hasher): Use rotr_sz.
2653         Suggested by Jim Meyering.
2654
2655         hash: fix memory leak in last patch
2656         * lib/hash.c (hash_rehash): Avoid memory leak.
2657
2658         hash: avoid no-op rehashing
2659         * lib/hash.c (hash_rehash): Recognize useless rehash attempts.
2660
2661         hash: provide default callback functions
2662         * lib/hash.c (raw_hasher, raw_comparator): New functions.
2663         (hash_initialize): Use them as defaults.
2664         * tests/test-hash.c (main): Test this.
2665
2666         hash: minor optimization
2667         * lib/hash.c (hash_lookup, hash_find_entry): Avoid function call
2668         when possible.
2669         (hash_initialize): Document this promise.
2670         (hash_do_for_each, hash_clear, hash_free): Use C89 syntax.
2671         * tests/test-hash.c (hash_compare_strings): Test this.
2672
2673 2009-06-18  Bruno Haible  <bruno@clisp.org>
2674
2675         * m4/strstr.m4 (gl_FUNC_STRSTR): Skip linear time test if strstr is
2676         going to be replaced anyway.
2677
2678 2009-06-18  Bruno Haible  <bruno@clisp.org>
2679
2680         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Invoke AC_LIBOBJ only
2681         in one place.
2682         (gl_FUNC_STRCASESTR): Skip linear time test if strcasestr is going to
2683         be replaced anyway.
2684
2685 2009-06-18  Eric Blake  <ebb9@byu.net>
2686
2687         hash: check for resize before insertion
2688         * lib/hash.c (hash_insert): Check whether bucket usage exceeds
2689         threshold before insertion, so that a pathological hash_rehash
2690         that fills every bucket can still trigger another rehash.
2691
2692 2009-06-18  Jim Meyering  <meyering@redhat.com>
2693
2694         hash-tests: add a loop around the small tests
2695         * tests/test-hash.c (main): Repeat small tests with selected
2696         small initial table sizes.
2697
2698 2009-06-17  Eric Blake  <ebb9@byu.net>
2699
2700         hash: minor cleanups
2701         * lib/hash.h (hash_entry): Make opaque, by moving...
2702         * lib/hash.c (hash_entry): ...here.
2703         (hash_insert): Clarify restrictions on what can be inserted.
2704         (hash_get_next): Clarify when it is safe to remove an element
2705         during traversal.
2706         (check_tuning): Skip verification when tuning is known safe.
2707         (hash_initialize): Clarify restrictions on tuning.
2708
2709 2009-06-17  Jim Meyering  <jim@meyering.net>
2710         and Eric Blake  <ebb9@byu.net>
2711
2712         hash-tests: new module
2713         * modules/hash-tests: New file.
2714         * tests/test-hash.c: New file.
2715
2716 2009-06-17  Eric Blake  <ebb9@byu.net>
2717
2718         strstr-simple: document new module
2719         * MODULES.html.sh: Document new module.
2720
2721         strstr, strcasestr: replace on platforms with broken memchr
2722         * modules/strstr: Split into...
2723         * modules/strstr-simple: ...new module that does not care about
2724         performance, but does care about glibc bug.
2725         * m4/strstr.m4 (gl_FUNC_STRSTR): Split...
2726         (gl_FUNC_STRSTR_SIMPLE): ...into new macro, which replaces strstr
2727         if platform memchr is broken, per Debian bug 521737.
2728         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): React to broken
2729         memchr.
2730         * m4/memchr.m4 (gl_FUNC_MEMCHR): Only expand once.
2731         * doc/posix-functions/strstr.texi (strstr): Document the fix.
2732         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
2733         * modules/mountlist (Depends-on): Add strstr-simple.
2734         * modules/gen-uni-tables (Depends-on): Likewise.
2735         * modules/argz (Depends-on): Add strstr.
2736
2737 2009-06-17  Bruno Haible  <bruno@clisp.org>
2738
2739         * modules/posix_spawn-internal (Depends-on): Add errno.
2740
2741 2009-06-17  Bruno Haible  <bruno@clisp.org>
2742
2743         Define missing ESTALE on Interix 3.5.
2744         * lib/errno.in.h (ESTALE): Assign a value if missing.
2745         * lib/strerror.c (rpl_strerror): Handle missing ESTALE and ECANCELED.
2746         * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Also test whether ESTALE is
2747         missing.
2748         * doc/posix-headers/errno.texi: Mention the Interix bug.
2749         Reported by Jay Krell <jay.krell@cornell.edu> via Eric Blake.
2750
2751 2009-06-15  Eric Blake  <ebb9@byu.net>
2752
2753         memchr, memchr2: add valgrind exception
2754         * lib/memchr.valgrind: New file.
2755         * lib/memchr2.valgrind: New file.
2756         * modules/memchr (Files): Distribute valgrind file.
2757         * modules/memchr2 (Files): Likewise.
2758
2759         docs: memchr is no longer obsolete
2760         * MODULES.html.sh: Move memchr from obsolete to string.h section.
2761         * lib/string.in.h (memchr): Simplify logic.
2762
2763 2009-06-14  Jim Meyering  <meyering@redhat.com>
2764
2765         link-follow: fix the "checking..." message to not mention trailing slash
2766         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): This test has
2767         never considered trailing slashes.
2768
2769 2009-06-14  Bruno Haible  <bruno@clisp.org>
2770
2771         * m4/memchr.m4: Mention also the bug on IA-64.
2772         * doc/posix-functions/memchr.texi: Likewise.
2773
2774 2009-06-12  Eric Blake  <ebb9@byu.net>
2775
2776         memchr: detect broken x86_64 and alpha implementations
2777         * modules/memchr-tests (Depends-on): Move mmap detection...
2778         * modules/memchr (Depends-on): ...here.
2779         (configure.ac): Set indicator.
2780         * lib/string.in.h (memchr): Declare replacement.
2781         * modules/string (Makefile.am): Trigger replacement.
2782         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
2783         * m4/memchr.m4 (gl_FUNC_MEMCHR): Use mmap to detect platform
2784         bugs.
2785         * doc/posix-functions/memchr.texi (memchr): Document the bug.
2786         * modules/getpagesize (License): Relax license.
2787
2788 2009-06-11  Bruno Haible  <bruno@clisp.org>
2789
2790         * lib/idpriv.h: Add more references.
2791
2792 2009-06-08  Bruno Haible  <bruno@clisp.org>
2793
2794         Tests for module 'idpriv-droptemp'.
2795         * modules/idpriv-droptemp-tests: New file.
2796         * tests/test-idpriv-droptemp.sh: New file.
2797         * tests/test-idpriv-droptemp.su.sh: New file.
2798         * tests/test-idpriv-droptemp.c: New file.
2799
2800         New module 'idpriv-droptemp'.
2801         * lib/idpriv-droptemp.c: New file.
2802         * modules/idpriv-droptemp: New file.
2803
2804 2009-06-08  Bruno Haible  <bruno@clisp.org>
2805
2806         Tests for module 'idpriv-drop'.
2807         * modules/idpriv-drop-tests: New file.
2808         * tests/test-idpriv-drop.sh: New file.
2809         * tests/test-idpriv-drop.su.sh: New file.
2810         * tests/test-idpriv-drop.c: New file.
2811
2812         New module 'idpriv-drop'.
2813         * lib/idpriv.h: New file.
2814         * lib-idpriv-drop.c: New file.
2815         * m4/idpriv.m4: New file.
2816         * modules/idpriv-drop: New file.
2817
2818 2009-06-08  Bruno Haible  <bruno@clisp.org>
2819
2820         * modules/unistdio/u8-vasnprintf (Depends-on): Add memchr.
2821         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
2822         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
2823         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
2824         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
2825         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
2826         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
2827
2828 2009-06-08  Eric Blake  <ebb9@byu.net>
2829
2830         test-strstr: use memory fence, when possible
2831         * tests/test-strstr.c (main): Use memory fence, in order to be
2832         more likely to trigger Debian bug 521737.
2833         * modules/strstr-tests (Files): Pull in additional files.
2834
2835         memchr: no longer obsolete, for wider field testing
2836         * modules/memchr (Status, Notice): Delete, this module is no
2837         longer obsolete.
2838         * modules/vasnprintf (Depends-on): Add memchr.
2839
2840 2009-06-07  Jim Meyering  <meyering@redhat.com>
2841
2842         hash: declare some functions with the warn_unused_result attribute
2843         * lib/hash.h (__attribute__, ATTRIBUTE_WUR): Define.
2844
2845 2009-06-07  Bruno Haible  <bruno@clisp.org>
2846
2847         * tests/test-alignof.c: Don't test int64_t if it does not exist.
2848         Reported by Eric Blake.
2849
2850 2009-06-06  Eric Blake  <ebb9@byu.net>
2851
2852         test-alignof: fix typo with long double
2853         * tests/test-alignof.c (CHECK): Use longdouble typedef to avoid
2854         compiler error.
2855
2856 2009-06-06  Neil Jerram  <neil@ossau.uklinux.net>  (tiny change)
2857
2858         Escape non-texinfo { and }s.
2859         * doc/ld-output-def.texi (Visual Studio Compatibility): Fix
2860         markup error.
2861
2862 2009-06-04  Jim Meyering  <meyering@redhat.com>
2863
2864         gitlog-to-changelog: don't infloop on an empty commit log
2865         * build-aux/gitlog-to-changelog: Warn about an empty log message.
2866         Reported by Boris Petersen <transacid@centerim.org>.
2867
2868 2009-06-03  Mike Frysinger  <vapier@gentoo.org>
2869
2870         version-etc: extend for packagers
2871         Add three new configure options, intended for packagers:
2872           --with-packager="packager name"
2873           --with-packager-version="packager-specific version"
2874           --with-packager-bug-reports="packager bug reporting"
2875         An example with coreutils:
2876           $ ./configure \
2877             --with-packager=Gentoo \
2878             --with-packager-bug-report=http://bugs.gentoo.org/ \
2879             --with-packager-version="patchset 1.6"
2880           $ ./src/ls --version | head -n3
2881           ls (GNU coreutils) 7.1-dirty
2882           Packaged by Gentoo (patchset 1.6)
2883           Copyright (C) 2009 Free Software Foundation, Inc.
2884         Note that the bug reporting info via --help doesn't show up because
2885         coreutils uses its own custom emit_bug_reporting_address() implementation
2886         in src/system.h.  If it didn't, it'd look like:
2887           $ ./src/ls --help | tail -n4
2888           Report bugs to <bug-coreutils@gnu.org>.
2889           Report Gentoo bugs to <http://bugs.gentoo.org/>.
2890           GNU coreutils home page: <http://www.gnu.org/software/coreutils/>.
2891           General help using GNU software: <http://www.gnu.org/gethelp/>.
2892         * lib/version-etc.c: Print new information, if provided.
2893         * m4/version-etc.m4: New file.
2894         * modules/version-etc (Files): Add m4/version-etc.m4.
2895         (configure.ac): Add gl_VERSION_ETC.
2896
2897 2009-05-31  Bruno Haible  <bruno@clisp.org>
2898
2899         * tests/test-alignof.c: Include <stdint.h>. Check also 'long double'
2900         and 'int64_t'.
2901         * modules/alignof-tests (Dependencies): Add stdint.
2902         Reported by Eric Blake.
2903
2904 2009-05-31  Bruno Haible  <bruno@clisp.org>
2905
2906         * lib/alignof.h (alignof_slot, alignof_type, alignof): Document
2907         restriction due to compiler bugs.
2908         Reported by Eric Blake.
2909
2910 2009-05-31  Simon Josefsson  <simon@josefsson.org>
2911             Bruno Haible  <bruno@clisp.org>
2912
2913         Fix test-alignof failure.
2914         * lib/alignof.h (alignof_slot): New macro.
2915         (alignof_type): New macro, with the same semantics as the previous
2916         'alignof'.
2917         (alignof): Alias to alignof_slot.
2918         * tests/test-alignof.c (CHECK): Check alignof_slot, not alignof. Also
2919         check that the results are usable as constant expressions.
2920
2921 2009-05-31  Bruno Haible  <bruno@clisp.org>
2922
2923         * tests/zerosize-ptr.h (zerosize_ptr): Specify more details.
2924         * tests/test-memchr.c (main): Check that memchr does not read past the
2925         first occurrence of the byte.
2926         * tests/test-strstr.c (main): Update comment.
2927         Suggested by Eric Blake.
2928
2929 2009-05-30  Bruno Haible  <bruno@clisp.org>
2930
2931         * doc/ld-output-def.texi (Visual Studio Compatibility): Explain in more
2932         detail how to use dumpbin.
2933         Reported by David Byron <dbyron@dbyron.com>.
2934
2935 2009-06-02  Simon Josefsson  <simon@josefsson.org>
2936
2937         * tests/test-parse-duration.sh: Don't use non-portable 'read -u3'.
2938
2939 2009-06-02  Simon Josefsson  <simon@josefsson.org>
2940
2941         * m4/manywarnings.m4: Add GCC 4.4 warnings.
2942
2943 2009-05-28  Bruno Haible  <bruno@clisp.org>
2944
2945         * gnulib-tool (func_import): Don't do HAVE_CONFIG_H replacements on
2946         build-aux/ files.
2947
2948 2009-05-28  Simon Josefsson  <simon@josefsson.org>
2949
2950         * gnulib-tool (func_import): Transform license on build-aux/ files too.
2951
2952 2009-05-27  Simon Josefsson  <simon@josefsson.org>
2953
2954         * gnulib-tool (sed_transform_main_lib_file)
2955         (sed_transform_testsrelated_lib_file): : Don't use non-POSIX
2956         regexps.
2957
2958 2009-05-26  Simon Josefsson  <simon@josefsson.org>
2959
2960         * tests/test-strstr.c: Add another self-test.
2961         * tests/test-strstr.c: Rewrite to use malloc/strcpy instead of
2962         strdup.  Suggested by Eric Blake  <ebb9@byu.net>.
2963
2964 2009-05-23  Bruno Haible  <bruno@clisp.org>
2965
2966         * doc/havelib.texi (AC_LIB_HAVE_LINKFLAGS): Update for 2009-04-26
2967         change.
2968
2969 2009-05-21  Bruno Haible  <bruno@clisp.org>
2970
2971         Simplify use of mode_t varargs.
2972         * lib/open.c (open): Use PROMOTED_MODE_T instead of a conditional that
2973         uses 'mode_t' or 'int'.
2974         * lib/openat.c (openat): Likewise.
2975         * lib/open-safer.c (open_safer): Likewise.
2976         * m4/mode_t.m4: New file.
2977         * m4/open.m4 (gl_PREREQ_OPEN): Require gl_PROMOTED_TYPE_MODE_T.
2978         * m4/openat.m4 (gl_PREREQ_OPENAT): Likewise.
2979         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Likewise.
2980         * modules/open (Files): Add m4/mode_t.m4.
2981         * modules/openat (Files): Likewise.
2982         * modules/fcntl-safer (Files): Likewise.
2983         Suggested by Eric Blake.
2984
2985 2009-05-21  Pádraig Brady  <P@draigbrady.com>
2986
2987         * doc/glibc-functions/fallocate.texi: New file.
2988         * doc/gnulib.texi: Include it.
2989
2990 2009-05-21  Eric Blake  <ebb9@byu.net>
2991             Bruno Haible  <bruno@clisp.org>
2992
2993         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Remove redundant m4_quote
2994         invocations.
2995         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
2996
2997 2009-05-21  Eric Blake  <ebb9@byu.net>
2998             Bruno Haible  <bruno@clisp.org>
2999
3000         Second attempt to work around an AIX 5.3, 6.1 compiler bug with
3001         include_next. Fix of 2008-11-20 commit.
3002         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Also set
3003         NEXT_AS_FIRST_DIRECTIVE_FOO_H.
3004         * lib/math.in.h: Use NEXT_AS_FIRST_DIRECTIVE_MATH_H instead of
3005         NEXT_MATH_H.
3006         * modules/math (Makefile.am): Substitute NEXT_AS_FIRST_DIRECTIVE_MATH_H
3007         instead of NEXT_MATH_H.
3008
3009 2009-05-21  Bruno Haible  <bruno@clisp.org>
3010
3011         Avoid redefinition warnings for SIZE_MAX.
3012         * m4/size_max.m4 (gl_SIZE_MAX): Avoid redefining SIZE_MAX in config.h.
3013         Reported by Simon Josefsson.
3014
3015 2009-05-21  Bruno Haible  <bruno@clisp.org>
3016
3017         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_CACHE_CHECK instead of
3018         AC_CACHE_VAL.
3019
3020 2009-05-20  Bruno Haible  <bruno@clisp.org>
3021
3022         Make zeroptr.h work on mingw.
3023         * tests/zerosize-ptr.h: Test for the presence of <sys/mman.h> and
3024         mprotect.
3025         * modules/memchr-tests (configure.ac): Also test for sys/mman.h.
3026         * modules/memchr2-tests (configure.ac): Likewise.
3027         * modules/memcmp-tests (configure.ac): Likewise.
3028         * modules/memmem-tests (configure.ac): Likewise.
3029         * modules/memrchr-tests (configure.ac): Likewise.
3030         Reported by Simon Josefsson.
3031
3032 2009-05-20  Simon Josefsson  <simon@josefsson.org>
3033
3034         * tests/test-glob.c: Include string.h for strcmp prototype.
3035
3036 2009-05-20  Simon Josefsson  <simon@josefsson.org>
3037
3038         * modules/getdelim (Depends-on): Add explicit stdint, although it
3039         was implicitly already pulled in via realloc-posix.
3040         * lib/getdelim.c: Get SIZE_MAX from stdint.h.
3041
3042 2009-05-20  Simon Josefsson  <simon@josefsson.org>
3043
3044         MinGW and IRIX does not have sa_family_t type.  Reported by "Tom
3045         G. Christensen" <tgc@jupiterrise.com>.
3046         * m4/sys_socket_h.m4: Check for sa_family_t.
3047         * lib/sys_socket.in.h: Typedef sa_family_t when needed.
3048         * modules/sys_socket: Substitute HAVE_SA_FAMILY_T.
3049         * tests/test-sys_socket.c: Check that sa_family_t works.
3050
3051 2009-05-18  Eric Blake  <ebb9@byu.net>
3052
3053         maint.mk: allow gnulib_dir in VPATH build
3054         * top/maint.mk (gnulib_dir): Make relative to $(srcdir).
3055
3056 2009-05-15  Jim Meyering  <meyering@redhat.com>
3057
3058         maint.mk: Give gnulib_dir a default definition.
3059         * top/maint.mk (gnulib_dir): Define to 'gnulib', by default.
3060         Thus, most packages no longer need to specify this variable in cfg.mk
3061
3062 2009-05-14  Tom Prince  <tom.prince@ualberta.net>  (tiny change)
3063
3064         rename.m4: fix typos that would make non-mingw cross-configure fail
3065         * m4/rename.m4 (gl_FUNC_RENAME): Fix typos.
3066
3067 2009-05-13  Eric Blake  <ebb9@byu.net>
3068
3069         mmap-anon: avoid out-of-order autoconf expansion
3070         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Use correct
3071         SYSTEM_EXTENSIONS macro to silence warnings from autoconf 2.63b.
3072         * modules/memchr-tests (Depends-on): Add extensions.
3073         * modules/memchr2-tests (Depends-on): Add extensions.
3074         * modules/memcmp-tests (Depends-on): Add extensions.
3075         * modules/memmem-tests (Depends-on): Add extensions.
3076         * modules/memrchr-tests (Depends-on): Add extensions.
3077
3078 2009-05-13  Bruno Haible  <bruno@clisp.org>
3079
3080         Make some tests ISO C 99 compliant.
3081         * tests/zerosize-ptr.h: New file.
3082         * tests/test-memchr.c: Include zerosize-ptr.h.
3083         (main): Use a zero-size object pointer instead of NULL.
3084         * tests/test-memchr2.c: Include zerosize-ptr.h.
3085         (main): Use a zero-size object pointer instead of NULL.
3086         * tests/test-memcmp.c: Include zerosize-ptr.h.
3087         (main): Use a zero-size object pointer instead of NULL.
3088         * tests/test-memmem.c: Include zerosize-ptr.h.
3089         (main): Use a zero-size object pointer instead of NULL.
3090         * tests/test-memrchr.c: Include zerosize-ptr.h.
3091         (main): Use a zero-size object pointer instead of NULL.
3092         * modules/memchr-tests (Files): Add tests/zerosize-ptr.h,
3093         m4/mmap-anon.m4.
3094         (Depends-on): Add getpagesize.
3095         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
3096         * modules/memchr2-tests (Files): Add tests/zerosize-ptr.h,
3097         m4/mmap-anon.m4.
3098         (Depends-on): Add getpagesize.
3099         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
3100         * modules/memcmp-tests (Files): Add tests/zerosize-ptr.h,
3101         m4/mmap-anon.m4.
3102         (Depends-on): Add getpagesize.
3103         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
3104         * modules/memmem-tests (Files): Add tests/zerosize-ptr.h,
3105         m4/mmap-anon.m4.
3106         (Depends-on): Add getpagesize.
3107         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
3108         * modules/memrchr-tests (Files): Add tests/zerosize-ptr.h,
3109         m4/mmap-anon.m4.
3110         (Depends-on): Add getpagesize.
3111         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
3112
3113 2009-05-12  Bruno Haible  <bruno@clisp.org>
3114
3115         Tests for module 'alignof'.
3116         * modules/alignof-tests: New file.
3117         * tests/test-alignof.c: New file.
3118
3119 2009-05-12  Bruno Haible  <bruno@clisp.org>
3120
3121         Fix alignof macro.
3122         * lib/alignof.h (alignof): Remove special cases for AIX and HP-UX
3123         vendor compilers that are always correct.
3124
3125 2009-05-12  Bruno Haible  <bruno@clisp.org>
3126
3127         Make the MAP_ANONYMOUS detection work on HP-UX 11.
3128         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check whether mmap exists, but
3129         not whether its fully works.
3130
3131 2009-05-12  Bruno Haible  <bruno@clisp.org>
3132
3133         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Add comments.
3134
3135 2009-05-12  Jim Meyering  <meyering@redhat.com>
3136
3137         * top/maint.mk: Adjust backslash alignment.
3138
3139 2009-05-11  Simon Josefsson  <simon@josefsson.org>
3140
3141         * top/maint.mk: Make $(srcdir)/build-aux configurable.
3142
3143 2009-05-11  Eric Blake  <ebb9@byu.net>
3144
3145         argp: avoid undefined behavior
3146         * lib/argp-fmtstream.c (weak_alias): Pass correct types to ctype
3147         macros.
3148
3149 2009-05-08  Simon Josefsson  <simon@josefsson.org>
3150
3151         * tests/test-vc-list-files-git.sh: Do git config of user.email and
3152         user.name to prevent git commit from complaining.
3153
3154 2009-05-10  Bruno Haible  <bruno@clisp.org>
3155
3156         * gnulib-tool (func_import, func_create_testdir, copy-file): Change
3157         sed_rewrite_old_files, sed_rewrite_new_files, sed_rewrite_files so that
3158         it rewrites every file name only once.
3159         Reported by Simon Josefsson. Helped by Ralf Wildenhues.
3160
3161 2009-05-08  Bruno Haible  <bruno@clisp.org>
3162
3163         * lib/sys_socket.in.h (_SS_PADSIZE): Use a conditional expression
3164         instead of 'max'.
3165
3166 2009-05-08  Simon Josefsson  <simon@josefsson.org>
3167
3168         * m4/sys_socket_h.m4: Test for ws2tcpip.h earlier, needed for
3169         sockaddr_storage test.
3170
3171 2009-05-07  Simon Josefsson  <simon@josefsson.org>
3172
3173         * modules/sys_socket (Makefile.am): Substitute
3174         HAVE_STRUCT_SOCKADDR_STORAGE.  Depend on alignof.
3175         * m4/sys_socket_h.m4: Check for sockaddr_storage.
3176         * lib/sys_socket.in.h (sockaddr_storage): Define when needed.
3177         * tests/test-sys_socket.c: Check sockaddr_storage.
3178
3179 2009-05-08  Bruno Haible  <bruno@clisp.org>
3180
3181         New module 'alignof'.
3182         * lib/alignof.h: New file.
3183         * modules/alignof: New file.
3184
3185 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
3186             Bruno Haible  <bruno@clisp.org>
3187
3188         Fix test-file-has-acl on FreeBSD.
3189         * tests/test-file-has-acl.sh: Also test a directory. On FreeBSD, the
3190         mask is implicitly added.
3191         * tests/test-file-has-acl.c: Include <signal.h>.
3192         (main): Terminate the test after 5 seconds.
3193         * modules/acl-tests (configure.ac): Check for alarm function.
3194
3195 2009-05-04  Bruno Haible  <bruno@clisp.org>
3196
3197         Exploit new semantics of AC_DEFUN_ONCE available since 2009-01-26.
3198         * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Remove outdated comment.
3199         * modules/errno (configure.ac): Drop AC_REQUIRE.
3200         * m4/multiarch.m4 (gl_MULTIARCH): Remove outdated comment.
3201         * modules/multiarch (configure.ac): Drop AC_REQUIRE.
3202
3203 2009-05-04  Simon Josefsson  <simon@josefsson.org>
3204
3205         * modules/glob-tests: New module.
3206         * tests/test-glob.c: Add.
3207
3208 2009-05-04  Simon Josefsson  <simon@josefsson.org>
3209
3210         * modules/fnmatch-tests: New module.
3211         * tests/test-fnmatch.c: Add.
3212
3213 2009-05-04  Eric Blake  <ebb9@byu.net>
3214
3215         maint: make the new no-submodule-changes rule VPATH-safe
3216         * top/maint.mk (no-submodule-changes): Don't assume a srcdir build.
3217
3218 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
3219             Bruno Haible  <bruno@clisp.org>
3220
3221         acl: Fix infinite loop on FreeBSD.
3222         * lib/acl_entries.c (acl_entries) [Linux, FreeBSD]: Fix interpretation
3223         of return value from acl_get_entry.
3224         * lib/file-has-acl.c (acl_access_nontrivial) [Linux, FreeBSD]:
3225         Likewise.
3226
3227 2009-05-03  Bruno Haible  <bruno@clisp.org>
3228
3229         * lib/acl-internal.h (acl_entries): Clarify return value.
3230         * lib/acl_entries.c (acl_entries): Likewise.
3231
3232 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
3233
3234         Bug fix in acl module.
3235         * lib/set-mode-acl.c: Use correct struct with ACL_SETACL.
3236
3237 2009-05-03  Bruno Haible  <bruno@clisp.org>
3238
3239         Create gperf-generated file in the source dir, not in the build dir.
3240         * modules/iconv_open (iconv_open-aix.h, iconv_open-hpux.h,
3241         iconv_open-irix.h, iconv_open-osf.h): Create file in the source tree.
3242         * modules/unicase/locale-language (unicase/locale-languages.h):
3243         Likewise.
3244         * modules/unicase/special-casing (unicase/special-casing-table.h):
3245         Likewise.
3246         * modules/unictype/property-byname (unictype/pr_byname.h): Likewise.
3247         * modules/unictype/scripts (unictype/scripts_byname.h): Likewise.
3248         * modules/uninorm/composition (uninorm/composition-table.h): Likewise.
3249         Reported by Ralf Wildenhues.
3250
3251 2009-05-03  Bruno Haible  <bruno@clisp.org>
3252
3253         * modules/fnmatch (Description, configure.ac): Taken from
3254         fnmatch-posix.
3255         * modules/fnmatch-posix: Turn into a symbolic reference to the
3256         'fnmatch' module, and deprecate.
3257         * doc/posix-functions/fnmatch.texi: Mention the fnmatch module.
3258
3259 2009-05-03  Bruno Haible  <bruno@clisp.org>
3260
3261         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF,
3262         gl_PREREQ_VASNPRINTF_LONG_DOUBLE): Define through AC_DEFUN_ONCE.
3263         Reported by Ralf Wildenhues.
3264
3265 2009-05-04  Simon Josefsson  <simon@josefsson.org>
3266
3267         * m4/fnmatch.m4: Fix fnmatch re-define.
3268
3269 2009-04-27  David Bartley  <dtbartle@csclub.uwaterloo.ca>
3270
3271         priv-set: new module and tests; adapt write-any-file
3272         * lib/priv-set.c: New file.
3273         * lib/priv-set.h: New file.
3274         * lib/unlinkdir.c: Make cannot_unlink_dir thread-safe.
3275         * lib/write-any-file.c: Simplify by using priv-set module.
3276         * m4/priv-set.m4: New file.
3277         * modules/priv-set: New file.
3278         * modules/unlinkdir: Add dependency on priv-set module.
3279         * modules/write-any-file: Likewise.
3280
3281         Tests for module 'priv-set'.
3282         * modules/priv-set-tests: New file.
3283         * tests/test-priv-set.c: New file.
3284
3285 2009-05-03  Jim Meyering  <meyering@redhat.com>
3286             Bruno Haible  <bruno@clisp.org>
3287
3288         * lib/propername.c (proper_name_utf8): Ignore no-op translations;
3289         use the converted UTF-8 variant of the name instead.
3290
3291 2009-05-03  Jim Meyering  <meyering@redhat.com>
3292
3293         tests: tighten some getdate tests
3294         * tests/test-getdate.c (main): Tighten tests: require equality,
3295         not just greater than.  Set TZ envvar to UTC0.
3296
3297 2009-05-03  Giuseppe Scrivano  <gscrivano@gnu.org>
3298
3299         getdate: correctly interpret "next monday" when run on a Monday
3300         * lib/getdate.y (get_date): Correct the calculation of tm_mday so
3301         that e.g., "next tues" (when run on a tuesday) results in a date
3302         that is one week in the future, and not today's date.
3303         I.e., add a week when the wday is the same as the current one.
3304         Reported by Tom Broadhurst in http://savannah.gnu.org/bugs/?25406,
3305         and earlier by Martin Bernreuther and Jan Minář.
3306         * tests/test-getdate.c (main): Check that "next DAY" is always in
3307         the future and that "last DAY" is always in the past.
3308
3309 2009-05-02  Jim Meyering  <meyering@redhat.com>
3310
3311         build: ensure that a release build fails when a submodule is unclean
3312         * top/maint.mk (no-submodule-changes): New rule.
3313         (alpha beta major): Depend on it.
3314
3315 2009-05-02  Bruno Haible  <bruno@clisp.org>
3316
3317         Remove incompatibility between modules fnmatch-posix and fnmatch-gnu.
3318         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX, gl_FUNC_FNMATCH_GNU): Use a
3319         shell variable gl_fnmatch_required to detect which variant is
3320         requested.
3321         (_AC_FUNC_FNMATCH_IF, _AC_LIBOBJ_FNMATCH): Remove macros. Inlined into
3322         gl_FUNC_FNMATCH_POSIX.
3323         * gnulib-tool (func_create_testdir, func_create_megatestdir): Don't
3324         exclude fnmatch-posix.
3325
3326 2009-05-02  Bruno Haible  <bruno@clisp.org>
3327
3328         Relicense mbsrtowcs and strnlen1 under LGPLv2+.
3329         * modules/mbsrtowcs (License): Change to LGPLv2+.
3330         * modules/strnlen1 (License): Likewise.
3331         Reported by Simon Josefsson.
3332
3333 2009-05-02  Bruno Haible  <bruno@clisp.org>
3334
3335         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Say "guessing no" instead of
3336         "cross".
3337         (gl_FUNC_FNMATCH_POSIX, gl_FUNC_FNMATCH_GNU): Update. Don't assume that
3338         gnulib-tool was called with option --source-base=lib.
3339
3340 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3341
3342         Use automake *-local hooks without commands, for extensibility.
3343         * modules/localcharset (Makefile.am): Rename install-exec-local
3344         rule to install-exec-localcharset, and make it a prerequisite of
3345         install-exec-local.  Likewise, rename the uninstall-local rule to
3346         uninstall-localcharset, and make it a prerequisite of the former.
3347
3348 2009-05-01  Bruno Haible  <bruno@clisp.org>
3349
3350         * lib/wchar.in.h (wcsnrtombs): Define if REPLACE_WCSNRTOMBS is 1.
3351         * m4/wcsnrtombs.m4 (gl_FUNC_WCSRTOMBS): Invoke gl_MBSTATE_T_BROKEN, and
3352         set REPLACE_WCSNRTOMBS if mbstate_t must be replaced.
3353         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCSNRTOMBS.
3354         * modules/wchar (Makefile.am): Substitute REPLACE_WCSNRTOMBS.
3355         * modules/wcsnrtombs (Files): Add m4/mbrtowc.m4, m4/locale-ja.m4,
3356         m4/locale-zh.m4, m4/codeset.m4.
3357
3358         * m4/wcsrtombs.m4 (gl_FUNC_WCSNRTOMBS): Invoke gl_MBSTATE_T_BROKEN, and
3359         set REPLACE_WCSRTOMBS if mbstate_t must be replaced.
3360         * modules/wcsrtombs (Files): Add m4/mbrtowc.m4, m4/locale-ja.m4,
3361         m4/locale-zh.m4.
3362
3363         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Invoke gl_MBSTATE_T_BROKEN, and set
3364         REPLACE_WCRTOMB if mbstate_t must be replaced.
3365         * modules/wcrtomb (Files): Add m4/mbrtowc.m4.
3366         Reported by Jens Rehsack <rehsack@googlemail.com> via Eric Blake.
3367
3368 2009-05-01  Bruno Haible  <bruno@clisp.org>
3369
3370         Avoid compiler warnings when redefining macros defined by <libintl.h>.
3371         * lib/gettext.h [!ENABLE_NLS] (gettext, dgettext, dcgettext, ngettext,
3372         dngettext, dcngettext, textdomain, bindtextdomain,
3373         bind_textdomain_codeset): Undefine before redefining.
3374
3375 2009-04-30  Bruno Haible  <bruno@clisp.org>
3376
3377         Fix bug introduced on 2009-04-25.
3378         * lib/math.in.h (gl_signbitf_OPTIMIZED_MACRO,
3379         gl_signbitd_OPTIMIZED_MACRO, gl_signbitl_OPTIMIZED_MACRO): New macros.
3380         * lib/signbitf.c (gl_signbitd): Undefine if gl_signbitf_OPTIMIZED_MACRO
3381         is defined.
3382         * lib/signbitd.c (gl_signbitd): Undefine if gl_signbitd_OPTIMIZED_MACRO
3383         is defined.
3384         * lib/signbitl.c (gl_signbitd): Undefine if gl_signbitl_OPTIMIZED_MACRO
3385         is defined.
3386         Reported by Elbert_Pol <elbert.pol@gmail.com>.
3387
3388 2009-04-28  Bruno Haible  <bruno@clisp.org>
3389
3390         Comment tweaks.
3391         * lib/unistr.h (u*_cmp2): Clarify what memcmp2 is.
3392         * lib/uninorm.h (u*_normxfrm): Fix description of return value.
3393         * lib/unicase.h (u*_casexfrm): Likewise.
3394         Reported by Paolo Bonzini.
3395
3396 2009-04-28  Bruno Haible  <bruno@clisp.org>
3397
3398         Fix a compilation error.
3399         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Fix initializer.
3400         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
3401         Reported by Jim Meyering.
3402
3403 2009-04-27  Bruno Haible  <bruno@clisp.org>
3404
3405         New module 'libunistring'.
3406         * modules/libunistring: New file.
3407         * m4/libunistring.m4: New file.
3408         * MODULES.html.sh (Unicode string functions): Add it.
3409
3410 2009-04-27  Eric Blake  <ebb9@byu.net>
3411
3412         maint.mk: allow package-specific header to provide <config.h>
3413         * top/maint.mk (sc_require_config_h): New variable.
3414         (sc_require_config_h, sc_require_config_h_first): Use it.
3415
3416 2009-04-27  Simon Josefsson  <simon@josefsson.org>
3417
3418         * top/maint.mk (sc_avoid_if_before_free): Except
3419         useless-if-before-free script.
3420
3421 2009-04-27  Eric Blake  <ebb9@byu.net>
3422
3423         maintainer-makefile: depend on all required helper scripts
3424         * modules/maintainer-makefile (Depends-on): Add vc-list-files and
3425         useless-if-before-free.
3426         * top/maint.mk (VC_LIST, sc_avoid_if_before_free): Use local
3427         version, rather than assuming gnulib checkout is available.
3428         Reported by Simen Josefsson.
3429
3430 2009-04-26  Bruno Haible  <bruno@clisp.org>
3431
3432         Make the lib vs. lib64 recognition work on openSUSE 11 with "gcc -m32".
3433         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): Ignore paths that end in
3434         "../" or "..".
3435
3436 2009-04-26  Bruno Haible  <bruno@clisp.org>
3437
3438         * m4/lib-link.m4 (AC_LIB_HAVE_LINKFLAGS): Accept a fifth argument.
3439         * m4/libsigsegv.m4 (gl_LIBSIGSEGV): Simplify by using
3440         AC_LIB_HAVE_LINKFLAGS.
3441
3442 2009-04-26  Bruno Haible  <bruno@clisp.org>
3443
3444         Simplify calling convention of u*_conv_from_encoding.
3445         * lib/uniconv.h (u8_conv_from_encoding, u16_conv_from_encoding,
3446         u32_conv_from_encoding): Expect a resultbuf argument and return the
3447         result directly as a pointer.
3448         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Likewise.
3449         * lib/uniconv/u-conv-from-enc.h (FUNC): Likewise.
3450         * lib/uniconv/u-strconv-from-enc.h (FUNC): Update.
3451         * lib/unicase/ulc-casecmp.c (ulc_u8_casefold): Update.
3452         * lib/unicase/ulc-casexfrm.c (ulc_casexfrm): Update.
3453         * lib/unilbrk/ulc-possible-linebreaks.c (ulc_possible_linebreaks):
3454         Update.
3455         * lib/unilbrk/ulc-width-linebreaks.c (ulc_width_linebreaks): Update.
3456         * lib/uniwbrk/ulc-wordbreaks.c (ulc_wordbreaks): Update.
3457         * lib/vasnprintf.c (VASNPRINTF): Update.
3458         * tests/uniconv/test-u8-conv-from-enc.c (main): Update.
3459         * tests/uniconv/test-u16-conv-from-enc.c (main): Update.
3460         * tests/uniconv/test-u32-conv-from-enc.c (main): Update.
3461         * NEWS: Mention the change.
3462
3463 2009-04-26  Bruno Haible  <bruno@clisp.org>
3464
3465         Simplify calling convention of u*_conv_to_encoding.
3466         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
3467         u32_conv_to_encoding): Expect a resultbuf argument and return the
3468         result directly as a pointer.
3469         * lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
3470         * lib/uniconv/u-conv-to-enc.h (FUNC): Likewise. Preserve errno while
3471         freeing scaled_offsets if mem_iconveha failed.
3472         * lib/unicase/u-casexfrm.h (FUNC): Update.
3473         * lib/uninorm/u-normxfrm.h (FUNC): Update.
3474         * lib/vasnprintf.c (VASNPRINTF): Update.
3475         * tests/uniconv/test-u8-conv-to-enc.c (main): Update.
3476         * tests/uniconv/test-u16-conv-to-enc.c (main): Update.
3477         * tests/uniconv/test-u32-conv-to-enc.c (main): Update.
3478         * NEWS: Mention the change.
3479
3480 2009-04-26  Bruno Haible  <bruno@clisp.org>
3481
3482         Avoid test failures on AIX and OSF/1.
3483         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Avoid calling
3484         malloc(0).
3485         * lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
3486         * lib/unilbrk/ulc-possible-linebreaks.c (ulc_possible_linebreaks):
3487         Likewise.
3488         * lib/unilbrk/ulc-width-linebreaks.c (ulc_width_linebreaks): Likewise.
3489         * lib/uniwbrk/ulc-wordbreaks.c (ulc_wordbreaks): Likewise.
3490         * lib/uniconv/u-conv-to-enc.h (FUNC): Likewise. Fix memory leak.
3491         * lib/unistr/u-cpy-alloc.h (FUNC): Call malloc(1) instead of malloc(0).
3492         * doc/posix-functions/malloc.texi: Document the portability problem
3493         related to malloc(0).
3494
3495 2009-04-26  Bruno Haible  <bruno@clisp.org>
3496
3497         * modules/unistr/u8-cpy-alloc (Depends-on): Add malloc-posix.
3498         * modules/unistr/u16-cpy-alloc (Depends-on): Likewise.
3499         * modules/unistr/u32-cpy-alloc (Depends-on): Likewise.
3500
3501 2009-04-25  Bruno Haible  <bruno@clisp.org>
3502
3503         Avoid link error when creating a namespace clean library.
3504         * lib/math.in.h (gl_signbitf, gl_signbitd, gl_signbitl): Don't define
3505         as macro with arguments if already defined as an alias.
3506         * lib/signbitf.c (gl_signbitf): Don't undefine.
3507         * lib/signbitd.c (gl_signbitd): Don't undefine.
3508         * lib/signbitl.c (gl_signbitl): Don't undefine.
3509
3510 2009-04-25  Jim Meyering  <meyering@redhat.com>
3511
3512         vc-list-files: fix another quoting bug
3513         * build-aux/vc-list-files: Avoid sed backslash expansion
3514         of pathological directory names.
3515
3516 2009-04-25  Eric Blake  <ebb9@byu.net>
3517
3518         vc-list-files: fix shell quoting error
3519         * build-aux/vc-list-files: Protect against $ in $dir.  Normalize
3520         timestamp.
3521
3522 2009-04-25  Jim Meyering  <meyering@redhat.com>
3523
3524         vc-list-files: restore lost functionality with subdir argument
3525         * build-aux/vc-list-files: When given a non-"." sub-directory
3526         argument, substitute the $dir/ prefix back onto each resulting name.
3527         Otherwise, coreutils' root_tests check would fail.
3528
3529 2009-04-24  Eric Blake  <ebb9@byu.net>
3530
3531         vc-list-files: ignore git symlinks
3532         * build-aux/vc-list-files (.git): Use ls-tree and a filter, rather
3533         than ls-files, to ignore git symlinks.
3534
3535         maint.mk: import improvements from m4
3536         * top/maint.mk (VC-tag): Use signing key from cfg.mk.
3537         (move_if_change): Delete unused macro.
3538         (news-date-check, vc-diff-check): Support VPATH builds.
3539         (announcement): Likewise.  Split --bootstrap-tools list...
3540         (boostrap-tools): ...into separate list, which can be overridden
3541         in cfg.mk.
3542         (sc_avoid_if_before_free): Point to $(gnulib_dir), rather than
3543         requiring dependency on useless-if-before-free module.
3544         (VC_LIST, VC_LIST_EXCEPT): Likewise for vc-list-files module.
3545         Support VPATH builds.
3546
3547 2009-04-24  Jim Meyering  <meyering@redhat.com>
3548
3549         maint.mk: remove coreutils-specific rules and variables
3550         * top/maint.mk (bin, taint-distcheck, coreutils-path-check, t): Remove.
3551         (fake_home, install-transform-check, my-instcheck, pfx, TMPDIR): Remove.
3552         (t_prefix, t_taint, tp, warn_cflags, write_loser, my-distcheck): Remove.
3553
3554         maint.mk: remove obsolete rule
3555         * top/maint.mk (rel-check): Remove rule.
3556         (WGET, WGETFLAGS): Remove now-unused variables.
3557
3558 2009-04-24  Simon Josefsson  <simon@josefsson.org>
3559
3560         * top/maint.mk (makefile-check): Renamed to sc_makefile_check for
3561         consistency.
3562
3563         * modules/vc-list-files-tests (TESTS_ENVIRONMENT): Use
3564         '$(PATH_SEPARATOR)' instead of ':'.
3565
3566 2009-04-24  Simon Josefsson  <simon@josefsson.org>
3567
3568         * lib/getopt1.c (main): Use 'const' for static array.
3569
3570 2009-04-24  Simon Josefsson  <simon@josefsson.org>
3571
3572         * top/maint.mk: Sync with coreutils.
3573         * NEWS: Explain incompatibilities.
3574
3575 2009-04-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
3576             Bruno Haible  <bruno@clisp.org>
3577
3578         Fix cross-compilation results.
3579         * m4/btowc.m4 (gl_FUNC_BTOWC): Use no-op statement, rather than empty
3580         statement, as third argument of AC_TRY_RUN.
3581         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE, gl_MBRTOWC_SANITYCHECK,
3582         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL):
3583         Likewise.
3584         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Likewise.
3585         * m4/wcsrtombs.m4 (gl_WCSRTOMBS_TERMINATION, gl_WCSRTOMBS_NULL):
3586         Likewise.
3587         * m4/wctob.m4 (gl_FUNC_WCTOB): Likewise.
3588         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Likewise. Update for AIX 4.3.
3589         * doc/posix-functions/wcrtomb.texi: Mention the bug on AIX 4.3.
3590
3591 2009-04-20  Bruno Haible  <bruno@clisp.org>
3592
3593         Avoid test failure on mingw.
3594         * tests/uniwidth/test-uc_width2.sh: Convert newlines in output.
3595
3596 2009-04-20  Bruno Haible  <bruno@clisp.org>
3597
3598         Avoid compilation error on mingw.
3599         * modules/localename-tests (Depends-on): Add locale.
3600
3601 2009-04-19  Bruno Haible  <bruno@clisp.org>
3602
3603         Support for building a shared library on Windows platforms.
3604         * tests/uninorm/test-nfc.c (n): Don't define if WOE32DLL.
3605         (main): Test the presence of UNINORM_NFC here.
3606         * tests/uninorm/test-nfd.c (n): Don't define if WOE32DLL.
3607         (main): Test the presence of UNINORM_NFD here.
3608         * tests/uninorm/test-nfkc.c (n): Don't define if WOE32DLL.
3609         (main): Test the presence of UNINORM_NFKC here.
3610         * tests/uninorm/test-nfkd.c (n): Don't define if WOE32DLL.
3611         (main): Test the presence of UNINORM_NFKD here.
3612
3613 2009-04-19  Bruno Haible  <bruno@clisp.org>
3614
3615         Avoid a compiler warning.
3616         * tests/uninorm/test-u32-normalize-big.c (read_normalization_test_file):
3617         Change type of variable 'sequence'.
3618
3619 2009-04-19  Bruno Haible  <bruno@clisp.org>
3620
3621         * modules/configmake (Makefile.am): When the contents of configmake.h
3622         does not change, arrange to preserve its modification time.
3623
3624 2009-04-17  Simon Josefsson  <simon@josefsson.org>
3625
3626         * top/maint.mk (PO_DOMAIN): New variable, allows overriding of
3627         gettext domain.
3628
3629 2009-04-16  Jim Meyering  <meyering@redhat.com>
3630
3631         useless-if-before-free: improve conversion code
3632         * build-aux/useless-if-before-free: Adjust code-in-comment to match
3633         "...!= 0" as well as "...!= NULL".  emacs has one of the former.
3634
3635 2009-04-14  Bruno Haible  <bruno@clisp.org>
3636
3637         * modules/fcntl (Depends-on): Add extensions.
3638         * m4/fcntl_h.m4 (gl_FCNTL_H): Add a comment.
3639
3640 2009-04-12  Ben Pfaff  <blp@gnu.org>
3641
3642         Make fcntl module detect O_NOATIME, O_NOFOLLOW on GNU/Linux.
3643         * m4/fcntl_h.m4 (gl_FCNTL_H): Require AC_USE_SYSTEM_EXTENSIONS.
3644
3645 2009-03-20  Ben Pfaff  <blp@gnu.org>
3646
3647         Make rename replace existing destinations on Windows.
3648         * m4/rename.m4: Add test for Mingw.
3649         * lib/rename.c: Add rename replacement that uses MoveFileEx with
3650         MOVEFILE_REPLACE_EXISTING to replace existing destination files.
3651         * doc/posix-functions/rename.texi: Document.
3652
3653 2009-04-10  Bruno Haible  <bruno@clisp.org>
3654
3655         New include file "iconveh.h".
3656         * lib/iconveh.h: New file, extracted from lib/striconveh.h.
3657         * lib/striconveh.h: Include it.
3658         (enum iconv_ilseq_handler): Remove definition.
3659         * lib/striconveha.h: Include <stddef.h> and iconveh.h instead of
3660         striconveh.h.
3661         * lib/striconveha.c: Include striconveh.h.
3662         * lib/uniconv.h: Include iconveh.h instead of striconveh.h.
3663         * modules/striconveh (Files): Add lib/iconveh.h.
3664         * modules/uniconv/base (Files): Add lib/iconveh.h. Remove
3665         lib/striconveh.h.
3666
3667 2009-04-10  Bruno Haible  <bruno@clisp.org>
3668
3669         * lib/uniconv.h: Update comment.
3670
3671 2009-04-10  Bruno Haible  <bruno@clisp.org>
3672
3673         * lib/unistr/u8-mbtouc-aux.c: Inside libunistring, define the function
3674         always.
3675         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
3676         * lib/unistr/u16-mbtouc-aux.c: Likewise.
3677         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
3678         * lib/unistr/u8-mbtouc.c: Inside libunistring, include
3679         "unistring-notinline.h", so that the function gets defined always.
3680         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
3681         * lib/unistr/u8-uctomb.c: Likewise.
3682         * lib/unistr/u16-mbtouc.c: Likewise.
3683         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
3684         * lib/unistr/u16-uctomb.c: Likewise.
3685         * lib/unistr/u32-mbtouc.c: Likewise.
3686         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
3687         * lib/unistr/u32-uctomb.c: Likewise.
3688
3689 2009-04-10  Bruno Haible  <bruno@clisp.org>
3690
3691         Mark 'utime' obsolete.
3692         * modules/utime (Status, Notice): New sections.
3693         Suggested by Jim Meyering.
3694
3695         Fix cross-compile guess for utime test.
3696         * m4/utime.m4 (AC_FUNC_UTIME_NULL): Add definition from newest unstable
3697         autoconf.
3698         * doc/posix-functions/utime.texi: Give more precisions.
3699         Reported by Jan <ipif@ymail.com>.
3700
3701 2009-04-09  Kamil Dudka  <kdudka@redhat.com>
3702
3703         filevercmp: correct today's change
3704         * lib/filevercmp.c: Also handle coreutils' test inputs.
3705         * tests/test-filevercmp.c: Add inputs from one of coreutils' test scripts.
3706
3707         Fix regression in 'filevercmp' module. Thanks Sven Joachim
3708         for reporting it.
3709         * lib/filevercmp.c: Special handle for "", "." and "..".
3710         * tests/test-filevercmp.c: Enlarge the set suite.
3711
3712 2009-04-07  Jim Meyering  <meyering@redhat.com>
3713
3714         useless-if-before-free: show how to remove braced useless free, too
3715         * build-aux/useless-if-before-free: still only in a comment, though.
3716
3717 2009-04-07  Reuben Thomas  <rrt@sc3d.org>
3718
3719         maint.mk: import changes to syntax-check macros from coreutils
3720         * top/maint.mk (_prohibit_regexp, _header_without_use): Define.
3721         Use them in the relevant macros.
3722
3723 2009-04-06  Bruno Haible  <bruno@clisp.org>
3724
3725         Fix unportable use of bit-fields.
3726         * lib/unicase/special-casing.h (struct special_casing_rule): Change the
3727         bit-field type from 'int' to 'signed int'. Otherwise Solaris cc,
3728         AIX xlc, and OSF/1 cc interpret it as 'unsigned int'.
3729
3730 2009-04-06  Bruno Haible  <bruno@clisp.org>
3731
3732         Avoid test failures on AIX and OSF/1.
3733         * tests/unicase/test-u8-casefold.c (check): Account for the possibility
3734         that malloc(0) = NULL.
3735         * tests/unicase/test-u8-tolower.c (check): Likewise.
3736         * tests/unicase/test-u8-totitle.c (check): Likewise.
3737         * tests/unicase/test-u8-toupper.c (check): Likewise.
3738         * tests/unicase/test-u16-casefold.c (check): Likewise.
3739         * tests/unicase/test-u16-tolower.c (check): Likewise.
3740         * tests/unicase/test-u16-totitle.c (check): Likewise.
3741         * tests/unicase/test-u16-toupper.c (check): Likewise.
3742         * tests/unicase/test-u32-casefold.c (check): Likewise.
3743         * tests/unicase/test-u32-tolower.c (check): Likewise.
3744         * tests/unicase/test-u32-totitle.c (check): Likewise.
3745         * tests/unicase/test-u32-toupper.c (check): Likewise.
3746         * tests/uninorm/test-u8-nfc.c (check): Likewise.
3747         * tests/uninorm/test-u8-nfd.c (check): Likewise.
3748         * tests/uninorm/test-u8-nfkc.c (check): Likewise.
3749         * tests/uninorm/test-u8-nfkd.c (check): Likewise.
3750         * tests/uninorm/test-u16-nfc.c (check): Likewise.
3751         * tests/uninorm/test-u16-nfd.c (check): Likewise.
3752         * tests/uninorm/test-u16-nfkc.c (check): Likewise.
3753         * tests/uninorm/test-u16-nfkd.c (check): Likewise.
3754         * tests/uninorm/test-u32-nfc.c (check): Likewise.
3755         * tests/uninorm/test-u32-nfd.c (check): Likewise.
3756         * tests/uninorm/test-u32-nfkc.c (check): Likewise.
3757         * tests/uninorm/test-u32-nfkd.c (check): Likewise.
3758
3759 2009-04-05  Bruno Haible  <bruno@clisp.org>
3760
3761         Work around an autoconf limitation.
3762         * gnulib-tool (func_emit_lib_Makefile_am): Omit the "Reproduce by"
3763         comment line if it would be longer than 3 KB.
3764
3765 2009-04-05  Bruno Haible  <bruno@clisp.org>
3766
3767         Avoid test failure with libiconv-1.13.
3768         * tests/test-striconveh.c (main): Allow result of libiconv 1.13 as one
3769         of the expected test results.
3770
3771 2009-04-05  Bruno Haible  <bruno@clisp.org>
3772
3773         * gnulib-tool (func_emit_lib_Makefile_am): Don't add the library to
3774         noinst_LTLIBRARIES if the Makefile.am in the same directory specifies
3775         that it should be installed.
3776
3777 2009-04-05  Bruno Haible  <bruno@clisp.org>
3778
3779         * gnulib-tool: New option --copy-file.
3780         (func_usage): Document it.
3781         (func_dest_tmpfilename): Moved out of func_import.
3782         (func_add_file, func_update_file): New functions, extracted from
3783         func_import.
3784         (func_import): Update.
3785
3786 2009-04-05  Karl Berry  <karl@gnu.org>
3787
3788         * README: prominently mention gnulib-tool.
3789         Rearrange sections so getting the code is near the top.
3790
3791 2009-04-05  Bruno Haible  <bruno@clisp.org>
3792
3793         * lib/unicase.h: Mention u*_cmp2.
3794         * lib/unicase/u-casecmp.h (FUNC): Invoke U_CMP2 instead of U_CMP.
3795         * lib/unicase/u8-casecmp.c: Use u8_cmp2 instead of u8_cmp.
3796         * lib/unicase/ulc-casecmp.c: Likewise.
3797         * lib/unicase/u16-casecmp.c: Use u16_cmp2 instead of u16_cmp.
3798         * lib/unicase/u32-casecmp.c: Use u32_cmp2 instead of u32_cmp.
3799         * modules/unicase/u8-casecmp (Depends-on): Add unistr/u8-cmp2, remove
3800         unistr/u8-cmp.
3801         * modules/unicase/ulc-casecmp (Depends-on): Likewise.
3802         * modules/unicase/u16-casecmp (Depends-on): Add unistr/u16-cmp2, remove
3803         unistr/u16-cmp.
3804         * modules/unicase/u32-casecmp (Depends-on): Add unistr/u32-cmp2, remove
3805         unistr/u32-cmp.
3806
3807         * lib/uninorm.h: Mention u*_cmp2.
3808         * lib/uninorm/u-normcmp.h (FUNC): Invoke U_CMP2 instead of U_CMP.
3809         * lib/uninorm/u8-normcmp.c: Use u8_cmp2 instead of u8_cmp.
3810         * lib/uninorm/u16-normcmp.c: Use u16_cmp2 instead of u16_cmp.
3811         * lib/uninorm/u32-normcmp.c: Use u32_cmp2 instead of u32_cmp.
3812         * modules/uninorm/u8-normcmp (Depends-on): Add unistr/u8-cmp2, remove
3813         unistr/u8-cmp.
3814         * modules/uninorm/u16-normcmp (Depends-on): Add unistr/u16-cmp2, remove
3815         unistr/u16-cmp.
3816         * modules/uninorm/u32-normcmp (Depends-on): Add unistr/u32-cmp2, remove
3817         unistr/u32-cmp.
3818
3819         New module 'unistr/u32-cmp2'.
3820         * lib/unistr/u32-cmp2.c: New file.
3821         * modules/unistr/u32-cmp2: New file.
3822
3823         New module 'unistr/u16-cmp2'.
3824         * lib/unistr/u16-cmp2.c: New file.
3825         * modules/unistr/u16-cmp2: New file.
3826
3827         New module 'unistr/u8-cmp2'.
3828         * lib/unistr.h (u8_cmp2, u16_cmp2, u32_cmp2): New declarations.
3829         * lib/unistr/u8-cmp2.c: New file.
3830         * lib/unistr/u-cmp2.h: New file.
3831         * modules/unistr/u8-cmp2: New file.
3832
3833 2009-04-05  Bruno Haible  <bruno@clisp.org>
3834
3835         * lib/unictype.h (uc_property_is_valid): New macro.
3836         * tests/unictype/test-pr_byname.c (main): Use it.
3837
3838         * lib/unistr.h: Doc fixes.
3839         * lib/uniconv.h: Doc fixes.
3840         * lib/unictype.h: Doc fixes.
3841
3842 2009-04-03  Paul Eggert  <eggert@cs.ucla.edu>
3843
3844         Port coreutils 7.2 to Solaris 8.
3845
3846         * modules/arpa_inet (arpa/inet.h): Depend on arpa_inet.in.h.
3847         * m4/inet_ntop.m4 (gl_INET_NTOP): Search for inet_ntop in -lnsl,
3848         for Solaris 8.  This is a bit of a hack, as it means it's the
3849         caller's responsibility to add -lnsl if needed, but most likely it
3850         won't be needed since only getaddrinfo uses this and getaddrinfo
3851         isn't needed on Solaris 8.
3852
3853         * modules/fnmatch (Depends-on): Add mbsrtowcs, to fix a porting
3854         problem to Solaris 8 encountered with coreutils 7.2, which
3855         resulted in a message "fnmatch.c:292: warning: passing argument 4
3856         of 'mbsrtowcs' from incompatible pointer type".  Also, add mbsinit
3857         at the suggestion of Bruno Haible, since fnmatch uses mbsinit.
3858
3859 2009-04-03  Simon Josefsson  <simon@josefsson.org>
3860
3861         * m4/ld-version-script.m4: Add FIXME comment.
3862
3863 2009-04-02  Simon Josefsson  <simon@josefsson.org>
3864
3865         * doc/ld-output-def.texi: Use DLL_VERSION instead of confusing
3866         SOVERSION variable.
3867
3868 2009-04-02  Bruno Haible  <bruno@clisp.org>
3869
3870         * Makefile (info, html, dvi, pdf): Combine the rules.
3871         Suggested by Jim Meyering.
3872
3873 2009-04-01  Bruno Haible  <bruno@clisp.org>
3874
3875         * Makefile (info, html, dvi, pdf): New targets.
3876         Reported by Reuben Thomas <rrt@sc3d.org>.
3877
3878 2009-04-01  Bruno Haible  <bruno@clisp.org>
3879
3880         * doc/gnulib-tool.texi (Invoking gnulib-tool): Document how gnulib-tool
3881         can be put into PATH.
3882         Reported by Reuben Thomas <rrt@sc3d.org>. Suggested by Karl Berry.
3883
3884 2009-04-01  Bruno Haible  <bruno@clisp.org>
3885
3886         * doc/lib-symbol-visibility.texi: Follow texinfo style conventions.
3887
3888 2009-04-01  Bruno Haible  <bruno@clisp.org>
3889
3890         Rename module 'visibility'.
3891         * modules/lib-symbol-visibility: Renamed from modules/visibility.
3892         * doc/lib-symbol-visibility.texi: Renamed from visibility.texi.
3893         * doc/gnulib.texi: Update.
3894         * MODULES.html.sh (Misc): Update.
3895         * NEWS: Mention the change.
3896
3897 2009-04-01  Simon Josefsson  <simon@josefsson.org>
3898
3899         * modules/lib-msvc-compat: New module.  Thanks to Bruno Haible
3900         <bruno@clisp.org>, Ralf Wildenhues <Ralf.Wildenhues@gmx.de>, and
3901         Eric Blake <ebb9@byu.net> for review.
3902         * MODULES.html.sh: Add lib-msvc-compat.
3903         * doc/gnulib.texi: Link to new section.
3904         * m4/ld-output-def.m4: New file.
3905         * doc/ld-output-def.texi: New file.
3906
3907 2009-04-01  Simon Josefsson  <simon@josefsson.org>
3908
3909         Rename ld-version-script to lib-symbol-versions.  Suggested by
3910         Bruno Haible <bruno@clisp.org>.
3911         * modules/ld-version-script: Renamed to lib-symbol-versions.
3912         * doc/ld-version-script.texi: Fix module name.
3913         * MODULES.html.sh: Add lib-symbol-versions.
3914
3915 2009-03-31  Simon Josefsson  <simon@josefsson.org>
3916
3917         * modules/u64-tests: New file.
3918         * tests/test-u64.c: New file.
3919
3920 2009-03-04  Simon Josefsson  <simon@josefsson.org>
3921
3922         * MODULES.html.sh: Mention u64.
3923         * modules/u64: New module.
3924         * modules/crypto/sha512: Depend on u64 module instead of providing
3925         u64.h.
3926
3927 2009-03-27  Eric Blake  <ebb9@byu.net>
3928
3929         test-strerror: make debugging EAI_SYSTEM easier
3930         * modules/getaddrinfo-tests (Depends-on): Add strerror.
3931         * test-getaddrinfo.c (simple) [ENABLE_DEBUGGING]: Report errno if
3932         failure was EAI_SYSTEM.
3933
3934 2009-03-25  Bruno Haible  <bruno@clisp.org>
3935
3936         Fix a problem with --enable-relocatable on Solaris 7.
3937         * modules/relocatable-prog-wrapper (Depends-on): Add environ. Needed
3938         since 2008-02-24.
3939
3940 2009-03-25  Eric Blake  <ebb9@byu.net>
3941
3942         test-sockets: avoid gcc warning
3943         * tests/test-sockets.c (main): Silence compiler warning.
3944
3945 2009-03-25  Paul Eggert  <eggert@cs.ucla.edu>
3946
3947         New modules nproc, pthread, contributed by Glen Lenker.
3948
3949         * MODULES.html.sh: Add pthread, nproc.
3950         * lib/nproc.c: New file.
3951         * lib/nproc.h: New file.
3952         * lib/pthread.in.h: New file.
3953         * m4/pthread.m4: New file.
3954         * modules/nproc: New file.
3955         * modules/pthread: New file.
3956
3957 2009-03-24  Simon Josefsson  <simon@josefsson.org>
3958
3959         * modules/unicase/locale-language-tests (test_locale_language_LDADD):
3960         New variable.
3961
3962 2009-03-24  Kamil Dudka  <kdudka@redhat.com>
3963
3964         filevercmp: handle simple~ and numbered.~3~ backup suffixes
3965         * lib/filevercmp.c: Handle simple~ and numbered.~3~ backup suffixes.
3966         * tests/test-filevercmp.c: Add tests for backup suffixes.
3967
3968 2009-03-24  Simon Josefsson  <simon@josefsson.org>
3969
3970         * modules/stdlib (Depends-on): Add stdint, needed when defining
3971         struct random_data on, for example, HP-UX 10.20.  Reported by
3972         Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
3973
3974 2009-03-24  Simon Josefsson  <simon@josefsson.org>
3975
3976         * lib/readline.c (readline): Call fflush on stdout after printing
3977         prompt.
3978
3979 2009-03-20  Bruno Haible  <bruno@clisp.org>
3980
3981         Remove dependency from 'close' module to -lws2_32 on native Windows.
3982         * lib/close-hook.h: New file.
3983         * lib/close-hook.c: New file.
3984         * lib/close.c: Include close-hook.h. Don't include <sys/socket.h>,
3985         w32sock.h.
3986         (_gl_close_fd_maybe_socket): Remove function.
3987         (rpl_close): Invoke execute_all_close_hooks instead of
3988         _gl_close_fd_maybe_socket.
3989         * lib/sockets.c: Include close-hook.h, w32sock.h.
3990         (close_fd_maybe_socket): New function, essentially from lib/close.c.
3991         (close_sockets_hook): New variable.
3992         (gl_sockets_startup): Register close_fd_maybe_socket as a hook.
3993         (gl_sockets_cleanup): Unregister it.
3994         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): Remove macro.
3995         * m4/close.m4 (gl_REPLACE_CLOSE): Undo 2009-02-05 change.
3996         * modules/close-hook: New file.
3997         * modules/close (Files): Remove lib/w32sock.h.
3998         (Depends-on): Add close-hook.
3999         (Link): Remove section.
4000         * modules/sockets (Files): Add lib/w32sock.h.
4001         (Depends-on): Add close-hook.
4002         * modules/sys_socket (configure.ac): Remove gl_MODULE_INDICATOR
4003         invocation.
4004         * NEWS: Mention that LIB_CLOSE is gone.
4005
4006 2009-03-23  Eric Blake  <ebb9@byu.net>
4007
4008         signal-tests: test previous patch
4009         * tests/test-signal.c: New file.
4010         * modules/signal-tests: Likewise.
4011
4012         signal.h: always support 'volatile sig_atomic_t'
4013         * m4/signal_h.m4 (gl_SIGNAL_H): Check for AIX limitation.
4014         (gl_SIGNAL_H_DEFAULTS): Add a default.
4015         * modules/signal (Makefile.am): Substitute if needed.
4016         * lib/signal.in.h (sig_atomic_t): Redefine if needed, so that
4017         users can blindly add volatile.
4018         * doc/posix-headers/signal.texi (signal.h): Document it.
4019         Reported by Matthew Woehlke.
4020
4021 2009-03-23  Jim Meyering  <meyering@redhat.com>
4022
4023         pathmax: PATH_MAX: use pathconf only when available
4024         * lib/pathmax.h (PATH_MAX): Select the pathconf-using definition
4025         only if HAVE_PATHCONF is defined.  Patch by Sylvain Beucler.
4026         * m4/pathmax.m4 (gl_PATHMAX): Check for pathconf.
4027         This avoids a link failure in a PSP cross-compilation environment
4028         described in http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/17048
4029
4030         * lib/vasnprintf.c (divide): Fix typo in comment.
4031
4032 2009-03-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4033
4034         * gnulib-tool (func_filter_filelist): Fix comment.
4035
4036 2009-03-20  Bruno Haible  <bruno@clisp.org>
4037
4038         Make sockets.h self-contained.
4039         * lib/sockets.c: Include sockets.h first.
4040         * lib/sockets.h: Include <sys/socket.h> before using the SOCKET type.
4041
4042 2009-03-19  Eric Blake  <ebb9@byu.net>
4043
4044         doc: mention more functions added in cygwin 1.7.0
4045         * doc/posix-functions/log2.texi: Mention recent cygwin 1.7.0
4046         addition.
4047         * doc/posix-functions/log2f.texi: Likewise.
4048
4049 2009-03-19  Jim Meyering  <meyering@redhat.com>
4050
4051         fsusage: avoid syntax error due to statement-before-declaration
4052         * lib/fsusage.c (get_fs_usage): Put warning-avoidance statement
4053         after all declarations.  Reported by Matthew Woehlke in
4054         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/16231
4055
4056 2009-03-18  Eric Blake  <ebb9@byu.net>
4057
4058         build-aux/compile: sync from automake
4059         * build-aux/compile: New file, from automake.
4060         * config/srclist.txt: Mention build-aux/compile.
4061
4062 2009-03-17  Bruno Haible  <bruno@clisp.org>
4063
4064         * lib/git-merge-changelog.c: Fix typo in comment.
4065         Reported by Reuben Thomas <rrt@sc3d.org>.
4066
4067 2009-03-17  Reuben Thomas  <rrt@sc3d.org>
4068
4069         * m4/regex.m4: update and improve help for
4070         --without-included-regex.
4071
4072 2009-03-17  Simon Josefsson  <simon@josefsson.org>
4073
4074         * modules/isnanl-nolibm-tests (Files): Add tests/nan.h to avoid
4075         failure on missing include files.
4076
4077 2009-03-17  Eric Blake  <ebb9@byu.net>
4078
4079         doc: mention more functions added in cygwin 1.7.0
4080         * doc/posix-functions/fwprintf.texi: Mention recent cygwin 1.7.0
4081         addition.
4082         * doc/posix-functions/fwscanf.texi: Likewise.
4083         * doc/posix-functions/swprintf.texi: Likewise.
4084         * doc/posix-functions/swscanf.texi: Likewise.
4085         * doc/posix-functions/vfwprintf.texi: Likewise.
4086         * doc/posix-functions/vfwscanf.texi: Likewise.
4087         * doc/posix-functions/vswprintf.texi: Likewise.
4088         * doc/posix-functions/vswscanf.texi: Likewise.
4089         * doc/posix-functions/vwprintf.texi: Likewise.
4090         * doc/posix-functions/vwscanf.texi: Likewise.
4091         * doc/posix-functions/wcscasecmp.texi: Likewise.
4092         * doc/posix-functions/wcsdup.texi: Likewise.
4093         * doc/posix-functions/wcsftime.texi: Likewise.
4094         * doc/posix-functions/wcsncasecmp.texi: Likewise.
4095         * doc/posix-functions/wprintf.texi: Likewise.
4096         * doc/posix-functions/wscanf.texi: Likewise.
4097         * doc/glibc-functions/gethostbyname2.texi: Likewise.
4098
4099 2009-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4100
4101         maint.mk: really add $(AM_MAKEFLAGS)
4102         * top/maint.mk (init-coverage, build-coverage): `$(AM_MAKEFLAGS)'
4103         was inadvertently omitted in the last commit.
4104         Spotted by Bruno Haible.
4105
4106         maint.mk: use $(MAKE) $(AM_MAKEFLAGS) not make
4107         * top/maint.mk (init-coverage, build-coverage): Use `$(MAKE)
4108         $(AM_MAKEFLAGS)' rather than plain `make'.
4109
4110         gnulib-tool: execute $MAKE not make
4111         * gnulib-tool: Default $MAKE to 'make'.
4112         (func_create_testdir, func_create_megatestdir): Use $MAKE rather
4113         than make.  Initialize $MAKE in the do-autobuild script.
4114
4115         gnulib-tool: use $MAKE not make in generated files
4116         * gnulib-tool (func_create_megatestdir): Use $MAKE rather than
4117         make, in generated files.  Initialize $MAKE in the do-autobuild
4118         script.
4119
4120         * top/GNUmakefile (_have-git-version-gen): Fix typo.
4121
4122         GNUmakefile: disable parallelism only for multiple, recursive targets
4123         * top/GNUmakefile (ALL_RECURSIVE_TARGETS): New macro; allow user
4124         additions in the Makefile.
4125         (AM_RECURSIVE_TARGETS): New macro, override only if not provided
4126         by Automake.
4127         (.NOTPARALLEL): Only disable parallel builds if multiple targets
4128         are listed on the command line and at least one of them is
4129         listed in $(ALL_RECURSIVE_TARGETS).
4130
4131 2009-03-14  Bruno Haible  <bruno@clisp.org>
4132
4133         * modules/unilbrk/u8-possible-linebreaks (Depends-on): Replace
4134         utf8-ucs4-unsafe with unistr/u8-mbtouc-unsafe.
4135         * modules/unilbrk/u8-width-linebreaks (Depends-on): Likewise.
4136         * modules/unilbrk/u16-possible-linebreaks (Depends-on): Replace
4137         utf16-ucs4-unsafe with unistr/u16-mbtouc-unsafe.
4138         * modules/unilbrk/u16-width-linebreaks (Depends-on): Likewise.
4139         * modules/unistr/u8-chr (Depends-on): Replace ucs4-utf8 with
4140         unistr/u8-uctomb.
4141         * modules/unistr/u8-strchr (Depends-on): Likewise.
4142         * modules/unistr/u8-strrchr (Depends-on): Likewise.
4143         * modules/unistr/u16-chr (Depends-on): Replace ucs4-utf16 with
4144         unistr/u16-uctomb.
4145         * modules/unistr/u16-strchr (Depends-on): Likewise.
4146         * modules/unistr/u16-strrchr (Depends-on): Likewise.
4147
4148 2009-03-12  Bruno Haible  <bruno@clisp.org>
4149
4150         Work around select() bug on Interix 3.5.
4151         * lib/sys_select.in.h (select): Also replace if REPLACE_SELECT is 1.
4152         * lib/select.c (rpl_select): Add an implementation for Unix platforms.
4153         * m4/select.m4: New file.
4154         * m4/sys_select_h.m4 (gl_SYS_SELECT_H_DEFAULTS): Initialize REPLACE_SELECT.
4155         * modules/sys_select (Makefile.am): Substitute REPLACE_SELECT.
4156         * modules/select (Files): Add m4/select.m4.
4157         (configure.ac): Move conditional to m4/select.m4. Invoke gl_FUNC_SELECT.
4158         * modules/nanosleep (Depends-on): Add select.
4159         * modules/poll (Depends-on): Likewise.
4160         * doc/posix-functions/select.texi: Mention the Interix bug.
4161         Reported by Markus Duft <mduft@gentoo.org>.
4162
4163         * lib/select.c: Renamed from lib/winsock-select.c.
4164         * modules/select (Files): Add lib/select.c, remove
4165         lib/winsock-select.c.
4166         (configure.ac): Update.
4167
4168 2009-03-12  Jim Meyering  <meyering@redhat.com>
4169
4170         avoid gcc warnings about unused macro definitions
4171         * lib/readtokens.c (STREQ): Remove unused definition.
4172         * lib/xmalloc.c (SIZE_MAX): Likewise.
4173         * lib/openat-die.c (N_): Likewise.
4174         * lib/mountlist.c (SIZE_MAX): Remove definition.
4175         Instead, include <stdint.h>.
4176         * lib/readutmp.c: Likewise.
4177         * modules/readutmp (Depends-on): Add stdint.
4178         * modules/mountlist (Depends-on): Add stdint.
4179         * lib/userspec.c (ISDIGIT): Move definition into #if block where used.
4180
4181 2009-03-10  Bruno Haible  <bruno@clisp.org>
4182
4183         Tests for module 'mbmemcasecoll'.
4184         * modules/mbmemcasecoll-tests: New file.
4185         * tests/test-mbmemcasecoll1.sh: New file.
4186         * tests/test-mbmemcasecoll2.sh: New file.
4187         * tests/test-mbmemcasecoll3.sh: New file.
4188         * tests/test-mbmemcasecoll.c: New file.
4189
4190         New module 'mbmemcasecoll'.
4191         * lib/mbmemcasecoll.h: New file.
4192         * lib/mbmemcasecoll.c: New file.
4193         * modules/mbmemcasecoll: New file.
4194
4195         * tests/test-mbmemcasecmp.h: New file, extracted from
4196         tests/test-mbmemcasecmp.c.
4197         * tests/test-mbmemcasecmp.c: Include test-mbmemcasecmp.h.
4198         (test_ascii, test_iso_8859_1, test_utf_8): Remove functions.
4199         (main): Update.
4200         * modules/mbmemcasecmp-tests (Files): Add tests/test-mbmemcasecmp.h.
4201
4202 2009-03-09  Bruno Haible  <bruno@clisp.org>
4203
4204         Tests for module 'mbmemcasecmp'.
4205         * modules/mbmemcasecmp-tests: New file.
4206         * tests/test-mbmemcasecmp1.sh: New file.
4207         * tests/test-mbmemcasecmp2.sh: New file.
4208         * tests/test-mbmemcasecmp3.sh: New file.
4209         * tests/test-mbmemcasecmp.c: New file.
4210
4211         New module 'mbmemcasecmp'.
4212         * lib/mbmemcasecmp.h: New file.
4213         * lib/mbmemcasecmp.c: New file.
4214         * modules/mbmemcasecmp: New file.
4215
4216 2009-03-09  Bruno Haible  <bruno@clisp.org>
4217
4218         Tests for module 'unicase/ulc-casecoll'.
4219         * modules/unicase/ulc-casecoll-tests: New file.
4220         * tests/unicase/test-ulc-casecoll1.sh: New file.
4221         * tests/unicase/test-ulc-casecoll2.sh: New file.
4222         * tests/unicase/test-ulc-casecoll.c: New file.
4223
4224         New module 'unicase/ulc-casecoll'.
4225         * lib/unicase.h (ulc_casecoll): New declaration.
4226         * lib/unicase/ulc-casecoll.c: New file.
4227         * modules/unicase/ulc-casecoll: New file.
4228
4229         New module 'unicase/ulc-casexfrm'.
4230         * lib/unicase.h (ulc_casexfrm): New declaration.
4231         * lib/unicase/ulc-casexfrm.c: New file.
4232         * modules/unicase/ulc-casexfrm: New file.
4233
4234 2009-03-09  Bruno Haible  <bruno@clisp.org>
4235
4236         Followup to 2008-12-22 commit: Remove unnecessary AC_FUNC_MBRTOWC
4237         invocations.
4238
4239         * m4/mbscasecmp.m4: Remove file.
4240         * modules/mbscasecmp (Files): Remove it and m4/mbrtowc.m4
4241         (configure.ac): Remove gl_FUNC_MBSCASECMP invocation.
4242
4243         * m4/mbscasestr.m4: Remove file.
4244         * modules/mbscasestr (Files): Remove it and m4/mbrtowc.m4
4245         (configure.ac): Remove gl_FUNC_MBSCASESTR invocation.
4246
4247         * m4/mbschr.m4: Remove file.
4248         * modules/mbschr (Files): Remove it and m4/mbrtowc.m4
4249         (configure.ac): Remove gl_FUNC_MBSCHR invocation.
4250
4251         * m4/mbscspn.m4: Remove file.
4252         * modules/mbscspn (Files): Remove it and m4/mbrtowc.m4
4253         (configure.ac): Remove gl_FUNC_MBSCSPN invocation.
4254
4255         * m4/mbslen.m4: Remove file.
4256         * modules/mbslen (Files): Remove it and m4/mbrtowc.m4
4257         (configure.ac): Remove gl_FUNC_MBSLEN invocation.
4258
4259         * m4/mbsncasecmp.m4: Remove file.
4260         * modules/mbsncasecmp (Files): Remove it and m4/mbrtowc.m4
4261         (configure.ac): Remove gl_FUNC_MBSNCASECMP invocation.
4262
4263         * m4/mbsnlen.m4: Remove file.
4264         * modules/mbsnlen (Files): Remove it and m4/mbrtowc.m4
4265         (configure.ac): Remove gl_FUNC_MBSNLEN invocation.
4266
4267         * m4/mbspbrk.m4: Remove file.
4268         * modules/mbspbrk (Files): Remove it and m4/mbrtowc.m4
4269         (configure.ac): Remove gl_FUNC_MBSPBRK invocation.
4270
4271         * m4/mbspcasecmp.m4: Remove file.
4272         * modules/mbspcasecmp (Files): Remove it and m4/mbrtowc.m4
4273         (configure.ac): Remove gl_FUNC_MBSPCASECMP invocation.
4274
4275         * m4/mbsrchr.m4: Remove file.
4276         * modules/mbsrchr (Files): Remove it and m4/mbrtowc.m4
4277         (configure.ac): Remove gl_FUNC_MBSRCHR invocation.
4278
4279         * m4/mbssep.m4: Remove file.
4280         * modules/mbssep (Files): Remove it and m4/mbrtowc.m4
4281         (configure.ac): Remove gl_FUNC_MBSSEP invocation.
4282
4283         * m4/mbsspn.m4: Remove file.
4284         * modules/mbsspn (Files): Remove it and m4/mbrtowc.m4
4285         (configure.ac): Remove gl_FUNC_MBSSPN invocation.
4286
4287         * m4/mbsstr.m4: Remove file.
4288         * modules/mbsstr (Files): Remove it and m4/mbrtowc.m4
4289         (configure.ac): Remove gl_FUNC_MBSSTR invocation.
4290
4291         * m4/mbstok_r.m4: Remove file.
4292         * modules/mbstok_r (Files): Remove it and m4/mbrtowc.m4
4293         (configure.ac): Remove gl_FUNC_MBSTOK_R invocation.
4294
4295         * m4/mbswidth.m4 (gl_MBSWIDTH): Remove AC_FUNC_MBRTOWC invocation.
4296
4297         * m4/quotearg.m4 (gl_QUOTEARG): Remove mbsinit test and
4298         AC_TYPE_MBSTATE_T, AC_FUNC_MBRTOWC invocations.
4299
4300         * modules/trim (configure.ac): Remove AC_FUNC_MBRTOWC invocation.
4301
4302 2009-03-08  Bruno Haible  <bruno@clisp.org>
4303
4304         Tests for module 'unicase/ulc-casecmp'.
4305         * modules/unicase/ulc-casecmp-tests: New file.
4306         * tests/unicase/test-ulc-casecmp1.sh: New file.
4307         * tests/unicase/test-ulc-casecmp2.sh: New file.
4308         * tests/unicase/test-ulc-casecmp.c: New file.
4309
4310         New module 'unicase/ulc-casecmp'.
4311         * lib/unicase.h (ulc_casecmp): New declaration.
4312         * lib/unicase/ulc-casecmp.c: New file.
4313         * lib/unicase/u-casecmp.h (FUNC): Change argument types to
4314         'const SRC_UNIT *'.
4315         * lib/unicase/u8-casecmp.c (SRC_UNIT): Define like UNIT.
4316         * lib/unicase/u16-casecmp.c (SRC_UNIT): Likewise.
4317         * lib/unicase/u32-casecmp.c (SRC_UNIT): Likewise.
4318         * modules/unicase/ulc-casecmp: New file.
4319
4320         Tests for module 'unicase/u32-is-cased'.
4321         * modules/unicase/u32-is-cased-tests: New file.
4322         * tests/unicase/test-u32-is-cased.c: New file.
4323
4324         Tests for module 'unicase/u16-is-cased'.
4325         * modules/unicase/u16-is-cased-tests: New file.
4326         * tests/unicase/test-u16-is-cased.c: New file.
4327
4328         Tests for module 'unicase/u8-is-cased'.
4329         * modules/unicase/u8-is-cased-tests: New file.
4330         * tests/unicase/test-u8-is-cased.c: New file.
4331         * tests/unicase/test-is-cased.h: New file.
4332
4333         New module 'unicase/u32-is-cased'.
4334         * lib/unicase/u32-is-cased.c: New file.
4335         * modules/unicase/u32-is-cased: New file.
4336
4337         New module 'unicase/u16-is-cased'.
4338         * lib/unicase/u16-is-cased.c: New file.
4339         * modules/unicase/u16-is-cased: New file.
4340
4341         New module 'unicase/u8-is-cased'.
4342         * lib/unicase/u8-is-cased.c: New file.
4343         * lib/unicase/u-is-cased.h: New file.
4344         * modules/unicase/u8-is-cased: New file.
4345
4346         Tests for module 'unicase/u32-is-casefolded'.
4347         * modules/unicase/u32-is-casefolded-tests: New file.
4348         * tests/unicase/test-u32-is-casefolded.c: New file.
4349
4350         Tests for module 'unicase/u16-is-casefolded'.
4351         * modules/unicase/u16-is-casefolded-tests: New file.
4352         * tests/unicase/test-u16-is-casefolded.c: New file.
4353
4354         Tests for module 'unicase/u8-is-casefolded'.
4355         * modules/unicase/u8-is-casefolded-tests: New file.
4356         * tests/unicase/test-u8-is-casefolded.c: New file.
4357         * tests/unicase/test-is-casefolded.h: New file.
4358
4359         New module 'unicase/u32-is-casefolded'.
4360         * lib/unicase/u32-is-casefolded.c: New file.
4361         * modules/unicase/u32-is-casefolded: New file.
4362
4363         New module 'unicase/u16-is-casefolded'.
4364         * lib/unicase/u16-is-casefolded.c: New file.
4365         * modules/unicase/u16-is-casefolded: New file.
4366
4367         New module 'unicase/u8-is-casefolded'.
4368         * lib/unicase/u8-is-casefolded.c: New file.
4369         * modules/unicase/u8-is-casefolded: New file.
4370
4371         Tests for module 'unicase/u32-is-titlecase'.
4372         * modules/unicase/u32-is-titlecase-tests: New file.
4373         * tests/unicase/test-u32-is-titlecase.c: New file.
4374
4375         Tests for module 'unicase/u16-is-titlecase'.
4376         * modules/unicase/u16-is-titlecase-tests: New file.
4377         * tests/unicase/test-u16-is-titlecase.c: New file.
4378
4379         Tests for module 'unicase/u8-is-titlecase'.
4380         * modules/unicase/u8-is-titlecase-tests: New file.
4381         * tests/unicase/test-u8-is-titlecase.c: New file.
4382         * tests/unicase/test-is-titlecase.h: New file.
4383
4384         New module 'unicase/u32-is-titlecase'.
4385         * lib/unicase/u32-is-titlecase.c: New file.
4386         * modules/unicase/u32-is-titlecase: New file.
4387
4388         New module 'unicase/u16-is-titlecase'.
4389         * lib/unicase/u16-is-titlecase.c: New file.
4390         * modules/unicase/u16-is-titlecase: New file.
4391
4392         New module 'unicase/u8-is-titlecase'.
4393         * lib/unicase/u8-is-titlecase.c: New file.
4394         * modules/unicase/u8-is-titlecase: New file.
4395
4396         Tests for module 'unicase/u32-is-lowercase'.
4397         * modules/unicase/u32-is-lowercase-tests: New file.
4398         * tests/unicase/test-u32-is-lowercase.c: New file.
4399
4400         Tests for module 'unicase/u16-is-lowercase'.
4401         * modules/unicase/u16-is-lowercase-tests: New file.
4402         * tests/unicase/test-u16-is-lowercase.c: New file.
4403
4404         Tests for module 'unicase/u8-is-lowercase'.
4405         * modules/unicase/u8-is-lowercase-tests: New file.
4406         * tests/unicase/test-u8-is-lowercase.c: New file.
4407         * tests/unicase/test-is-lowercase.h: New file.
4408
4409         New module 'unicase/u32-is-lowercase'.
4410         * lib/unicase/u32-is-lowercase.c: New file.
4411         * modules/unicase/u32-is-lowercase: New file.
4412
4413         New module 'unicase/u16-is-lowercase'.
4414         * lib/unicase/u16-is-lowercase.c: New file.
4415         * modules/unicase/u16-is-lowercase: New file.
4416
4417         New module 'unicase/u8-is-lowercase'.
4418         * lib/unicase/u8-is-lowercase.c: New file.
4419         * modules/unicase/u8-is-lowercase: New file.
4420
4421         Tests for module 'unicase/u32-is-uppercase'.
4422         * modules/unicase/u32-is-uppercase-tests: New file.
4423         * tests/unicase/test-u32-is-uppercase.c: New file.
4424
4425         Tests for module 'unicase/u16-is-uppercase'.
4426         * modules/unicase/u16-is-uppercase-tests: New file.
4427         * tests/unicase/test-u16-is-uppercase.c: New file.
4428
4429         Tests for module 'unicase/u8-is-uppercase'.
4430         * modules/unicase/u8-is-uppercase-tests: New file.
4431         * tests/unicase/test-u8-is-uppercase.c: New file.
4432         * tests/unicase/test-is-uppercase.h: New file.
4433
4434         New module 'unicase/u32-is-uppercase'.
4435         * lib/unicase/u32-is-uppercase.c: New file.
4436         * modules/unicase/u32-is-uppercase: New file.
4437
4438         New module 'unicase/u16-is-uppercase'.
4439         * lib/unicase/u16-is-uppercase.c: New file.
4440         * modules/unicase/u16-is-uppercase: New file.
4441
4442         New module 'unicase/u8-is-uppercase'.
4443         * lib/unicase/u8-is-uppercase.c: New file.
4444         * modules/unicase/u8-is-uppercase: New file.
4445
4446         New module 'unicase/u32-is-invariant'.
4447         * lib/unicase/u32-is-invariant.c: New file.
4448         * modules/unicase/u32-is-invariant: New file.
4449
4450         New module 'unicase/u16-is-invariant'.
4451         * lib/unicase/u16-is-invariant.c: New file.
4452         * modules/unicase/u16-is-invariant: New file.
4453
4454         New module 'unicase/u8-is-invariant'.
4455         * lib/unicase/u8-is-invariant.c: New file.
4456         * lib/unicase/invariant.h: New file.
4457         * lib/unicase/u-is-invariant.h: New file.
4458         * modules/unicase/u8-is-invariant: New file.
4459
4460         Tests for module 'unicase/u32-casecoll'.
4461         * modules/unicase/u32-casecoll-tests: New file.
4462         * tests/unicase/test-u32-casecoll.c: New file.
4463
4464         Tests for module 'unicase/u16-casecoll'.
4465         * modules/unicase/u16-casecoll-tests: New file.
4466         * tests/unicase/test-u16-casecoll.c: New file.
4467
4468         Tests for module 'unicase/u8-casecoll'.
4469         * modules/unicase/u8-casecoll-tests: New file.
4470         * tests/unicase/test-u8-casecoll.c: New file.
4471
4472         New module 'unicase/u32-casecoll'.
4473         * lib/unicase/u32-casecoll.c: New file.
4474         * modules/unicase/u32-casecoll: New file.
4475
4476         New module 'unicase/u16-casecoll'.
4477         * lib/unicase/u16-casecoll.c: New file.
4478         * modules/unicase/u16-casecoll: New file.
4479
4480         New module 'unicase/u8-casecoll'.
4481         * lib/unicase/u8-casecoll.c: New file.
4482         * lib/unicase/u-casecoll.h: New file.
4483         * modules/unicase/u8-casecoll: New file.
4484
4485         New module 'unicase/u32-casexfrm'.
4486         * lib/unicase/u32-casexfrm.c: New file.
4487         * modules/unicase/u32-casexfrm: New file.
4488
4489         New module 'unicase/u16-casexfrm'.
4490         * lib/unicase/u16-casexfrm.c: New file.
4491         * modules/unicase/u16-casexfrm: New file.
4492
4493         New module 'unicase/u8-casexfrm'.
4494         * lib/unicase/u8-casexfrm.c: New file.
4495         * lib/unicase/u-casexfrm.h: New file.
4496         * modules/unicase/u8-casexfrm: New file.
4497
4498         Tests for module 'unicase/u32-casecmp'.
4499         * modules/unicase/u32-casecmp-tests: New file.
4500         * tests/unicase/test-u32-casecmp.c: New file.
4501
4502         Tests for module 'unicase/u16-casecmp'.
4503         * modules/unicase/u16-casecmp-tests: New file.
4504         * tests/unicase/test-u16-casecmp.c: New file.
4505
4506         Tests for module 'unicase/u8-casecmp'.
4507         * modules/unicase/u8-casecmp-tests: New file.
4508         * tests/unicase/test-u8-casecmp.c: New file.
4509         * tests/unicase/test-casecmp.h: New file.
4510
4511         New module 'unicase/u32-casecmp'.
4512         * lib/unicase/u32-casecmp.c: New file.
4513         * modules/unicase/u32-casecmp: New file.
4514
4515         New module 'unicase/u16-casecmp'.
4516         * lib/unicase/u16-casecmp.c: New file.
4517         * modules/unicase/u16-casecmp: New file.
4518
4519         New module 'unicase/u8-casecmp'.
4520         * lib/unicase/u8-casecmp.c: New file.
4521         * lib/unicase/u-casecmp.h: New file.
4522         * modules/unicase/u8-casecmp: New file.
4523
4524         Tests for module 'unicase/u32-casefold'.
4525         * modules/unicase/u32-casefold-tests: New file.
4526         * tests/unicase/test-u32-casefold.c: New file.
4527
4528         Tests for module 'unicase/u16-casefold'.
4529         * modules/unicase/u16-casefold-tests: New file.
4530         * tests/unicase/test-u16-casefold.c: New file.
4531
4532         Tests for module 'unicase/u8-casefold'.
4533         * modules/unicase/u8-casefold-tests: New file.
4534         * tests/unicase/test-u8-casefold.c: New file.
4535
4536         New module 'unicase/u32-casefold'.
4537         * lib/unicase/u32-casefold.c: New file.
4538         * modules/unicase/u32-casefold: New file.
4539
4540         New module 'unicase/u16-casefold'.
4541         * lib/unicase/u16-casefold.c: New file.
4542         * modules/unicase/u16-casefold: New file.
4543
4544         New module 'unicase/u8-casefold'.
4545         * lib/unicase/u8-casefold.c: New file.
4546         * lib/unicase/u-casefold.h: New file.
4547         * modules/unicase/u8-casefold: New file.
4548
4549         New module 'unicase/tocasefold'.
4550         * lib/unicase/casefold.h: New file.
4551         * lib/unicase/tocasefold.c: New file.
4552         * lib/unicase/tocasefold.h: New file, generated by gen-uni-tables.c.
4553         * modules/unicase/tocasefold: New file.
4554
4555         Tests for module 'unicase/u32-totitle'.
4556         * modules/unicase/u32-totitle-tests: New file.
4557         * tests/unicase/test-u32-totitle.c: New file.
4558
4559         Tests for module 'unicase/u16-totitle'.
4560         * modules/unicase/u16-totitle-tests: New file.
4561         * tests/unicase/test-u16-totitle.c: New file.
4562
4563         Tests for module 'unicase/u8-totitle'.
4564         * modules/unicase/u8-totitle-tests: New file.
4565         * tests/unicase/test-u8-totitle.c: New file.
4566
4567         New module 'unicase/u32-totitle'.
4568         * lib/unicase/u32-totitle.c: New file.
4569         * modules/unicase/u32-totitle: New file.
4570
4571         New module 'unicase/u16-totitle'.
4572         * lib/unicase/u16-totitle.c: New file.
4573         * modules/unicase/u16-totitle: New file.
4574
4575         New module 'unicase/u8-totitle'.
4576         * lib/unicase/u8-totitle.c: New file.
4577         * lib/unicase/u-totitle.h: New file.
4578         * modules/unicase/u8-totitle: New file.
4579
4580         Tests for module 'unicase/u32-tolower'.
4581         * modules/unicase/u32-tolower-tests: New file.
4582         * tests/unicase/test-u32-tolower.c: New file.
4583
4584         Tests for module 'unicase/u16-tolower'.
4585         * modules/unicase/u16-tolower-tests: New file.
4586         * tests/unicase/test-u16-tolower.c: New file.
4587
4588         Tests for module 'unicase/u8-tolower'.
4589         * modules/unicase/u8-tolower-tests: New file.
4590         * tests/unicase/test-u8-tolower.c: New file.
4591
4592         New module 'unicase/u32-tolower'.
4593         * lib/unicase/u32-tolower.c: New file.
4594         * modules/unicase/u32-tolower: New file.
4595
4596         New module 'unicase/u16-tolower'.
4597         * lib/unicase/u16-tolower.c: New file.
4598         * modules/unicase/u16-tolower: New file.
4599
4600         New module 'unicase/u8-tolower'.
4601         * lib/unicase/u8-tolower.c: New file.
4602         * modules/unicase/u8-tolower: New file.
4603
4604         Tests for module 'unicase/u32-toupper'.
4605         * modules/unicase/u32-toupper-tests: New file.
4606         * tests/unicase/test-u32-toupper.c: New file.
4607
4608         Tests for module 'unicase/u16-toupper'.
4609         * modules/unicase/u16-toupper-tests: New file.
4610         * tests/unicase/test-u16-toupper.c: New file.
4611
4612         Tests for module 'unicase/u8-toupper'.
4613         * modules/unicase/u8-toupper-tests: New file.
4614         * tests/unicase/test-u8-toupper.c: New file.
4615
4616         New module 'unicase/u32-toupper'.
4617         * lib/unicase/u32-toupper.c: New file.
4618         * modules/unicase/u32-toupper: New file.
4619
4620         New module 'unicase/u16-toupper'.
4621         * lib/unicase/u16-toupper.c: New file.
4622         * modules/unicase/u16-toupper: New file.
4623
4624         New module 'unicase/u8-toupper'.
4625         * lib/unicase/u8-toupper.c: New file.
4626         * modules/unicase/u8-toupper: New file.
4627
4628         New module 'unicase/u32-casemap'.
4629         * lib/unicase/u32-casemap.c: New file.
4630         * modules/unicase/u32-casemap: New file.
4631
4632         New module 'unicase/u16-casemap'.
4633         * lib/unicase/u16-casemap.c: New file.
4634         * modules/unicase/u16-casemap: New file.
4635
4636         New module 'unicase/u8-casemap'.
4637         * lib/unicase/unicasemap.h: New file.
4638         * lib/unicase/u8-casemap.c: New file.
4639         * lib/unicase/u-casemap.h: New file.
4640         * modules/unicase/u8-casemap: New file.
4641
4642         New module 'unicase/special-casing'.
4643         * lib/unicase/special-casing.h: New file.
4644         * lib/unicase/special-casing.c: New file.
4645         * lib/unicase/special-casing-table.gperf: New file, generated by
4646         gen-uni-tables.c.
4647         * modules/unicase/special-casing: New file.
4648
4649         Tests for module 'unicase/locale-language'.
4650         * modules/unicase/locale-language-tests: New file.
4651         * tests/unicase/test-locale-language.sh: New file.
4652         * tests/unicase/test-locale-language.c: New file.
4653
4654         New module 'unicase/locale-language'.
4655         * lib/unicase/locale-language.c: New file.
4656         * lib/unicase/locale-languages.gperf: New file.
4657         * modules/unicase/locale-language: New file.
4658
4659         Generate more tables for case conversion and case folding.
4660         * lib/gen-uni-tables.c (SCC_*): New enum items.
4661         (struct special_casing_rule): New type.
4662         (casing_rules, num_casing_rules, allocated_casing_rules): New
4663         variables.
4664         (add_casing_rule, fill_casing_rules): New functions.
4665         (struct casefold_rule): New type.
4666         (casefolding_rules, num_casefolding_rules,
4667         allocated_casefolding_rules): New variables.
4668         (fill_casefolding_rules): New function.
4669         (unicode_casefold): New variable.
4670         (to_casefold, redistribute_casefolding_rules, compare_casing_rules,
4671         sort_casing_rules, output_casing_rules): New functions.
4672         (main): Accept to more arguments: SpecialCasing.txt and
4673         CaseFolding.txt. Invoke fill_casing_rules, fill_casefolding_rules,
4674         redistribute_casefolding_rules, sort_casing_rules, output_casing_rules.
4675         Output mapping for casefolding.
4676
4677         * lib/unicase.h: Include stdbool.h, uninorm.h.
4678         (u8_toupper, u16_toupper, u32_toupper, u8_tolower, u16_tolower,
4679         u32_tolower, u8_totitle, u16_totitle, u32_totitle): Add nf argument.
4680         (u8_casefold, u16_casefold, u32_casefold): Add iso639_language and nf
4681         arguments.
4682         (u8_casecmp, u16_casecmp, u32_casecmp): Add iso639_language, nf,
4683         resultp arguments.
4684         (u8_casexfrm, u16_casexfrm, u32_casexfrm): New declarations.
4685         (u8_casecoll, u16_casecoll, u32_casecoll): Add iso639_language, nf,
4686         resultp arguments.
4687         (u8_is_uppercase, u16_is_uppercase, u32_is_uppercase, u8_is_lowercase,
4688         u16_is_lowercase, u32_is_lowercase, u8_is_titlecase, u16_is_titlecase,
4689         u32_is_titlecase, u8_is_casefolded, u16_is_casefolded,
4690         u32_is_casefolded, u8_is_cased, u16_is_cased, u32_is_cased): New
4691         declarations.
4692         * modules/unicase/base (Depends-on): Add uninorm/base, stdbool.
4693
4694 2009-03-08  Bruno Haible  <bruno@clisp.org>
4695
4696         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp, u8_normcoll,
4697         u16_normcoll, u32_normcoll): Rename argument 'result' to 'resultp'.
4698         * lib/uninorm/u-normcmp.h (FUNC): Likewise.
4699         * lib/uninorm/u-normcoll.h (FUNC): Likewise.
4700
4701 2009-03-07  Bruno Haible  <bruno@clisp.org>
4702
4703         Adjust u*_normcmp, u*_normcoll API.
4704         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp, u8_normcoll,
4705         u16_normcoll, u32_normcoll): Change failure conventions.
4706         * lib/uninorm/u-normcmp.h (FUNC): Upon failure, store the error code in
4707         errno and return -1.
4708         * lib/uninorm/u-normcoll.h (FUNC): Likewise.
4709
4710 2009-03-07  Bruno Haible  <bruno@clisp.org>
4711
4712         Tests for module 'uninorm/u32-normcoll'.
4713         * modules/uninorm/u32-normcoll-tests: New file.
4714         * tests/uninorm/test-u32-normcoll.c: New file.
4715
4716         Tests for module 'uninorm/u16-normcoll'.
4717         * modules/uninorm/u16-normcoll-tests: New file.
4718         * tests/uninorm/test-u16-normcoll.c: New file.
4719
4720         Tests for module 'uninorm/u8-normcoll'.
4721         * modules/uninorm/u8-normcoll-tests: New file.
4722         * tests/uninorm/test-u8-normcoll.c: New file.
4723
4724 2009-03-07  Bruno Haible  <bruno@clisp.org>
4725
4726         * tests/uninorm/test-u32-normcmp.h: New file, extracted from
4727         tests/uninorm/test-u32-normcmp.c.
4728         * tests/uninorm/test-u32-normcmp.c: Include it.
4729         (test_nonascii): New function, extracted from main. Add some more
4730         tests.
4731         (main): Invoke test_ascii and test_nonascii.
4732         * modules/uninorm/u32-normcmp-tests (Files): Add
4733         tests/uninorm/test-u32-normcmp.h.
4734         (Depends-on): Remove uninorm/u32-normcmp.
4735
4736         * tests/uninorm/test-u16-normcmp.h: New file, extracted from
4737         tests/uninorm/test-u16-normcmp.c.
4738         * tests/uninorm/test-u16-normcmp.c: Include it.
4739         (test_nonascii): New function, extracted from main. Add some more
4740         tests.
4741         (main): Invoke test_ascii and test_nonascii.
4742         * modules/uninorm/u16-normcmp-tests (Files): Add
4743         tests/uninorm/test-u16-normcmp.h.
4744         (Depends-on): Remove uninorm/u16-normcmp.
4745
4746         * tests/uninorm/test-u8-normcmp.h: New file, extracted from
4747         tests/uninorm/test-u8-normcmp.c.
4748         * tests/uninorm/test-u8-normcmp.c: Include it.
4749         (test_nonascii): New function, extracted from main. Add some more
4750         tests.
4751         (main): Invoke test_ascii and test_nonascii.
4752         * modules/uninorm/u8-normcmp-tests (Files): Add
4753         tests/uninorm/test-u8-normcmp.h.
4754         (Depends-on): Remove uninorm/u8-normcmp.
4755
4756 2009-03-07  Bruno Haible  <bruno@clisp.org>
4757
4758         New module 'uninorm/u32-normcoll'.
4759         * lib/uninorm/u32-normcoll.c: New file.
4760         * modules/uninorm/u32-normcoll: New file.
4761
4762         New module 'uninorm/u16-normcoll'.
4763         * lib/uninorm/u16-normcoll.c: New file.
4764         * modules/uninorm/u16-normcoll: New file.
4765
4766         New module 'uninorm/u8-normcoll'.
4767         * lib/uninorm.h (u8_normcoll, u16_normcoll, u32_normcoll): New
4768         declarations.
4769         * lib/uninorm/u8-normcoll.c: New file.
4770         * lib/uninorm/u-normcoll.h: New file.
4771         * modules/uninorm/u8-normcoll: New file.
4772
4773         New module 'uninorm/u32-normxfrm'.
4774         * lib/uninorm/u32-normxfrm.c: New file.
4775         * modules/uninorm/u32-normxfrm: New file.
4776
4777         New module 'uninorm/u16-normxfrm'.
4778         * lib/uninorm/u16-normxfrm.c: New file.
4779         * modules/uninorm/u16-normxfrm: New file.
4780
4781         New module 'uninorm/u8-normxfrm'.
4782         * lib/uninorm.h (u8_normxfrm, u16_normxfrm, u32_normxfrm): New
4783         declarations.
4784         * lib/uninorm/u8-normxfrm.c: New file.
4785         * lib/uninorm/u-normxfrm.h: New file.
4786         * modules/uninorm/u8-normxfrm: New file.
4787
4788 2009-03-07  Bruno Haible  <bruno@clisp.org>
4789
4790         * modules/uninorm/u8-normcmp (Depends-on): Add uninorm/base.
4791         * modules/uninorm/u16-normcmp (Depends-on): Likewise.
4792         * modules/uninorm/u32-normcmp (Depends-on): Likewise.
4793
4794 2009-03-07  Bruno Haible  <bruno@clisp.org>
4795
4796         New module 'memxfrm'.
4797         * lib/memxfrm.h: New file.
4798         * lib/memxfrm.c: New file.
4799         * modules/memxfrm: New file.
4800
4801 2009-03-07  Bruno Haible  <bruno@clisp.org>
4802
4803         New module 'memcmp2'.
4804         * lib/memcmp2.h: New file.
4805         * lib/memcmp2.c: New file.
4806         * modules/memcmp2: New file.
4807
4808 2009-03-07  Bruno Haible  <bruno@clisp.org>
4809
4810         Tests for module 'uninorm/decomposing-form'.
4811         * modules/uninorm/decomposing-form-tests: New file.
4812         * tests/uninorm/test-decomposing-form.c: New file.
4813
4814         New module 'uninorm/decomposing-form'.
4815         * lib/uninorm.h (uninorm_decomposing_form): New declaration.
4816         * lib/uninorm/normalize-internal.h (struct unicode_normalization_form):
4817         Add 'decomposing_variant' field.
4818         * lib/uninorm/decomposing-form.c: New file.
4819         * lib/uninorm/nfc.c (uninorm_nfc): Update.
4820         * lib/uninorm/nfd.c (uninorm_nfd): Update.
4821         * lib/uninorm/nfkc.c (uninorm_nfkc): Update.
4822         * lib/uninorm/nfkd.c (uninorm_nfkd): Update.
4823         * modules/uninorm/decomposing-form: New file.
4824         * modules/uninorm/nfc (Depends-on): Add uninorm/nfd.
4825         * modules/uninorm/nfkc (Depends-on): Add uninorm/nfkd.
4826
4827 2009-03-07  Bruno Haible  <bruno@clisp.org>
4828
4829         * lib/uninorm/u-normcmp.h (FUNC): Use stack=allocated buffers for small
4830         strings.
4831
4832 2009-03-06  Bruno Haible  <bruno@clisp.org>
4833
4834         Tests for module 'uninorm/u32-normcmp'.
4835         * tests/uninorm/test-u32-normcmp.c: New file.
4836         * modules/uninorm/u32-normcmp-tests: New file.
4837
4838         Tests for module 'uninorm/u16-normcmp'.
4839         * tests/uninorm/test-u16-normcmp.c: New file.
4840         * modules/uninorm/u16-normcmp-tests: New file.
4841
4842         Tests for module 'uninorm/u8-normcmp'.
4843         * tests/uninorm/test-u8-normcmp.c: New file.
4844         * modules/uninorm/u8-normcmp-tests: New file.
4845
4846         New module 'uninorm/u32-normcmp'.
4847         * lib/uninorm/u32-normcmp.c: New file.
4848         * modules/uninorm/u32-normcmp: New file.
4849
4850         New module 'uninorm/u16-normcmp'.
4851         * lib/uninorm/u16-normcmp.c: New file.
4852         * modules/uninorm/u16-normcmp: New file.
4853
4854         New module 'uninorm/u8-normcmp'.
4855         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp): New
4856         declarations.
4857         * lib/uninorm/u8-normcmp.c: New file.
4858         * lib/uninorm/u-normcmp.h: New file.
4859         * modules/uninorm/u8-normcmp: New file.
4860
4861 2009-03-06  Bruno Haible  <bruno@clisp.org>
4862
4863         * lib/w32spawn.h (dup_noinherit): Add cast, to avoid gcc warning.
4864         Reported by Eric Blake.
4865
4866 2009-03-06  Eric Blake  <ebb9@byu.net>
4867             Bruno Haible  <bruno@clisp.org>
4868
4869         * lib/spawni.c (__spawni) [WIN32_NATIVE]: Define as a stub.
4870         * modules/posix_spawn-tests (configure.ac): Define POSIX_SPAWN_PORTED
4871         condition.
4872         (Makefile.am): Do nothing if POSIX_SPAWN_PORTED is false.
4873         * modules/posix_spawnp-tests (configure.ac): Define POSIX_SPAWN_PORTED
4874         condition.
4875         (Makefile.am): Do nothing if POSIX_SPAWN_PORTED is false.
4876
4877 2009-03-06  Eric Blake  <ebb9@byu.net>
4878
4879         * lib/execute.c (execute) [WIN32_NATIVE]: Cast arguments of spawnvpe,
4880         to avoid compiler warnings.
4881         * lib/pipe.c (create_pipe) [WIN32_NATIVE]: Likewise.
4882
4883 2009-03-05  Bruno Haible  <bruno@clisp.org>
4884
4885         * tests/test-ftell.c (main): Disable test beyond end of file on
4886         FreeMiNT.
4887         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
4888
4889 2009-03-05  Kamil Dudka  <kdudka@redhat.com>
4890
4891         * lib/filevercmp.c: Move hidden files up in ordering.
4892         * tests/test-filevercmp.c: Add tests for hidden files.
4893
4894 2009-03-04  Bruno Haible  <bruno@clisp.org>
4895
4896         * modules/visibility (Makefile.am): Augment AM_CFLAGS.
4897         * gnulib-tool (func_emit_lib_Makefile_am): Emit initialization of
4898         AM_CFLAGS.
4899         Reported by Simon Josefsson.
4900
4901 2009-03-03  Bruno Haible  <bruno@clisp.org>
4902
4903         * doc/visibility.texi: Recommend to use HAVE_VISIBILITY as a C macro.
4904         Reported by Simon Josefsson.
4905
4906         * doc/ld-version-script.texi: Update node reference.
4907
4908 2009-03-03  Bruno Haible  <bruno@clisp.org>
4909
4910         * modules/visibility (License): Change to 'unlimited'.
4911         Suggested by Simon Josefsson.
4912
4913 2009-03-03  Jim Meyering  <meyering@redhat.com>
4914
4915         unlinkdir: cannot_unlink_dir may modify process state
4916         * lib/unlinkdir.c (cannot_unlink_dir): Add a comment warning that
4917         it's neither thread-safe nor appropriate for use in a library.
4918
4919 2009-03-03  Eric Blake  <ebb9@byu.net>
4920
4921         test-closein: silence test under Darwin
4922         * tests/test-closein.sh: Ignore stderr from cat, since we don't
4923         care if it dies from EPIPE or EBADF.
4924
4925 2009-03-03  Bruno Haible  <bruno@clisp.org>
4926
4927         * doc/gnulib.texi: Include visibility.texi and ld-version-script.texi
4928         earlier.
4929         * doc/visibility.texi: Fix @node and @section.
4930
4931 2009-03-03  Simon Josefsson  <simon@josefsson.org>
4932
4933         * doc/gnulib.texi: Link to sections for ld version script and
4934         visibility.
4935         * doc/visibility.texi: Add @node and @section.
4936         * modules/ld-version-script: New module.
4937         * m4/ld-version-script.m4: New file.
4938         * doc/ld-version-script.texi: New file.
4939
4940 2009-03-02  David Lutterkort  <lutter@redhat.com>
4941
4942         * lib/safe-alloc.h (__GNUC_PREREQ): New macro.
4943         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
4944
4945 2009-03-02  Bruno Haible  <bruno@clisp.org>
4946
4947         * doc/visibility.texi: Mention libtool's -export-symbols option.
4948
4949 2009-03-02  Jim Meyering  <meyering@redhat.com>
4950
4951         announce-gen: new option: --no-print-checksums
4952         * build-aux/announce-gen (usage): Describe it.
4953         (print_checksums): Print a newline here, not in the [*] footnote.
4954         (main): Honor it.
4955
4956 2009-03-01  Bruno Haible  <bruno@clisp.org>
4957
4958         Use socklen_t in the native Windows replacements prototypes.
4959         * lib/sys_socket.in.h (rpl_getsockopt, rpl_setsockopt): Use socklen_t
4960         instead of 'int'.
4961         * lib/getsockopt.c (rpl_getsockopt): Likewise.
4962         * lib/setsockopt.c (rpl_setsockopt): Likewise.
4963         * modules/getsockopt (Depends-on): Add socklen.
4964         * modules/setsockopt (Depends-on): Add socklen.
4965
4966 2009-03-01  Bruno Haible  <bruno@clisp.org>
4967
4968         * gnulib-tool (sed): Do alias as "sed --posix" if sed's version is at
4969         least 4.2.
4970
4971 2009-03-01  Eric Blake  <ebb9@byu.net>
4972             Bruno Haible  <bruno@clisp.org>
4973
4974         * lib/wait-process.h (wait_subprocess): Describe effect of termsigp on
4975         error messages.
4976         * lib/wait-process.c (wait_subprocess): Omit error message about
4977         deadly signal sent to the child of termsigp != NULL.
4978
4979 2009-03-01  Eric Blake  <ebb9@byu.net>
4980
4981         * lib/wait-process.c (wait_subprocess): Remove unnecessary cast.
4982
4983 2009-03-01  Bruno Haible  <bruno@clisp.org>
4984
4985         Avoid a gcc warning.
4986         * tests/test-sched.c (b): Make global.
4987         Reported by Eric Blake.
4988
4989 2009-01-19  Martin Lambers  <marlam@marlam.de>
4990
4991         Provide POSIX semantics for socket timeout options on W32.
4992         * lib/setsockopt.c: Convert struct timeval to milliseconds on W32.
4993         * lib/getsockopt.c: Convert milliseconds to struct timeval on W32.
4994         * modules/setsockopt: Depend on sys_time module for struct timeval.
4995         * modules/getsockopt: Depend on sys_time module for struct timeval.
4996
4997 2009-03-01  Simon Josefsson  <simon@josefsson.org>
4998
4999         * lib/gai_strerror.c (values): Use EAI_INPROGRESS instead of
5000         __USE_GNU, for consistency with netdb.in.h.
5001         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
5002
5003 2009-03-01  Bruno Haible  <bruno@clisp.org>
5004
5005         More support for FreeMiNT.
5006         * lib/fseeko.c (rpl_fseeko): Complete last commit.
5007         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
5008
5009 2009-03-01  Bruno Haible  <bruno@clisp.org>
5010
5011         More support for FreeMiNT.
5012         * lib/fpurge.c (fpurge): Correct last commit.
5013         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
5014
5015 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5016
5017         Fix unportable awk script in vc-list-files.
5018         * build-aux/vc-list-files: In the replacement awk script, use
5019         substr with a second argument of 1, not zero.
5020         Report by Simon Josefsson.
5021
5022 2009-02-28  Bruno Haible  <bruno@clisp.org>
5023
5024         More support for FreeMiNT.
5025         * lib/freading.c (freading) [__MINT__]: Use new macros that were added
5026         to FreeMiNT today.
5027         * lib/fwriting.c (fwriting): Likewise.
5028         Based on patch by Alan Hourihane <alanh@fairlite.co.uk>.
5029
5030 2009-02-28  Bruno Haible  <bruno@clisp.org>
5031
5032         * tests/test-freadseek.c (main): Disable test beyond end of file on
5033         FreeMiNT.
5034         * tests/test-ftello.c (main): Likewise.
5035         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
5036
5037 2009-02-28  Bruno Haible  <bruno@clisp.org>
5038
5039         Add tentative support for FreeMiNT.
5040         * lib/fbufmode.c (fbufmode) [__MINT__]: Add conditional code.
5041         * lib/fpurge.c (fpurge): Likewise.
5042         * lib/freadable.c (freadable): Likewise.
5043         * lib/freading.c (freading): Likewise.
5044         * lib/freadptr.c (freadptr): Likewise.
5045         * lib/freadseek.c (freadptrinc): Likewise.
5046         * lib/fseeko.c (rpl_fseeko): Likewise.
5047         * lib/fseterr.c (fseterr): Likewise.
5048         * lib/fwritable.c (fwritable): Likewise.
5049         * lib/fwriting.c (fwriting): Likewise.
5050         * lib/freadahead.c (freadahead): Likewise, based on code by Alan
5051         Hourihane.
5052         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
5053
5054 2009-02-28  Bruno Haible  <bruno@clisp.org>
5055
5056         * lib/wait-process.h (wait_subprocess): Clarify restriction regarding
5057         SIGCHLD.
5058         Reported by Jim Meyering.
5059
5060 2009-02-28  Bruno Haible  <bruno@clisp.org>
5061
5062         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Separate the two first tests.
5063         Mention the results of these tests on various platforms.
5064         * doc/posix-functions/fprintf.texi: Mention platforms in canonical
5065         order.
5066         * doc/posix-functions/printf.texi: Likewise.
5067         * doc/posix-functions/snprintf.texi: Likewise.
5068         * doc/posix-functions/sprintf.texi: Likewise.
5069         * doc/posix-functions/vfprintf.texi: Likewise.
5070         * doc/posix-functions/vprintf.texi: Likewise.
5071         * doc/posix-functions/vsnprintf.texi: Likewise.
5072         * doc/posix-functions/vsprintf.texi: Likewise.
5073         * doc/glibc-functions/obstack_printf.texi: Likewise.
5074         * doc/glibc-functions/obstack_vprintf.texi: Likewise.
5075
5076 2009-02-28  Bruno Haible  <bruno@clisp.org>
5077
5078         * build-aux/po/Makefile.in.in: Update from GNU gettext 0.17.
5079         Reported by Loïc Minier <lool@dooz.org>.
5080
5081 2009-02-27  Bruno Haible  <bruno@clisp.org>
5082
5083         * gnulib-tool (func_import): Make the sed expression used to create the
5084         sed script for updating the .gitignore file POSIX compliant.
5085         Reported by Eric Blake.
5086
5087 2009-02-27  Bruno Haible  <bruno@clisp.org>
5088
5089         * gnulib-tool (sed): Don't alias as "sed --posix".
5090         Reported by Eric Blake.
5091
5092 2009-02-27  Bruno Haible  <bruno@clisp.org>
5093
5094         Avoid test link errors.
5095         * modules/uninorm/nfc-tests (test_u32_nfc_big_LDADD): New variable.
5096         * modules/uninorm/nfd-tests (test_u32_nfd_big_LDADD): New variable.
5097         * modules/uninorm/nfkc-tests (test_u32_nfkc_big_LDADD): New variable.
5098         * modules/uninorm/nfkd-tests (test_u32_nfkd_big_LDADD): New variable.
5099         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
5100
5101 2009-02-27  Bruno Haible  <bruno@clisp.org>
5102
5103         Avoid spurious "(cached)" in configure output.
5104         * m4/gnulib-common.m4 (gl_CACHE_VAL_SILENT): New macro.
5105         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Use it instead of AC_CACHE_VAL.
5106         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
5107         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
5108         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
5109         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Likewise.
5110         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
5111         * m4/stdarg.m4 (gl_STDARG_H): Likewise.
5112         Reported by Eric Blake.
5113
5114 2009-02-27  Eric Blake  <ebb9@byu.net>
5115
5116         printf: fix regression in previous patch
5117         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Fix compilation error.
5118
5119 2009-02-27  Bruno Haible  <bruno@clisp.org>
5120
5121         * lib/inttypes.in.h: Test merely whether _LP64 is defined, not its
5122         value.
5123         * lib/stdint.in.h: Likewise.
5124         Suggested by Eric Blake. Reported by Peter Bray <pdb_ml@yahoo.com.au>.
5125
5126 2009-02-27  Eric Blake  <ebb9@byu.net>
5127
5128         doc: mention more functions added in cygwin 1.7.0
5129         * doc/posix-functions/mbsnrtowcs.texi: Mention recent cygwin 1.7.0
5130         addition.
5131         * doc/posix-functions/open_wmemstream.texi: Likewise.
5132         * doc/posix-functions/wcsnlen.texi: Likewise.
5133         * doc/posix-functions/wcsnrtombs.texi: Likewise.
5134         * doc/posix-functions/wcstod.texi: Likewise.
5135         * doc/posix-functions/wcstof.texi: Likewise.
5136         * doc/posix-functions/wcstoimax.texi: Likewise.
5137         * doc/posix-functions/wcstok.texi: Likewise.
5138         * doc/posix-functions/wcstoumax.texi: Likewise.
5139
5140         Detect bug in cygwin 1.5.x *printf on 1-character %ls.
5141         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Enhance filter.
5142         * doc/posix-functions/fprintf.texi: Update.
5143         * doc/posix-functions/printf.texi: Update.
5144         * doc/posix-functions/snprintf.texi: Update.
5145         * doc/posix-functions/sprintf.texi: Update.
5146         * doc/posix-functions/vfprintf.texi: Update.
5147         * doc/posix-functions/vprintf.texi: Update.
5148         * doc/posix-functions/vsnprintf.texi: Update.
5149         * doc/posix-functions/vsprintf.texi: Update.
5150         * doc/glibc-functions/obstack_printf.texi: Update.
5151         * doc/glibc-functions/obstack_vprintf.texi: Update.
5152
5153 2009-02-26  Eric Blake  <ebb9@byu.net>
5154
5155         avoid gcc 3.4.3 bug on long double NaN on Irix 6.5
5156         * tests/nan.h (NaNl): Rewrite as function on Irix, to avoid
5157         compilation bug by using runtime conversion.
5158         * m4/isfinite.m4 (gl_ISFINITE): Likewise.
5159         * m4/isnanl.m4 (gl_FUNC_ISNANL): Likewise.
5160         * modules/ceill-tests (Files): Use nan.h.
5161         * modules/floorl-tests (Files): Likewise.
5162         * modules/frexpl-tests (Files): Likewise.
5163         * modules/isnanl-tests (Files): Likewise.
5164         * modules/ldexpl-tests (Files): Likewise.
5165         * modules/roundl-tests (Files): Likewise.
5166         * modules/truncl-tests (Files): Likewise.
5167         * tests/test-ceill.c (main): Use a working NaN.
5168         * tests/test-floorl.c (main): Likewise.
5169         * tests/test-frexpl.c (main): Likewise.
5170         * tests/test-isnan.c (test_long_double): Likewise.
5171         * tests/test-isnanl.h (main): Likewise.
5172         * tests/test-ldexpl.h (main): Likewise.
5173         * tests/test-roundl.h (main): Likewise.
5174         * tests/test-truncl.h (main): Likewise.
5175         See http://lists.gnu.org/archive/html/bug-gnulib/2009-02/msg00190.html.
5176
5177 2009-02-26  Eric Blake  <ebb9@byu.net>
5178             Bruno Haible  <bruno@clisp.org>
5179
5180         Work around a *printf bug with %ls on Solaris.
5181         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Also test whether, when a
5182         precision is specified, sprintf stops converting the wide string
5183         argument when the number of bytes that have been produced by this
5184         conversion equals or exceeds the precision.
5185         * doc/posix-functions/fprintf.texi: Update.
5186         * doc/posix-functions/printf.texi: Update.
5187         * doc/posix-functions/snprintf.texi: Update.
5188         * doc/posix-functions/sprintf.texi: Update.
5189         * doc/posix-functions/vfprintf.texi: Update.
5190         * doc/posix-functions/vprintf.texi: Update.
5191         * doc/posix-functions/vsnprintf.texi: Update.
5192         * doc/posix-functions/vsprintf.texi: Update.
5193         * doc/glibc-functions/obstack_printf.texi: Update.
5194         * doc/glibc-functions/obstack_vprintf.texi: Update.
5195
5196 2009-02-26  Eric Blake  <ebb9@byu.net>
5197
5198         stdlib: favor compiler check of random.h
5199         * m4/stdlib_h.m4 (gl_STDLIB_H): Skip preprocessor check.  Needed
5200         to avoid an ObjC random.h installed by Swarm.
5201
5202 2009-02-26  Bruno Haible  <bruno@clisp.org>
5203
5204         Work around *printf bug with %g directive and 0.0 on HP-UX 10.20.
5205         * m4/printf.m4 (gl_PRINTF_INFINITE): Also test for %g output of -0.0.
5206         Reported by Gary V. Vaughan <gary@gnu.org>.
5207
5208 2009-02-26  Bruno Haible  <bruno@clisp.org>
5209
5210         Fix *printf behaviour regarding the %ls directive.
5211         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): New macro.
5212         * lib/vasnprintf.c (local_wcslen, VASNPRINTF): Handle
5213         NEED_PRINTF_DIRECTIVE_LS.
5214         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_LS): New macro.
5215         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
5216         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5217         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS and test its result. Invoke
5218         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS.
5219         * m4/dprintf-posix.m4 (gl_FUNC_DPRINTF_POSIX): Likewise.
5220         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
5221         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5222         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5223         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5224         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5225         * m4/vdprintf-posix.m4 (gl_FUNC_VDPRINTF_POSIX): Likewise.
5226         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5227         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5228         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5229         * doc/posix-functions/fprintf.texi: Update.
5230         * doc/posix-functions/printf.texi: Update.
5231         * doc/posix-functions/snprintf.texi: Update.
5232         * doc/posix-functions/sprintf.texi: Update.
5233         * doc/posix-functions/vfprintf.texi: Update.
5234         * doc/posix-functions/vprintf.texi: Update.
5235         * doc/posix-functions/vsnprintf.texi: Update.
5236         * doc/posix-functions/vsprintf.texi: Update.
5237         * doc/glibc-functions/obstack_printf.texi: Update.
5238         * doc/glibc-functions/obstack_vprintf.texi: Update.
5239         Reported by Eric Blake.
5240
5241 2009-02-25  Bruno Haible  <bruno@clisp.org>
5242
5243         * m4/mbrtowc.m4 (gl_MBRTOWC_NUL_RETVAL): Update guess for Solaris 8
5244         with known value.
5245         Reported by Gary V. Vaughan <gary@gnu.org>.
5246
5247 2009-02-25  Bruno Haible  <bruno@clisp.org>
5248
5249         Work around mbrtowc bug in zh_CN.GB18030 locale on Solaris 8.
5250         * m4/mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): New macro.
5251         (gl_MBSTATE_T_BROKEN): Invoke it. Replace mbstate_t when it says "no".
5252         * doc/posix-functions/mbrtowc.texi: Document the Solaris 8 bug.
5253         Reported by Gary V. Vaughan <gary@gnu.org>.
5254
5255 2009-02-25  Bruno Haible  <bruno@clisp.org>
5256
5257         Work around broken INT8_MAX, UINT8_MAX etc. values on HP-UX 11.23.
5258         * m4/stdint.m4 (gl_STDINT_H): Also check whether the expansions of
5259         INT8_MAX, UINT8_MAX etc. contain casts to elementary types.
5260         * doc/posix-headers/stdint.texi: Mention the HP-UX bug.
5261         Reported by Gary V. Vaughan <gary@gnu.org>.
5262
5263 2009-02-25  Eric Blake  <ebb9@byu.net>
5264
5265         tests: skip fseek/ftell tests if ungetc is broken
5266         * m4/ungetc.m4: New file.
5267         * modules/fseek-tests: Split test, so ungetc dependency is
5268         separate from rest of test.
5269         * modules/fseeko-tests: Likewise.
5270         * modules/ftell-tests: Likewise.
5271         * modules/ftello-tests: Likewise.
5272         * tests/test-fseek.c (main): Isolate ungetc dependency.
5273         * tests/test-fseeko.c (main): Likewise.
5274         * tests/test-ftell.c (main): Likewise.
5275         * tests/test-ftello.c (main): Likewise.
5276         * tests/test-fseek2.sh: New file.
5277         * tests/test-fseeko2.sh: Likewise.
5278         * tests/test-ftell2.sh: Likewise.
5279         * tests/test-ftello2.sh: Likewise.
5280
5281 2009-02-25  Ondřej Vašík  <ovasik@redhat.com>
5282
5283         test-getaddrinfo: fix usage of skip return code 77
5284         * tests/test-gettaddrinfo.c: Return skip code 77 only
5285         for first occurance of skip (4x77 is not 77)
5286
5287 2009-02-25  Gary V. Vaughan  <gary@gnu.org>
5288
5289         strtod: avoid C99 decl-after-statement
5290         * m4/strtod.m4 (gl_FUNC_STRTOD): Rearrange declaration.
5291
5292 2009-02-24  Eric Blake  <ebb9@byu.net>
5293
5294         strtod: detect HP-UX 11.31 bug
5295         * m4/strtod.m4 (gl_FUNC_STRTOD): Detect errno handling bug.
5296         Reported by Gary V. Vaughan.
5297
5298 2009-02-23  Bruno Haible  <bruno@clisp.org>
5299
5300         Fix invalid read past end of memory block.
5301         * lib/vasnprintf.c (DCHAR_SET): Define.
5302         (local_wcslen): Define only when needed.
5303         (local_strnlen, local_wcsnlen): New functions.
5304         (VASNPRINTF) [!USE_SNPRINTF && HAVE_WCHAR_T]: Implement the %s and %ls
5305         directives that involve a conversion ourselves.
5306         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for strnlen,
5307         wcsnlen, mbrtowc, wcrtomb.
5308         * tests/test-vasnprintf-posix.c (test_function): Add tests for %.*s.
5309         * tests/test-vasprintf-posix.c (test_function): Likewise.
5310         * tests/test-snprintf-posix.h (test_function): Likewise.
5311         * tests/test-sprintf-posix.h (test_function): Likewise.
5312         Reported by Ben Pfaff <blp@cs.stanford.edu>.
5313
5314 2009-02-22  Bruno Haible  <bruno@clisp.org>
5315
5316         Implement new clarified decomposition of Hangul syllables.
5317         * lib/uninorm/decomposition.c (uc_decomposition): For Hangul syllables
5318         of type LTV, return only a pairwise decomposition.
5319         * lib/uninorm/canonical-decomposition.c (uc_canonical_decomposition):
5320         Likewise.
5321         * tests/uninorm/test-decomposition.c (main): Updated expected result.
5322         * tests/uninorm/test-canonical-decomposition.c (main): Likewise.
5323         * tests/uninorm/test-compat-decomposition.c (main): Likewise.
5324
5325 2009-02-22  Bruno Haible  <bruno@clisp.org>
5326
5327         * lib/uninorm/u-normalize-internal.h (FUNC): At the end, handle
5328         zero-length results and shrink excess allocated memory.
5329         * tests/uninorm/test-u8-nfc.c (test_u8_nfc): Check empty string result.
5330         * tests/uninorm/test-u8-nfd.c (test_u8_nfd): Likewise.
5331         * tests/uninorm/test-u8-nfkc.c (test_u8_nfkc): Likewise.
5332         * tests/uninorm/test-u8-nfkd.c (test_u8_nfkd): Likewise.
5333         * tests/uninorm/test-u16-nfc.c (test_u16_nfc): Likewise.
5334         * tests/uninorm/test-u16-nfd.c (test_u16_nfd): Likewise.
5335         * tests/uninorm/test-u16-nfkc.c (test_u16_nfkc): Likewise.
5336         * tests/uninorm/test-u16-nfkd.c (test_u16_nfkd): Likewise.
5337         * tests/uninorm/test-u32-nfc.c (test_u32_nfc): Likewise.
5338         * tests/uninorm/test-u32-nfd.c (test_u32_nfd): Likewise.
5339         * tests/uninorm/test-u32-nfkc.c (test_u32_nfkc): Likewise.
5340         * tests/uninorm/test-u32-nfkd.c (test_u32_nfkd): Likewise.
5341
5342 2009-02-21  Bruno Haible  <bruno@clisp.org>
5343
5344         * doc/gnulib.texi: Include safe-alloc.texi earlier.
5345         * doc/safe-alloc.texi: Terminate sentences with a period. Use two
5346         spaces after a period. Put a space between a macro name and its
5347         argument list. Trivial rewordings.
5348         * lib/safe-alloc.c: Include safe-alloc.h right after config.h.
5349         * tests/test-safe-alloc.c: Likewise. Include stdlib.h.
5350         (main): Return 0 explicitly.
5351
5352 2009-02-21  Bruno Haible  <bruno@clisp.org>
5353
5354         Tests for module 'uninorm/filter'.
5355         * tests/uninorm/test-uninorm-filter-nfc.c: New file.
5356         * modules/uninorm/filter-tests: New file.
5357
5358         New module 'uninorm/filter'.
5359         * lib/uninorm.h (uninorm_filter_create, uninorm_filter_write,
5360         uninorm_filter_flush, uninorm_filter_free): New declarations.
5361         * lib/uninorm/uninorm-filter.c: New file.
5362         * modules/uninorm/filter: New file.
5363
5364 2009-02-21  Bruno Haible  <bruno@clisp.org>
5365
5366         Tests for module 'uninorm/nfkc'.
5367         * tests/uninorm/test-nfkc.c: New file.
5368         * tests/uninorm/test-u8-nfkc.c: New file.
5369         * tests/uninorm/test-u16-nfkc.c: New file.
5370         * tests/uninorm/test-u32-nfkc.c: New file.
5371         * tests/uninorm/test-u32-nfkc-big.sh: New file.
5372         * tests/uninorm/test-u32-nfkc-big.c: New file.
5373         * modules/uninorm/nfkc-tests: New file.
5374
5375         New module 'uninorm/nfkc'.
5376         * lib/uninorm/nfkc.c: New file.
5377         * modules/uninorm/nfkc: New file.
5378
5379         Tests for module 'uninorm/nfkd'.
5380         * tests/uninorm/test-nfkd.c: New file.
5381         * tests/uninorm/test-u8-nfkd.c: New file.
5382         * tests/uninorm/test-u16-nfkd.c: New file.
5383         * tests/uninorm/test-u32-nfkd.c: New file.
5384         * tests/uninorm/test-u32-nfkd-big.sh: New file.
5385         * tests/uninorm/test-u32-nfkd-big.c: New file.
5386         * modules/uninorm/nfkd-tests: New file.
5387
5388         New module 'uninorm/nfkd'.
5389         * lib/uninorm/nfkd.c: New file.
5390         * modules/uninorm/nfkd: New file.
5391
5392         Tests for module 'uninorm/nfc'.
5393         * tests/uninorm/test-nfc.c: New file.
5394         * tests/uninorm/test-u8-nfc.c: New file.
5395         * tests/uninorm/test-u16-nfc.c: New file.
5396         * tests/uninorm/test-u32-nfc.c: New file.
5397         * tests/uninorm/test-u32-nfc-big.sh: New file.
5398         * tests/uninorm/test-u32-nfc-big.c: New file.
5399         * modules/uninorm/nfc-tests: New file.
5400
5401         New module 'uninorm/nfc'.
5402         * lib/uninorm/nfc.c: New file.
5403         * modules/uninorm/nfc: New file.
5404
5405         Tests for module 'uninorm/nfd'.
5406         * tests/uninorm/test-nfd.c: New file.
5407         * tests/uninorm/test-u8-nfd.c: New file.
5408         * tests/uninorm/test-u16-nfd.c: New file.
5409         * tests/uninorm/test-u32-nfd.c: New file.
5410         * tests/uninorm/test-u32-nfd-big.sh: New file.
5411         * tests/uninorm/test-u32-nfd-big.c: New file.
5412         * tests/uninorm/test-u32-normalize-big.h: New file.
5413         * tests/uninorm/test-u32-normalize-big.c: New file.
5414         * tests/uninorm/NormalizationTest.txt: New file, created from
5415         Unicode 5.1.0 NormalizationTest.txt.
5416         * modules/uninorm/nfd-tests: New file.
5417
5418         New module 'uninorm/nfd'.
5419         * lib/uninorm/nfd.c: New file.
5420         * modules/uninorm/nfd: New file.
5421
5422         New module 'uninorm/u32-normalize'.
5423         * lib/uninorm/u32-normalize.c: New file.
5424         * modules/uninorm/u32-normalize: New file.
5425
5426         New module 'uninorm/u16-normalize'.
5427         * lib/uninorm/u16-normalize.c: New file.
5428         * modules/uninorm/u16-normalize: New file.
5429
5430         New module 'uninorm/u8-normalize'.
5431         * lib/uninorm/u8-normalize.c: New file.
5432         * lib/uninorm/normalize-internal.h: New file.
5433         * lib/uninorm/u-normalize-internal.h: New file.
5434         * modules/uninorm/u8-normalize: New file.
5435
5436         New module 'uninorm/decompose-internal'.
5437         * lib/uninorm/decompose-internal.c: New file.
5438         * modules/uninorm/decompose-internal: New file.
5439
5440         Tests for module 'uninorm/composition'.
5441         * tests/uninorm/test-composition.c: New file.
5442         * modules/uninorm/composition-tests: New file.
5443
5444         New module 'uninorm/composition'.
5445         * lib/uninorm/composition.c: New file.
5446         * lib/uninorm/composition-table.gperf: New file, generated by
5447         gen-uni-tables.
5448         * modules/uninorm/composition: New file.
5449
5450         Tests for module 'uninorm/compat-decomposition'.
5451         * tests/uninorm/test-compat-decomposition.c: New file.
5452         * modules/uninorm/compat-decomposition-tests: New file.
5453
5454         New module 'uninorm/compat-decomposition'.
5455         * lib/uninorm/decompose-internal.h: New file.
5456         * lib/uninorm/compat-decomposition.c: New file.
5457         * modules/uninorm/compat-decomposition: New file.
5458
5459         Tests for module 'uninorm/canonical-decomposition'.
5460         * tests/uninorm/test-canonical-decomposition.c: New file.
5461         * modules/uninorm/canonical-decomposition-tests: New file.
5462
5463         New module 'uninorm/canonical-decomposition'.
5464         * lib/uninorm/canonical-decomposition.c: New file.
5465         * modules/uninorm/canonical-decomposition: New file.
5466
5467         Tests for module 'uninorm/decomposition'.
5468         * tests/uninorm/test-decomposition.c: New file.
5469         * modules/uninorm/decomposition-tests: New file.
5470
5471         New module 'uninorm/decomposition'.
5472         * lib/uninorm/decomposition.c: New file.
5473         * modules/uninorm/decomposition: New file.
5474
5475         New module 'uninorm/decomposition-table'.
5476         * lib/uninorm/decomposition-table.h: New file.
5477         * lib/uninorm/decomposition-table.c: New file.
5478         * lib/uninorm/decomposition-table1.h: New file, generated by
5479         gen-uni-tables.
5480         * lib/uninorm/decomposition-table2.h: New file, generated by
5481         gen-uni-tables.
5482         * modules/uninorm/decomposition-table: New file.
5483
5484         * lib/gen-uni-tables.c (MAX_DECOMP_LENGTH): New macro.
5485         (UC_DECOMP_*): New enumeration items.
5486         (get_decomposition): New function.
5487         (struct decomp_table): New type.
5488         (output_decomposition, output_decomposition_tables): New functions.
5489         (unicode_composition_exclusions): New variable.
5490         (fill_composition_exclusions, debug_output_composition_tables): New
5491         functions.
5492         (main): Accept one more argument. Invoke fill_composition_exclusions.
5493         Output decomposition and composition tables.
5494
5495         New module 'uninorm/base'.
5496         * lib/uninorm.h: New file.
5497         * lib/unictype.h: Update comment.
5498         * modules/uninorm/base: New file.
5499
5500 2009-02-21  David Lutterkort  <lutter@redhat.com>
5501
5502         Tests for module 'safe-alloc'.
5503         * tests/test-safe-alloc.c: New file.
5504         * modules/safe-alloc-tests: New file.
5505
5506         New module 'safe-alloc'.
5507         * lib/safe-alloc.h: New file.
5508         * lib/safe-alloc.c: New file.
5509         * m4/safe-alloc.m4: New file.
5510         * modules/safe-alloc: New file.
5511         * doc/safe-alloc.texi: New file.
5512         * doc/gnulib.texi: Include it.
5513         * MODULES.html.sh (Memory management functions <stdlib.h>): Add
5514         safe-alloc.
5515
5516 2009-02-18  Bruno Haible  <bruno@clisp.org>
5517
5518         Fix link error on non-glibc systems.
5519         * modules/uniwbrk/ulc-wordbreaks-tests (test_ulc_wordbreaks_LDADD): New
5520         variable.
5521         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
5522
5523 2009-02-18  Jim Meyering  <meyering@redhat.com>
5524
5525         fts: avoid used-uninitialized error due to recent change
5526         * lib/fts.c (fts_read): Guard uses of the new member,
5527         parent->fts_n_dirs_remaining, since it's not relevant for
5528         the parent of a directory specified on the command-line.
5529
5530 2009-02-17  James Youngman  <jay@gnu.org>
5531             Bruno Haible  <bruno@clisp.org>
5532
5533         * m4/include_next.m4: Reformulate comment.
5534
5535 2009-02-16  Jim Meyering  <meyering@redhat.com>
5536
5537         fts: add #if guards so that the fts_lgpl module still builds
5538         * lib/fts.c: Guard just-added hash-table-using parts with
5539         #if GNULIB_FTS, so as not to break builds of the fts_lgpl module.
5540         Reported by Simon Josefsson.
5541
5542 2009-02-15  Bruno Haible  <bruno@clisp.org>
5543
5544         * modules/array-mergesort-tests: New file.
5545         * tests/test-array-mergesort.c: New file.
5546
5547         New module 'array-mergesort'.
5548         * modules/array-mergesort: New file.
5549         * lib/array-mergesort.h: New file.
5550
5551 2009-02-15  Bruno Haible  <bruno@clisp.org>
5552
5553         Fix 2009-02-07 commit.
5554         * lib/gen-uni-tables.c (output_predicate, output_category,
5555         output_combclass, output_bidi_category, output_decimal_digit,
5556         output_digit, output_numeric, output_mirror, output_scripts,
5557         output_ident_category, output_simple_mapping): Fix format directives.
5558         (output_lbp, output_wbp): Don't convert -1 to a size_t implicitly.
5559
5560 2009-02-15  Albert Chin-A-Young  <china@thewrittenword.com>
5561
5562         * m4/include_next.m4: Update comment about IBM C 9.0/10.1 bug, now that
5563         fixes are available from IBM.
5564
5565 2009-02-13  Jim Meyering  <meyering@redhat.com>
5566
5567         fts: arrange not to stat non-directories in more cases
5568         This makes GNU find (when it doesn't need to stat each file)
5569         *much* more efficient at traversing reiserfs file systems.
5570         * lib/fts_.h (struct ftsent) [fts_n_dirs_remaining]: New member.
5571         (struct FTS) [fts_leaf_optimization_works_ht]: Add member.
5572         * lib/fts.c (fts_close): Free ->fts_leaf_optimization_works_ht.
5573         (S_MAGIC_REISERFS, S_MAGIC_PROC): Define.
5574         (leaf_optimization_applies): New function.
5575         (LCO_hash, LCO_compare): New helper functions.
5576         (link_count_optimize_ok): New function.
5577         (fts_stat): Initialize new member (if dir).
5578         (fts_read): Decrement parent's fts_n_dirs_remaining count if
5579         we've just stat'ed a directory.  Skip the stat call when possible.
5580         ---
5581         Note this AFS-related exchange:
5582         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=143111
5583         and note find's pioctl call in find/fstype.c.
5584         But that is necessary only if you want to enable the
5585         optimization for AFS, and for now, I don't.
5586
5587         fts: move a function definition "up" (no semantic change)
5588         * lib/fts.c (dirent_inode_sort_may_be_useful): Move definition
5589         "up" to precede upcoming use of a related function.
5590
5591 2009-02-11  Jim Meyering  <meyering@redhat.com>
5592
5593         fts: correct internal computation of nlinks (optimization-related)
5594         * lib/fts.c (fts_build): ISSET(FTS_NOSTAT) has no bearing on
5595         whether the current entry is a directory, so don't test it.
5596
5597 2009-02-10  Bruno Haible  <bruno@clisp.org>
5598
5599         Tests for module 'uniwbrk/ulc-wordbreaks'.
5600         * modules/uniwbrk/ulc-wordbreaks-tests: New file.
5601         * tests/uniwbrk/test-ulc-wordbreaks.sh: New file.
5602         * tests/uniwbrk/test-ulc-wordbreaks.c: New file.
5603
5604         Tests for module 'uniwbrk/u32-wordbreaks'.
5605         * modules/uniwbrk/u32-wordbreaks-tests: New file.
5606         * tests/uniwbrk/test-u32-wordbreaks.c: New file.
5607
5608         Tests for module 'uniwbrk/u16-wordbreaks'.
5609         * modules/uniwbrk/u16-wordbreaks-tests: New file.
5610         * tests/uniwbrk/test-u16-wordbreaks.c: New file.
5611
5612         Tests for module 'uniwbrk/u8-wordbreaks'.
5613         * modules/uniwbrk/u8-wordbreaks-tests: New file.
5614         * tests/uniwbrk/test-u8-wordbreaks.c: New file.
5615
5616 2009-02-10  Bruno Haible  <bruno@clisp.org>
5617
5618         * modules/uniwbrk/u8-wordbreaks (Depends-on): Add uniwbrk/wordbreak
5619         property.
5620         * modules/uniwbrk/u16-wordbreaks (Depends-on): Likewise.
5621         * modules/uniwbrk/u32-wordbreaks (Depends-on): Likewise.
5622         * modules/uniwbrk/ulc-wordbreaks (Depends-on): Add localcharset.
5623
5624 2009-02-10  Simon Josefsson  <simon@josefsson.org>
5625
5626         * m4/sockets.m4: Call AC_C_INLINE since sockets.h now can use
5627         inline keywords.  Reported by Bruno Haible <bruno@clisp.org>.
5628
5629 2009-02-10  Bruno Haible  <bruno@clisp.org>
5630
5631         * lib/unilbrk/lbrktables.h: Renamed from lib/unilbrk/tables.h.
5632         * lib/unilbrk/lbrktables.c: Renamed from lib/unilbrk/tables.c.
5633         * modules/unilbrk/tables (Files, Makefile.am, Include): Update.
5634         * lib/unilbrk/u8-possible-linebreaks.c: Update.
5635         * lib/unilbrk/u16-possible-linebreaks.c: Likewise.
5636         * lib/unilbrk/u32-possible-linebreaks.c: Likewise.
5637
5638 2009-02-09  Simon Josefsson  <simon@josefsson.org>
5639
5640         * lib/sockets.h (gl_fd_to_handle): New function.
5641
5642         * tests/test-sockets.c: Call gl_fd_to_handle.
5643
5644 2009-02-09  Bruno Haible  <bruno@clisp.org>
5645
5646         * doc/havelib.texi: Document the conventions on bi-arch systems.
5647
5648 2009-02-08  Bruno Haible  <bruno@clisp.org>
5649
5650         Document the AC_LIB_LINKFLAGS macro.
5651         * doc/havelib.texi: New file, mostly written on 2005-05-24.
5652         * doc/gnulib.texi: Include it.
5653
5654 2009-02-08  Bruno Haible  <bruno@clisp.org>
5655
5656         Fix wrong order of sections, compared to TOC.
5657         * doc/gnulib.texi: Include relocatable-maint.texi after the
5658         "Regular expressions" node, not before.
5659
5660 2009-02-08  Bruno Haible  <bruno@clisp.org>
5661
5662         Tests for module 'unicase/totitle'.
5663         * modules/unicase/totitle-tests: New file.
5664
5665         Tests for module 'unicase/tolower'.
5666         * modules/unicase/tolower-tests: New file.
5667
5668         Tests for module 'unicase/toupper'.
5669         * modules/unicase/toupper-tests: New file.
5670         * tests/unicase/test-mapping-part1.h: New file.
5671         * tests/unicase/test-mapping-part2.h: New file.
5672
5673         New module 'unicase/totitle'.
5674         * modules/unicase/totitle: New file.
5675         * lib/unicase/totitle.c: New file.
5676
5677         New module 'unicase/tolower'.
5678         * modules/unicase/tolower: New file.
5679         * lib/unicase/tolower.c: New file.
5680
5681         New module 'unicase/toupper'.
5682         * modules/unicase/toupper: New file.
5683         * lib/unicase/toupper.c: New file.
5684         * lib/unicase/simple-mapping.h: New file.
5685
5686         * lib/gen-uni-tables.c (output_simple_mapping_test): New function.
5687         (mapping_table): New structure.
5688         (output_simple_mapping): New function.
5689         (main): Invoke output_simple_mapping_test and output_simple_mapping.
5690         * modules/gen-uni-tables (Description): Update.
5691         * lib/unicase/toupper.h: New file, automatically generated by
5692         gen-uni-tables.
5693         * lib/unicase/tolower.h: New file, automatically generated by
5694         gen-uni-tables.
5695         * lib/unicase/totitle.h: New file, automatically generated by
5696         gen-uni-tables.
5697         * tests/unicase/test-uc_toupper.c: New file, automatically generated by
5698         gen-uni-tables.
5699         * tests/unicase/test-uc_tolower.c: New file, automatically generated by
5700         gen-uni-tables.
5701         * tests/unicase/test-uc_totitle.c: New file, automatically generated by
5702         gen-uni-tables.
5703
5704         New module 'unicase/base'.
5705         * modules/unicase/base: New file.
5706         * lib/unicase.h: New file.
5707
5708 2009-02-08  Bruno Haible  <bruno@clisp.org>
5709
5710         New module 'uniwbrk/ulc-wordbreaks'.
5711         * modules/uniwbrk/ulc-wordbreaks: New file.
5712         * lib/uniwbrk/ulc-wordbreaks.c: New file.
5713
5714         New module 'uniwbrk/u32-wordbreaks'.
5715         * modules/uniwbrk/u32-wordbreaks: New file.
5716         * lib/uniwbrk/u32-wordbreaks.c: New file.
5717
5718         New module 'uniwbrk/u16-wordbreaks'.
5719         * modules/uniwbrk/u16-wordbreaks: New file.
5720         * lib/uniwbrk/u16-wordbreaks.c: New file.
5721
5722         New module 'uniwbrk/u8-wordbreaks'.
5723         * modules/uniwbrk/u8-wordbreaks: New file.
5724         * lib/uniwbrk/u8-wordbreaks.c: New file.
5725         * lib/uniwbrk/u-wordbreaks.h: New file.
5726
5727         New module 'uniwbrk/table'.
5728         * modules/uniwbrk/table: New file.
5729         * lib/uniwbrk/wbrktable.h: New file.
5730         * lib/uniwbrk/wbrktable.c: New file.
5731
5732         New module 'uniwbrk/wordbreak-property'.
5733         * modules/uniwbrk/wordbreak-property: New file.
5734         * lib/uniwbrk/wordbreak-property.c: New file.
5735
5736         * lib/gen-uni-tables.c (WBP_*): New enum items.
5737         (get_wbp, debug_output_wbp, debug_output_wbrk_tables): New functions.
5738         (unicode_org_wbp): New variable.
5739         (fill_org_wbp, debug_output_org_wbp, debug_output_org_wbrk_tables):
5740         New functions.
5741         (wbp_table): New structure.
5742         (output_wbp, output_wbrk_tables): New functions.
5743         (main): Accept additional argument. Invoke fill_org_wbp,
5744         debug_output_wbrk_tables, debug_output_org_wbrk_tables,
5745         output_wbrk_tables.
5746         * modules/gen-uni-tables (Description): Update.
5747         * lib/uniwbrk/wbrkprop.h: New file, automatically generated by
5748         gen-uni-tables.
5749
5750         New module 'uniwbrk/base'.
5751         * modules/uniwbrk/base: New file.
5752         * lib/uniwbrk.h: New file.
5753
5754 2009-02-08  Bruno Haible  <bruno@clisp.org>
5755
5756         Update to Unicode 5.1.0.
5757         * lib/gen-uni-tables.c (is_property_alphabetic): Include
5758         U+2185..U+2188.
5759         (is_property_default_ignorable_code_point): Don't include characters
5760         of category Cc or Cs and not-a-characters.
5761         (get_lbp): Assume REVISION_22. Special handling of U+0609, U+060A,
5762         U+0D79, U+109E, U+109F, U+A60C.
5763         * lib/unictype/bidi_of.h: Regenerated.
5764         * lib/unictype/blocks.h: Regenerated.
5765         * lib/unictype/categ_C.h: Regenerated.
5766         * lib/unictype/categ_Cf.h: Regenerated.
5767         * lib/unictype/categ_Cn.h: Regenerated.
5768         * lib/unictype/categ_L.h: Regenerated.
5769         * lib/unictype/categ_Ll.h: Regenerated.
5770         * lib/unictype/categ_Lm.h: Regenerated.
5771         * lib/unictype/categ_Lo.h: Regenerated.
5772         * lib/unictype/categ_Lu.h: Regenerated.
5773         * lib/unictype/categ_M.h: Regenerated.
5774         * lib/unictype/categ_Mc.h: Regenerated.
5775         * lib/unictype/categ_Me.h: Regenerated.
5776         * lib/unictype/categ_Mn.h: Regenerated.
5777         * lib/unictype/categ_N.h: Regenerated.
5778         * lib/unictype/categ_Nd.h: Regenerated.
5779         * lib/unictype/categ_Nl.h: Regenerated.
5780         * lib/unictype/categ_No.h: Regenerated.
5781         * lib/unictype/categ_P.h: Regenerated.
5782         * lib/unictype/categ_Pd.h: Regenerated.
5783         * lib/unictype/categ_Pe.h: Regenerated.
5784         * lib/unictype/categ_Pf.h: Regenerated.
5785         * lib/unictype/categ_Pi.h: Regenerated.
5786         * lib/unictype/categ_Po.h: Regenerated.
5787         * lib/unictype/categ_Ps.h: Regenerated.
5788         * lib/unictype/categ_S.h: Regenerated.
5789         * lib/unictype/categ_Sk.h: Regenerated.
5790         * lib/unictype/categ_Sm.h: Regenerated.
5791         * lib/unictype/categ_So.h: Regenerated.
5792         * lib/unictype/categ_of.h: Regenerated.
5793         * lib/unictype/combining.h: Regenerated.
5794         * lib/unictype/ctype_alnum.h: Regenerated.
5795         * lib/unictype/ctype_alpha.h: Regenerated.
5796         * lib/unictype/ctype_graph.h: Regenerated.
5797         * lib/unictype/ctype_lower.h: Regenerated.
5798         * lib/unictype/ctype_print.h: Regenerated.
5799         * lib/unictype/ctype_punct.h: Regenerated.
5800         * lib/unictype/ctype_upper.h: Regenerated.
5801         * lib/unictype/decdigit.h: Regenerated.
5802         * lib/unictype/digit.h: Regenerated.
5803         * lib/unictype/mirror.h: Regenerated.
5804         * lib/unictype/numeric.h: Regenerated.
5805         * lib/unictype/pr_alphabetic.h: Regenerated.
5806         * lib/unictype/pr_bidi_arabic_digit.h: Regenerated.
5807         * lib/unictype/pr_bidi_arabic_right_to_left.h: Regenerated.
5808         * lib/unictype/pr_bidi_boundary_neutral.h: Regenerated.
5809         * lib/unictype/pr_bidi_eur_num_terminator.h: Regenerated.
5810         * lib/unictype/pr_bidi_left_to_right.h: Regenerated.
5811         * lib/unictype/pr_bidi_non_spacing_mark.h: Regenerated.
5812         * lib/unictype/pr_bidi_other_neutral.h: Regenerated.
5813         * lib/unictype/pr_combining.h: Regenerated.
5814         * lib/unictype/pr_dash.h: Regenerated.
5815         * lib/unictype/pr_decimal_digit.h: Regenerated.
5816         * lib/unictype/pr_default_ignorable_code_point.h: Regenerated.
5817         * lib/unictype/pr_deprecated.h: Regenerated.
5818         * lib/unictype/pr_diacritic.h: Regenerated.
5819         * lib/unictype/pr_extender.h: Regenerated.
5820         * lib/unictype/pr_format_control.h: Regenerated.
5821         * lib/unictype/pr_grapheme_base.h: Regenerated.
5822         * lib/unictype/pr_grapheme_extend.h: Regenerated.
5823         * lib/unictype/pr_grapheme_link.h: Regenerated.
5824         * lib/unictype/pr_id_continue.h: Regenerated.
5825         * lib/unictype/pr_id_start.h: Regenerated.
5826         * lib/unictype/pr_ideographic.h: Regenerated.
5827         * lib/unictype/pr_ignorable_control.h: Regenerated.
5828         * lib/unictype/pr_lowercase.h: Regenerated.
5829         * lib/unictype/pr_math.h: Regenerated.
5830         * lib/unictype/pr_numeric.h: Regenerated.
5831         * lib/unictype/pr_other_alphabetic.h: Regenerated.
5832         * lib/unictype/pr_other_default_ignorable_code_point.h: Regenerated.
5833         * lib/unictype/pr_other_grapheme_extend.h: Regenerated.
5834         * lib/unictype/pr_other_id_continue.h: Regenerated.
5835         * lib/unictype/pr_other_lowercase.h: Regenerated.
5836         * lib/unictype/pr_other_math.h: Regenerated.
5837         * lib/unictype/pr_punctuation.h: Regenerated.
5838         * lib/unictype/pr_sentence_terminal.h: Regenerated.
5839         * lib/unictype/pr_soft_dotted.h: Regenerated.
5840         * lib/unictype/pr_terminal_punctuation.h: Regenerated.
5841         * lib/unictype/pr_unassigned_code_value.h: Regenerated.
5842         * lib/unictype/pr_unified_ideograph.h: Regenerated.
5843         * lib/unictype/pr_uppercase.h: Regenerated.
5844         * lib/unictype/pr_xid_continue.h: Regenerated.
5845         * lib/unictype/pr_xid_start.h: Regenerated.
5846         * lib/unictype/pr_zero_width.h: Regenerated.
5847         * lib/unictype/scripts.h: Regenerated.
5848         * lib/unictype/scripts_byname.gperf: Regenerated.
5849         * lib/unictype/sy_java_ident.h: Regenerated.
5850         * lib/unilbrk/lbrkprop1.h: Regenerated.
5851         * lib/unilbrk/lbrkprop2.h: Regenerated.
5852         * tests/unictype/test-categ_C.c: Regenerated.
5853         * tests/unictype/test-categ_Cf.c: Regenerated.
5854         * tests/unictype/test-categ_Cn.c: Regenerated.
5855         * tests/unictype/test-categ_L.c: Regenerated.
5856         * tests/unictype/test-categ_Ll.c: Regenerated.
5857         * tests/unictype/test-categ_Lm.c: Regenerated.
5858         * tests/unictype/test-categ_Lo.c: Regenerated.
5859         * tests/unictype/test-categ_Lu.c: Regenerated.
5860         * tests/unictype/test-categ_M.c: Regenerated.
5861         * tests/unictype/test-categ_Mc.c: Regenerated.
5862         * tests/unictype/test-categ_Me.c: Regenerated.
5863         * tests/unictype/test-categ_Mn.c: Regenerated.
5864         * tests/unictype/test-categ_N.c: Regenerated.
5865         * tests/unictype/test-categ_Nd.c: Regenerated.
5866         * tests/unictype/test-categ_Nl.c: Regenerated.
5867         * tests/unictype/test-categ_No.c: Regenerated.
5868         * tests/unictype/test-categ_P.c: Regenerated.
5869         * tests/unictype/test-categ_Pd.c: Regenerated.
5870         * tests/unictype/test-categ_Pe.c: Regenerated.
5871         * tests/unictype/test-categ_Pf.c: Regenerated.
5872         * tests/unictype/test-categ_Pi.c: Regenerated.
5873         * tests/unictype/test-categ_Po.c: Regenerated.
5874         * tests/unictype/test-categ_Ps.c: Regenerated.
5875         * tests/unictype/test-categ_S.c: Regenerated.
5876         * tests/unictype/test-categ_Sk.c: Regenerated.
5877         * tests/unictype/test-categ_Sm.c: Regenerated.
5878         * tests/unictype/test-categ_So.c: Regenerated.
5879         * tests/unictype/test-ctype_alnum.c: Regenerated.
5880         * tests/unictype/test-ctype_alpha.c: Regenerated.
5881         * tests/unictype/test-ctype_graph.c: Regenerated.
5882         * tests/unictype/test-ctype_lower.c: Regenerated.
5883         * tests/unictype/test-ctype_print.c: Regenerated.
5884         * tests/unictype/test-ctype_punct.c: Regenerated.
5885         * tests/unictype/test-ctype_upper.c: Regenerated.
5886         * tests/unictype/test-decdigit.h: Regenerated.
5887         * tests/unictype/test-digit.h: Regenerated.
5888         * tests/unictype/test-numeric.h: Regenerated.
5889         * tests/unictype/test-pr_alphabetic.c: Regenerated.
5890         * tests/unictype/test-pr_bidi_arabic_digit.c: Regenerated.
5891         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Regenerated.
5892         * tests/unictype/test-pr_bidi_boundary_neutral.c: Regenerated.
5893         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Regenerated.
5894         * tests/unictype/test-pr_bidi_left_to_right.c: Regenerated.
5895         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Regenerated.
5896         * tests/unictype/test-pr_bidi_other_neutral.c: Regenerated.
5897         * tests/unictype/test-pr_combining.c: Regenerated.
5898         * tests/unictype/test-pr_dash.c: Regenerated.
5899         * tests/unictype/test-pr_decimal_digit.c: Regenerated.
5900         * tests/unictype/test-pr_default_ignorable_code_point.c: Regenerated.
5901         * tests/unictype/test-pr_deprecated.c: Regenerated.
5902         * tests/unictype/test-pr_diacritic.c: Regenerated.
5903         * tests/unictype/test-pr_extender.c: Regenerated.
5904         * tests/unictype/test-pr_format_control.c: Regenerated.
5905         * tests/unictype/test-pr_grapheme_base.c: Regenerated.
5906         * tests/unictype/test-pr_grapheme_extend.c: Regenerated.
5907         * tests/unictype/test-pr_grapheme_link.c: Regenerated.
5908         * tests/unictype/test-pr_id_continue.c: Regenerated.
5909         * tests/unictype/test-pr_id_start.c: Regenerated.
5910         * tests/unictype/test-pr_ideographic.c: Regenerated.
5911         * tests/unictype/test-pr_ignorable_control.c: Regenerated.
5912         * tests/unictype/test-pr_lowercase.c: Regenerated.
5913         * tests/unictype/test-pr_math.c: Regenerated.
5914         * tests/unictype/test-pr_numeric.c: Regenerated.
5915         * tests/unictype/test-pr_other_alphabetic.c: Regenerated.
5916         * tests/unictype/test-pr_other_default_ignorable_code_point.c:
5917         Regenerated.
5918         * tests/unictype/test-pr_other_grapheme_extend.c: Regenerated.
5919         * tests/unictype/test-pr_other_id_continue.c: Regenerated.
5920         * tests/unictype/test-pr_other_lowercase.c: Regenerated.
5921         * tests/unictype/test-pr_other_math.c: Regenerated.
5922         * tests/unictype/test-pr_punctuation.c: Regenerated.
5923         * tests/unictype/test-pr_sentence_terminal.c: Regenerated.
5924         * tests/unictype/test-pr_soft_dotted.c: Regenerated.
5925         * tests/unictype/test-pr_terminal_punctuation.c: Regenerated.
5926         * tests/unictype/test-pr_unassigned_code_value.c: Regenerated.
5927         * tests/unictype/test-pr_unified_ideograph.c: Regenerated.
5928         * tests/unictype/test-pr_uppercase.c: Regenerated.
5929         * tests/unictype/test-pr_xid_continue.c: Regenerated.
5930         * tests/unictype/test-pr_xid_start.c: Regenerated.
5931         * tests/unictype/test-pr_zero_width.c: Regenerated.
5932
5933         Update to Unicode 5.1.0.
5934         * lib/uniwidth/width.c (nonspacing_table_data): Add U+0487,
5935         U+0616..U+061A, U+0A51, U+0A75, U+0B44, U+0B62..U+0B63, U+0C62..U+0C63,
5936         U+0D44, U+0D62..U+0D63, U+1033..U+1035, U+103A, U+103D..U+103E,
5937         U+105E..U+1060, U+1071..U+1074, U+1082, U+1085..U+1086, U+108D,
5938         U+1B80..U+1B81, U+1BA2..U+1BA5, U+1BA8..U+1BA9, U+1C2C..U+1C33,
5939         U+1C36..U+1C37, U+1DCB..U+1DE6, U+2064, U+20F0, U+2DE0..U+2DFF,
5940         U+A66F..U+A672, U+A67C..U+A67D, U+A8C4, U+A926..U+A92D, U+A947..U+A951,
5941         U+AA29..U+AA2E, U+AA31..U+AA32, U+AA35..U+AA36, U+AA43, U+AA4C,
5942         U+FE24..U+FE26, U+101FD. Remove U+1929..U+192B.
5943         (nonspacing_table_ind): Update.
5944         * tests/uniwidth/test-uc_width2.sh: Update expected result.
5945
5946         Update to Unicode 5.1.0.
5947         * lib/uniname/gen-uninames.lisp (main): Add the range 0x1Fxxx to the
5948         code transform.
5949         * lib/uniname/uniname.c (unicode_character_name,
5950         unicode_name_character): Add the range 0x1Fxxx to the code transform.
5951         * lib/uniname/uninames.h: Regenerated.
5952         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.1.0.
5953
5954 2009-02-07  Bruno Haible  <bruno@clisp.org>
5955
5956         Merge gen-ctype and gen-lbrk into a single program.
5957         * lib/gen-uni-tables.c: New file, incorporating
5958         lib/unictype/gen-ctype.c and lib/unilbrk/gen-lbrk.c.
5959         Add directory prefixes to the names of the generated files.
5960         * lib/unictype/gen-ctype.c: Remove file.
5961         * lib/unilbrk/gen-lbrk.c: Remove file.
5962         * modules/gen-uni-tables: New file.
5963         * modules/unictype/gen-ctype: Remove file.
5964         * modules/unilbrk/gen-lbrk: Remove file.
5965
5966 2009-02-07  Bruno Haible  <bruno@clisp.org>
5967
5968         * lib/unistr.h (u8_strcoll, u16_strcoll, u32_strcoll): New declations.
5969
5970         New module 'unistr/u32-strcoll'.
5971         * modules/unistr/u32-strcoll: New file.
5972         * lib/unistr/u32-strcoll.c: New file.
5973
5974         New module 'unistr/u16-strcoll'.
5975         * modules/unistr/u16-strcoll: New file.
5976         * lib/unistr/u16-strcoll.c: New file.
5977
5978         New module 'unistr/u8-strcoll'.
5979         * modules/unistr/u8-strcoll: New file.
5980         * lib/unistr/u8-strcoll.c: New file.
5981         * lib/unistr/u-strcoll.h: New file.
5982
5983 2009-02-07  Bruno Haible  <bruno@clisp.org>
5984
5985         * test-mbrtowc4.sh (LOCALE_ZH_CN): Fix default value.
5986         * test-mbsnrtowcs4.sh (LOCALE_ZH_CN): Likewise.
5987         * test-mbsrtowcs4.sh (LOCALE_ZH_CN): Likewise.
5988         * test-wcrtomb.sh (LOCALE_ZH_CN): Likewise.
5989         * test-wcsnrtombs4.sh (LOCALE_ZH_CN): Likewise.
5990         * test-wcsrtombs4.sh (LOCALE_ZH_CN): Likewise.
5991
5992 2009-02-07  Bruno Haible  <bruno@clisp.org>
5993
5994         Make 64-bit clean.
5995         * lib/unictype/gen-ctype.c (output_predicate, output_category,
5996         output_combclass, output_bidi_category, output_decimal_digit,
5997         output_digit, output_numeric, output_mirror, output_scripts,
5998         output_ident_category): Use proper width specifier in format strings.
5999
6000 2009-02-07  Bruno Haible  <bruno@clisp.org>
6001
6002         * doc/posix-functions/dirfd.texi: Clarify situation on mingw. Document
6003         failure behaviour.
6004
6005 2009-02-07  Jim Meyering  <meyering@redhat.com>
6006
6007         regex: avoid compilation failure with upcoming gcc-4.4
6008         * lib/regex_internal.h: Revert e48d8b47fb3eee81d341b71c3e006efe9e3433a7
6009         [workaround for PGC prior to 6.1-2].  Otherwise, we'd get this:
6010         "... error: integer overflow in preprocessor expression".
6011
6012 2009-02-05  Ben Pfaff  <blp@gnu.org>
6013
6014         Fix link errors on Windows when close module is used.
6015         * modules/close: Add $(LIB_CLOSE) to Link section.
6016         * m4/close.m4 (gl_REPLACE_CLOSE): Substitute -lws2_32 into
6017         $(LIB_CLOSE) on Windows.
6018
6019 2009-02-05  Jim Meyering  <meyering@redhat.com>
6020
6021         still avoid unused-parameter warnings, but do it cleanly
6022         * lib/fsusage.c (UNUSED_PARAM): Remove definition.
6023         (get_fs_usage): Cast to void instead.
6024         * lib/mountlist.c (UNUSED_PARAM): Remove definition.
6025         (dev_from_mount_options, read_file_system_list): Cast to void.
6026         Prompted by Bruno Haible.
6027
6028 2009-02-04  Jim Meyering  <meyering@redhat.com>
6029
6030         fsusage.c: correct copyright year
6031         * lib/fsusage.c: Reflect year in which the change is pushed into
6032
6033         avoid misc. warnings
6034         * lib/fsusage.c (UNUSED_PARAM): Define.
6035         (get_fs_usage): Mark parameter "disk" as unused.
6036         * lib/getugroups.c (getgrent): Use "void" in prototype.
6037         * lib/mountlist.c: Mark unused parameters.
6038         (read_file_system_list): Declare a local with "const".
6039         * lib/nanosleep.c (getnow): Declare static.
6040         * lib/strftime.c: Include strftime.h, for declaration of nstrftime.
6041
6042         dirfd: set errno upon failure
6043         * lib/dirfd.c: Include <errno.h>.
6044         Set errno to ENOTSUP when returning -1.
6045         * modules/dirfd (Depends-on): Add errno.
6046         Suggested by John Kodis <kodis@comcast.net>.
6047
6048 2009-02-01  Bruno Haible  <bruno@clisp.org>
6049
6050         Don't assume sizeof (long) >= sizeof (void *).
6051         * lib/memcmp.c: Include stdint.h.
6052         (memcmp_bytes): Change argument types to op_t. Change type of srcp1,
6053         srcp2 to 'const byte *'.
6054         (memcmp_common_alignment, memcmp_not_common_alignment): Change argument
6055         types to uintptr_t.
6056         (rpl_memcmp): Change type of srcp1, srcp2 to 'uintptr_t'.
6057         * modules/memcmp (Depends-on): Add stdint.
6058         Reported by Ozkan Sezer <sezeroz@gmail.com>.
6059
6060 2009-01-30  Eric Blake  <ebb9@byu.net>
6061
6062         fix more require-before-expand issues
6063         * m4/pmccabe2html.m4 (gl_PMCCABE2HTML): Require, rather than
6064         expand, AC_PROG_AWK.
6065         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): Use AC_DEFUN_ONCE.
6066
6067 2009-01-28  Eric Blake  <ebb9@byu.net>
6068
6069         version-etc: use consistent URL formatting
6070         * lib/version-etc.c (emit_bug_reporting_address, version_etc_va):
6071         Improve formatting.  Use fputs for string without %.
6072
6073 2009-01-28  Jim Meyering  <meyering@redhat.com>
6074
6075         00gnulib.m4: add m4 quotes in shell comment to avoid autoconf warning
6076         * m4/00gnulib.m4 (AC_DEFUN_ONCE): Add quotes to avoid an
6077         "underquoted definition of NAME" from autoconf-2.59.
6078
6079 2009-01-28  Bruno Haible  <bruno@clisp.org>
6080
6081         * doc/gnulib.texi: Add "Obsolete modules" to index.
6082
6083 2009-01-28  Jim Meyering  <meyering@redhat.com>
6084
6085         useless-if-before-free: recognize more variants
6086         * build-aux/useless-if-before-free: Also recognize e.g.,
6087         if (NULL != p) free (p);
6088
6089 2009-01-27  Mark McLoughlin  <markmc@redhat.com>
6090
6091         test-getaddrinfo: skip (don't fail) this test when there's no network
6092         * tests/test-getaddrinfo.c: Skip test upon failure with EAI_AGAIN,
6093         on the presumption that it means you lack network access.
6094
6095 2009-01-26  Jim Meyering  <meyering@redhat.com>
6096
6097         fflush: avoid warnings on modern systems
6098         * lib/fflush.c (rpl_fflush): Move declarations of locals,
6099         pos and result, into scopes where they're used.
6100
6101 2009-01-26  Eric Blake  <ebb9@byu.net>
6102
6103         Silence warning reintroduced by recent extensions patch.
6104         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS)
6105         (gl_USE_SYSTEM_EXTENSIONS): Use AC_DEFUN_ONCE to silence newer
6106         autoconf.
6107
6108         Backport improved autoconf semantics of AC_DEFUN_ONCE.
6109         * m4/00gnulib.m4: New file.
6110         * gnulib-tool (func_get_filelist): Always use it.
6111         * m4/gnulib-common.m4 (gl_COMMON): Force the file to be used.
6112         Reported by Bruno Haible, with suggestions from Paolo Bonzini.
6113
6114 2009-01-25  Bruno Haible  <bruno@clisp.org>
6115
6116         Make test-quotearg work on MacOS X and AIX.
6117         * tests/test-quotearg.sh: New file.
6118         * tests/locale/fr/LC_MESSAGES/test-quotearg.po: New file.
6119         * tests/locale/fr/LC_MESSAGES/test-quotearg.mo: New file.
6120         * tests/test-quotearg.c: Include <locale.h> and gettext.h. Don't
6121         include <libintl.h>.
6122         (fake_locale): Remove variable.
6123         (gettext, dgettext, dcgettext): Remove functions.
6124         (main): Instead of setting a fake locale, set a real locale. Call
6125         textdomain and bindtextdomain.
6126         * modules/quotearg-tests (Files): Add the new files.
6127         (Depends-on): Add gettext, setenv, unsetenv.
6128         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
6129         (Makefile.am): Add test-quotearg.sh to TESTS, remove test-quotearg.
6130         Augment TESTS_ENVIRONMENT.
6131
6132 2009-01-25  Bruno Haible  <bruno@clisp.org>
6133
6134         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove special code that hid the
6135         fr_FR.ISO8859-1 locale on MacOS X.
6136         * m4/locale-ja.m4 (gt_LOCALE_JA): Remove special code that hid the
6137         ja_JP.eucJP locale on MacOS X.
6138         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Remove special code that hid the
6139         zh_CN.GB18030 locale on MacOS X.
6140
6141 2009-01-25  Bruno Haible  <bruno@clisp.org>
6142
6143         Avoid link errors on MacOS X 10.3.
6144         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Add initializer.
6145         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
6146
6147 2009-01-25  Bruno Haible  <bruno@clisp.org>
6148
6149         * lib/pipe.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
6150         * m4/pipe.m4 (gl_PIPE): Remove tests for vfork() based code.
6151         * modules/pipe (Files): Remove m4/posix_spawn.m4.
6152         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
6153         posix_spawn_file_actions_addclose, posix_spawn_file_actions_adddup2,
6154         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
6155         posix_spawnattr_init, posix_spawnattr_setsigmask,
6156         posix_spawnattr_setflags, posix_spawnattr_destroy.
6157
6158         * lib/execute.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
6159         * m4/execute.m4 (gl_EXECUTE): Remove tests for vfork() based code.
6160         * modules/execute (Files): Remove m4/posix_spawn.m4.
6161         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
6162         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
6163         posix_spawnattr_init, posix_spawnattr_setsigmask,
6164         posix_spawnattr_setflags, posix_spawnattr_destroy.
6165
6166 2009-01-25  Bruno Haible  <bruno@clisp.org>
6167
6168         * lib/glthread/threadlib.c: Include <stdlib.h>.
6169
6170 2009-01-25  Bruno Haible  <bruno@clisp.org>
6171
6172         * lib/glthread/threadlib.c (dummy): New declaration.
6173
6174 2009-01-25  Bruno Haible  <bruno@clisp.org>
6175
6176         * lib/mbrtowc.c (mbrtowc): Distinguish invalid and incomplete
6177         multibyte characters also for the GB18030 encoding. Don't crash when
6178         the encoding is unknown and nstate = 0. Needed on OSF/1 5.1.
6179
6180 2009-01-25  Bruno Haible  <bruno@clisp.org>
6181
6182         Avoid redefining 'struct random_data' on OSF/1 5.1.
6183         * lib/stdlib.in.h: Include <random.h> if it exists.
6184         * m4/stdlib_h.m4 (gl_STDLIB_H): Test whether <random.h> exists. Set
6185         HAVE_RANDOM_H. Include <random.h> when testing whether
6186         'struct random_data' exists.
6187         * modules/stdlib (Makefile.am): Substitute HAVE_RANDOM_H.
6188
6189 2009-01-25  Bruno Haible  <bruno@clisp.org>
6190
6191         Don't install charset.alias on MacOS X >= 10.3.
6192         * lib/localcharset.c (DARWIN7): New macro.
6193         (get_charset_aliases): Hardcode the result for Darwin7.
6194         * modules/localcharset (install-exec-local): Don't install
6195         charset.alias on MacOS X >= 10.3, if the file does not yet exist.
6196
6197 2009-01-25  Bruno Haible  <bruno@clisp.org>
6198
6199         Don't install charset.alias on mingw and Cygwin.
6200         * modules/localcharset (install-exec-local): Don't install
6201         charset.alias on mingw and Cygwin, if the file does not yet exist.
6202         The result for these platforms is hardcoded in localcharset.c.
6203
6204 2009-01-25  Bruno Haible  <bruno@clisp.org>
6205
6206         Make it possible again to use AC_GNU_SOURCE together with gnulib.
6207         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_GNU_SOURCE
6208         before requiring AC_USE_SYSTEM_EXTENSIONS.
6209
6210 2009-01-25  Jim Meyering  <meyering@redhat.com>
6211
6212         c-strtod: avoid warnings
6213         * lib/c-strtod.c (C_STRTOD): Cast nptr to (char *) to avoid
6214         "assignment discards qualifiers from pointer target type" warnings.
6215
6216 2009-01-24  Bruno Haible  <bruno@clisp.org>
6217
6218         Add support for non-UTF-8 locales on MacOS X.
6219         * lib/config.charset: Add CP1131, ARMSCII-8, PT154 to the list of
6220         canonical encodings. For Darwin 7 and newer, don't map traditional
6221         encodings to UTF-8.
6222         Reported by Vincent Lefevre <vincent@vinc17.org>
6223         at <http://savannah.gnu.org/bugs/?25235>.
6224
6225 2009-01-24  Bruno Haible  <bruno@clisp.org>
6226
6227         * doc/gnulib.texi (Obsolete modules): New section.
6228         Reported by Mike Frysinger <vapier@gentoo.org>.
6229
6230 2009-01-24  Bruno Haible  <bruno@clisp.org>
6231
6232         * doc/Makefile (%.pdf): Clarify where to find texmf.cnf.
6233         (%.dvi): New rule.
6234
6235 2009-01-24  Bruno Haible  <bruno@clisp.org>
6236
6237         * lib/c-strtod.h (c_strtod, c_strtold): Adjust specification.
6238         Reported by Eric Blake.
6239
6240 2009-01-24  Bruno Haible  <bruno@clisp.org>
6241
6242         * lib/c-stack.c (segv_handler): If !HAVE_XSI_STACK_OVERFLOW_HEURISTIC,
6243         set signo = 0 also if info->si_code <= 0. Needed on HP-UX 11.11.
6244         Reported by Gary V. Vaughan <gary@gnu.org>.
6245
6246 2009-01-24  Bruno Haible  <bruno@clisp.org>
6247
6248         * lib/c-strtod.h (c_strtod, c_strtold): Add specification.
6249
6250 2009-01-23  Bruno Haible  <bruno@clisp.org>
6251
6252         Make c-strtod, c-strtold usable in libraries.
6253         * lib/c-strtod.c: Include string.h instead of xalloc.h.
6254         (C_STRTOD): Call strdup instead of xstrdup.
6255         * modules/c-strtod (Depends-on): Add strdup-posix, remove xalloc.
6256         * modules/c-strtold (Depends-on): Likewise.
6257         * doc/c-strtod.texi: Remove the sentence mentioning xalloc_die.
6258         * NEWS: Mention the change.
6259         Reported by Michael Gold <mgold@ncf.ca>.
6260
6261 2009-01-23  Jim Meyering  <meyering@redhat.com>
6262
6263         c-strtod: when ENDPTR is non-NULL, set *ENDPTR in new failure path
6264         * lib/c-strtod.c (C_STRTOD) [LC_ALL_MASKC]: Ensure that when
6265         ENDPTR is non-NULL, *ENDPTR is set to NPTR upon failure.
6266
6267 2009-01-23  Simon Josefsson  <simon@josefsson.org>
6268
6269         * lib/version-etc.c: Add emit_bug_reporting_address, inspired by
6270         GNU CoreUtils.
6271         * lib/version-etc.h: Add prototype for emit_bug_reporting_address.
6272         * modules/version-etc (Description): Update.
6273
6274 2009-01-22  Bruno Haible  <bruno@clisp.org>
6275
6276         Cache the C locale object.
6277         * lib/c-strtod.c (c_locale_cache): New variable.
6278         (c_locale): New function.
6279         (C_STRTOD): Use it, and don't call freelocale.
6280         * m4/c-strtod.m4 (gl_C_STRTOD, gl_C_STRTOLD): Require AC_C_INLINE.
6281         Suggested by Paolo Bonzini.
6282
6283 2009-01-21  Bruno Haible  <bruno@clisp.org>
6284
6285         * lib/getloadavg.c (getloadavg): Check c_strtod result against error
6286         conditions other than overflow.
6287
6288 2009-01-21  Bruno Haible  <bruno@clisp.org>
6289
6290         * lib/c-strtod.c: Include errno.h.
6291         (C_STRTOD): Check against NULL return from newlocale. Preserve errno
6292         value from STRTOD_L and STRTOD.
6293
6294 2009-01-21  Bruno Haible  <bruno@clisp.org>
6295         and Jim Meyering  <meyering@redhat.com>
6296
6297         nanosleep: skip configure test (fail it) for apple universal builds
6298         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_MULTIARCH. In Apple
6299         universal builds, assume that nanosleep does not work.
6300         * modules/nanosleep (Depends-on): Add multiarch.
6301
6302         mktime: skip configure test (fail it) for apple universal builds
6303         * m4/mktime.m4 (AC_FUNC_MKTIME): Require gl_MULTIARCH. In Apple
6304         universal builds, assume that mktime does not work.
6305         * modules/mktime (Depends-on): Add multiarch.
6306
6307 2009-01-21  Eric Blake  <ebb9@byu.net>
6308
6309         multiarch: avoid expand-before-require warning
6310         * modules/multiarch (configure.ac): Require, rather than expand,
6311         gl_MULTIARCH.
6312         * m4/multiarch.m4 (gl_MULTIARCH_BODY): Merge...
6313         (gl_MULTIARCH): ...into this macro, and use AC_DEFUN_ONCE to
6314         enforce that all clients require it.  Partial reversion of
6315         2008-12-29 patch.
6316
6317         error: avoid expand-before-require warning
6318         * modules/errno (configure.ac): Require, rather than expand,
6319         gl_HEADER_ERRNO_H.
6320         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Merge...
6321         (gl_HEADER_ERRNO_H): ...into this macro, and use AC_DEFUN_ONCE to
6322         enforce that all clients require it.
6323
6324         gnulib-tool: avoid warnings from using obsolete AC_GNU_SOURCE
6325         * gnulib-tool (func_dest_tmpfilename, func_create_testdir): Using
6326         obsolete AC_GNU_SOURCE causes out-of-order expansion; avoid it,
6327         and rely solely on gl_USE_SYSTEM_EXTENSIONS.
6328
6329 2009-01-21  Paolo Bonzini  <bonzini@gnu.org>
6330
6331         Revert:
6332         2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
6333
6334         regex: do not depend on obsolete modules.
6335         * modules/regex: Remove memcmp and memmove.
6336
6337 2009-01-20  Bruno Haible  <bruno@clisp.org>
6338
6339         Make the 'link' module link on Windows NT 4.
6340         * lib/link.c (_WIN32_WINNT): Don't define.
6341         (CreateHardLinkFuncType): New type.
6342         (CreateHardLinkFunc, initialized): New variables.
6343         (initialize): New function.
6344         (link): Invoke CreateHardLink indirectly through the function pointer.
6345
6346 2009-01-20  Bruno Haible  <bruno@clisp.org>
6347
6348         Fix compilation failure on mingw.
6349         * tests/test-link.c (main): Don't assume that EOPNOTSUPP exists.
6350
6351 2009-01-20  Michael Gold  <mgold@ncf.ca>  (tiny change)
6352
6353         * doc/c-strtod.texi: Mention a couple of restrictions.
6354
6355 2009-01-20  Jim Meyering  <meyering@redhat.com>
6356
6357         gettimeofday: move more declarations out of functions
6358         * lib/gettimeofday.c: Move extern declarations of tzset and
6359         gmtime out of containing functions.  Prompted by Bruno Haible.
6360
6361 2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
6362
6363         regex: do not depend on obsolete modules.
6364         * modules/regex: Remove memcmp and memmove.
6365
6366 2009-01-19  Bruno Haible  <bruno@clisp.org>
6367
6368         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
6369         * modules/uniconv/u16-conv-from-enc (configure.ac): Require
6370         gl_BIGENDIAN, not AC_C_BIGENDIAN.
6371         * modules/uniconv/u16-conv-to-enc (configure.ac): Likewise.
6372         * modules/uniconv/u16-strconv-to-enc (configure.ac): Likewise.
6373
6374 2009-01-19  Bruno Haible  <bruno@clisp.org>
6375
6376         * tests/test-link.c: Include <errno.h>.
6377         (main): Exit with code 77 when a hard link cannot be created due to
6378         the file system.
6379         * tests/test-link.sh: Skip test when a hard link cannot be created due
6380         to the file system.
6381         Suggested by Eric Blake.
6382
6383 2009-01-19  Martin Lambers  <marlam@marlam.de>
6384
6385         * modules/link-tests: New file.
6386         * tests/test-link.sh: New file.
6387         * tests/test-link.c: New file.
6388
6389 2009-01-19  Eric Blake  <ebb9@byu.net>
6390
6391         doc: mention another function added in cygwin 1.7.0
6392         * doc/glibc-functions/glob_pattern_p.texi (glob_pattern_p):
6393         Another new function in cygwin 1.7.
6394
6395 2009-01-19  Bruno Haible  <bruno@clisp.org>
6396
6397         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
6398         * m4/gnulib-common.m4 (gl_BIGENDIAN): New macro.
6399         * m4/exponentl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require
6400         gl_BIGENDIAN, not AC_C_BIGENDIAN.
6401         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise.
6402         * m4/isinf.m4 (gl_ISINFL_WORKS): Likewise.
6403         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise.
6404         * m4/md4.m4 (gl_MD4): Likewise.
6405         * m4/md5.m4 (gl_MD5): Likewise.
6406         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Likewise.
6407         * m4/sha1.m4 (gl_SHA1): Likewise.
6408         * m4/sha256.m4 (gl_SHA256): Likewise.
6409         * m4/sha512.m4 (gl_SHA512): Likewise.
6410
6411 2009-01-19  Bruno Haible  <bruno@clisp.org>
6412
6413         * modules/uniname/uniname-tests (Depends-on): Add progname.
6414         * tests/uniname/test-uninames.c: Include progname.h.
6415         (main): Call set_program_name.
6416
6417         * modules/unistdio/u8-vsprintf-tests (Depends-on): Add progname.
6418         * tests/unistdio/test-u8-vsprintf1.c: Include progname.h.
6419         (main): Call set_program_name.
6420
6421         * modules/unistdio/u8-vsnprintf-tests (Depends-on): Add progname.
6422         * tests/unistdio/test-u8-vsnprintf1.c: Include progname.h.
6423         (main): Call set_program_name.
6424
6425         * modules/unistdio/u16-vsprintf-tests (Depends-on): Add progname.
6426         * tests/unistdio/test-u16-vsprintf1.c: Include progname.h.
6427         (main): Call set_program_name.
6428
6429         * modules/unistdio/u16-vsnprintf-tests (Depends-on): Add progname.
6430         * tests/unistdio/test-u16-vsnprintf1.c: Include progname.h.
6431         (main): Call set_program_name.
6432
6433         * modules/unistdio/u32-vsprintf-tests (Depends-on): Add progname.
6434         * tests/unistdio/test-u32-vsprintf1.c: Include progname.h.
6435         (main): Call set_program_name.
6436
6437         * modules/unistdio/u32-vsnprintf-tests (Depends-on): Add progname.
6438         * tests/unistdio/test-u32-vsnprintf1.c: Include progname.h.
6439         (main): Call set_program_name.
6440
6441         * modules/unistdio/ulc-vsprintf-tests (Depends-on): Add progname.
6442         * tests/unistdio/test-ulc-vsprintf1.c: Include progname.h.
6443         (main): Call set_program_name.
6444
6445         * modules/unistdio/ulc-vsnprintf-tests (Depends-on): Add progname.
6446         * tests/unistdio/test-ulc-vsnprintf1.c: Include progname.h.
6447         (main): Call set_program_name.
6448
6449 2009-01-19  Eric Blake  <ebb9@byu.net>
6450
6451         test-unistd: test previous patch
6452         * tests/test-unistd.c: Test *_FILENO macros.
6453
6454         unistd: guarantee STDIN_FILENO here, for OS/2 EMX
6455         * lib/unistd.in.h (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
6456         Guarantee a definition.
6457         * doc/posix-headers/unistd.texi (unistd.h): Document the bug.
6458         * modules/unistd-safer (Depends-on): Add dependency on unistd.
6459         * lib/c-stack.c (STDERR_FILENO): Rely on <unistd.h>.
6460         * lib/dup-safer.c (STDERR_FILENO): Likewise.
6461         * lib/execute.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
6462         Likewise.
6463         * lib/fd-safer.c (STDIN_FILENO, STDERR_FILENO): Likewise.
6464         * lib/fopen-safer.c (STDERR_FILENO): Likewise.
6465         * lib/pipe.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
6466         Likewise.
6467         * lib/tmpfile-safer.c (STDERR_FILENO): Likewise.
6468         * tests/test-posix_spawn1.c (STDIN_FILENO, STDOUT_FILENO)
6469         (STDERR_FILENO): Likewise.
6470         * tests/test-posix_spawn2.c (STDIN_FILENO, STDOUT_FILENO)
6471         (STDERR_FILENO): Likewise.
6472         * tests/test-posix_spawn3.c (STDIN_FILENO, STDOUT_FILENO)
6473         (STDERR_FILENO): Likewise.
6474         Reported by Elbert Pol.
6475
6476 2009-01-19  Eric Blake  <ebb9@byu.net>
6477
6478         doc: mention more functions added in cygwin 1.7.0
6479         * doc/posix-functions/abort.texi (abort): Update wording related
6480         to cygwin.
6481         * doc/posix-functions/daylight.texi (daylight): Likewise.
6482         * doc/posix-functions/optarg.texi (optarg): Likewise.
6483         * doc/posix-functions/optarg.texi (opterr): Likewise.
6484         * doc/posix-functions/optarg.texi (optind): Likewise.
6485         * doc/posix-functions/optarg.texi (optopt): Likewise.
6486         * doc/posix-functions/wprintf.texi (wprintf): Cygwin wprintf never
6487         worked in 1.5.x, and was withdrawn in 1.7.
6488         * doc/posix-functions/vwprintf.texi (vwprintf): Likewise.
6489         * doc/posix-functions/fprintf.texi (fprintf): Tighten mention of
6490         cygwin versions.
6491         * doc/posix-functions/perror.texi (perror): Likewise.
6492         * doc/posix-functions/printf.texi (printf): Likewise.
6493         * doc/posix-functions/snprintf.texi (snprintf): Likewise.
6494         * doc/posix-functions/sprintf.texi (sprintf): Likewise.
6495         * doc/posix-functions/vfprintf.texi (vfprintf): Likewise.
6496         * doc/posix-functions/vprintf.texi (vprintf): Likewise.
6497         * doc/posix-functions/vsnprintf.texi (vsnprintf): Likewise.
6498         * doc/posix-functions/vsprintf.texi (vsprintf): Likewise.
6499         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
6500         Likewise.
6501         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
6502         Likewise.
6503         * doc/glibc-functions/cfmakeraw.texi (cfmakeraw): Cygwin 1.7 adds
6504         this function.
6505         * doc/glibc-functions/in6addr_any.texi (in6addr_any): Likewise.
6506         * doc/glibc-functions/in6addr_loopback.texi (in6addr_loopback):
6507         Likewise.
6508         * doc/glibc-functions/updwtmpx.texi (updwtmpx): Likewise.
6509         * doc/posix-functions/_Exit_C99.texi (_Exit): Likewise.
6510         * doc/posix-functions/confstr.texi (confstr): Likewise.
6511         * doc/posix-functions/dprintf.texi (dprintf): Likewise.
6512         * doc/posix-functions/fgetwc.texi (fgetwc): Likewise.
6513         * doc/posix-functions/fgetws.texi (fgetws): Likewise.
6514         * doc/posix-functions/fputwc.texi (fputwc): Likewise.
6515         * doc/posix-functions/fputws.texi (fputws): Likewise.
6516         * doc/posix-functions/fwide.texi (fwide): Likewise.
6517         * doc/posix-functions/getwc.texi (getwc): Likewise.
6518         * doc/posix-functions/getwchar.texi (getwchar): Likewise.
6519         * doc/posix-functions/putwc.texi (putwc): Likewise.
6520         * doc/posix-functions/putwchar.texi (putwchar): Likewise.
6521         * doc/posix-functions/sigignore.texi (sigignore): Likewise.
6522         * doc/posix-functions/ungetwc.texi (ungetwc): Likewise.
6523         * doc/posix-functions/vdprintf.texi (vdprintf): Likewise.
6524         * doc/posix-functions/wcpcpy.texi (wcpcpy): Likewise.
6525         * doc/posix-functions/wcpncpy.texi (wcpncpy): Likewise.
6526         * doc/posix-functions/wcstol.texi (wcstol): Likewise.
6527         * doc/posix-functions/wcstoll.texi (wcstoll): Likewise.
6528         * doc/posix-functions/wcstoul.texi (wcstoul): Likewise.
6529         * doc/posix-functions/wcstoull.texi (wcstoull): Likewise.
6530         * doc/posix-functions/wcsxfrm.texi (wcsxfrm): Likewise.
6531
6532 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
6533
6534         ioctl: avoid warning: no previous prototype for 'rpl_ioctl'
6535         * lib/ioctl.c: Include <sys/ioctl.h>.
6536
6537 2009-01-19  Simon Josefsson  <simon@josefsson.org>
6538
6539         * modules/getdate-tests (Depends-on): Add progname.
6540         * tests/test-getdate.c: Use progname module, to avoid link errors
6541         on non-glibc systems.
6542
6543 2009-01-18  Simon Josefsson  <simon@josefsson.org>
6544
6545         * modules/filenamecat-tests (Depends-on): Add progname.
6546         * modules/fstrcmp-tests (Depends-on): Likewise.
6547
6548         * tests/test-filenamecat.c: Use progname module, to avoid link
6549         errors on non-glibc systems.
6550         * tests/test-fstrcmp.c: Likewise.
6551
6552 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
6553
6554         gettimeofday: avoid warning: nested extern declaration of 'localtime'
6555         * lib/gettimeofday.c: Move extern declaration out of function.
6556
6557 2009-01-18  Bruno Haible  <bruno@clisp.org>
6558
6559         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mblen and mbrlen.
6560         * lib/strftime.c (HAVE_MBLEN, HAVE_MBRLEN): Remove macros.
6561         (MULTIBYTE_IS_FORMAT_SAFE): Define to 1 on all platforms except OSF/1.
6562
6563 2009-01-18  Bruno Haible  <bruno@clisp.org>
6564
6565         * lib/strftime.c (MEMPCPY): Remove unused macro.
6566         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mempcpy.
6567
6568 2009-01-18  Martin Lambers  <marlam@marlam.de>
6569
6570         New module 'link'.
6571         * lib/unistd.in.h (link): New declaration.
6572         * lib/link.c: New file.
6573         * m4/link.m4: New file.
6574         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_LINK,
6575         HAVE_LINK.
6576         * modules/unistd (Makefile.am): Substitute GNULIB_LINK, HAVE_LINK.
6577         * modules/link: New file.
6578         * doc/posix-functions/link.texi: Mention the new module.
6579
6580 2009-01-18  Bruno Haible  <bruno@clisp.org>
6581
6582         * tests/test-avltree_list.c (main): Call set_program_name.
6583         * tests/test-avltree_oset.c (main): Likewise.
6584         * tests/test-obstack-printf.c: Include progname.h.
6585         (main): Call set_program_name.
6586         * tests/test-quotearg.c: Include progname.h.
6587         (main): Call set_program_name.
6588         * tests/test-xmemdup0.c: Include progname.h.
6589         (main): Call set_program_name.
6590
6591 2009-01-18  Bruno Haible  <bruno@clisp.org>
6592
6593         New module 'alphasort'.
6594         * lib/dirent.in.h (alphasort): New declaration.
6595         * lib/alphasort.c: New file, from glibc with modifications.
6596         * m4/alphasort.m4: New file.
6597         * modules/alphasort: New file.
6598         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_ALPHASORT,
6599         HAVE_ALPHASORT.
6600         * modules/dirent (Makefile.am): Substitute GNULIB_ALPHASORT,
6601         HAVE_ALPHASORT.
6602         * doc/posix-functions/alphasort.texi: Mention the new module and the
6603         portability problems.
6604
6605 2009-01-18  Bruno Haible  <bruno@clisp.org>
6606
6607         New module 'scandir'.
6608         * lib/dirent.in.h (scandir): New declaration.
6609         * lib/scandir.c: New file, from glibc with modifications.
6610         * m4/scandir.m4: New file.
6611         * modules/scandir: New file.
6612         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_SCANDIR,
6613         HAVE_SCANDIR.
6614         * modules/dirent (Makefile.am): Substitute GNULIB_SCANDIR,
6615         HAVE_SCANDIR.
6616         * doc/posix-functions/scandir.texi: Mention the new module and the
6617         portability problems.
6618
6619 2009-01-17  Bruno Haible  <bruno@clisp.org>
6620
6621         * gnulib-tool (func_remove_prefix): Escape all dots in the prefix.
6622         Update documentation.
6623         (func_remove_suffix): Escape all dots in the suffix. Update
6624         documentation.
6625         (func_filter_filelist): Update documentation.
6626         Reported by Ralf Wildenhues.
6627
6628 2009-01-17  Bruno Haible  <bruno@clisp.org>
6629
6630         * modules/dprintf-posix-tests: New file.
6631         * tests/test-dprintf-posix.sh: New file.
6632         * tests/test-dprintf-posix.c: New file.
6633
6634         New modules 'dprintf', 'dprintf-posix'.
6635         * lib/stdio.in.h (dprintf): New declaration.
6636         * lib/dprintf.c: New file.
6637         * m4/dprintf.m4: New file.
6638         * m4/dprintf-posix.m4: New file.
6639         * modules/dprintf: New file.
6640         * modules/dprintf-posix: New file.
6641         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_DPRINTF,
6642         HAVE_DPRINTF, REPLACE_DPRINTF.
6643         * modules/stdio (Makefile.am): Substitute also GNULIB_DPRINTF,
6644         HAVE_DPRINTF, REPLACE_DPRINTF.
6645         * doc/posix-functions/dprintf.texi: Mention the new modules.
6646
6647 2009-01-17  Bruno Haible  <bruno@clisp.org>
6648
6649         * modules/vdprintf-posix-tests: New file.
6650         * tests/test-vdprintf-posix.sh: New file.
6651         * tests/test-vdprintf-posix.c: New file.
6652
6653         New modules 'vdprintf', 'vdprintf-posix'.
6654         * lib/stdio.in.h (vdprintf): New declaration.
6655         * lib/vdprintf.c: New file.
6656         * m4/vdprintf.m4: New file.
6657         * m4/vdprintf-posix.m4: New file.
6658         * modules/vdprintf: New file.
6659         * modules/vdprintf-posix: New file.
6660         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_VDPRINTF,
6661         HAVE_VDPRINTF, REPLACE_VDPRINTF.
6662         * modules/stdio (Makefile.am): Substitute also GNULIB_VDPRINTF,
6663         HAVE_VDPRINTF, REPLACE_VDPRINTF.
6664         * doc/posix-functions/vdprintf.texi: Mention the new modules.
6665
6666 2009-01-17  Bruno Haible  <bruno@clisp.org>
6667
6668         Fix replacement of fopen on mingw.
6669         * m4/fopen.m4 (gl_FUNC_FOPEN): Define FOPEN_TRAILING_SLASH_BUG also on
6670         mingw.
6671
6672 2009-01-17  Bruno Haible  <bruno@clisp.org>
6673
6674         Fix compilation error on HP-UX 11.00, present since 2008-09-24.
6675         * lib/fopen.c: Include <sys/types.h> and <sys/types.h>.
6676
6677 2009-01-17  Bruno Haible  <bruno@clisp.org>
6678
6679         Avoid test-fflush2.sh failure on mingw.
6680         * tests/test-fflush2.c: Include binary-io.h.
6681         (main): Put standard input into binary mode.
6682         * modules/fflush-tests (Depends-on): Add binary-io.
6683
6684 2009-01-17  Bruno Haible  <bruno@clisp.org>
6685
6686         * lib/wchar.in.h: In another particular situation, include only the
6687         system's <wchar.h> file.
6688         (_GL_ALREADY_INCLUDING_WCHAR_H): New macro.
6689         Reported by Albert Chin-A-Young <china@thewrittenword.com>
6690         and Thomas Guyot-Sionnest <dermoth@aei.ca>.
6691
6692 2009-01-17  Bruno Haible  <bruno@clisp.org>
6693
6694         Support for stripping executables in --enable-relocatable.
6695         * build-aux/install-reloc: Expect one more argument, or an environment
6696         variable RELOC_STRIP_PROG. If set, strip the destination program and
6697         its wrapper.
6698         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV, set
6699         RELOC_STRIP_PROG.
6700         * doc/relocatable-maint.texi (Supporting Relocation): Mention the need
6701         to set RELOCATABLE_STRIP.
6702         * NEWS: Mention the new Makefile requirement.
6703
6704 2009-01-17  Bruno Haible  <bruno@clisp.org>
6705
6706         * build-aux/install-reloc: Remove debugging information left over by
6707         C compiler on MacOS X.
6708
6709 2009-01-17  Bruno Haible  <bruno@clisp.org>
6710
6711         Update use of _NSGetExecutablePath after API change in MacOS X 10.4.
6712         * lib/progreloc.c (find_executable): Fix type of pointer passed to
6713         _NSGetExecutablePath.
6714
6715 2009-01-16  Jim Meyering  <meyering@redhat.com>
6716
6717         strerror: avoid warnings about discarding "const"
6718         * lib/strerror.c (rpl_strerror): Instead of returning a const
6719         string from each and every "case", use a variable, and add a single
6720         cast after the switch.
6721
6722 2009-01-16  Albert Chin-A-Young <china@thewrittenword.com>
6723
6724         * lib/arpa_inet.in.h: Add extern "C" block for C++.
6725
6726 2009-01-16  Bruno Haible  <bruno@clisp.org>
6727
6728         * m4/printf.m4 (gl_SNPRINTF_SIZE1, gl_VSNPRINTF_ZEROSIZE_C99): Use an
6729         array initializer syntax that also works in C++ mode.
6730         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6731
6732 2009-01-16  Jim Meyering  <meyering@redhat.com>
6733
6734         poll: suppress a warning
6735         * lib/poll.c: Use #pragma GCC diagnostic ignored "-Wtype-limits"
6736         to ignore "...unsigned expression < 0 is always false" warnings.
6737
6738 2009-01-16  Daniel P. Berrange  <berrange@redhat.com>
6739
6740         poll: remove declarations of unused variables
6741         * lib/poll.c (poll) [WIN32_NATIVE]: Remove declarations of unused
6742         sockbuf and optlen.
6743
6744 2009-01-15  Bruno Haible  <bruno@clisp.org>
6745
6746         Make fflush-after-ungetc POSIX compliant on BSD systems.
6747         * lib/fflush.c (clear_ungetc_buffer_preserving_position): New function.
6748         (clear_ungetc_buffer): Implement also for other systems.
6749         (rpl_fflush): On glibc systems, invoke
6750         clear_ungetc_buffer_preserving_position. Otherwise, invoke
6751         clear_ungetc_buffer after fetching the stream's position, not before.
6752
6753 2009-01-15  Bruno Haible  <bruno@clisp.org>
6754
6755         Make fflush-after-ungetc POSIX compliant on glibc systems.
6756         * m4/fflush.m4 (gl_FUNC_FFLUSH): Test also the behaviour of fflush
6757         after ungetc.
6758         * lib/fflush.c (clear_ungetc_buffer): Implement for glibc systems.
6759         (rpl_fflush): On glibc systems, simply call the system's fflush
6760         function after clearing the ungetc buffer.
6761         * lib/fseeko.c (rpl_fseeko): Don't try to lseek past the end of file.
6762         Instead, lseek only to the end of file, then use the system's fseeko
6763         for the rest. On glibc systems, reset the EOF indicator bit.
6764
6765 2009-01-15  Jim Meyering  <meyering@redhat.com>
6766
6767         openmp.m4: revert quote-adding change, for portability to older autoconf
6768         * m4/openmp.m4: Remove the quotes added on 2009-01-14.
6769         This reverts part of 42d1eda5dcce2d68deab7a642e7f29bcd7144a0d.
6770         Simon Josefsson noticed the problem when using autoconf-2.61.
6771
6772 2009-01-15  Bruno Haible  <bruno@clisp.org>
6773
6774         * tests/test-fflush2.sh: Invoke test-fflush2 twice.
6775         * tests/test-fflush2.c (ASSERT): Always fail.
6776         (main): Add two tests for fflush() after ungetc(), taking into account
6777         the Austin Group's clarification.
6778         Suggested by Eric Blake.
6779
6780 2009-01-15  Albert Chin-A-Young  <china@thewrittenword.com>
6781
6782         mktime.m4: remove K&R-style function prototypes
6783         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove K&R-style function prototypes
6784         for the Sun C++ compiler.
6785
6786 2009-01-14  Bruno Haible  <bruno@clisp.org>
6787
6788         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_WCHAR_H): New macro, defined
6789         while including <wchar.h>.
6790         * lib/wchar.in.h: In two particular situations on HP-UX, include only
6791         the system's <wchar.h> file.
6792         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6793
6794 2009-01-14  Bruno Haible  <bruno@clisp.org>
6795
6796         * m4/csharp.m4: Don't mention gettext on the serial number line.
6797         * m4/csharpexec.m4: Likewise.
6798         * m4/eaccess.m4: Likewise.
6799         * m4/javaexec.m4: Likewise.
6800         * m4/sig_atomic_t.m4: Likewise.
6801         * m4/tmpdir.m4: Likewise.
6802         * m4/intldir.m4: Bump gettext version.
6803         * m4/lib-ld.m4: Likewise.
6804
6805 2009-01-14  Bruno Haible  <bruno@clisp.org>
6806
6807         * lib/progname.c (set_program_name): Add more comments.
6808         Reported by Sergey Poznyakoff <gray@gnu.org.ua>.
6809
6810 2009-01-14  Simon Josefsson  <simon@josefsson.org>
6811
6812         * lib/sys_stat.in.h: Include sys/types.h for nlink_t on systems
6813         were sys/stat.h does not define it.
6814
6815 2009-01-14  Jim Meyering  <meyering@redhat.com>
6816
6817         many *.m4 files: improve m4 quoting
6818         99% of this change was performed by running the following commands:
6819         git ls-files | grep '\.m4$' | xargs perl -pi \
6820           -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \
6821           -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
6822           -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
6823           -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g'
6824         perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4
6825         The remainder were to add Copyright dates, increment serial numbers,
6826         undo some changes in comments, exclude m4/intl.m4, and add quotes
6827         around the "1" in ",1" where the unusual spacing prohibited the
6828         above regexps from doing the job.  For more details, see
6829         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
6830         * m4/acl.m4: Modified.
6831         * m4/afs.m4: Likewise.
6832         * m4/alloca.m4: Likewise.
6833         * m4/argp.m4: Likewise.
6834         * m4/argz.m4: Likewise.
6835         * m4/atexit.m4: Likewise.
6836         * m4/bison-i18n.m4: Likewise.
6837         * m4/bison.m4: Likewise.
6838         * m4/byteswap.m4: Likewise.
6839         * m4/c-stack.m4: Likewise.
6840         * m4/c-strtod.m4: Likewise.
6841         * m4/calloc.m4: Likewise.
6842         * m4/canonicalize-lgpl.m4: Likewise.
6843         * m4/chown.m4: Likewise.
6844         * m4/clock_time.m4: Likewise.
6845         * m4/codeset.m4: Likewise.
6846         * m4/copy-file.m4: Likewise.
6847         * m4/csharp.m4: Likewise.
6848         * m4/csharpcomp.m4: Likewise.
6849         * m4/csharpexec.m4: Likewise.
6850         * m4/d-ino.m4: Likewise.
6851         * m4/d-type.m4: Likewise.
6852         * m4/dirfd.m4: Likewise.
6853         * m4/double-slash-root.m4: Likewise.
6854         * m4/eaccess.m4: Likewise.
6855         * m4/eealloc.m4: Likewise.
6856         * m4/environ.m4: Likewise.
6857         * m4/errno_h.m4: Likewise.
6858         * m4/euidaccess.m4: Likewise.
6859         * m4/execute.m4: Likewise.
6860         * m4/fatal-signal.m4: Likewise.
6861         * m4/fchdir.m4: Likewise.
6862         * m4/fcntl_h.m4: Likewise.
6863         * m4/fileblocks.m4: Likewise.
6864         * m4/filenamecat.m4: Likewise.
6865         * m4/findprog.m4: Likewise.
6866         * m4/flexmember.m4: Likewise.
6867         * m4/fnmatch.m4: Likewise.
6868         * m4/fopen.m4: Likewise.
6869         * m4/fpending.m4: Likewise.
6870         * m4/fprintf-posix.m4: Likewise.
6871         * m4/free.m4: Likewise.
6872         * m4/frexp.m4: Likewise.
6873         * m4/frexpl.m4: Likewise.
6874         * m4/fsusage.m4: Likewise.
6875         * m4/ftruncate.m4: Likewise.
6876         * m4/gc-camellia.m4: Likewise.
6877         * m4/gc-random.m4: Likewise.
6878         * m4/gc.m4: Likewise.
6879         * m4/getaddrinfo.m4: Likewise.
6880         * m4/getcwd-abort-bug.m4: Likewise.
6881         * m4/getcwd-path-max.m4: Likewise.
6882         * m4/getdate.m4: Likewise.
6883         * m4/getdomainname.m4: Likewise.
6884         * m4/getgroups.m4: Likewise.
6885         * m4/gethostname.m4: Likewise.
6886         * m4/gethrxtime.m4: Likewise.
6887         * m4/getline.m4: Likewise.
6888         * m4/getloadavg.m4: Likewise.
6889         * m4/getndelim2.m4: Likewise.
6890         * m4/getpass.m4: Likewise.
6891         * m4/gettext.m4: Likewise.
6892         * m4/gettime.m4: Likewise.
6893         * m4/gettimeofday.m4: Likewise.
6894         * m4/gnulib-common.m4: Likewise.
6895         * m4/group-member.m4: Likewise.
6896         * m4/host-os.m4: Likewise.
6897         * m4/iconv.m4: Likewise.
6898         * m4/iconv_open.m4: Likewise.
6899         * m4/inet_ntop.m4: Likewise.
6900         * m4/inet_pton.m4: Likewise.
6901         * m4/inline.m4: Likewise.
6902         * m4/intldir.m4: Likewise.
6903         * m4/intlmacosx.m4: Likewise.
6904         * m4/intmax.m4: Likewise.
6905         * m4/intmax_t.m4: Likewise.
6906         * m4/inttypes.m4: Likewise.
6907         * m4/inttypes_h.m4: Likewise.
6908         * m4/inttypes-pri.m4: Likewise.
6909         * m4/isapipe.m4: Likewise.
6910         * m4/isnand.m4: Likewise.
6911         * m4/isnanf.m4: Likewise.
6912         * m4/isnanl.m4: Likewise.
6913         * m4/javacomp.m4: Likewise.
6914         * m4/javaexec.m4: Likewise.
6915         * m4/jm-winsz1.m4: Likewise.
6916         * m4/jm-winsz2.m4: Likewise.
6917         * m4/lchown.m4: Likewise.
6918         * m4/lcmessage.m4: Likewise.
6919         * m4/ldexpl.m4: Likewise.
6920         * m4/lib-ld.m4: Likewise.
6921         * m4/lib-link.m4: Likewise.
6922         * m4/libsigsegv.m4: Likewise.
6923         * m4/link-follow.m4: Likewise.
6924         * m4/localcharset.m4: Likewise.
6925         * m4/locale-fr.m4: Likewise.
6926         * m4/locale-ja.m4: Likewise.
6927         * m4/locale-tr.m4: Likewise.
6928         * m4/locale-zh.m4: Likewise.
6929         * m4/lock.m4: Likewise.
6930         * m4/longlong.m4: Likewise.
6931         * m4/ls-mntd-fs.m4: Likewise.
6932         * m4/lstat.m4: Likewise.
6933         * m4/malloc.m4: Likewise.
6934         * m4/mathl.m4: Likewise.
6935         * m4/mbrtowc.m4: Likewise.
6936         * m4/mbstate_t.m4: Likewise.
6937         * m4/mbswidth.m4: Likewise.
6938         * m4/memchr.m4: Likewise.
6939         * m4/memcmp.m4: Likewise.
6940         * m4/memcpy.m4: Likewise.
6941         * m4/memmem.m4: Likewise.
6942         * m4/memmove.m4: Likewise.
6943         * m4/mempcpy.m4: Likewise.
6944         * m4/memrchr.m4: Likewise.
6945         * m4/memset.m4: Likewise.
6946         * m4/minmax.m4: Likewise.
6947         * m4/mkdir-slash.m4: Likewise.
6948         * m4/mkdtemp.m4: Likewise.
6949         * m4/mktime.m4: Likewise.
6950         * m4/mmap-anon.m4: Likewise.
6951         * m4/mountlist.m4: Likewise.
6952         * m4/nanosleep.m4: Likewise.
6953         * m4/nls.m4: Likewise.
6954         * m4/nocrash.m4: Likewise.
6955         * m4/open.m4: Likewise.
6956         * m4/openat.m4: Likewise.
6957         * m4/openmp.m4: Likewise.
6958         * m4/pathmax.m4: Likewise.
6959         * m4/perl.m4: Likewise.
6960         * m4/physmem.m4: Likewise.
6961         * m4/pipe.m4: Likewise.
6962         * m4/po.m4: Likewise.
6963         * m4/poll.m4: Likewise.
6964         * m4/posixtm.m4: Likewise.
6965         * m4/posixver.m4: Likewise.
6966         * m4/printf-frexp.m4: Likewise.
6967         * m4/printf-frexpl.m4: Likewise.
6968         * m4/printf-posix.m4: Likewise.
6969         * m4/printf-posix-rpl.m4: Likewise.
6970         * m4/printf.m4: Likewise.
6971         * m4/progtest.m4: Likewise.
6972         * m4/putenv.m4: Likewise.
6973         * m4/readline.m4: Likewise.
6974         * m4/readlink.m4: Likewise.
6975         * m4/readutmp.m4: Likewise.
6976         * m4/realloc.m4: Likewise.
6977         * m4/regex.m4: Likewise.
6978         * m4/relocatable.m4: Likewise.
6979         * m4/relocatable-lib.m4: Likewise.
6980         * m4/rename-dest-slash.m4: Likewise.
6981         * m4/rename.m4: Likewise.
6982         * m4/rmdir-errno.m4: Likewise.
6983         * m4/rmdir.m4: Likewise.
6984         * m4/roundf.m4: Likewise.
6985         * m4/roundl.m4: Likewise.
6986         * m4/rpmatch.m4: Likewise.
6987         * m4/save-cwd.m4: Likewise.
6988         * m4/selinux-selinux-h.m4: Likewise.
6989         * m4/setenv.m4: Likewise.
6990         * m4/settime.m4: Likewise.
6991         * m4/sig2str.m4: Likewise.
6992         * m4/sig_atomic_t.m4: Likewise.
6993         * m4/signalblocking.m4: Likewise.
6994         * m4/signbit.m4: Likewise.
6995         * m4/sigpipe.m4: Likewise.
6996         * m4/sockets.m4: Likewise.
6997         * m4/sockpfaf.m4: Likewise.
6998         * m4/st_dm_mode.m4: Likewise.
6999         * m4/stat-time.m4: Likewise.
7000         * m4/stdbool.m4: Likewise.
7001         * m4/stdint.m4: Likewise.
7002         * m4/stdint_h.m4: Likewise.
7003         * m4/stpcpy.m4: Likewise.
7004         * m4/stpncpy.m4: Likewise.
7005         * m4/strcase.m4: Likewise.
7006         * m4/strchrnul.m4: Likewise.
7007         * m4/strcspn.m4: Likewise.
7008         * m4/strdup.m4: Likewise.
7009         * m4/strftime.m4: Likewise.
7010         * m4/strndup.m4: Likewise.
7011         * m4/strnlen.m4: Likewise.
7012         * m4/strpbrk.m4: Likewise.
7013         * m4/strptime.m4: Likewise.
7014         * m4/strsep.m4: Likewise.
7015         * m4/strtod.m4: Likewise.
7016         * m4/strtoimax.m4: Likewise.
7017         * m4/strtok_r.m4: Likewise.
7018         * m4/strtol.m4: Likewise.
7019         * m4/strtoll.m4: Likewise.
7020         * m4/strtoul.m4: Likewise.
7021         * m4/strtoull.m4: Likewise.
7022         * m4/strtoumax.m4: Likewise.
7023         * m4/strverscmp.m4: Likewise.
7024         * m4/threadlib.m4: Likewise.
7025         * m4/timegm.m4: Likewise.
7026         * m4/tm_gmtoff.m4: Likewise.
7027         * m4/tmpdir.m4: Likewise.
7028         * m4/tmpfile.m4: Likewise.
7029         * m4/tzset.m4: Likewise.
7030         * m4/uintmax_t.m4: Likewise.
7031         * m4/unlinkdir.m4: Likewise.
7032         * m4/unlocked-io.m4: Likewise.
7033         * m4/uptime.m4: Likewise.
7034         * m4/userspec.m4: Likewise.
7035         * m4/utimbuf.m4: Likewise.
7036         * m4/utime.m4: Likewise.
7037         * m4/utimes-null.m4: Likewise.
7038         * m4/utimes.m4: Likewise.
7039         * m4/vararrays.m4: Likewise.
7040         * m4/vasnprintf.m4: Likewise.
7041         * m4/vfprintf-posix.m4: Likewise.
7042         * m4/vprintf-posix.m4: Likewise.
7043         * m4/wait-process.m4: Likewise.
7044         * m4/wchar_t.m4: Likewise.
7045         * m4/wint_t.m4: Likewise.
7046         * m4/write-any-file.m4: Likewise.
7047         * m4/yield.m4: Likewise.
7048
7049 2009-01-13  Bruno Haible  <bruno@clisp.org>
7050
7051         Avoid test-copy-file.sh failures when ACL support insufficient.
7052         * modules/copy-file-tests (Makefile.am): Pass USE_ACL in
7053         TESTS_ENVIRONMENT.
7054         * tests/test-copy-file.sh: Skip the ACL comparisons if USE_ACL is 0.
7055         Reported by Jim Meyering.
7056
7057 2009-01-13  Bruno Haible  <bruno@clisp.org>
7058
7059         * modules/unistdio/u-printf-args (Files): Add m4/stdint_h.m4 and
7060         m4/inttypes_h.m4, needed by m4/intmax_t.m4.
7061         * modules/unistdio/u8-printf-parse (Files): Likewise.
7062         * modules/unistdio/u32-printf-parse (Files): Likewise.
7063         * modules/unistdio/ulc-printf-parse (Files): Likewise.
7064
7065 2009-01-13  Simon Josefsson  <simon@josefsson.org>
7066
7067         * modules/unistdio/u16-printf-parse (Files): Add m4/stdint_h.m4
7068         and m4/inttypes_h.m4 too.
7069
7070 2009-01-12  Eric Blake  <ebb9@byu.net>
7071
7072         tests: IRIX 6.2 cc can't compile -0.0 into .data
7073         * tests/test-ceill.c (minus_zero): Compute -0.0L at runtime,
7074         rather than at compile-time.
7075         * tests/test-floorl.c (minus_zero): Likewise.
7076         * tests/test-frexpl.c (minus_zero): Likewise.
7077         * tests/test-isnan.c (minus_zerol): Likewise.
7078         * tests/test-isnanl.h (minus_zero): Likewise.
7079         * tests/test-ldexpl.c (minus_zero): Likewise.
7080         * tests/test-roundl.c (minus_zero): Likewise.
7081         * tests/test-signbit.c (minus_zerol): Likewise.
7082         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
7083         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
7084         * tests/test-truncl.c (minus_zero): Likewise.
7085         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
7086         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
7087         Reported by Tom G. Christensen and Nelson H. F. Beebe.
7088
7089 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
7090
7091         regex: fix glibc bug 9697
7092         * lib/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET
7093         handling.
7094
7095 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
7096
7097         regex: fix glibc bug 697
7098         * lib/regexec.c (prune_impossible_nodes): Handle sifted_states[0]
7099         being NULL also if there are no backreferences.
7100
7101 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
7102
7103         regex: merge glibc changes
7104         * lib/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc.
7105         * lib/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer,
7106         re_string_skip_chars, re_string_reconstruct): Likewise.
7107         * lib/regex_internal.h [!_LIBC] (__mbrtowc): New #define.
7108
7109 2009-01-07  Jim Meyering  <meyering@redhat.com>
7110
7111         poll: filter through cppi
7112         * lib/poll.c: Indent cpp directives to reflect nesting.
7113
7114 2009-01-07  Daniel P. Berrange  <berrange@redhat.com>
7115
7116         poll: don't return uninitialized
7117         * lib/poll.c (poll) [WIN32_NATIVE]: Initialize "rc".
7118
7119 2009-01-06  Jeremy Olexa <darkside@gentoo.org>  (tiny change)
7120
7121         avoid compile failure on AIX 6.1
7122         * lib/getloadavg.c [HAVE_LIBPERFSTAT]: Include <sys/protosw.h>.
7123         Details in http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/15465
7124
7125 2009-01-04  Jim Meyering  <meyering@redhat.com>
7126
7127         remove duplicate inclusion of <stdio.h>
7128         * tests/test-fprintf-posix.c: Likewise.
7129         * tests/test-printf-posix.c: Likewise.
7130         * tests/test-snprintf-posix.c: Likewise.
7131         * tests/test-sprintf-posix.c: Likewise.
7132         * tests/test-vasprintf-posix.c: Likewise.
7133         * tests/test-vfprintf-posix.c: Likewise.
7134         * tests/test-vprintf-posix.c: Likewise.
7135         * tests/test-vsnprintf-posix.c: Likewise.
7136         * tests/test-vsprintf-posix.c: Likewise.
7137
7138 2009-01-03  Jim Meyering  <meyering@redhat.com>
7139
7140         gnulib-tool: fix sed-based filtering
7141         * gnulib-tool (func_filter_filelist): Remove extra backslash
7142         in sed_fff_filter definition.
7143
7144 2009-01-02  Jim Meyering  <meyering@redhat.com>
7145
7146         strftime: avoid compilation failure on Solaris 2.6
7147         * modules/strftime (Depends-on): Add mbrlen and mbsinit.
7148         * lib/strftime.c [DO_MULTIBYTE]: Include <wchar.h> unconditionally.
7149         Don't #define mbrlen or mbsinit, since now they're guaranteed to
7150         be available.  Reported by Tom G. Christensen.  Details in
7151         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16180>.
7152
7153 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7154             Bruno Haible  <bruno@clisp.org>
7155
7156         Speed up gnulib-tool by doing more string processing through shell
7157         built-ins.
7158         * gnulib-tool (fast_func_append): New variable.
7159         (func_remove_prefix, func_remove_suffix): New functions.
7160         (fast_func_remove_prefix, fast_func_remove_suffix): New variables.
7161         (func_filter_filelist): New function.
7162         (func_get_dependencies): Use func_remove_suffix instead of sed.
7163         (func_get_automake_snippet): Use func_filter_filelist instead of a
7164         subshell and sed invocation.
7165
7166 2009-01-01  Bruno Haible  <bruno@clisp.org>
7167
7168         Fix a security bug.
7169         * gnulib-tool (func_import, import, update): Don't allow the characters
7170         '"', '$', '`', '\' in macro arguments that become part of commands that
7171         are evaluated.
7172
7173 2009-01-01  Bruno Haible  <bruno@clisp.org>
7174
7175         * gnulib-tool (func_reset_sigpipe): Add more comments.
7176
7177 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7178
7179         * gnulib-tool (func_modules_add_dummy, func_emit_lib_Makefile_am,
7180         func_emit_tests_Makefile_am, func_import): Abort loops early if we
7181         already know the answer.
7182
7183 2009-01-01  Jim Meyering  <meyering@redhat.com>
7184
7185         * lib/version-etc.c (version_etc_va): Update copyright year.
7186
7187 2008-12-30  Bruno Haible  <bruno@clisp.org>
7188
7189         * m4/lib-prefix.m4 (AC_LIB_LINKFLAGS_BODY): Don't overwrite
7190         LIB${NAME}_PREFIX when considering the dependencies of lib${name}.
7191         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
7192
7193 2008-12-29  Eric Blake  <ebb9@byu.net>
7194
7195         multiarch: avoid autoconf AC_REQUIRE bug
7196         * m4/multiarch.m4 (gl_MULTIARCH): Split body...
7197         (gl_MULTIARCH_BODY): ...into new macro, to work around bug in Autoconf
7198         2.63 and older.
7199         Reported by Bruno Haible, and analyzed in
7200         http://lists.gnu.org/archive/html/bug-autoconf/2008-12/msg00039.html
7201
7202 2008-12-29  Bruno Haible  <bruno@clisp.org>
7203
7204         * gnulib-tool (func_import): When generating sed-ignore-removed, handle
7205         files in subdirectories correctly.
7206         Reported by Ralf Wildenhues.
7207
7208 2008-12-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7209
7210         * gnulib-tool (func_update_ignorelist): Use 'join - FILE'
7211         rather than 'join FILE -', for Solaris join.
7212
7213 2008-12-29  Bruno Haible  <bruno@clisp.org>
7214
7215         * m4/codeset.m4 (AM_LANGINFO_CODESET): More systematic m4 argument
7216         quoting.
7217         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
7218         * m4/glibc2.m4 (gt_GLIBC2): Likewise.
7219         * m4/glibc21.m4 (gl_GLIBC21): Likewise.
7220         * m4/iconv.m4 (AM_ICONV_LINK, AM_ICONV): Likewise.
7221         * m4/intdiv0.m4 (gt_INTDIV0): Likewise.
7222         * m4/intlmacosx.m4 (gt_INTL_MACOSX): Likewise.
7223         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Likewise.
7224         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Likewise.
7225         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
7226         * m4/lcmessage.m4 (gt_LC_MESSAGES): Likewise.
7227         * m4/nls.m4 (AM_NLS): Likewise.
7228         * m4/po.m4 (AM_PO_SUBDIRS): Likewise.
7229         * m4/printf-posix.m4 (gt_PRINTF_POSIX): Likewise.
7230         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
7231         * m4/size_max.m4 (gl_SIZE_MAX): Likewise.
7232         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Likewise.
7233         * m4/threadlib.m4 (gl_THREADLIB_BODY): Likewise.
7234         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Likewise.
7235         * m4/visibility.m4 (gl_VISIBILITY): Likewise.
7236         * m4/wchar_t.m4 (gt_TYPE_WCHAR_T): Likewise.
7237         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
7238         * m4/xsize.m4 (gl_XSIZE): Likewise.
7239         Suggested by Jim Meyering.
7240
7241 2008-11-17  Bruce Korb  <bkorb@gnu.org>
7242
7243         * lib/parse-duration.h: non-iso form accepts years, months weeks, too
7244         * lib/parse-duration.c: use a switch instead of cascading if's.
7245
7246 2008-12-29  Eric Blake  <ebb9@byu.net>
7247
7248         wchar.h: supply WEOF on Irix 5.3
7249         * lib/wchar.in.h (wint_t): Also supply WEOF.
7250         * lib/wctype.in.h (wint_t): Likewise.
7251         * doc/posix-headers/wchar.texi (wchar.h): Document the bug.
7252         * doc/posix-headers/wctype.texi (wctype.h): Likewise.
7253         Reported by Tom G. Christensen.
7254
7255 2008-12-26  Bruno Haible  <bruno@clisp.org>
7256
7257         * m4/multiarch.m4 (gl_MULTIARCH): Recognize also the architecture names
7258         i486, i586, i686.
7259
7260 2008-12-26  Bruno Haible  <bruno@clisp.org>
7261
7262         * lib/stdlib.in.h (struct random_data): Fix indentation of comments.
7263
7264 2008-12-26  Bruno Haible  <bruno@clisp.org>
7265
7266         * lib/stdint.in.h: Move the include of <wchar.h> down until after all
7267         the types are defined. Also conditionalize it on __STDC_LIMIT_MACROS,
7268         not __STDC_CONSTANT_MACROS.
7269         Reported by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
7270
7271 2008-12-25  Bruno Haible  <bruno@clisp.org>
7272
7273         Add support for universal builds to vasnprintf.
7274         * m4/printf.m4 (gl_PRINTF_ENOMEM): Require gl_MULTIARCH. In Apple
7275         universal builds, guess no.
7276         * modules/vasnprintf-posix (Depends-on): Add multiarch.
7277         * modules/vasprintf-posix (Depends-on): Likewise.
7278         * modules/fprintf-posix (Depends-on): Likewise.
7279         * modules/vfprintf-posix (Depends-on): Likewise.
7280         * modules/snprintf-posix (Depends-on): Likewise.
7281         * modules/vsnprintf-posix (Depends-on): Likewise.
7282         * modules/sprintf-posix (Depends-on): Likewise.
7283         * modules/vsprintf-posix (Depends-on): Likewise.
7284         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
7285         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
7286         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
7287         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
7288         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
7289         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
7290         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
7291
7292         Add support for universal builds to <inttypes.h>.
7293         * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX,
7294         _SCNu64_PREFIX): In Apple
7295         universal builds, define directly, using _LP64.
7296         * m4/inttypes.m4 (gl_INTTYPES_H): In Apple universal builds, set
7297         INT64_MAX_EQ_LONG_MAX and UINT64_MAX_EQ_ULONG_MAX to -1.
7298         * modules/inttypes (Depends-on): Add multiarch.
7299         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
7300
7301         Add support for universal builds to <stdint.h>.
7302         * lib/stdint.in.h (PDFDIFF_MIN, PTRDIFF_MAX, SIZE_MAX): In Apple
7303         universal builds, define directly, using _LP64.
7304         * m4/stdint.m4 (gl_STDINT_TYPE_PROPERTIES): Require gl_MULTIARCH. In
7305         Apple universal builds, don't test for the size and suffix of ptrdiff_t
7306         and size_t.
7307         * modules/stdint (Depends-on): Add multiarch.
7308         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
7309
7310         New module 'multiarch'.
7311         * modules/multiarch: New file.
7312         * m4/multiarch.m4: New file.
7313
7314 2008-12-25  Bruno Haible  <bruno@clisp.org>
7315
7316         * gnulib-tool (func_create_testdir): Avoid failure of mv command.
7317
7318 2008-12-25  Bruno Haible  <bruno@clisp.org>
7319
7320         * modules/btowc (License): Relicense under LGPLv2+.
7321         * modules/mbsinit (License): Likewise.
7322         * modules/mbrtowc (License): Likewise.
7323         * modules/wcrtomb (License): Likewise.
7324         * modules/streq (License): Likewise.
7325         Reported by David Lutterkort <lutter@redhat.com>.
7326
7327 2008-12-23  Bruno Haible  <bruno@clisp.org>
7328
7329         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Fix conditional and comment.
7330
7331 2008-12-23  Bruno Haible  <bruno@clisp.org>
7332
7333         Module getaddrinfo requires linking with $(GETADDRINFO_LIB).
7334         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Put link options into
7335         GETADDRINFO_LIB, not in LIBS.
7336         * modules/getaddrinfo (Link): Set to $(GETADDRINFO_LIB).
7337         * modules/canon-host (Link): Likewise.
7338         * NEWS: Mention the change.
7339         * modules/getaddrinfo-tests (test_getaddrinfo_LDADD): Add the
7340         GETADDRINFO_LIB.
7341
7342 2008-12-22  Bruno Haible  <bruno@clisp.org>
7343
7344         * doc/posix-functions/iswalnum_l.texi: Mention limitation of wchar_t.
7345         * doc/posix-functions/iswalpha_l.texi: Likewise.
7346         * doc/posix-functions/iswblank_l.texi: Likewise.
7347         * doc/posix-functions/iswcntrl_l.texi: Likewise.
7348         * doc/posix-functions/iswctype_l.texi: Likewise.
7349         * doc/posix-functions/iswdigit_l.texi: Likewise.
7350         * doc/posix-functions/iswgraph_l.texi: Likewise.
7351         * doc/posix-functions/iswlower_l.texi: Likewise.
7352         * doc/posix-functions/iswprint_l.texi: Likewise.
7353         * doc/posix-functions/iswpunct_l.texi: Likewise.
7354         * doc/posix-functions/iswspace_l.texi: Likewise.
7355         * doc/posix-functions/iswupper_l.texi: Likewise.
7356         * doc/posix-functions/iswxdigit_l.texi: Likewise.
7357         * doc/posix-functions/mbsnrtowcs.texi: Likewise.
7358         * doc/posix-functions/open_wmemstream.texi: Likewise.
7359         * doc/posix-functions/swscanf.texi: Likewise.
7360         * doc/posix-functions/towctrans_l.texi: Likewise.
7361         * doc/posix-functions/towlower.texi: Likewise.
7362         * doc/posix-functions/towlower_l.texi: Likewise.
7363         * doc/posix-functions/towupper.texi: Likewise.
7364         * doc/posix-functions/towupper_l.texi: Likewise.
7365         * doc/posix-functions/vfwprintf.texi: Likewise.
7366         * doc/posix-functions/vfwscanf.texi: Likewise.
7367         * doc/posix-functions/vswscanf.texi: Likewise.
7368         * doc/posix-functions/vwprintf.texi: Likewise.
7369         * doc/posix-functions/vwscanf.texi: Likewise.
7370         * doc/posix-functions/wcpcpy.texi: Likewise.
7371         * doc/posix-functions/wcpncpy.texi: Likewise.
7372         * doc/posix-functions/wcscasecmp.texi: Likewise.
7373         * doc/posix-functions/wcscasecmp_l.texi: Likewise.
7374         * doc/posix-functions/wcscoll_l.texi: Likewise.
7375         * doc/posix-functions/wcsdup.texi: Likewise.
7376         * doc/posix-functions/wcsncasecmp.texi: Likewise.
7377         * doc/posix-functions/wcsncasecmp_l.texi: Likewise.
7378         * doc/posix-functions/wcsnlen.texi: Likewise.
7379         * doc/posix-functions/wcsnrtombs.texi: Likewise.
7380         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
7381         * doc/posix-functions/wctrans_l.texi: Likewise.
7382         * doc/posix-functions/wctype_l.texi: Likewise.
7383         * doc/glibc-functions/fgetwc_unlocked.texi: Likewise.
7384         * doc/glibc-functions/fgetws_unlocked.texi: Likewise.
7385         * doc/glibc-functions/fputwc_unlocked.texi: Likewise.
7386         * doc/glibc-functions/fputws_unlocked.texi: Likewise.
7387         * doc/glibc-functions/getwc_unlocked.texi: Likewise.
7388         * doc/glibc-functions/getwchar_unlocked.texi: Likewise.
7389         * doc/glibc-functions/putwc_unlocked.texi: Likewise.
7390         * doc/glibc-functions/putwchar_unlocked.texi: Likewise.
7391         * doc/glibc-functions/wcschrnul.texi: Likewise.
7392         * doc/glibc-functions/wcsftime_l.texi: Likewise.
7393         * doc/glibc-functions/wcstod_l.texi: Likewise.
7394         * doc/glibc-functions/wcstof_l.texi: Likewise.
7395         * doc/glibc-functions/wcstol_l.texi: Likewise.
7396         * doc/glibc-functions/wcstold_l.texi: Likewise.
7397         * doc/glibc-functions/wcstoll_l.texi: Likewise.
7398         * doc/glibc-functions/wcstoq.texi: Likewise.
7399         * doc/glibc-functions/wcstoul_l.texi: Likewise.
7400         * doc/glibc-functions/wcstoull_l.texi: Likewise.
7401         * doc/glibc-functions/wcstouq.texi: Likewise.
7402         * doc/glibc-functions/wmempcpy.texi: Likewise.
7403
7404 2008-12-22  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
7405             Eric Blake  <ebb9@byu.net>
7406             Paolo Bonzini  <bonzini@gnu.org>
7407             Bruno Haible  <bruno@clisp.org>
7408
7409         Make c-stack work on Haiku.
7410         * lib/c-stack.c (SA_ONSTACK): Define fallback.
7411         (c_stack_action): Use SA_ONSTACK flag.
7412
7413 2008-12-22  Bruno Haible  <bruno@clisp.org>
7414
7415         * m4/locale-fr.m4 (gt_LOCALE_FR_UTF8): Treat Haiku like BeOS.
7416
7417 2008-12-22  Bruno Haible  <bruno@clisp.org>
7418
7419         Work around mbrlen() bugs on AIX, HP-UX, OSF/1, Solaris.
7420         * m4/mbrlen.m4 (gl_FUNC_MBRLEN): Set REPLACE_MBRLEN if mbrtowc is
7421         being overridden.
7422         (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL):
7423         New macros.
7424         * lib/wchar.in.h (mbrlen): Override if REPLACE_MBRLEN is set.
7425         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBRLEN.
7426         * modules/wchar (Makefile.am): Substitute REPLACE_MBRLEN.
7427         * doc/posix-functions/mbrlen.texi: Mention the various platform bugs.
7428
7429 2008-12-22  Bruno Haible  <bruno@clisp.org>
7430
7431         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE): Remove unused variable
7432         from test code.
7433
7434 2008-12-22  Eric Blake  <ebb9@byu.net>
7435
7436         Avoid gcc warnings on cygwin.
7437         * lib/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]:
7438         Avoid unused variable.
7439         * lib/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]:
7440         Likewise.
7441
7442 2008-12-22  Bruno Haible  <bruno@clisp.org>
7443
7444         Remove HAVE_MBRTOWC conditionals.
7445         * lib/mbscasecmp.c: Include mbuiter.h unconditionally.
7446         (mbscasecmp): Assume mbrtowc function.
7447         * lib/mbscasestr.c: Include mbuiter.h unconditionally.
7448         (knuth_morris_pratt_multibyte, mbscasestr): Assume mbrtowc function.
7449         * lib/mbschr.c: Include mbuiter.h unconditionally.
7450         (mbschr): Assume mbrtowc function.
7451         * lib/mbscspn.c: Include mbuiter.h unconditionally.
7452         (mbscspn): Assume mbrtowc function.
7453         * lib/mbslen.c: Include mbuiter.h unconditionally.
7454         (mbslen): Assume mbrtowc function.
7455         * lib/mbsncasecmp.c: Include mbuiter.h unconditionally.
7456         (mbsncasecmp): Assume mbrtowc function.
7457         * lib/mbsnlen.c: Include mbiter.h unconditionally.
7458         (mbsnlen): Assume mbrtowc function.
7459         * lib/mbspbrk.c: Include mbuiter.h unconditionally.
7460         (mbspbrk): Assume mbrtowc function.
7461         * lib/mbspcasecmp.c: Include mbuiter.h unconditionally.
7462         (mbspcasecmp): Assume mbrtowc function.
7463         * lib/mbsrchr.c: Include mbuiter.h unconditionally.
7464         (mbsrchr): Assume mbrtowc function.
7465         * lib/mbssep.c: Include mbuiter.h unconditionally.
7466         (mbssep): Assume mbrtowc function.
7467         * lib/mbsspn.c: Include mbuiter.h unconditionally.
7468         (mbsspn): Assume mbrtowc function.
7469         * lib/mbsstr.c: Include mbuiter.h unconditionally.
7470         (knuth_morris_pratt_multibyte, mbsstr): Assume mbrtowc function.
7471         * lib/mbstok_r.c: Include mbuiter.h unconditionally.
7472         (mbstok_r): Assume mbrtowc function.
7473         * lib/propername.c: Include mbuiter.h unconditionally.
7474         (mbsstr_trimmed_wordbounded): Assume mbrtowc function.
7475         * lib/trim.c: Include mbchar.h, mbiter.h uncondtionally.
7476         (trim2): Assume mbrtowc function.
7477         * lib/mbswidth.c (mbsinit): Remove fallback definition.
7478         (mbsnwidth): Assume mbrtowc function.
7479         * modules/mbswidth (Depends-on): Add mbrtowc, mbsinit.
7480         * lib/quotearg.c (MB_CUR_MAX, mbstate_t, mbrtowc, iswprint): Remove
7481         fallback definitions.
7482         * modules/quotearg (Depends-on): Add mbrtowc, mbsinit.
7483
7484 2008-12-22  Bruno Haible  <bruno@clisp.org>
7485
7486         * doc/posix-functions/mbtowc.texi: Mention a glibc bug.
7487
7488 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
7489
7490         * modules/regex: Request emulations for the mb*/wc* functions we need.
7491         * m4/regex.m4: Don't look for those functions here.
7492         * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
7493
7494 2008-12-22  Bruno Haible  <bruno@clisp.org>
7495
7496         * modules/fnmatch (Depends-on): Remove duplicated dependency.
7497
7498 2008-12-21  Bruno Haible  <bruno@clisp.org>
7499
7500         Make mbiter.h, mbuiter.h, mbfile.h usable unconditionally.
7501         * modules/mbiter (Depends-on): Add mbrtowc, mbsinit.
7502         (Include): Remove conditionalization.
7503         * modules/mbuiter (Depends-on): Add mbrtowc, mbsinit.
7504         (Include): Remove conditionalization.
7505         * modules/mbfile (Depends-on): Add mbrtowc, mbsinit.
7506         (Include): Remove conditionalization.
7507         * m4/mbiter.m4 (gl_MBITER): Deprecate the use of AC_FUNC_MBRTOWC.
7508         * m4/mbfile.m4 (gl_MBFILE): Likewise.
7509         * NEWS: Mention the change.
7510         Reported by Alan Hourihane <alanh@fairlite.co.uk>
7511         via Sergey Poznyakoff <gray@gnu.org.ua>.
7512
7513 2008-12-21  Bruno Haible  <bruno@clisp.org>
7514
7515         * MODULES.html.sh (Extended multibyte and wide character utilities
7516         <wchar.h>): Add btowc, wctob, mbsinit, mbrlen, mbrtowc, mbsrtowcs,
7517         wcrtomb, wcsrtombs.
7518         (Support for systems lacking POSIX:2008): Add accept, bind, close,
7519         connect, fclose, getpeername, getsockname, getsockopt, hostent, listen,
7520         mbsnrtowcs, posix_spawn*, recv, recvfrom, sched, select, send, sendto,
7521         setsockopt, shutdown, socket, spawn, sys_wait, wcsnrtombs, write.
7522
7523 2008-12-21  Bruno Haible  <bruno@clisp.org>
7524
7525         * MODULES.html.sh: Change section titles to refer to POSIX:2008.
7526
7527 2008-12-21  Bruno Haible  <bruno@clisp.org>
7528
7529         * modules/wcsnrtombs-tests: New file.
7530         * tests/test-wcsnrtombs1.sh: New file.
7531         * tests/test-wcsnrtombs2.sh: New file.
7532         * tests/test-wcsnrtombs3.sh: New file.
7533         * tests/test-wcsnrtombs4.sh: New file.
7534         * tests/test-wcsnrtombs.c: New file.
7535
7536         New module 'wcsnrtombs'.
7537         * lib/wchar.in.h (wcsnrtombs): New declaration.
7538         * lib/wcsnrtombs.c: New file.
7539         * lib/wcsrtombs-state.c: New file.
7540         * lib/wcsrtombs.c: Refer to _gl_wcsrtombs_state.
7541         (internal_state): Remove variable.
7542         * m4/wcsnrtombs.m4: New file.
7543         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): Add wcsrtombs-state.c to the
7544         compilation units.
7545         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNRTOMBS,
7546         HAVE_WCSNRTOMBS.
7547         * modules/wchar (Makefile.am): Substitute GNULIB_WCSNRTOMBS,
7548         HAVE_WCSNRTOMBS.
7549         * modules/wcsnrtombs: New file.
7550         * modules/wcsrtombs (Files): Add lib/wcsrtombs-state.c.
7551         * doc/posix-functions/wcsnrtombs.texi: Mention the new module.
7552
7553 2008-12-21  Bruno Haible  <bruno@clisp.org>
7554
7555         * modules/wcsrtombs-tests: New file.
7556         * tests/test-wcsrtombs1.sh: New file.
7557         * tests/test-wcsrtombs2.sh: New file.
7558         * tests/test-wcsrtombs3.sh: New file.
7559         * tests/test-wcsrtombs4.sh: New file.
7560         * tests/test-wcsrtombs.c: New file.
7561
7562         New module 'wcsrtombs'.
7563         * lib/wchar.in.h (wcsrtombs): New declaration.
7564         * lib/wcsrtombs.c: New file.
7565         * m4/wcsrtombs.m4: New file.
7566         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRTOMBS,
7567         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
7568         * modules/wchar (Makefile.am): Substitute GNULIB_WCSRTOMBS,
7569         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
7570         * modules/wcsrtombs: New file.
7571         * doc/posix-functions/wcsrtombs.texi: Mention the new module and the
7572         bugs.
7573
7574 2008-12-21  Bruno Haible  <bruno@clisp.org>
7575
7576         Work around a wcrtomb() bug on Solaris 10 and OSF/1 5.1.
7577         * lib/wchar.in.h (wcrtomb): Override if REPLACE_WCRTOMB is set.
7578         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Test the return value of wcrtomb
7579         with NULL destination argument in various locales. Set REPLACE_WCRTOMB
7580         if not correct.
7581         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCRTOMB.
7582         * modules/wchar (Makefile.am): Substitute REPLACE_WCRTOMB.
7583         * modules/wcrtomb (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
7584         m4/locale-zh.m4, m4/codeset.m4.
7585         * doc/posix-functions/wcrtomb.texi: Document the bug.
7586
7587 2008-12-21  Bruno Haible  <bruno@clisp.org>
7588
7589         Work around a btowc() bug on IRIX 6.5.
7590         * lib/wchar.in.h (btowc): Override if REPLACE_BTOWC is set.
7591         * m4/btowc.m4 (gl_FUNC_BTOWC): Test whether btowc(EOF) is correct. Set
7592         REPLACE_WTOBC if not.
7593         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_BTOWC.
7594         * modules/wchar (Makefile.am): Substitute REPLACE_BTOWC.
7595         * doc/posix-functions/btowc.texi: Mention the IRIX bug.
7596
7597 2008-12-21  Bruno Haible  <bruno@clisp.org>
7598
7599         * modules/wcrtomb-tests: New file.
7600         * tests/test-wcrtomb.sh: New file.
7601         * tests/test-wcrtomb.c: New file.
7602
7603         New module 'wcrtomb'.
7604         * lib/wchar.in.h (wcrtomb): New declaration.
7605         * lib/wcrtomb.c: New file.
7606         * m4/wcrtomb.m4: New file.
7607         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCRTOMB,
7608         HAVE_WCRTOMB.
7609         * modules/wchar (Makefile.am): Substitute GNULIB_WCRTOMB,
7610         HAVE_WCRTOMB.
7611         * modules/wcrtomb: New file.
7612         * doc/posix-functions/wcrtomb.texi: Mention the new module.
7613
7614 2008-12-21  Bruno Haible  <bruno@clisp.org>
7615
7616         * modules/mbrtowc (Files): Add m4/codeset.m4, needed by m4/locale-fr.m4.
7617         * modules/mbsrtowcs (Files): Likewise.
7618         * modules/wctob (Files): Likewise.
7619         * modules/c-strcase-tests (Files): Likewise.
7620         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
7621         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
7622         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
7623         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
7624         * modules/vasnprintf-posix-tests (Files): Likewise.
7625
7626 2008-12-21  William Pursell  <bill.pursell@gmail.com>
7627
7628         gitlog-to-changelog: pass all command-line arguments to git-log
7629         * build-aux/gitlog-to-changelog: When producing a ChangeLog,
7630         it is sometimes convenient to filter the commits in various ways.
7631         gitlog-to-changelog only allows --since to specify a start date,
7632         but git-log itself supports many other filtering mechanisms.
7633         At the moment, I want to filter by branch name.  Rather than
7634         adding a --branch option to gitlog-to-changelog, it seems more
7635         flexible to simply pass all options directly to git-log and let
7636         git do the work.  Notice that this effectively makes --since a
7637         redundant option for gitlog-to-changelog, but removing it would
7638         require current usage to change since calls would then require
7639         an additional '--'.
7640
7641 2008-12-21  Bruno Haible  <bruno@clisp.org>
7642
7643         * modules/mbsnrtowcs-tests: New file.
7644         * tests/test-mbsnrtowcs1.sh: New file.
7645         * tests/test-mbsnrtowcs2.sh: New file.
7646         * tests/test-mbsnrtowcs3.sh: New file.
7647         * tests/test-mbsnrtowcs4.sh: New file.
7648         * tests/test-mbsnrtowcs.c: New file.
7649
7650         New module 'mbsnrtowcs'.
7651         * lib/wchar.in.h (mbsnrtowcs): New declaration.
7652         * lib/mbsnrtowcs.c: New file.
7653         * lib/mbsrtowcs-state.c: New file.
7654         * lib/mbsrtowcs.c: Refer to _gl_mbsrtowcs_state.
7655         (internal_state): Remove variable.
7656         * m4/mbsnrtowcs.m4: New file.
7657         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Add mbsrtowcs-state.c to the
7658         compilation units.
7659         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSNRTOWCS,
7660         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
7661         * modules/wchar (Makefile.am): Substitute GNULIB_MBSNRTOWCS,
7662         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
7663         * modules/mbsnrtowcs: New file.
7664         * modules/mbsrtowcs (Files): Add lib/mbsrtowcs-state.c.
7665         * doc/posix-functions/mbsnrtowcs.texi: Mention the new module and a
7666         portability problem.
7667
7668 2008-12-21  Bruno Haible  <bruno@clisp.org>
7669
7670         Work around mbsrtowcs bug.
7671         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): New macro.
7672         (gl_FUNC_MBSRTOWCS): Invoke it.
7673         * modules/mbsrtowcs (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
7674         m4/locale-zh.m4.
7675         * doc/posix-functions/mbsrtowcs.texi: Document the bug.
7676
7677 2008-12-21  Bruno Haible  <bruno@clisp.org>
7678
7679         * tests/test-mbsrtowcs.c (main): Execute the loop also for unlimited=1.
7680
7681 2008-12-21  Bruno Haible  <bruno@clisp.org>
7682
7683         Update doc for AIX.
7684         * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
7685         16-bit wchar_t type.
7686         * doc/posix-functions/btowc.texi: Likewise.
7687         * doc/posix-functions/fgetwc.texi: Likewise.
7688         * doc/posix-functions/fgetws.texi: Likewise.
7689         * doc/posix-functions/fputwc.texi: Likewise.
7690         * doc/posix-functions/fputws.texi: Likewise.
7691         * doc/posix-functions/fwide.texi: Likewise.
7692         * doc/posix-functions/fwprintf.texi: Likewise.
7693         * doc/posix-functions/fwscanf.texi: Likewise.
7694         * doc/posix-functions/getwchar.texi: Likewise.
7695         * doc/posix-functions/getwc.texi: Likewise.
7696         * doc/posix-functions/iswalnum.texi: Likewise.
7697         * doc/posix-functions/iswalpha.texi: Likewise.
7698         * doc/posix-functions/iswblank.texi: Likewise.
7699         * doc/posix-functions/iswcntrl.texi: Likewise.
7700         * doc/posix-functions/iswctype.texi: Likewise.
7701         * doc/posix-functions/iswdigit.texi: Likewise.
7702         * doc/posix-functions/iswgraph.texi: Likewise.
7703         * doc/posix-functions/iswlower.texi: Likewise.
7704         * doc/posix-functions/iswprint.texi: Likewise.
7705         * doc/posix-functions/iswpunct.texi: Likewise.
7706         * doc/posix-functions/iswspace.texi: Likewise.
7707         * doc/posix-functions/iswupper.texi: Likewise.
7708         * doc/posix-functions/iswxdigit.texi: Likewise.
7709         * doc/posix-functions/mbrtowc.texi: Likewise.
7710         * doc/posix-functions/mbsrtowcs.texi: Likewise.
7711         * doc/posix-functions/mbstowcs.texi: Likewise.
7712         * doc/posix-functions/mbtowc.texi: Likewise.
7713         * doc/posix-functions/putwchar.texi: Likewise.
7714         * doc/posix-functions/putwc.texi: Likewise.
7715         * doc/posix-functions/swprintf.texi: Likewise.
7716         * doc/posix-functions/tolower.texi: Likewise.
7717         * doc/posix-functions/toupper.texi: Likewise.
7718         * doc/posix-functions/towctrans.texi: Likewise.
7719         * doc/posix-functions/ungetwc.texi: Likewise.
7720         * doc/posix-functions/vswprintf.texi: Likewise.
7721         * doc/posix-functions/wcrtomb.texi: Likewise.
7722         * doc/posix-functions/wcscat.texi: Likewise.
7723         * doc/posix-functions/wcschr.texi: Likewise.
7724         * doc/posix-functions/wcscmp.texi: Likewise.
7725         * doc/posix-functions/wcscoll.texi: Likewise.
7726         * doc/posix-functions/wcscpy.texi: Likewise.
7727         * doc/posix-functions/wcscspn.texi: Likewise.
7728         * doc/posix-functions/wcsftime.texi: Likewise.
7729         * doc/posix-functions/wcslen.texi: Likewise.
7730         * doc/posix-functions/wcsncat.texi: Likewise.
7731         * doc/posix-functions/wcsncmp.texi: Likewise.
7732         * doc/posix-functions/wcsncpy.texi: Likewise.
7733         * doc/posix-functions/wcspbrk.texi: Likewise.
7734         * doc/posix-functions/wcsrchr.texi: Likewise.
7735         * doc/posix-functions/wcsrtombs.texi: Likewise.
7736         * doc/posix-functions/wcsspn.texi: Likewise.
7737         * doc/posix-functions/wcsstr.texi: Likewise.
7738         * doc/posix-functions/wcstod.texi: Likewise.
7739         * doc/posix-functions/wcstof.texi: Likewise.
7740         * doc/posix-functions/wcstoimax.texi: Likewise.
7741         * doc/posix-functions/wcstok.texi: Likewise.
7742         * doc/posix-functions/wcstold.texi: Likewise.
7743         * doc/posix-functions/wcstoll.texi: Likewise.
7744         * doc/posix-functions/wcstol.texi: Likewise.
7745         * doc/posix-functions/wcstombs.texi: Likewise.
7746         * doc/posix-functions/wcstoull.texi: Likewise.
7747         * doc/posix-functions/wcstoul.texi: Likewise.
7748         * doc/posix-functions/wcstoumax.texi: Likewise.
7749         * doc/posix-functions/wcswidth.texi: Likewise.
7750         * doc/posix-functions/wcsxfrm.texi: Likewise.
7751         * doc/posix-functions/wctob.texi: Likewise.
7752         * doc/posix-functions/wctomb.texi: Likewise.
7753         * doc/posix-functions/wctrans.texi: Likewise.
7754         * doc/posix-functions/wctype.texi: Likewise.
7755         * doc/posix-functions/wcwidth.texi: Likewise.
7756         * doc/posix-functions/wmemchr.texi: Likewise.
7757         * doc/posix-functions/wmemcmp.texi: Likewise.
7758         * doc/posix-functions/wmemcpy.texi: Likewise.
7759         * doc/posix-functions/wmemmove.texi: Likewise.
7760         * doc/posix-functions/wmemset.texi: Likewise.
7761         * doc/posix-functions/wprintf.texi: Likewise.
7762         * doc/posix-functions/wscanf.texi: Likewise.
7763
7764 2008-12-21  Bruno Haible  <bruno@clisp.org>
7765
7766         Update doc for HP-UX 11.11.
7767         * doc/posix-functions/btowc.texi: Clarify that the function is missing
7768         in HP-UX version 11.00, not in all versions of HP-UX 11.
7769         * doc/posix-functions/fwide.texi: Likewise.
7770         * doc/posix-functions/fwprintf.texi: Likewise.
7771         * doc/posix-functions/fwscanf.texi: Likewise.
7772         * doc/posix-functions/inet_ntop.texi: Likewise.
7773         * doc/posix-functions/inet_pton.texi: Likewise.
7774         * doc/posix-functions/mbrlen.texi: Likewise.
7775         * doc/posix-functions/mbrtowc.texi: Likewise.
7776         * doc/posix-functions/mbsinit.texi: Likewise.
7777         * doc/posix-functions/mbsrtowcs.texi: Likewise.
7778         * doc/posix-functions/swprintf.texi: Likewise.
7779         * doc/posix-functions/swscanf.texi: Likewise.
7780         * doc/posix-functions/towctrans.texi: Likewise.
7781         * doc/posix-functions/vfwprintf.texi: Likewise.
7782         * doc/posix-functions/vswprintf.texi: Likewise.
7783         * doc/posix-functions/vwprintf.texi: Likewise.
7784         * doc/posix-functions/wcrtomb.texi: Likewise.
7785         * doc/posix-functions/wcsrtombs.texi: Likewise.
7786         * doc/posix-functions/wcsstr.texi: Likewise.
7787         * doc/posix-functions/wctob.texi: Likewise.
7788         * doc/posix-functions/wctrans.texi: Likewise.
7789         * doc/posix-functions/wmemchr.texi: Likewise.
7790         * doc/posix-functions/wmemcmp.texi: Likewise.
7791         * doc/posix-functions/wmemcpy.texi: Likewise.
7792         * doc/posix-functions/wmemmove.texi: Likewise.
7793         * doc/posix-functions/wmemset.texi: Likewise.
7794         * doc/posix-functions/wprintf.texi: Likewise.
7795         * doc/posix-functions/wscanf.texi: Likewise.
7796
7797 2008-12-21  Bruno Haible  <bruno@clisp.org>
7798
7799         Work around a portability problem.
7800         * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
7801         * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
7802
7803 2008-12-20  Bruno Haible  <bruno@clisp.org>
7804
7805         * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
7806         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
7807         REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
7808         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
7809         * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
7810
7811         Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
7812         * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
7813         set.
7814         (GNULIB_defined_mbstate_t): New macro.
7815         (mbsinit): Redefine if REPLACE_MBSINIT is set.
7816         (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
7817         * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
7818         reuses the system's mbrtowc function but works around the bugs.
7819         * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
7820         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
7821         macros.
7822         (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
7823         be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
7824         MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
7825         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
7826         REPLACE_MBSINIT if mbsinit needs to be overridden.
7827         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
7828         REPLACE_MBSINIT, REPLACE_MBRTOWC.
7829         * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
7830         REPLACE_MBSINIT, REPLACE_MBRTOWC.
7831         * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
7832         m4/locale-zh.m4.
7833         (Depends): Add mbsinit.
7834         * modules/mbsinit (Depends): Add mbrtowc.
7835         * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
7836
7837 2008-12-20  Bruno Haible  <bruno@clisp.org>
7838
7839         * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
7840         so that there are no conversion errors on AIX.
7841         * tests/test-mbsrtowcs.c (main): LIkewise.
7842
7843 2008-12-20  Bruno Haible  <bruno@clisp.org>
7844
7845         Work around wctob bug on Solaris <= 9.
7846         * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
7847         * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
7848         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
7849         * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
7850         * modules/wctob (Files): Add m4/locale-fr.m4.
7851         * doc/posix-functions/wctob.texi: Mention the Solaris bug.
7852
7853 2008-12-20  Bruno Haible  <bruno@clisp.org>
7854
7855         * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
7856         /dev/null.
7857         * tests/test-select-in.sh: Likewise.
7858         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
7859
7860 2008-12-20  Bruno Haible  <bruno@clisp.org>
7861
7862         Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
7863         * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
7864         Cygwin 1.5.x.
7865
7866 2008-12-20  Bruno Haible  <bruno@clisp.org>
7867
7868         Ensure mbstate_t is defined on HP-UX 11.11.
7869         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
7870         AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
7871         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
7872         AC_USE_SYSTEM_EXTENSIONS.
7873         * modules/fnmatch (Depends-on): Add extensions.
7874         * modules/mbrlen (Depends-on): Likewise.
7875         * modules/mbrtowc (Depends-on): Likewise.
7876         * modules/mbsinit (Depends-on): Likewise.
7877         * modules/mbsrtowcs (Depends-on): Likewise.
7878         * modules/mbswidth (Depends-on): Likewise.
7879         * modules/quotearg (Depends-on): Likewise.
7880         * modules/strftime (Depends-on): Likewise.
7881
7882 2008-12-20  Bruno Haible  <bruno@clisp.org>
7883
7884         Ensure wctob is declared on IRIX 6.5.
7885         * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
7886         * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
7887         HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
7888         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
7889         of HAVE_WCTOB.
7890         * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
7891         HAVE_WCTOB.
7892         * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
7893
7894 2008-12-19  Bruno Haible  <bruno@clisp.org>
7895
7896         * modules/mbsrtowcs-tests: New file.
7897         * tests/test-mbsrtowcs1.sh: New file.
7898         * tests/test-mbsrtowcs2.sh: New file.
7899         * tests/test-mbsrtowcs3.sh: New file.
7900         * tests/test-mbsrtowcs4.sh: New file.
7901         * tests/test-mbsrtowcs.c: New file.
7902
7903         New module 'mbsrtowcs'.
7904         * lib/wchar.in.h (mbsrtowcs): New declaration.
7905         * lib/mbsrtowcs.c: New file.
7906         * m4/mbsrtowcs.m4: New file.
7907         * modules/mbsrtowcs: New file.
7908         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOWCS and
7909         HAVE_MBSRTOWCS.
7910         * modules/wchar (Makefile.am): Substitute GNULIB_MBSRTOWCS and
7911         HAVE_MBSRTOWCS.
7912         * doc/posix-functions/mbsrtowcs.texi: Document the new module.
7913
7914 2008-12-19  Bruno Haible  <bruno@clisp.org>
7915
7916         New module 'mbrlen'.
7917         * lib/wchar.in.h (mbrlen): New declaration.
7918         * lib/mbrlen.c: New file.
7919         * m4/mbrlen.m4: New file.
7920         * modules/mbrlen: New file.
7921         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRLEN and
7922         HAVE_MBRLEN.
7923         * modules/wchar (Makefile.am): Substitute GNULIB_MBRLEN and
7924         HAVE_MBRLEN.
7925         * doc/posix-functions/mbrlen.texi: Document the new module.
7926
7927 2008-12-19  Bruno Haible  <bruno@clisp.org>
7928
7929         * lib/mbrtowc.c: Include verify.h. Verify an assumption.
7930         * modules/mbrtowc (Depends-on): Add verify.
7931         Suggested by Paul Eggert.
7932
7933 2008-12-18  Bruno Haible  <bruno@clisp.org>
7934
7935         * modules/mbsinit-tests: New file.
7936         * tests/test-mbsinit.sh: New file.
7937         * tests/test-mbsinit.c: New file.
7938
7939 2008-12-18  Bruno Haible  <bruno@clisp.org>
7940
7941         * modules/mbrtowc-tests: New file.
7942         * tests/test-mbrtowc1.sh: New file.
7943         * tests/test-mbrtowc2.sh: New file.
7944         * tests/test-mbrtowc3.sh: New file.
7945         * tests/test-mbrtowc4.sh: New file.
7946         * tests/test-mbrtowc.c: New file.
7947
7948         New module 'mbrtowc'.
7949         * lib/wchar.in.h (mbstate_t): Override when the system does not have
7950         mbsinit and mbrtowc.
7951         (mbrtowc): New declaration.
7952         * lib/mbrtowc.c: New file.
7953         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_PREREQ_MBRTOWC): New macros.
7954         * modules/mbrtowc: New file.
7955         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOWC and
7956         HAVE_MBRTOWC.
7957         * modules/wchar (Makefile.am): Substitute GNULIB_MBRTOWC and
7958         HAVE_MBRTOWC.
7959         * doc/posix-functions/mbrtowc.texi: Document the new module.
7960
7961 2008-12-18  Bruno Haible  <bruno@clisp.org>
7962
7963         New module 'wctob'.
7964         * lib/wchar.in.h (wctob): New declaration.
7965         * lib/wctob.c: New file.
7966         * m4/wctob.m4: New file.
7967         * modules/wctob: New file.
7968         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCTOB and
7969         HAVE_WCTOB.
7970         * modules/wchar (Makefile.am): Substitute GNULIB_WCTOB and HAVE_WCTOB.
7971         * doc/posix-functions/wctob.texi: Document the new module.
7972
7973 2008-12-18  Bruno Haible  <bruno@clisp.org>
7974
7975         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_REPLACE_WCHAR_H.
7976         * m4/btowc.m4 (gl_FUNC_BTOWC): Likewise.
7977
7978 2008-12-18  Simon Josefsson  <simon@josefsson.org>
7979
7980         * lib/flock.c: Use proper #if symbol in check.  Reported by "Tom
7981         G. Christensen" <tgc@jupiterrise.com>.
7982
7983         * lib/flock.c: Need to include errno.h.  Reported by "Tom
7984         G. Christensen" <tgc@jupiterrise.com>.
7985
7986         * lib/flock.c: Need to include string.h.  Reported by "Tom
7987         G. Christensen" <tgc@jupiterrise.com> and Eric Blake
7988         <ebb9@byu.net>.
7989
7990 2008-12-18  Bruno Haible  <bruno@clisp.org>
7991
7992         * m4/locale-ja.m4: New file, from GNU gettext.
7993
7994 2008-12-17  Bruno Haible  <bruno@clisp.org>
7995
7996         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Don't override in autoconf >= 2.60.
7997         Suggested by Eric Blake.
7998
7999 2008-12-17  Bruno Haible  <bruno@clisp.org>
8000
8001         * m4/errno_h.m4 (AC_COMPUTE_INT): Provide fallback definition.
8002
8003 2008-12-17  Bruno Haible  <bruno@clisp.org>
8004
8005         * lib/mbsinit.c: Include verify.h. Verify an assumption.
8006         * modules/mbsinit (Depends-on): Add verify.
8007         Suggested by Paul Eggert.
8008
8009 2008-12-17  Bruno Haible  <bruno@clisp.org>
8010
8011         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Renamed from gl_FUNC_MBRTOWC.
8012         * m4/mbfile.m4 (gl_MBFILE): Use AC_FUNC_MBRTOWC instead of
8013         gl_FUNC_MBRTOWC.
8014         * m4/mbiter.m4 (gl_MBITER): LIkewise.
8015         * m4/mbscasecmp.m4 (gl_PREREQ_MBSCASECMP): Likewise.
8016         * m4/mbscasestr.m4 (gl_PREREQ_MBSCASESTR): Likewise.
8017         * m4/mbschr.m4 (gl_PREREQ_MBSCHR): Likewise.
8018         * m4/mbscspn.m4 (gl_PREREQ_MBSCSPN): Likewise.
8019         * m4/mbslen.m4 (gl_PREREQ_MBSLEN): Likewise.
8020         * m4/mbsncasecmp.m4 (gl_PREREQ_MBSNCASECMP): Likewise.
8021         * m4/mbsnlen.m4 (gl_PREREQ_MBSNLEN): Likewise.
8022         * m4/mbspbrk.m4 (gl_PREREQ_MBSPBRK): Likewise.
8023         * m4/mbspcasecmp.m4 (gl_PREREQ_MBSPCASECMP): Likewise.
8024         * m4/mbsrchr.m4 (gl_PREREQ_MBSRCHR): Likewise.
8025         * m4/mbssep.m4 (gl_PREREQ_MBSSEP): Likewise.
8026         * m4/mbsspn.m4 (gl_PREREQ_MBSSPN): Likewise.
8027         * m4/mbsstr.m4 (gl_PREREQ_MBSSTR): Likewise.
8028         * m4/mbstok_r.m4 (gl_PREREQ_MBSTOK_R): Likewise.
8029         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
8030         * m4/quotearg.m4 (gl_QUOTEARG): Likewise.
8031         * modules/trim (configure.ac): Likewise.
8032
8033 2008-12-17  Bruno Haible  <bruno@clisp.org>
8034
8035         * modules/btowc-tests: New file.
8036         * tests/test-btowc1.sh: New file.
8037         * tests/test-btowc2.sh: New file.
8038         * tests/test-btowc.c: New file.
8039
8040         New module 'btowc'.
8041         * lib/wchar.in.h (btowc): New declaration.
8042         * lib/btowc.c: New file.
8043         * m4/btowc.m4: New file.
8044         * modules/btowc: New file.
8045         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_BTOWC and
8046         HAVE_BTOWC.
8047         * modules/wchar (Makefile.am): Substitute GNULIB_BTOWC and HAVE_BTOWC.
8048         * doc/posix-functions/btowc.texi: Document the new module.
8049
8050 2008-12-17  Bruno Haible  <bruno@clisp.org>
8051
8052         New module 'mbsinit'.
8053         * lib/wchar.in.h (mbsinit): New declaration.
8054         * lib/mbsinit.c: New file.
8055         * m4/mbsinit.m4: New file.
8056         * modules/mbsinit: New file.
8057         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSINIT and
8058         HAVE_MBSINIT.
8059         * modules/wchar (Makefile.am): Substitute GNULIB_MBSINIT and
8060         HAVE_MBSINIT.
8061         * doc/posix-functions/mbsinit.texi: Document the new module.
8062
8063 2008-12-16  Bruno Haible  <bruno@clisp.org>
8064
8065         * lib/unistd.in.h: Add comment.
8066         * tests/test-environ.c: Don't include <stdlib.h>.
8067
8068 2008-12-16  Bruno Haible  <bruno@clisp.org>
8069
8070         * lib/parse-duration.h (parse_duration): Document return value
8071         convention.
8072         * lib/parse-duration.c: Include specification header first. Add
8073         comments.
8074         (_): Remove macro.
8075         (parse_year_month_day, parse_hour_minute_second): Move side effects
8076         outside of strchr call.
8077         (parse_non_iso8601): Move side effects outside of isspace call.
8078         (parse_duration): Don't test errno is res != BAD_TIME. Remove fprintf
8079         call.
8080
8081 2008-12-16  Bruno Haible  <bruno@clisp.org>
8082
8083         * tests/test-parse-duration.sh: Produce no output when the test
8084         succeeds.
8085
8086 2008-12-16  Bruno Haible  <bruno@clisp.org>
8087
8088         * tests/test-parse-duration.sh: Fix quoting of $tmp and $tmpf
8089         expressions.
8090
8091 2008-12-15  Bruno Haible  <bruno@clisp.org>
8092
8093         * doc/glibc-functions/fgetxattr.texi: Tweak wording.
8094         * doc/glibc-functions/flistxattr.texi: Likewise.
8095         * doc/glibc-functions/fopencookie.texi: Likewise.
8096         * doc/glibc-functions/fremovexattr.texi: Likewise.
8097         * doc/glibc-functions/fsetxattr.texi: Likewise.
8098         * doc/glibc-functions/getxattr.texi: Likewise.
8099         * doc/glibc-functions/lgetxattr.texi: Likewise.
8100         * doc/glibc-functions/listxattr.texi: Likewise.
8101         * doc/glibc-functions/llistxattr.texi: Likewise.
8102         * doc/glibc-functions/lremovexattr.texi: Likewise.
8103         * doc/glibc-functions/lsetxattr.texi: Likewise.
8104         * doc/glibc-functions/removexattr.texi: Likewise.
8105         * doc/glibc-functions/setxattr.texi: Likewise.
8106         * doc/posix-functions/open_memstream.texi: Likewise.
8107
8108 2008-12-15  Eric Blake  <ebb9@byu.net>
8109
8110         Update doc for cygwin 1.7.
8111         * doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
8112         functions.
8113         * doc/posix-functions/fchmodat.texi: Likewise.
8114         * doc/posix-functions/fchownat.texi: Likewise.
8115         * doc/posix-functions/fdopendir.texi: Likewise.
8116         * doc/posix-functions/fmemopen.texi: Likewise.
8117         * doc/posix-functions/freeaddrinfo.texi: Likewise.
8118         * doc/posix-functions/fstatat.texi: Likewise.
8119         * doc/posix-functions/futimens.texi: Likewise.
8120         * doc/posix-functions/gai_strerror.texi: Likewise.
8121         * doc/posix-functions/getaddrinfo.texi: Likewise.
8122         * doc/posix-functions/getnameinfo.texi: Likewise.
8123         * doc/posix-functions/if_freenameindex.texi: Likewise.
8124         * doc/posix-functions/if_indextoname.texi: Likewise.
8125         * doc/posix-functions/if_nameindex.texi: Likewise.
8126         * doc/posix-functions/if_nametoindex.texi: Likewise.
8127         * doc/posix-functions/insque.texi: Likewise.
8128         * doc/posix-functions/linkat.texi: Likewise.
8129         * doc/posix-functions/llrint.texi: Likewise.
8130         * doc/posix-functions/llrintf.texi: Likewise.
8131         * doc/posix-functions/llrintl.texi: Likewise.
8132         * doc/posix-functions/lockf.texi: Likewise.
8133         * doc/posix-functions/lrintl.texi: Likewise.
8134         * doc/posix-functions/mkdirat.texi: Likewise.
8135         * doc/posix-functions/mkfifoat.texi: Likewise.
8136         * doc/posix-functions/mknodat.texi: Likewise.
8137         * doc/posix-functions/mq_close.texi: Likewise.
8138         * doc/posix-functions/mq_getattr.texi: Likewise.
8139         * doc/posix-functions/mq_notify.texi: Likewise.
8140         * doc/posix-functions/mq_open.texi: Likewise.
8141         * doc/posix-functions/mq_receive.texi: Likewise.
8142         * doc/posix-functions/mq_send.texi: Likewise.
8143         * doc/posix-functions/mq_setattr.texi: Likewise.
8144         * doc/posix-functions/mq_timedreceive.texi: Likewise.
8145         * doc/posix-functions/mq_timedsend.texi: Likewise.
8146         * doc/posix-functions/mq_unlink.texi: Likewise.
8147         * doc/posix-functions/open_memstream.texi: Likewise.
8148         * doc/posix-functions/openat.texi: Likewise.
8149         * doc/posix-functions/posix_fadvise.texi: Likewise.
8150         * doc/posix-functions/posix_fallocate.texi: Likewise.
8151         * doc/posix-functions/posix_madvise.texi: Likewise.
8152         * doc/posix-functions/posix_memalign.texi: Likewise.
8153         * doc/posix-functions/posix_openpt.texi: Likewise.
8154         * doc/posix-functions/readlinkat.texi: Likewise.
8155         * doc/posix-functions/remque.texi: Likewise.
8156         * doc/posix-functions/renameat.texi: Likewise.
8157         * doc/posix-functions/rintl.texi: Likewise.
8158         * doc/posix-functions/sem_unlink.texi: Likewise.
8159         * doc/posix-functions/shm_open.texi: Likewise.
8160         * doc/posix-functions/shm_unlink.texi: Likewise.
8161         * doc/posix-functions/signgam.texi: Likewise.
8162         * doc/posix-functions/sigset.texi: Likewise.
8163         * doc/posix-functions/stpcpy.texi: Likewise.
8164         * doc/posix-functions/stpncpy.texi: Likewise.
8165         * doc/posix-functions/strerror.texi: Likewise.
8166         * doc/posix-functions/strtod.texi: Likewise.
8167         * doc/posix-functions/symlinkat.texi: Likewise.
8168         * doc/posix-functions/unlinkat.texi: Likewise.
8169         * doc/posix-functions/utimensat.texi: Likewise.
8170         * doc/glibc-functions/bindresvport.texi: Likewise.
8171         * doc/glibc-functions/dn_expand.texi: Likewise.
8172         * doc/glibc-functions/exp10.texi: Likewise.
8173         * doc/glibc-functions/exp10f.texi: Likewise.
8174         * doc/glibc-functions/fgetxattr.texi: Likewise.
8175         * doc/glibc-functions/flistxattr.texi: Likewise.
8176         * doc/glibc-functions/fopencookie.texi: Likewise.
8177         * doc/glibc-functions/freeifaddrs.texi: Likewise.
8178         * doc/glibc-functions/fremovexattr.texi: Likewise.
8179         * doc/glibc-functions/fsetxattr.texi: Likewise.
8180         * doc/glibc-functions/getifaddrs.texi: Likewise.
8181         * doc/glibc-functions/getxattr.texi: Likewise.
8182         * doc/glibc-functions/lgetxattr.texi: Likewise.
8183         * doc/glibc-functions/listxattr.texi: Likewise.
8184         * doc/glibc-functions/llistxattr.texi: Likewise.
8185         * doc/glibc-functions/lremovexattr.texi: Likewise.
8186         * doc/glibc-functions/lsetxattr.texi: Likewise.
8187         * doc/glibc-functions/pow10.texi: Likewise.
8188         * doc/glibc-functions/pow10f.texi: Likewise.
8189         * doc/glibc-functions/rcmd_af.texi: Likewise.
8190         * doc/glibc-functions/removexattr.texi: Likewise.
8191         * doc/glibc-functions/res_init.texi: Likewise.
8192         * doc/glibc-functions/res_mkquery.texi: Likewise.
8193         * doc/glibc-functions/res_query.texi: Likewise.
8194         * doc/glibc-functions/res_querydomain.texi: Likewise.
8195         * doc/glibc-functions/res_send.texi: Likewise.
8196         * doc/glibc-functions/rresvport_af.texi: Likewise.
8197         * doc/glibc-functions/setxattr.texi: Likewise.
8198         * doc/glibc-functions/strcasestr.texi: Likewise.
8199
8200 2008-12-15  Bruno Haible  <bruno@clisp.org>
8201
8202         Fix compilation error on OSF/1 4.0.
8203         * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or
8204         <sys/time.h>, simply delegate to the system header.
8205         Reported by Daniel Richard G. <oss@teragram.com>.
8206
8207 2008-12-15  Bruno Haible  <bruno@clisp.org>
8208
8209         * doc/posix-functions/openat.texi: Mention the 'openat' module.
8210         * doc/posix-functions/fchmodat.texi: Likewise.
8211         * doc/posix-functions/fchownat.texi: Likewise.
8212         * doc/posix-functions/fdopendir.texi: Likewise.
8213         * doc/posix-functions/fstatat.texi: Likewise.
8214         * doc/posix-functions/mkdirat.texi: Likewise.
8215         * doc/posix-functions/unlinkat.texi: Likewise.
8216
8217 2008-12-14  Bruno Haible  <bruno@clisp.org>
8218
8219         Update doc for POSIX:2008.
8220         * doc/posix-functions/faccessat.texi: New file.
8221         * doc/posix-functions/fchmodat.texi: New file.
8222         * doc/posix-functions/fchownat.texi: New file.
8223         * doc/posix-functions/fdopendir.texi: New file.
8224         * doc/posix-functions/fstatat.texi: New file.
8225         * doc/posix-functions/futimens.texi: New file.
8226         * doc/posix-functions/linkat.texi: New file.
8227         * doc/posix-functions/mkdirat.texi: New file.
8228         * doc/posix-functions/mkfifoat.texi: New file.
8229         * doc/posix-functions/mknodat.texi: New file.
8230         * doc/posix-functions/open_wmemstream.texi: New file.
8231         * doc/posix-functions/openat.texi: New file.
8232         * doc/posix-functions/psiginfo.texi: New file.
8233         * doc/posix-functions/pthread_mutex_consistent.texi: New file.
8234         * doc/posix-functions/pthread_mutexattr_getrobust.texi: New file.
8235         * doc/posix-functions/pthread_mutexattr_setrobust.texi: New file.
8236         * doc/posix-functions/readlinkat.texi: New file.
8237         * doc/posix-functions/renameat.texi: New file.
8238         * doc/posix-functions/strerror_l.texi: New file.
8239         * doc/posix-functions/symlinkat.texi: New file.
8240         * doc/posix-functions/unlinkat.texi: New file.
8241         * doc/posix-functions/utimensat.texi: New file.
8242         * doc/gnulib.texi (Function Substitutes): Add these subsections.
8243
8244 2008-12-14  Bruno Haible  <bruno@clisp.org>
8245
8246         Update doc for POSIX:2008.
8247         * doc/posix-functions/alphasort.texi: Renamed from
8248         doc/glibc-functions/alphasort.texi.
8249         * doc/posix-functions/dirfd.texi: Renamed from
8250         doc/glibc-functions/dirfd.texi.
8251         * doc/posix-functions/dprintf.texi: Renamed from
8252         doc/glibc-functions/dprintf.texi.
8253         * doc/posix-functions/duplocale.texi: Renamed from
8254         doc/glibc-functions/duplocale.texi.
8255         * doc/posix-functions/fexecve.texi: Renamed from
8256         doc/glibc-functions/fexecve.texi.
8257         * doc/posix-functions/fmemopen.texi: Renamed from
8258         doc/glibc-functions/fmemopen.texi.
8259         * doc/posix-functions/freelocale.texi: Renamed from
8260         doc/glibc-functions/freelocale.texi.
8261         * doc/posix-functions/getdate_err.texi: Renamed from
8262         doc/glibc-functions/getdate_err.texi.
8263         * doc/posix-functions/isalnum_l.texi: Renamed from
8264         doc/glibc-functions/isalnum_l.texi.
8265         * doc/posix-functions/isalpha_l.texi: Renamed from
8266         doc/glibc-functions/isalpha_l.texi.
8267         * doc/posix-functions/isblank_l.texi: Renamed from
8268         doc/glibc-functions/isblank_l.texi.
8269         * doc/posix-functions/iscntrl_l.texi: Renamed from
8270         doc/glibc-functions/iscntrl_l.texi.
8271         * doc/posix-functions/isdigit_l.texi: Renamed from
8272         doc/glibc-functions/isdigit_l.texi.
8273         * doc/posix-functions/isgraph_l.texi: Renamed from
8274         doc/glibc-functions/isgraph_l.texi.
8275         * doc/posix-functions/islower_l.texi: Renamed from
8276         doc/glibc-functions/islower_l.texi.
8277         * doc/posix-functions/isprint_l.texi: Renamed from
8278         doc/glibc-functions/isprint_l.texi.
8279         * doc/posix-functions/ispunct_l.texi: Renamed from
8280         doc/glibc-functions/ispunct_l.texi.
8281         * doc/posix-functions/isspace_l.texi: Renamed from
8282         doc/glibc-functions/isspace_l.texi.
8283         * doc/posix-functions/isupper_l.texi: Renamed from
8284         doc/glibc-functions/isupper_l.texi.
8285         * doc/posix-functions/iswalnum_l.texi: Renamed from
8286         doc/glibc-functions/iswalnum_l.texi.
8287         * doc/posix-functions/iswalpha_l.texi: Renamed from
8288         doc/glibc-functions/iswalpha_l.texi.
8289         * doc/posix-functions/iswblank_l.texi: Renamed from
8290         doc/glibc-functions/iswblank_l.texi.
8291         * doc/posix-functions/iswcntrl_l.texi: Renamed from
8292         doc/glibc-functions/iswcntrl_l.texi.
8293         * doc/posix-functions/iswctype_l.texi: Renamed from
8294         doc/glibc-functions/iswctype_l.texi.
8295         * doc/posix-functions/iswdigit_l.texi: Renamed from
8296         doc/glibc-functions/iswdigit_l.texi.
8297         * doc/posix-functions/iswgraph_l.texi: Renamed from
8298         doc/glibc-functions/iswgraph_l.texi.
8299         * doc/posix-functions/iswlower_l.texi: Renamed from
8300         doc/glibc-functions/iswlower_l.texi.
8301         * doc/posix-functions/iswprint_l.texi: Renamed from
8302         doc/glibc-functions/iswprint_l.texi.
8303         * doc/posix-functions/iswpunct_l.texi: Renamed from
8304         doc/glibc-functions/iswpunct_l.texi.
8305         * doc/posix-functions/iswspace_l.texi: Renamed from
8306         doc/glibc-functions/iswspace_l.texi.
8307         * doc/posix-functions/iswupper_l.texi: Renamed from
8308         doc/glibc-functions/iswupper_l.texi.
8309         * doc/posix-functions/iswxdigit_l.texi: Renamed from
8310         doc/glibc-functions/iswxdigit_l.texi.
8311         * doc/posix-functions/isxdigit_l.texi: Renamed from
8312         doc/glibc-functions/isxdigit_l.texi.
8313         * doc/posix-functions/mbsnrtowcs.texi: Renamed from
8314         doc/glibc-functions/mbsnrtowcs.texi.
8315         * doc/posix-functions/mkdtemp.texi: Renamed from
8316         doc/glibc-functions/mkdtemp.texi.
8317         * doc/posix-functions/newlocale.texi: Renamed from
8318         doc/glibc-functions/newlocale.texi.
8319         * doc/posix-functions/nl_langinfo_l.texi: Renamed from
8320         doc/glibc-functions/nl_langinfo_l.texi.
8321         * doc/posix-functions/open_memstream.texi: Renamed from
8322         doc/glibc-functions/open_memstream.texi.
8323         * doc/posix-functions/opterr.texi: Renamed from
8324         doc/glibc-functions/opterr.texi.
8325         * doc/posix-functions/optind.texi: Renamed from
8326         doc/glibc-functions/optind.texi.
8327         * doc/posix-functions/optopt.texi: Renamed from
8328         doc/glibc-functions/optopt.texi.
8329         * doc/posix-functions/psignal.texi: Renamed from
8330         doc/glibc-functions/psignal.texi.
8331         * doc/posix-functions/scandir.texi: Renamed from
8332         doc/glibc-functions/scandir.texi.
8333         * doc/posix-functions/sched_get_priority_min.texi: Renamed from
8334         doc/glibc-functions/sched_get_priority_min.texi.
8335         * doc/posix-functions/signgam.texi: Renamed from
8336         doc/glibc-functions/signgam.texi.
8337         * doc/posix-functions/stpcpy.texi: Renamed from
8338         doc/glibc-functions/stpcpy.texi.
8339         * doc/posix-functions/stpncpy.texi: Renamed from
8340         doc/glibc-functions/stpncpy.texi.
8341         * doc/posix-functions/strcasecmp_l.texi: Renamed from
8342         doc/glibc-functions/strcasecmp_l.texi.
8343         * doc/posix-functions/strcoll_l.texi: Renamed from
8344         doc/glibc-functions/strcoll_l.texi.
8345         * doc/posix-functions/strfmon_l.texi: Renamed from
8346         doc/glibc-functions/strfmon_l.texi.
8347         * doc/posix-functions/strftime_l.texi: Renamed from
8348         doc/glibc-functions/strftime_l.texi.
8349         * doc/posix-functions/strncasecmp_l.texi: Renamed from
8350         doc/glibc-functions/strncasecmp_l.texi.
8351         * doc/posix-functions/strndup.texi: Renamed from
8352         doc/glibc-functions/strndup.texi.
8353         * doc/posix-functions/strnlen.texi: Renamed from
8354         doc/glibc-functions/strnlen.texi.
8355         * doc/posix-functions/strsignal.texi: Renamed from
8356         doc/glibc-functions/strsignal.texi.
8357         * doc/posix-functions/strxfrm_l.texi: Renamed from
8358         doc/glibc-functions/strxfrm_l.texi.
8359         * doc/posix-functions/timer_gettime.texi: Renamed from
8360         doc/glibc-functions/timer_gettime.texi.
8361         * doc/posix-functions/tolower_l.texi: Renamed from
8362         doc/glibc-functions/tolower_l.texi.
8363         * doc/posix-functions/toupper_l.texi: Renamed from
8364         doc/glibc-functions/toupper_l.texi.
8365         * doc/posix-functions/towctrans_l.texi: Renamed from
8366         doc/glibc-functions/towctrans_l.texi.
8367         * doc/posix-functions/towlower_l.texi: Renamed from
8368         doc/glibc-functions/towlower_l.texi.
8369         * doc/posix-functions/towupper_l.texi: Renamed from
8370         doc/glibc-functions/towupper_l.texi.
8371         * doc/posix-functions/uselocale.texi: Renamed from
8372         doc/glibc-functions/uselocale.texi.
8373         * doc/posix-functions/vdprintf.texi: Renamed from
8374         doc/glibc-functions/vdprintf.texi.
8375         * doc/posix-functions/wcpcpy.texi:
8376         Renamed from doc/glibc-functions/wcpcpy.texi.
8377         * doc/posix-functions/wcpncpy.texi: Renamed from
8378         doc/glibc-functions/wcpncpy.texi.
8379         * doc/posix-functions/wcscasecmp.texi: Renamed from
8380         doc/glibc-functions/wcscasecmp.texi.
8381         * doc/posix-functions/wcscasecmp_l.texi: Renamed from
8382         doc/glibc-functions/wcscasecmp_l.texi.
8383         * doc/posix-functions/wcscoll_l.texi: Renamed from
8384         doc/glibc-functions/wcscoll_l.texi.
8385         * doc/posix-functions/wcsdup.texi: Renamed from
8386         doc/glibc-functions/wcsdup.texi.
8387         * doc/posix-functions/wcsncasecmp.texi: Renamed from
8388         doc/glibc-functions/wcsncasecmp.texi.
8389         * doc/posix-functions/wcsncasecmp_l.texi: Renamed from
8390         doc/glibc-functions/wcsncasecmp_l.texi.
8391         * doc/posix-functions/wcsnlen.texi: Renamed from
8392         doc/glibc-functions/wcsnlen.texi.
8393         * doc/posix-functions/wcsnrtombs.texi: Renamed from
8394         doc/glibc-functions/wcsnrtombs.texi.
8395         * doc/posix-functions/wcsxfrm_l.texi: Renamed from
8396         doc/glibc-functions/wcsxfrm_l.texi.
8397         * doc/posix-functions/wctrans_l.texi: Renamed from
8398         doc/glibc-functions/wctrans_l.texi.
8399         * doc/posix-functions/wctype_l.texi: Renamed from
8400         doc/glibc-functions/wctype_l.texi.
8401         * doc/gnulib.texi (Function Substitutes): Add these subsections.
8402         (Glibc ctype.h, Glibc dirent.h, Glibc getopt.h, Glibc math.h,
8403         Glibc sched.h, Glibc signal.h, Glibc stdio.h, Glibc stdlib.h,
8404         Glibc string.h, Glibc time.h, Glibc unistd.h, Glibc wchar.h): Remove
8405         these subsections.
8406         (Glibc langinfo.h, Glibc locale.h, Glibc monetary.h, Glibc wctype.h):
8407         Remove sections.
8408
8409 2008-12-14  Bruno Haible  <bruno@clisp.org>
8410
8411         Update doc for POSIX:2008.
8412         * doc/posix-functions/*.texi: Update URL of POSIX specification.
8413
8414 2008-12-14  Bruno Haible  <bruno@clisp.org>
8415
8416         Update doc for POSIX:2008.
8417         * doc/pastposix-functions/bcmp.texi: Renamed from
8418         doc/posix-functions/bcmp.texi.
8419         * doc/pastposix-functions/bcopy.texi: Renamed from
8420         doc/posix-functions/bcopy.texi.
8421         * doc/pastposix-functions/bsd_signal.texi: Renamed from
8422         doc/posix-functions/bsd_signal.texi.
8423         * doc/pastposix-functions/bzero.texi: Renamed from
8424         doc/posix-functions/bzero.texi.
8425         * doc/pastposix-functions/ecvt.texi: Renamed from
8426         doc/posix-functions/ecvt.texi.
8427         * doc/pastposix-functions/fcvt.texi: Renamed from
8428         doc/posix-functions/fcvt.texi.
8429         * doc/pastposix-functions/ftime.texi: Renamed from
8430         doc/posix-functions/ftime.texi.
8431         * doc/pastposix-functions/gcvt.texi: Renamed from
8432         doc/posix-functions/gcvt.texi.
8433         * doc/pastposix-functions/getcontext.texi: Renamed from
8434         doc/posix-functions/getcontext.texi.
8435         * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
8436         doc/posix-functions/gethostbyaddr.texi.
8437         * doc/pastposix-functions/gethostbyname.texi: Renamed from
8438         doc/posix-functions/gethostbyname.texi.
8439         * doc/pastposix-functions/getwd.texi: Renamed from
8440         doc/posix-functions/getwd.texi.
8441         * doc/pastposix-functions/h_errno.texi: Renamed from
8442         doc/posix-functions/h_errno.texi.
8443         * doc/pastposix-functions/index.texi: Renamed from
8444         doc/posix-functions/index.texi.
8445         * doc/pastposix-functions/makecontext.texi: Renamed from
8446         doc/posix-functions/makecontext.texi.
8447         * doc/pastposix-functions/mktemp.texi: Renamed from
8448         doc/posix-functions/mktemp.texi.
8449         * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
8450         doc/posix-functions/pthread_attr_getstackaddr.texi.
8451         * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
8452         doc/posix-functions/pthread_attr_setstackaddr.texi.
8453         * doc/pastposix-functions/rindex.texi: Renamed from
8454         doc/posix-functions/rindex.texi.
8455         * doc/pastposix-functions/scalb.texi: Renamed from
8456         doc/posix-functions/scalb.texi.
8457         * doc/pastposix-functions/setcontext.texi: Renamed from
8458         doc/posix-functions/setcontext.texi.
8459         * doc/pastposix-functions/swapcontext.texi: Renamed from
8460         doc/posix-functions/swapcontext.texi.
8461         * doc/pastposix-functions/ualarm.texi: Renamed from
8462         doc/posix-functions/ualarm.texi.
8463         * doc/pastposix-functions/usleep.texi: Renamed from
8464         doc/posix-functions/usleep.texi.
8465         * doc/pastposix-functions/vfork.texi: Renamed from
8466         doc/posix-functions/vfork.texi.
8467         * doc/pastposix-functions/wcswcs.texi: Renamed from
8468         doc/posix-functions/wcswcs.texi.
8469         * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
8470         (Function Substitutes): Update.
8471
8472 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8473
8474         * modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
8475         m4/strerror.m4.
8476
8477 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8478             Bruno Haible  <bruno@clisp.org>
8479
8480         * modules/unilbrk/tables (Depends-on): Add unilbrk/base.
8481
8482 2008-12-13  Bruno Haible  <bruno@clisp.org>
8483
8484         * modules/strtoull (Depends-on): Remove unistd.
8485
8486 2008-12-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8487
8488         * modules/strtoull (Depends-on): Add stdlib.
8489
8490 2008-12-11  Simon Josefsson  <simon@josefsson.org>
8491
8492         * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add more warnings.
8493
8494 2008-12-10  Jim Meyering  <meyering@redhat.com>
8495
8496         gl_ASSERT: don't say assertions are disabled when they're not
8497         * m4/assert.m4 (gl_ASSERT): Do not make configure report
8498         "checking whether to enable assertions... no", when they are in
8499         fact enabled.  This is solely a bug in the output of configure.
8500         In spite of saying "no", NDEBUG was not defined in that case.
8501         Also, as noted by Eric Blake, leave assertions enabled upon
8502         --enable-assert=INVALID.
8503
8504 2008-12-10  Bruno Haible  <bruno@clisp.org>
8505
8506         Change MODULES.html to refer to POSIX:2008 where possible.
8507         * MODULES.html.sh (POSIX2008_URL): New variable.
8508         (posix_headers): Remove sys/timeb, ucontext.
8509         (posix2001_headers): New variable.
8510         (posix_functions): Remove bcmp, bcopy, bsd_signal, bzero, ecvt, fcvt,
8511         ftime, gcvt, getcontext, gethostbyaddr, gethostbyname, getwd, h_errno,
8512         index, makecontext, mktemp, pthread_attr_getstackaddr,
8513         pthread_attr_setstackaddr, rindex, scalb, setcontext, swapcontext,
8514         ualarm, usleep, vfork, wcswcs. Add the new POSIX:2008 functions.
8515         (posix2001_functions): New variable.
8516         (func_module): Use URLs to POSIX:2008 where possible and to POSIX:2001
8517         otherwise.
8518
8519 2008-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8520
8521         add missing include to parse-duration.c
8522         * lib/parse-duration.c: #include "xalloc.h", for xstrdup.
8523         * modules/parse-duration (Depends-on): Add xalloc.
8524
8525         fix sed script reading maint.mk
8526         * top/maint.mk (MYSELF): New macro, define as $(srcdir)/$(ME).
8527         (syntax-check-rules): Use it.
8528
8529 2008-12-09  Bruno Haible  <bruno@clisp.org>
8530
8531         * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Add another check, that fails on
8532         MacOS X 10.4/PowerPC.
8533         Reported by Simon Josefsson.
8534
8535 2008-12-08  Jim Meyering  <meyering@redhat.com>
8536
8537         work around mingw's lack of some S_IF definitions
8538         * lib/fts.c (S_IFLNK, S_IFSOCK): Define if not already defined.
8539         Reported by Simon Josefsson.
8540
8541 2008-12-08  Bruno Haible  <bruno@clisp.org>
8542
8543         * m4/signbitl.m4 (gl_SIGNBIT_TEST_PROGRAM): Add a link check of signbit
8544         applied to variables. Needed on MacOS X 10.4/PowerPC.
8545         Reported by Simon Josefsson.
8546
8547 2008-12-08  William Pursell  <bill.pursell@gmail.com>  (tiny change)
8548         and Eric Blake  <ebb9@byu.net>
8549
8550         assert: honor --enable-assert
8551         * m4/assert.m4 (gl_ASSERT): Synchronize with autoconf 2.64, in
8552         order to honor --enable-assert, rather than treating it as a
8553         synonym for --disable-assert.
8554
8555 2008-12-08  Jim Meyering  <meyering@redhat.com>
8556
8557         * lib/posixtm.c: Remove now-useless declaration of mktime.
8558
8559         * build-aux/announce-gen (get_tool_versions): Accept .xz tarballs.
8560
8561 2008-12-07  Bruno Haible  <bruno@clisp.org>
8562
8563         * tests/test-lock.c (test_lock, test_rwlock, test_recursive_lock,
8564         test_once): Mark functions as static.
8565         * tests/test-tls.c (test_tls): Likewise.
8566
8567 2008-12-07  Bruno Haible  <bruno@clisp.org>
8568
8569         * lib/striconveha.h (uniconv_register_autodetect): Renamed from
8570         iconv_register_autodetect.
8571
8572 2008-12-07  Jim Meyering  <meyering@redhat.com>
8573
8574         posixtm.c: avoid a warning
8575         * lib/posixtm.c (posixtime): Don't initialize tm0.
8576         It's no longer needed to placate gcc4's -Wuninitialized,
8577         and the attempt to placate would elicit a new warning.
8578
8579         unicodeio.c: mark unused parameters
8580         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
8581         (fallback_failure_callback): Likewise.
8582
8583 2008-12-07  Bruno Haible  <bruno@clisp.org>
8584
8585         * gnulib-tool (func_create_testdir): When building the tests
8586         subdirectory, ignore the modules gnumakefile and maintainer-makefile.
8587         Reported by Simon Josefsson.
8588
8589 2008-12-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8590
8591         * doc/manywarnings.texi, doc/gnulib-intro.texi: Fix typos.
8592
8593 2008-12-06  Bruno Haible  <bruno@clisp.org>
8594
8595         * lib/c-stack.h (c_stack_action): Clarify possible side effects.
8596         Suggested by Eric Blake.
8597
8598 2008-12-06  Bruno Haible  <bruno@clisp.org>
8599
8600         Fix a c-stack test failure on MacOS X.
8601         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Require
8602         AC_CANONICAL_HOST. Define FAULT_YIELDS_SIGBUS. If set, install a signal
8603         handler for SIGBUS as well.
8604         * lib/c-stack.c (c_stack_action): If FAULT_YIELDS_SIGBUS is set,
8605         install a signal handler for SIGBUS as well.
8606         Reported by Bruce Dugan <bld0401@gmail.com> via Eric Blake.
8607
8608 2008-12-06  Bruno Haible  <bruno@clisp.org>
8609
8610         Advocacy documentation.
8611         * doc/gnulib-intro.texi (Benefits): New section.
8612         * doc/gnulib.texi: Update.
8613
8614 2008-12-06  Bruno Haible  <bruno@clisp.org>
8615
8616         Document the 'manywarnings' module.
8617         * doc/manywarnings.texi: New file.
8618         * doc/gnulib.texi: Include it.
8619
8620 2008-12-05  Eric Blake  <ebb9@byu.net>
8621
8622         tests: silence some gcc warnings
8623         * tests/test-getdate.c (LOG) [!DEBUG]: Mark no-op void.
8624         * tests/uniwidth/test-uc_width2.c (finish_interval): Avoid printf
8625         type mismatches.
8626
8627 2008-12-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8628             Bruno Haible  <bruno@clisp.org>
8629
8630         * m4/openmp.m4 (AC_OPENMP): Do not define with Autoconf 2.62 or newer.
8631
8632 2008-11-29  Jim Meyering  <meyering@redhat.com>
8633
8634         unicodeio.c: mark unused parameters
8635         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
8636         (fallback_failure_callback): Likewise.
8637
8638         fts: fix a thinko
8639         * lib/fts.c (s_ifmt_shift_bits): Remove function.  Not needed after all.
8640         (set_stat_type): Return S_IF*-valued "type" directly.
8641         Prompted by James Youngman's spotting a related bug.
8642         Confirmed by further testing through find.
8643
8644         fts: provide dirent.d_type via FTSENT.fts_statp, when possible
8645         * lib/fts.c (D_TYPE): Define.
8646         (DT_UNKNOWN, DT_BLK, DT_CHR) [HAVE_STRUCT_DIRENT_D_TYPE]: Define.
8647         (DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK): Likewise.
8648         (s_ifmt_shift_bits): New function.
8649         (set_stat_type): New function.
8650         (fts_build): When not calling fts_stat, call set_stat_type
8651         to propagate dirent.d_type info to fts_read caller.
8652         * lib/fts_.h (FTSENT) [FTS_DEFER_STAT]: Mention that
8653         fts_statp->st_mode type information may be valid.
8654
8655 2008-11-28  Simon Josefsson  <simon@josefsson.org>
8656
8657         * lib/sys_time.in.h: Add extern "C" block for C++.  Suggested by
8658         Brian Dessent <brian@dessent.net>.  Reported by Sam Steingold
8659         <sds@gnu.org>.
8660
8661 2008-11-20  Bruno Haible  <bruno@clisp.org>
8662
8663         Attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
8664         * lib/math.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of
8665         INCLUDE_NEXT.
8666         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also
8667         INCLUDE_NEXT_AS_FIRST_DIRECTIVE.
8668         * modules/math (Makefile.am): Substitute
8669         INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of INCLUDE_NEXT.
8670         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
8671
8672 2008-11-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
8673             Bruno Haible  <bruno@clisp.org>
8674
8675         * lib/stdint.in.h: Define all type macros so that their expansion is
8676         a single typedef'ed token. Fixes a compilation failure in Boost which
8677         does "using ::int8_t;".
8678
8679 2008-11-18  Simon Josefsson  <simon@josefsson.org>
8680
8681         * m4/manywarnings.m4: New file with gl_MANYWARN_COMPLEMENT and
8682         gl_MANYWARN_ALL_GCC.
8683         * m4/warnings.m4: Removed gl_WARN_SUPPORTED and
8684         gl_WARN_COMPLEMENT.  Suggested by Bruno Haible <bruno@clisp.org>.
8685         * modules/manywarnings: New file.
8686         * MODULES.html.sh: Mention manywarnings module.
8687
8688 2008-11-18  Bruno Haible  <bruno@clisp.org>
8689
8690         * doc/gnulib-tool.texi (Unit tests): New section.
8691
8692 2008-11-18  Simon Josefsson  <simon@josefsson.org>
8693
8694         * top/maint.mk (refresh-po): Fix sed regexp to avoid problems with
8695         paths like 'lib/po/foo.po'.
8696
8697 2008-11-17  Simon Josefsson  <simon@josefsson.org>
8698
8699         * m4/warnings.m4: Improve code.  Reported by Ralf Wildenhues
8700         <Ralf.Wildenhues@gmx.de> and Paolo Bonzini <bonzini@gnu.org>.
8701
8702 2008-11-17  Simon Josefsson  <simon@josefsson.org>
8703
8704         * m4/warnings.m4: Use CPPFLAGS to really check whether the
8705         parameter works.
8706
8707 2008-11-17  Simon Josefsson  <simon@josefsson.org>
8708
8709         * m4/warnings.m4: Add gl_WARN_COMPLEMENT and gl_WARN_SUPPORTED.
8710
8711 2008-11-17  Bruce Korb  <bkorb@gnu.org>
8712
8713         * modules/parse-duration-tests: New file.
8714         * tests/test-parse-duration.sh: New file.
8715         * tests/test-parse-duration.c: New file.
8716
8717         New module 'parse-duration'.
8718         * lib/parse-duration.h: New file.
8719         * lib/parse-duration.c: New file.
8720         * modules/parse-duration: New file.
8721
8722 2008-11-17  Bruno Haible  <bruno@clisp.org>
8723
8724         * tests/test-select-out.sh: Comment out the first pipe test.
8725         Reported by Simon Josefsson.
8726
8727 2008-11-17  Bruno Haible  <bruno@clisp.org>
8728
8729         * modules/getaddrinfo (Depends-on): Add servent, hostent.
8730         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_SERVENT and
8731         gl_HOSTENT.
8732
8733 2008-11-17  Bruno Haible  <bruno@clisp.org>
8734
8735         * m4/sockets.m4 (gl_SOCKETS): After trying -lsocket, try also
8736         -lnetwork and -lnet. Needed for Haiku and BeOS.
8737
8738 2008-11-16  Bruno Haible  <bruno@clisp.org>
8739
8740         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix indentation.
8741
8742 2008-11-16  Bruno Haible  <bruno@clisp.org>
8743
8744         Avoid test failure on Haiku.
8745         * tests/test-fsync.c: Include <errno.h>.
8746         (main): Don't require that fsync (0) fails.
8747
8748 2008-11-15  Bruno Haible  <bruno@clisp.org>
8749
8750         New module 'hostent'.
8751         * modules/hostent: New file.
8752         * m4/hostent.m4: New file, based on code in m4/getaddrinfo.m4.
8753
8754 2008-11-15  Bruno Haible  <bruno@clisp.org>
8755
8756         New module 'servent'.
8757         * modules/servent: New file.
8758         * m4/servent.m4: New file, based on code in m4/getaddrinfo.m4.
8759
8760 2008-11-15  Bruno Haible  <bruno@clisp.org>
8761
8762         Avoid generating same test program with two different rules.
8763         * modules/frexp-nolibm-tests (Makefile.am): Rename test program from
8764         test-frexp to test-frexp-nolibm.
8765         * modules/frexpl-nolibm-tests (Makefile.am): Rename test program from
8766         test-frexpl to test-frexpl-nolibm.
8767
8768 2008-11-15  Bruno Haible  <bruno@clisp.org>
8769
8770         * modules/frexpl-tests (Makefile.am): Link test-frexpl with
8771         $(FREXPL_LIBM).
8772
8773 2008-11-15  Bruno Haible  <bruno@clisp.org>
8774
8775         * lib/netdb.in.h: Activate the definitions also when the system's
8776         <netdb.h> has 'struct addrinfo'.
8777         * m4/netdb_h.m4 (gl_HEADER_NETDB): Replace netdb.h also when it lacks
8778         EAI_OVERFLOW or AI_NUMERICSERV.
8779         * doc/posix-headers/netdb.texi: Document the problem.
8780
8781 2008-11-15  Bruno Haible  <bruno@clisp.org>
8782
8783         * tests/test-sched.c: Test also the existence of the SCHED_* macros.
8784
8785         Make the 'sched' module work on platforms where <sched.h> exists but
8786         is incomplete (such as Haiku).
8787         * lib/sched.in.h; Include the system's <sched.h> if it exists.
8788         (SCHED_FIFO, SCHED_RR, SCHED_OTHER): New macros.
8789         * m4/sched_h.m4 (gl_SCHED_H): Test whether <sched.h> exists and also
8790         defines SCHED_FIFO, SCHED_RR, SCHED_OTHER. Set HAVE_SCHED_H,
8791         HAVE_STRUCT_SCHED_PARAM.
8792         * modules/sched (Depends-on): Add include_next.
8793         (Makefile.am): Substitute HAVE_SCHED_H, INCLUDE_NEXT,
8794         PRAGMA_SYSTEM_HEADER, NEXT_SCHED_H, HAVE_STRUCT_SCHED_PARAM.
8795         * doc/posix-headers/sched.texi: Document the issue.
8796
8797 2008-11-13  Jim Meyering  <meyering@redhat.com>
8798
8799         test-argp-2: avoid test failure when PACKAGE_BUGREPORT is defined
8800         * tests/test-argp-2.sh: When PACKAGE_BUGREPORT was defined, this
8801         test would fail due to the difference in the Report bugs to ...
8802         line.  The expected address is empty, "<>", while the actual
8803         would contain e.g., "<bug-tar@gnu.org>".  Filter out any address.
8804
8805 2008-11-12  Bruno Haible  <bruno@clisp.org>
8806
8807         lstat: don't compile lstat.c on systems lacking lstat
8808         * m4/lstat.m4 (gl_FUNC_LSTAT): Don't compile lstat.c on systems
8809         which don't have lstat; this is handled by lib/sys_stat.in.h already.
8810         Reported by Daniel P. Berrange via Jim Meyering.
8811
8812 2008-11-12  Jim Meyering  <meyering@redhat.com>
8813
8814         * lib/unicodeio.c (unicode_to_mb): Correct spelling of u8_uctomb.
8815
8816 2008-11-12  Simon Josefsson  <simon@josefsson.org>
8817
8818         * modules/warnings (configure.ac): Do AC_SUBST([WARN_CFLAGS]) here
8819         instead.
8820
8821 2008-11-12  Bruno Haible  <bruno@clisp.org>
8822
8823         * lib/unicodeio.c: Include unistr.h.
8824         (utf8_wctomb): Remove function.
8825         (unicode_to_mb): Use utf8_uctomb instead of utf8_wctomb.
8826
8827 2008-11-12  Simon Josefsson  <simon@josefsson.org>
8828
8829         * m4/warnings.m4 (gl_WARN_INIT): Remove, suggested by Ralf
8830         Wildenhues <Ralf.Wildenhues@gmx.de> and Bruno Haible
8831         <bruno@clisp.org>.
8832         * modules/warnings (configure.ac): Don't call gl_WARN_INIT.
8833
8834 2008-11-12  Simon Josefsson  <simon@josefsson.org>
8835
8836         * doc/warnings.texi: New file, from Bruno Haible <bruno@clisp.org>.
8837         * doc/gnulib.texi: Add section for warnings.
8838
8839 2008-11-11  Bruno Haible  <bruno@clisp.org>
8840
8841         * lib/sockets.h: Add a comment.
8842
8843 2008-11-11  Karl Berry  <karl@gnu.org>
8844
8845         * config/srclist.txt (fdl.texi): add, syncing from gnustandards.
8846
8847 2008-11-11  Eric Blake  <ebb9@byu.net>
8848
8849         fdl.texi: avoid git symlinks
8850         * doc/fdl.texi: Copy, rather than link, fdl-1.3.texi.
8851
8852 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8853
8854         * m4/warnings.m4 (gl_WARN_ADD): Don't AC_SUBST the empty string.
8855
8856 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8857
8858         * m4/warnings.m4 (gl_WARN_INIT): Substitute WARN_CFLAGS.
8859         (gl_WARN_ADD): Substitute $2 if literal.
8860
8861 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8862
8863         * m4/warning.m4: Remove.
8864
8865 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8866
8867         * m4/warnings.m4: Almost complete rewrite. :-)
8868
8869 2008-11-10  Simon Josefsson  <simon@josefsson.org>
8870
8871         * modules/warnings: New module.
8872         * m4/warnings.m4: New file.
8873         * MODULES.html.sh: Mention warnings module.
8874         With review improvements from Paolo Bonzini <bonzini@gnu.org> and
8875         Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8876
8877 2008-11-10  Eric Blake  <ebb9@byu.net>
8878
8879         fdl.texi: make a symlink to the latest version
8880         * doc/standards.texi: Revert today's earlier change.
8881         * doc/fdl-1.2.texi: Rename from old fdl.texi...
8882         * doc/fdl.texi: ...and replace this with a symlink to the newer
8883         fdl-1.3.texi.
8884
8885 2008-11-10  Bruno Haible  <bruno@clisp.org>
8886
8887         * tests/test-select-fd.c (main): Accept the result file name as fourth
8888         argument.
8889         * tests/test-select-in.sh: Pass t-select-in.tmp as fourth argument.
8890         * tests/test-select-out.sh: Pass t-select-out.tmp as fourth argument.
8891
8892 2008-11-10  Bruno Haible  <bruno@clisp.org>
8893
8894         * lib/netdb.in.h: Use HAVE_STRUCT_ADDRINFO, HAVE_DECL_GETADDRINFO,
8895         HAVE_DECL_FREEADDRINFO, HAVE_DECL_GAI_STRERROR, HAVE_DECL_GETNAMEINFO
8896         as autoconf-substituted macros.
8897         * m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Initialize these variables to 1.
8898         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require
8899         gl_NETDB_H_DEFAULTS. Set these variables.
8900         * modules/netdb (Makefile.am): Substitute these variables.
8901
8902 2008-11-10  Eric Blake  <ebb9@byu.net>
8903
8904         standards.texi: include correct file for FDL 1.3
8905         * doc/standards.texi (GNU Free Documentation License): Change
8906         include file to pull in FDL 1.3, not 1.2.
8907
8908         fdl.texi: revert accidental change to license
8909         * doc/fdl.texi: This is FDL 1.2, not 1.3.
8910
8911 2008-11-10  Bruno Haible  <bruno@clisp.org>
8912
8913         * m4/printf.m4 (gl_PRINTF_ENOMEM): Guess yes on Haiku. Use the
8914         cross-compiling guesses also when the native compile gives no result.
8915
8916 2008-11-10  Bruno Haible  <bruno@clisp.org>
8917
8918         * lib/spawni.c (__spawni): Force variable into the stack.
8919
8920 2008-11-10  Bruno Haible  <bruno@clisp.org>
8921
8922         Add support for Haiku.
8923         * lib/fbufmode.c (fbufmode): Test a symbol that is not only defined on
8924         glibc and BeOS, but also on Haiku.
8925         * lib/fpurge.c (fpurge): Likewise.
8926         * lib/freadable.c (freadable): Likewise.
8927         * lib/freadahead.c (freadahead): Likewise.
8928         * lib/freading.c (freading): Likewise.
8929         * lib/freadptr.c (freadptr): Likewise.
8930         * lib/freadseek.c (freadptrinc): Likewise.
8931         * lib/fseeko.c (rpl_fseeko): Likewise.
8932         * lib/fseterr.c (fseterr): Likewise.
8933         * lib/fwritable.c (fwritable): Likewise.
8934         * lib/fwriting.c (fwriting): Likewise.
8935         Reported by Ingo Weinhold <ingo_weinhold@gmx.de>.
8936
8937 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
8938
8939         * lib/config.charset: Treat Haiku like BeOS.
8940
8941 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
8942
8943         * lib/binary-io.h (O_BINARY, O_TEXT): Treat Haiku like BeOS.
8944         * lib/fcntl.in.h (O_BINARY, O_TEXT): Likewise.
8945
8946 2008-11-08  Bruno Haible  <bruno@clisp.org>
8947
8948         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
8949         AC_CACHE_CHECK.
8950
8951 2008-11-08  Bruno Haible  <bruno@clisp.org>
8952
8953         * modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
8954
8955 2008-11-08  Bruno Haible  <bruno@clisp.org>
8956
8957         * tests/test-select-fd.c: New file.
8958         * tests/test-select-in.sh: New file.
8959         * tests/test-select-out.sh: New file.
8960         * tests/test-select-stdin.c: New file.
8961         * modules/select-tests (Files): Add the new files.
8962         (Depends-on): Add gettimeofday.
8963         (Makefile.am): Add test-select-in.sh, test-select-out.sh to TESTS.
8964         Set TESTS_ENVIRONMENT. Add test-select-fd, test-select-stdin to
8965         check_PROGRAMS. Define test_select_fd_LDADD, test_select_stdin_LDADD.
8966
8967 2008-11-06  Alexander V. Lukyanov  <lav@netis.ru>
8968             Bruno Haible  <bruno@clisp.org>
8969
8970         * lib/sys_stat.in.h: Enclose function definitions in extern "C".
8971
8972 2008-10-12  Giuseppe Scrivano  <gscrivano@gnu.org>
8973
8974         * build-aux/pmccabe2html: Added support for C++ source files.
8975
8976 2008-11-05  Ben Pfaff  <blp@gnu.org>
8977
8978         Fix lib/close.c build on Windows.
8979         * modules/close (Files): Add lib/w32sock.h.
8980
8981 2008-11-05  Joel E. Denny  <jdenny@ces.clemson.edu>
8982
8983         Accept Bison's NEWS format.
8984         * build-aux/announce-gen (print_news_deltas): Tweak
8985         $re_prefix.
8986
8987 2008-11-04  Bruno Haible  <bruno@clisp.org>
8988
8989         * modules/random_r (Maintainer): Add glibc.
8990
8991 2008-11-04  Simon Josefsson  <simon@josefsson.org>
8992
8993         * doc/alloca-opt.texi: Change license to GFDLv1.3+, as suggested
8994         by karl@freefriends.org (Karl Berry).
8995         * doc/alloca.texi: Likewise.
8996         * doc/c-ctype.texi: Likewise.
8997         * doc/c-strcase.texi: Likewise.
8998         * doc/c-strcaseeq.texi: Likewise.
8999         * doc/c-strcasestr.texi: Likewise.
9000         * doc/c-strstr.texi: Likewise.
9001         * doc/c-strtod.texi: Likewise.
9002         * doc/c-strtold.texi: Likewise.
9003         * doc/ctime.texi: Likewise.
9004         * doc/error.texi: Likewise.
9005         * doc/fdl.texi: Likewise.
9006         * doc/gcd.texi: Likewise.
9007         * doc/getdate.texi: Likewise.
9008         * doc/gnulib-intro.texi: Likewise.
9009         * doc/gnulib-tool.texi: Likewise.
9010         * doc/gnulib.texi: Likewise.
9011         * doc/inet_ntoa.texi: Likewise.
9012         * doc/maintain.texi: Likewise.
9013         * doc/make-stds.texi: Likewise.
9014         * doc/quote.texi: Likewise.
9015         * doc/regexprops-generic.texi: Likewise.
9016         * doc/standards.texi: Likewise.
9017         * doc/verify.texi: Likewise.
9018         * doc/visibility.texi: Likewise.
9019         * doc/gnulib.texi (GNU Free Documentation License): Include
9020         fdl-1.3.texi instead of fdl.texi.
9021
9022 2008-11-04  Simon Josefsson  <simon@josefsson.org>
9023
9024         * doc/fdl-1.3.texi: New file, from
9025         <http://www.gnu.org/licenses/fdl-1.3.texi>.
9026         * modules/fdl-1.3: Add.
9027         * MODULES.html.sh: Add fdl-1.3.
9028
9029 2008-11-03  Bruno Haible  <bruno@clisp.org>
9030
9031         Make determination of absolute name of header file work with AIX xlc.
9032         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Require
9033         AC_CANONICAL_HOST. On AIX, use "$CPP -C" rather than "$CPP" for
9034         preprocessing.
9035         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
9036         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
9037
9038 2008-11-03  Simon Josefsson  <simon@josefsson.org>
9039
9040         * top/maint.mk (COVERAGE_CCOPTS): Use --coverage instead of
9041         -fprofile-arcs -ftest-coverage.  Suggested by Ludovic Courtès
9042         <ludo@gnu.org>.
9043
9044 2008-11-02  Bruno Haible  <bruno@clisp.org>
9045
9046         Mark 'strpbrk' obsolete.
9047         * modules/strpbrk (Status, Notice): New sections.
9048         * modules/strtok_r (Depends-on): Add strpbrk.
9049
9050 2008-11-02  Bruno Haible  <bruno@clisp.org>
9051
9052         Mark 'strdup' obsolete.
9053         * modules/strdup (Status, Notice): New sections.
9054         * modules/findprog (Depends-on): Add strdup.
9055         * modules/getaddrinfo (Depends-on): Likewise.
9056         * modules/localename (Depends-on): Likewise.
9057         * modules/relocatable-lib (Depends-on): Likewise.
9058         * modules/relocatable-lib-lgpl (Depends-on): Likewise.
9059         * modules/relocatable-prog (Depends-on): Likewise.
9060         * modules/trim (Depends-on): Likewise.
9061         * modules/unictype/gen-ctype (Depends-on): Likewise.
9062         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
9063
9064 2008-11-02  Bruno Haible  <bruno@clisp.org>
9065
9066         Mark 'strcspn' obsolete.
9067         * modules/strcspn (Status, Notice): New sections.
9068
9069 2008-11-02  Bruno Haible  <bruno@clisp.org>
9070
9071         Mark 'rmdir' obsolete.
9072         * modules/rmdir (Status, Notice): New sections.
9073         * modules/clean-temp (Depends-on): Add rmdir.
9074         * modules/openat (Depends-on): Likewise.
9075
9076 2008-11-02  Bruno Haible  <bruno@clisp.org>
9077
9078         Mark 'raise' obsolete.
9079         * modules/raise (Status, Notice): New sections.
9080         (Include): Specify <signal.h>.
9081         * modules/stdio (Depends-on): Add raise.
9082         * modules/write (Depends-on): Likewise.
9083
9084 2008-11-02  Bruno Haible  <bruno@clisp.org>
9085
9086         Mark 'memset' obsolete.
9087         * modules/memset (Status, Notice): New sections.
9088
9089 2008-11-02  Bruno Haible  <bruno@clisp.org>
9090
9091         Mark 'memmove' obsolete.
9092         * modules/memmove (Status, Notice): New sections.
9093         * modules/argp (Depends-on): Add memmove.
9094         * modules/argz (Depends-on): Likewise.
9095         * modules/canonicalize (Depends-on): Likewise.
9096         * modules/canonicalize-lgpl (Depends-on): Likewise.
9097         * modules/fts (Depends-on): Likewise.
9098         * modules/getcwd (Depends-on): Likewise.
9099         * modules/human (Depends-on): Likewise.
9100         * modules/regex (Depends-on): Likewise.
9101         * modules/striconveh (Depends-on): Likewise.
9102         * modules/trim (Depends-on): Likewise.
9103         * modules/unistr/u8-move (Depends-on): Likewise.
9104         * modules/unistr/u16-move (Depends-on): Likewise.
9105         * modules/unistr/u32-move (Depends-on): Likewise.
9106
9107 2008-11-02  Bruno Haible  <bruno@clisp.org>
9108
9109         Mark 'memcpy' obsolete.
9110         * modules/memcpy (Status, Notice): New sections.
9111
9112 2008-11-02  Bruno Haible  <bruno@clisp.org>
9113
9114         Mark 'memcmp' obsolete.
9115         * modules/memcmp (Status, Notice): New sections.
9116         * modules/argmatch (Depends-on): Add memchr.
9117         * modules/backupfile (Depends-on): Likewise.
9118         * modules/c-strcasestr (Depends-on): Likewise.
9119         * modules/crypto/des (Depends-on): Likewise.
9120         * modules/csharpcomp (Depends-on): Likewise.
9121         * modules/fnmatch (Depends-on): Likewise.
9122         * modules/git-merge-changelog (Depends-on): Likewise.
9123         * modules/isnand (Depends-on): Likewise.
9124         * modules/isnand-nolibm (Depends-on): Likewise.
9125         * modules/isnanf (Depends-on): Likewise.
9126         * modules/isnanf-nolibm (Depends-on): Likewise.
9127         * modules/isnanl (Depends-on): Likewise.
9128         * modules/isnanl-nolibm (Depends-on): Likewise.
9129         * modules/mbchar (Depends-on): Likewise.
9130         * modules/memcoll (Depends-on): Likewise.
9131         * modules/quotearg (Depends-on): Likewise.
9132         * modules/regex (Depends-on): Likewise.
9133         * modules/relocatable-prog (Depends-on): Likewise.
9134         * modules/same (Depends-on): Likewise.
9135         * modules/signbit (Depends-on): Likewise.
9136         * modules/strcasestr-simple (Depends-on): Likewise.
9137         * modules/unictype/gen-ctype (Depends-on): Likewise.
9138         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
9139         * modules/uniname/uniname (Depends-on): Likewise.
9140         * modules/unistr/u8-cmp (Depends-on): Likewise.
9141
9142 2008-11-02  Bruno Haible  <bruno@clisp.org>
9143
9144         Mark 'memchr' obsolete.
9145         * modules/memchr (Status, Notice): New sections.
9146         * modules/argp (Depends-on): Add memchr.
9147         * modules/base64 (Depends-on): Likewise.
9148         * modules/c-strcasestr (Depends-on): Likewise.
9149         * modules/chdir-long (Depends-on): Likewise.
9150         * modules/fnmatch (Depends-on): Likewise.
9151         * modules/getsubopt (Depends-on): Likewise.
9152         * modules/git-merge-changelog (Depends-on): Likewise.
9153         * modules/glob (Depends-on): Likewise.
9154         * modules/strcasestr-simple (Depends-on): Likewise.
9155         * modules/strnlen (Depends-on): Likewise.
9156
9157 2008-11-02  Bruno Haible  <bruno@clisp.org>
9158
9159         Mark 'atexit' obsolete.
9160         * modules/atexit (Status, Notice): New sections.
9161         * modules/chdir-long (Depends-on): Add atexit.
9162         * modules/wait-process (Depends-on): Likewise.
9163
9164 2008-11-02  Bruno Haible  <bruno@clisp.org>
9165
9166         * gnulib-tool: New option --with-obsolete.
9167         (func_usage): Document it.
9168         (func_modules_transitive_closure): Drop obsolete dependencies if
9169         incobsolete is not true.
9170         (func_import): Read and save the incobsolete variable to the cache.
9171
9172 2008-11-02  Bruno Haible  <bruno@clisp.org>
9173
9174         * modules/TEMPLATE-EXTENDED: New field 'Status'.
9175         * gnulib-tool: New option --extract-status.
9176         (func_usage): Document it.
9177         (sed_extract_prog): Recognize it.
9178         (func_get_status): New function.
9179
9180 2008-10-30  Simon Josefsson  <simon@josefsson.org>
9181
9182         * modules/sockets (License): Change from LGPL to LGPLv2+.
9183
9184 2008-10-28  Simon Josefsson  <simon@josefsson.org>
9185
9186         * top/maint.mk: Add coverage rules, inspired by scripts in gnupdf.
9187
9188 2008-10-28  Simon Josefsson  <simon@josefsson.org>
9189
9190         * MODULES.html.sh (Support for systems lacking POSIX:2001):
9191         Mention times and sys_times.
9192         * modules/sys_times, modules/sys_times-tests: New modules.
9193         * modules/times, modules/times-tests: Likewise
9194         * m4/sys_times_h.m4: New file.
9195         * lib/sys_times.in.h: Likewise
9196         * lib/times.c: Likewise.
9197         * tests/test-sys_times.c: Likewise.
9198         * tests/test-times.c: Likewise.
9199         * doc/posix-headers/sys_times.texi: Update.
9200         * doc/posix-functions/times.texi: Update.
9201
9202 2008-10-28  Jim Meyering  <meyering@redhat.com>
9203
9204         * modules/tempname (Depends-on): Add lstat.
9205
9206         * modules/lstat (License): Relicense: LGPL -> LGPLv2+.
9207
9208 2008-10-28  Simon Josefsson  <simon@josefsson.org>
9209
9210         * gnulib-tool (func_emit_tests_Makefile_am): Revert last commit.
9211         * modules/argp-tests (test_argp_LDADD): Set EXEEXT here instead,
9212         using idiom used elsewhere in gnulib.
9213
9214 2008-10-27  Jim Meyering  <meyering@redhat.com>
9215
9216         * modules/gethostname (License): Relicense: LGPL -> LGPLv2+.
9217
9218 2008-10-27  Simon Josefsson  <simon@josefsson.org>
9219
9220         * gnulib-tool (func_emit_tests_Makefile_am): Set EXEEXT in
9221         TESTS_ENVIRONMENT, for shell scripts that needs to call built
9222         programs.
9223         * tests/test-argp-2.sh: Use $EXEEXT when needed.
9224
9225 2008-10-27  Simon Josefsson  <simon@josefsson.org>
9226
9227         * lib/sys_stat.in.h (lstat): Fix declaration for mingw.
9228
9229 2008-10-27  Bruno Haible  <bruno@clisp.org>
9230
9231         * tests/test-lstat.c: Include <stdio.h>.
9232
9233 2008-10-27  Simon Josefsson  <simon@josefsson.org>
9234
9235         * modules/lstat-tests: New module.
9236         * tests/test-lstat.c: New file.
9237
9238 2008-10-26  Jim Meyering  <meyering@redhat.com>
9239
9240         * lib/mkdir.c (rpl_mkdir) [_WIN32...]: Mark mode as an unused parameter.
9241
9242 2008-10-26  Simon Josefsson  <simon@josefsson.org>
9243             Bruno Haible  <bruno@clisp.org>
9244
9245         Fix a clash between the type DATADIR on Windows and the macro DATADIR.
9246         * modules/configmake (Include): Add a note that the include must come
9247         after all system headers.
9248         * lib/javaversion.c: Include configmake.h after all other includes.
9249
9250 2008-10-26  Bruno Haible  <bruno@clisp.org>
9251
9252         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Set default of
9253         HAVE_STRUCT_RANDOM_DATA to 1.
9254         (gl_STDLIB_H): Simplify.
9255
9256 2008-10-26  Simon Josefsson  <simon@josefsson.org>
9257
9258         * m4/stdlib_h.m4: Check for struct random_data.  Initialize and
9259         substitute HAVE_STRUCT_RANDOM_DATA.
9260         * lib/stdlib.in.h [!HAVE_STRUCT_RANDOM_DATA]: Provide struct
9261         random_data.
9262         * modules/stdlib (Makefile.am): Substitute
9263         HAVE_STRUCT_RANDOM_DATA.
9264
9265 2008-10-26  Simon Josefsson  <simon@josefsson.org>
9266
9267         * doc/gnulib.texi (@copying): Use GFDLv1.2+.
9268         * doc/gnulib-intro.texi (Copyright): Likewise.
9269
9270 2008-10-26  Simon Josefsson  <simon@josefsson.org>
9271
9272         * doc/gnulib.texi (Header files): C++ fixes, based on Bruno's
9273         findings.
9274
9275 2008-10-25  Ben Pfaff  <blp@cs.stanford.edu>
9276             Bruno Haible  <bruno@clisp.org>
9277
9278         * lib/unistd.in.h: Include <winsock2.h>.
9279         (socket, connect,accept, bind, getpeername, getsockname, getsockopt,
9280         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, select):
9281         Provide dummy declarations.
9282         (gethostname): Override.
9283         * lib/sys_socket.in.h (gethostname): Provide dummy declaration.
9284         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Invoke
9285         gl_PREREQ_SYS_H_WINSOCK2.
9286         * modules/gethostname (Files): Add m4/sys_socket_h.m4.
9287         * doc/posix-functions/gethostname.texi: More details.
9288
9289 2008-10-25  Bruno Haible  <bruno@clisp.org>
9290
9291         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
9292         gl_UNISTD_H_DEFAULTS, gl_SYS_IOCTL_H_DEFAULTS only if they exist.
9293         * modules/sys_socket (Files): Remove m4/unistd_h.m4, m4/sys_ioctl_h.m4.
9294
9295         * lib/sys_socket.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); Move macro from
9296         here ...
9297         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); ... to here.
9298         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Remove invocation of
9299         gl_UNISTD_H_DEFAULTS.
9300
9301 2008-10-25  Eric Blake  <ebb9@byu.net>
9302
9303         signbit: avoid spurious compiler failure
9304         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Move non-constant
9305         declarations inside function.
9306
9307 2008-10-24  Simon Josefsson  <simon@josefsson.org>
9308             Bruno Haible  <bruno@clisp.org>
9309
9310         * lib/stdlib.in.h (@GNULIB_RANDOM_R@): Include stdint.h.
9311         * modules/random_r (Depends-on): Add stdint.
9312
9313 2008-10-24  Bruno Haible  <bruno@clisp.org>
9314
9315         * modules/intprops (License): Change to LGPLv2+, with approval by Paul
9316         Eggert.
9317         * modules/strerror (License): Likewise.
9318
9319 2008-10-24  Jim Meyering  <meyering@redhat.com>
9320
9321         sys_socket: fix typo that inhibited expansion of @GNULIB_SEND@
9322         * modules/sys_socket (Depends-on) [Depends-on]: Fix typo.
9323
9324 2008-10-24  Eric Blake  <ebb9@byu.net>
9325
9326         getgroups: fix compilation when getgroups is available
9327         * lib/getgroups.c (includes): Include <unistd.h> for getgroups,
9328         but with <config.h> override of getgroups disabled.
9329
9330 2008-10-24  Simon Josefsson  <simon@josefsson.org>
9331
9332         * doc/gnulib.texi (Header files): Add note about C++ problems.
9333         Explained by Bruno Haible <bruno@clisp.org>.
9334
9335 2008-10-23  Bruno Haible  <bruno@clisp.org>
9336
9337         Define a dummy SA_NODEFER macro on Interix.
9338         * lib/signal.in.h (SA_NODEFER): Define fallback.
9339         Reported by Aleksey Cheusov <cheusov@tut.by> via
9340         Thomas Klausner <wiz@netbsd.org> and Eric Blake.
9341
9342 2008-10-23  Bruno Haible  <bruno@clisp.org>
9343
9344         * modules/freadahead (License): Change to LGPLv2+.
9345         Suggested by Simon Josefsson.
9346
9347 2008-10-23  Jim Meyering  <meyering@redhat.com>
9348
9349         random_r: new module
9350         * modules/random_r: New file.
9351         * m4/random_r.m4: New file.
9352         * lib/random_r.c: New file, from glibc.
9353         * modules/random_r-tests: New file.
9354         * tests/test-random_r.c: New file.
9355         * lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r):
9356          Declare.
9357         (RAND_MAX): Define.
9358         * m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
9359         * modules/stdlib: Substitute them, too.
9360         * MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
9361         * doc/glibc-functions/initstate_r.texi: Mention the new module.
9362         * doc/glibc-functions/random_r.texi: Likewise.
9363         * doc/glibc-functions/setstate_r.texi: Likewise.
9364         * doc/glibc-functions/srandom_r.texi: Likewise.
9365         * config/srclist.txt: Mention it.
9366
9367 2008-10-23  David Lutterkort  <lutter@redhat.com>
9368
9369         * modules/selinux-h: Search for LIB_SELINUX and mark it as a
9370         link requirement
9371
9372 2008-10-23  Jim Meyering  <meyering@redhat.com>
9373
9374         selinux-h: mark parameters of stub functions as intentionally unused
9375         * lib/se-selinux.in.h: Mark parameters as _UNUSED_PARAMETER_.
9376         * lib/se-context.in.h: Likewise.
9377
9378 2008-10-22  Simon Josefsson  <simon@josefsson.org>
9379
9380         * lib/sys_socket.in.h (FD_ISSET): Fix warnings under mingw.
9381
9382 2008-10-22  Simon Josefsson  <simon@josefsson.org>
9383
9384         * m4/getgroups.m4: Avoid invoking test with wrong parameters.
9385
9386 2008-10-22  Eric Blake  <ebb9@byu.net>
9387
9388         glthread/thread: avoid compiler warning
9389         * lib/glthread/thread.c (gl_thread_exit_func) [USE_WIN32_THREADS]:
9390         Add unreachable abort to silence compiler.
9391
9392 2008-10-22  Eric Blake  <ebb9@byu.net>
9393
9394         netdb: also supply struct addrinfo for cygwin 1.5.x
9395         * m4/netdb_h.m4 (gl_HEADER_NETDB): Check for incomplete header on
9396         older cygwin.
9397         * lib/netdb.in.h [!HAVE_STRUCT_ADDRINFO]: Also supply contents for
9398         cygwin.
9399         * doc/posix-headers/netdb.texi (netdb.h): Document this.
9400
9401 2008-10-22  Bruno Haible  <bruno@clisp.org>
9402
9403         * users.txt: Update entry about pspp.
9404
9405 2008-10-21  Bruno Haible  <bruno@clisp.org>
9406
9407         Simplification.
9408         * lib/sys_socket.in.h (_gl_close_fd_maybe_socket): Remove declaration.
9409         * lib/close.c (_gl_close_fd_maybe_socket): Make static.
9410
9411         Simplification.
9412         * lib/ioctl.c (ioctl): Don't undefine.
9413         * lib/socket.c (socket): Don't undefine.
9414
9415         Remove unused module indicator macros.
9416         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Don't define
9417         GNULIB_$1 as a C macro.
9418
9419         * doc/posix-functions/close.texi: Undo last change.
9420         * doc/posix-functions/ioctl.texi: Merge the two paragraphs about
9421         Windows platforms.
9422
9423 2008-10-21  Bruno Haible  <bruno@clisp.org>
9424
9425         Add gethostname() declaration to <unistd.h>.
9426         * lib/unistd.in.h (gethostname): New declaration.
9427         * lib/gethostname.c: Include <unistd.h>.
9428         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Require
9429         gl_UNISTD_H_DEFAULTS. Set HAVE_GETHOSTNAME.
9430         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETHOSTNAME
9431         and HAVE_GETHOSTNAME.
9432         * modules/gethostname (Depends-on): Add unistd.
9433         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9434         (Include): Specify <unistd.h>.
9435         * modules/unistd (Makefile.am): Substitute GNULIB_GETHOSTNAME and
9436         HAVE_GETHOSTNAME.
9437         * tests/test-gethostname.c: Include <unistd.h> first.
9438
9439 2008-10-21  Bruno Haible  <bruno@clisp.org>
9440
9441         * modules/poll-tests (Depends-on): Add sys_ioctl, ioctl.
9442         * modules/select-tests (Depends-on): Likewise.
9443         Reported by Simon Josefsson.
9444
9445 2008-10-21  Simon Josefsson  <simon@josefsson.org>
9446
9447         * lib/close.c: Add _gl_close_fd_maybe_socket from winsock.c.
9448         * lib/accept.c: New file, based on winsock.c.
9449         * lib/bind.c: New file, based on winsock.c.
9450         * lib/connect.c: New file, based on winsock.c.
9451         * lib/getpeername.c: New file, based on winsock.c.
9452         * lib/getsockname.c: New file, based on winsock.c.
9453         * lib/getsockopt.c: New file, based on winsock.c.
9454         * lib/ioctl.c: New file, based on winsock.c.
9455         * lib/listen.c: New file, based on winsock.c.
9456         * lib/recv.c: New file, based on winsock.c.
9457         * lib/recvfrom.c: New file, based on winsock.c.
9458         * lib/send.c: New file, based on winsock.c.
9459         * lib/sendto.c: New file, based on winsock.c.
9460         * lib/setsockopt.c: New file, based on winsock.c.
9461         * lib/shutdown.c: New file, based on winsock.c.
9462         * lib/socket.c: New file, based on winsock.c.
9463         * lib/w32sock.h: New file, based on winsock.c.
9464         * lib/winsock.c: Remove file.
9465         * modules/accept: Likewise.
9466         * modules/bind: Likewise.
9467         * modules/connect: Likewise.
9468         * modules/getpeername: Likewise.
9469         * modules/getsockname: Likewise.
9470         * modules/getsockopt: Likewise.
9471         * modules/ioctl: Likewise.
9472         * modules/listen: Likewise.
9473         * modules/recv: Likewise.
9474         * modules/recvfrom: Likewise.
9475         * modules/send: Likewise.
9476         * modules/sendto: Likewise.
9477         * modules/setsockopt: Likewise.
9478         * modules/shutdown: Likewise.
9479         * modules/socket: Use socket.c instead of winsock.c.
9480         * modules/sys_socket: Remove (unneeded?) dependency on winsock.c.
9481         * doc/posix-functions/accept.texi: Doc fix.
9482         * doc/posix-functions/bind.texi: Doc fix.
9483         * doc/posix-functions/close.texi: Doc fix.
9484         * doc/posix-functions/connect.texi: Doc fix.
9485         * doc/posix-functions/getpeername.texi: Doc fix.
9486         * doc/posix-functions/getsockname.texi: Doc fix.
9487         * doc/posix-functions/getsockopt.texi: Doc fix.
9488         * doc/posix-functions/ioctl.texi: Doc fix.
9489         * doc/posix-functions/listen.texi: Doc fix.
9490         * doc/posix-functions/recv.texi: Doc fix.
9491         * doc/posix-functions/recvfrom.texi: Doc fix.
9492         * doc/posix-functions/send.texi: Doc fix.
9493         * doc/posix-functions/sendto.texi: Doc fix.
9494         * doc/posix-functions/setsockopt.texi: Doc fix.
9495         * doc/posix-functions/shutdown.texi: Doc fix.
9496         * doc/posix-functions/socket.texi: Doc fix.
9497
9498 2008-10-20  Bruno Haible  <bruno@clisp.org>
9499
9500         Take into account the role of SIGABRT_COMPAT on Windows 2008.
9501         * lib/sigprocmask.c (SIGABRT_COMPAT, SIGABRT_COMPAT_MASK): New macros.
9502         (sigismember, sigaddset, sigdelset, sigfillset, rpl_signal): Handle it
9503         as an alias for SIGABRT.
9504         * lib/sigaction.c (SIGABRT_COMPAT): New macro.
9505         (sigaction): Map it to SIGABRT.
9506         Reported by Ramiro Polla <ramiro.polla@gmail.com> via Eric Blake.
9507
9508 2008-10-20  Bruno Haible  <bruno@clisp.org>
9509
9510         * lib/fts.c: Don't include lstat.h.
9511         * lib/openat.c: Include <sys/stat.h> instead of lstat.h.
9512
9513         Move the lstat() declaration to <sys/stat.h>.
9514         * lib/lstat.h: Remove file.
9515         * lib/sys_stat.in.h: Add special invocation convention.
9516         (lstat): New declaration.
9517         * lib/lstat.c (orig_lstat): New function.
9518         (rpl_lstat): Use orig_lstat instead of lstat.
9519         * m4/lstat.m4 (gl_FUNC_LSTAT): Require gl_SYS_STAT_H_DEFAULTS and
9520         AC_C_INLINE. Set REPLACE_LSTAT.
9521         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LSTAT
9522         and REPLACE_LSTAT.
9523         * modules/lstat (Files): Remove lib/lstat.h.
9524         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
9525         (Include): Specify <sys/stat.h> instead of lstat.h.
9526         * modules/sys_stat (Makefile.am): Substitute GNULIB_LSTAT and
9527         REPLACE_LSTAT.
9528         * NEWS: Mention the change.
9529
9530 2008-10-20  Bruno Haible  <bruno@clisp.org>
9531
9532         * modules/posix_spawn-tests: New file.
9533         * tests/test-posix_spawn3.c: New file.
9534
9535 2008-10-20  Bruno Haible  <bruno@clisp.org>
9536
9537         * modules/posix_spawnp-tests (Depends-on): Add sys_wait.
9538         * tests/test-posix_spawn1.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
9539         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Remove fallback definitions.
9540         * tests/test-posix_spawn2.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
9541         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Likewise.
9542
9543 2008-10-20  Bruno Haible  <bruno@clisp.org>
9544
9545         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Test against another bug
9546         of posix_spawn on AIX 5.3.
9547
9548 2008-10-20  Bruno Haible  <bruno@clisp.org>
9549
9550         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Make the check on MacOS X.
9551
9552 2008-10-20  Bruno Haible  <bruno@clisp.org>
9553
9554         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Use AC_LANG_SOURCE instead
9555         of AC_LANG_PROGRAM.
9556
9557 2008-10-20  Simon Josefsson  <simon@josefsson.org>
9558
9559         * lib/netdb.in.h: Don't define GNU specific constants until they
9560         are supported or needed.  Reported by Bruno Haible
9561         <bruno@clisp.org>.
9562
9563 2008-10-20  Simon Josefsson  <simon@josefsson.org>
9564
9565         * lib/canon-host.c: Include netdb.h instead of getaddrinfo.h.
9566
9567 2008-10-20  Simon Josefsson  <simon@josefsson.org>
9568
9569         * lib/getaddrinfo.h: Remove file.
9570         * modules/getaddrinfo: Reflect move from getaddrinfo.h to netdb.h.
9571         * m4/getaddrinfo.m4: Call gl_HEADER_NETDB.  Don't check for netdb.h.
9572         * lib/netdb.in.h: Add declarations from getaddrinfo.h.
9573         * m4/netdb_h.m4: Initialize GNULIB_GETADDRINFO to 0.
9574         * modules/netdb: Substitute GNULIB_GETADDRINFO.
9575         * lib/getaddrinfo.c: Include netdb.h instead of getaddrinfo.h.
9576         * tests/test-getaddrinfo.c: Likewise.
9577         * lib/gai_strerror.c: Likewise.  Also drop HAVE_NETDB_H check.
9578         * NEWS: Mention change.
9579
9580 2008-10-19  Bruno Haible  <bruno@clisp.org>
9581
9582         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Remove unneeded code.
9583
9584 2008-10-19  Bruno Haible  <bruno@clisp.org>
9585
9586         * lib/wait-process.c: Include simply <sys/wait.h>.
9587         (waitpid, WTERMSIG, WCOREDUMP, WEXITSTATUS, WIFSIGNALED, WIFEXITED,
9588         WIFSTOPPED): Remove fallback definitions.
9589         * modules/wait-process (Depends-on): Add sys_wait.
9590
9591         New module 'sys_wait'.
9592         * modules/sys_wait: New file.
9593         * lib/sys_wait.in.h: New file, partially copied from
9594         lib/wait-process.c.
9595         * m4/sys_wait_h.m4: New file.
9596         * doc/posix-headers/sys_wait.texi: Mention the new module.
9597
9598 2008-10-19  Bruno Haible  <bruno@clisp.org>
9599
9600         * m4/wait-process.m4 (gl_WAIT_PROCESS): Remove test for unistd.h.
9601
9602 2008-10-19  Bruno Haible  <bruno@clisp.org>
9603
9604         Assume that waitpid() fills an 'int' status, not a 'union wait'.
9605         * lib/wait-process.c (WAIT_T): Remove type.
9606         (WTERMSIG, WCOREDUMP, WEXITSTATUS): Define fallbacks using bit masks.
9607         (wait_subprocess): Update.
9608
9609 2008-10-19  Bruno Haible  <bruno@clisp.org>
9610
9611         New module 'atoll'.
9612         * modules/atoll: New file.
9613         * lib/stdlib.in.h (atoll): New declaration.
9614         * lib/atoll.c: New file, from glibc with modifications.
9615         * m4/atoll.m4: New file.
9616         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_ATOLL,
9617         HAVE_ATOLL.
9618         * modules/stdlib (Makefile.am): Substitute GNULIB_ATOLL, HAVE_ATOLL.
9619         * doc/posix-functions/atoll.texi: Mention the new module.
9620
9621 2008-10-19  Bruno Haible  <bruno@clisp.org>
9622
9623         Add strtoull() declaration to <stdlib.h>.
9624         * lib/stdlib.in.h (strtoull): New declaration.
9625         * m4/strtoull.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
9626         Set HAVE_STRTOULL.
9627         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOULL,
9628         HAVE_STRTOULL.
9629         * modules/strtoull (Depends-on): Add stdlib.
9630         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9631         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOULL,
9632         HAVE_STRTOULL.
9633
9634 2008-10-19  Bruno Haible  <bruno@clisp.org>
9635
9636         Add strtoll() declaration to <stdlib.h>.
9637         * lib/stdlib.in.h (strtoll): New declaration.
9638         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
9639         Set HAVE_STRTOLL.
9640         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOLL,
9641         HAVE_STRTOLL.
9642         * modules/strtoll (Depends-on): Add stdlib.
9643         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9644         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOLL, HAVE_STRTOLL.
9645
9646 2008-10-19  Bruno Haible  <bruno@clisp.org>
9647
9648         * modules/bcopy (Depends-on): Add strings.
9649         (Include): Specify <strings.h>.
9650
9651 2008-10-19  Bruno Haible  <bruno@clisp.org>
9652
9653         * doc/posix-functions/atexit.texi: Update doc regarding mingw.
9654
9655 2008-10-19  Bruno Haible  <bruno@clisp.org>
9656
9657         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
9658         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
9659         mingw.
9660
9661 2008-10-19  Bruno Haible  <bruno@clisp.org>
9662
9663         * lib/atanl.c: Don't include isnanl.h.
9664         * lib/cosl.c: Likewise.
9665         * lib/ldexpl.c: Likewise.
9666         * lib/logl.c: Likewise.
9667         * lib/sinl.c: Likewise.
9668         * lib/sqrtl.c: Likewise.
9669         * lib/tanl.c: Likewise.
9670
9671         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
9672         * lib/isnanf.h: Remove file.
9673         * lib/isnand.h: Remove file.
9674         * lib/isnanl.h: Remove file.
9675         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
9676         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
9677         macros.
9678         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
9679         HAVE_ISNANF, don't define it as a C macro.
9680         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
9681         HAVE_ISNAND, don't define it as a C macro.
9682         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
9683         HAVE_ISNANL, don't define it as a C macro.
9684         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
9685         HAVE_ISNAN[FDL].
9686         * modules/isnanf (Files): Remove lib/isnanf.h.
9687         (Depends-on): Add math.
9688         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
9689         (Include): Specify <math.h> instead of isnanf.h.
9690         * modules/isnand (Files): Remove lib/isnand.h.
9691         (Depends-on): Add math.
9692         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
9693         (Include): Specify <math.h> instead of isnand.h.
9694         * modules/isnanl (Files): Remove lib/isnanl.h.
9695         (Depends-on): Add math.
9696         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
9697         (Include): Specify <math.h> instead of isnanl.h.
9698         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
9699         HAVE_ISNAN[FDL].
9700         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
9701         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
9702         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
9703         * NEWS: Mention the change.
9704
9705 2008-10-18  Bruno Haible  <bruno@clisp.org>
9706
9707         Add getusershell(), setusershell(), endusershell() declarations to
9708         <unistd.h>.
9709         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
9710         declarations.
9711         * lib/getusershell.c: Include unistd.h.
9712         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
9713         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
9714         HAVE_GETUSERSHELL.
9715         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
9716         and HAVE_GETUSERSHELL.
9717         * modules/getusershell (Depends-on): Add unistd, extensions.
9718         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9719         (Include): Specify <unistd.h>.
9720         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
9721         HAVE_GETUSERSHELL.
9722
9723 2008-10-18  Bruno Haible  <bruno@clisp.org>
9724
9725         Add a getloadavg() declaration to <stdlib.h>.
9726         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
9727         getloadavg declaration.
9728         (getloadavg): New declaration.
9729         * lib/getloadavg.c: Include <stdlib.h> first.
9730         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
9731         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
9732         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
9733         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
9734         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
9735         * modules/getloadavg (Depends-on): Add stdlib, extensions.
9736         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9737         (Include): Specify <stdlib.h>.
9738         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
9739         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
9740
9741 2008-10-18  Bruno Haible  <bruno@clisp.org>
9742
9743         * lib/dirchownmod.c: Don't include lchmod.h.
9744
9745         Move the lchmod() declaration to <sys/stat.h>.
9746         * lib/lchmod.h: Remove file.
9747         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
9748         (lchmod): New declaration, moved here from lib/lchown.h.
9749         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
9750         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
9751         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
9752         and HAVE_LCHMOD.
9753         * modules/lchmod (Files): Remove lib/lchmod.h.
9754         (Depends-on): Add sys_stat, extensions.
9755         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
9756         (Include): Specify <sys/stat.h> instead of lchmod.h.
9757         * modules/sys_stat (Depends-on): Add link-warning.
9758         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
9759         definition of GL_LINK_WARNING.
9760         * NEWS: Mention the change.
9761
9762 2008-10-18  Bruno Haible  <bruno@clisp.org>
9763
9764         * lib/fchdir.c: Don't include dirfd.h.
9765         * lib/fts.c: Likewise.
9766         * lib/getcwd.c: Likewise.
9767         * lib/glob.c: Likewise.
9768
9769         Move the dirfd() declaration to <dirent.h>.
9770         * lib/dirfd.h: Remove file.
9771         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
9772         (dirfd): New declaration.
9773         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
9774         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
9775         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
9776         HAVE_DECL_DIRFD.
9777         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
9778         HAVE_DECL_DIRFD.
9779         * modules/dirfd (Files): Remove lib/dirfd.h.
9780         (Depends-on): Add dirent, extensions.
9781         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
9782         (Include): Specify <dirent.h> instead of dirfd.h.
9783         * modules/dirent (Depends-on): Add link-warning.
9784         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
9785         definition of GL_LINK_WARNING.
9786         * NEWS: Mention the change.
9787
9788 2008-10-18  Bruno Haible  <bruno@clisp.org>
9789
9790         Move the euidaccess() declaration to <unistd.h>.
9791         * lib/euidaccess.h: Remove file.
9792         * lib/unistd.in.h (euidaccess): New declaration.
9793         * lib/euidaccess.c: Don't include euidaccess.h.
9794         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
9795         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
9796         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
9797         and HAVE_EUIDACCESS.
9798         * modules/euidaccess (Files): Remove lib/euidaccess.h.
9799         (Depends-on): Add unistd.
9800         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9801         (Include): Specify <unistd.h> instead of euidaccess.h.
9802         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
9803         HAVE_EUIDACCESS.
9804         * NEWS: Mention the change.
9805
9806 2008-10-18  Bruno Haible  <bruno@clisp.org>
9807
9808         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
9809
9810         Move the getdomainname() declaration to <unistd.h>.
9811         * lib/getdomainname.h: Remove file.
9812         * lib/unistd.in.h (getdomainname): New declaration.
9813         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
9814         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
9815         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
9816         HAVE_GETDOMAINNAME.
9817         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
9818         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
9819         * modules/getdomainname (Files): Remove lib/getdomainname.h.
9820         (Depends-on): Add unistd, extensions.
9821         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9822         (Includes): Specify <unistd.h> instead of getdomainname.h.
9823         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
9824         HAVE_GETDOMAINNAME.
9825         * NEWS: Mention the change.
9826
9827 2008-10-18  Bruno Haible  <bruno@clisp.org>
9828
9829         * modules/dirent: New file.
9830         * m4/dirent_h.m4: New file.
9831         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
9832         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
9833         * modules/fchdir (Files): Remove lib/dirent.in.h.
9834         (Depends-on): Add dirent.
9835         (Makefile.am): Move rules to modules/dirent.
9836         * doc/posix-headers/dirent.texi: Mention the new module.
9837
9838 2008-10-18  Bruno Haible  <bruno@clisp.org>
9839
9840         Avoid -Wunused-parameter warnings in public gnulib header files.
9841         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
9842         macro.
9843         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
9844
9845 2008-10-18  Bruno Haible  <bruno@clisp.org>
9846
9847         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
9848         * doc/glibc-functions/error.texi: Mention the module 'error'.
9849         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
9850         * doc/glibc-functions/getdomainname.texi: Mention the module
9851         'getdomainname'.
9852         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
9853         * doc/glibc-functions/getpagesize.texi: Mention the module
9854         'getpagesize'.
9855         * doc/glibc-functions/getusershell.texi: Mention the module
9856         'getusershell'.
9857         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
9858         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
9859         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
9860         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
9861         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
9862         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
9863         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
9864         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
9865         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
9866         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
9867         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
9868         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
9869         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
9870         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
9871
9872 2008-10-17  Bruno Haible  <bruno@clisp.org>
9873
9874         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
9875         HP-UX and IRIX, use -0.0L.
9876         * tests/test-ceill.c (minus_zero): Likewise.
9877         * tests/test-floorl.c (minus_zero): Likewise.
9878         * tests/test-frexpl.c (minus_zero): Likewise.
9879         * tests/test-isnan.c (minus_zerol): Likewise.
9880         * tests/test-isnanl.h (minus_zero): Likewise.
9881         * tests/test-ldexpl.c (minus_zero): Likewise.
9882         * tests/test-roundl.c (minus_zero): Likewise.
9883         * tests/test-signbit.c (minus_zerol): Likewise.
9884         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
9885         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
9886         * tests/test-truncl.c (minus_zero): Likewise.
9887         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
9888         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
9889         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
9890         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
9891
9892 2008-10-17  Bruno Haible  <bruno@clisp.org>
9893
9894         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
9895         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
9896         that it gets activated only for gcc >= 3.0.
9897         * lib/dirent.in.h: Likewise.
9898         * lib/errno.in.h: Likewise.
9899         * lib/fcntl.in.h: Likewise.
9900         * lib/float.in.h: Likewise.
9901         * lib/iconv.in.h: Likewise.
9902         * lib/inttypes.in.h: Likewise.
9903         * lib/locale.in.h: Likewise.
9904         * lib/math.in.h: Likewise.
9905         * lib/netdb.in.h: Likewise.
9906         * lib/netinet_in.in.h: Likewise.
9907         * lib/search.in.h: Likewise.
9908         * lib/signal.in.h: Likewise.
9909         * lib/spawn.in.h: Likewise.
9910         * lib/stdarg.in.h: Likewise.
9911         * lib/stdint.in.h: Likewise.
9912         * lib/stdio.in.h: Likewise.
9913         * lib/stdlib.in.h: Likewise.
9914         * lib/string.in.h: Likewise.
9915         * lib/strings.in.h: Likewise.
9916         * lib/sys_file.in.h: Likewise.
9917         * lib/sys_ioctl.in.h: Likewise.
9918         * lib/sys_select.in.h: Likewise.
9919         * lib/sys_socket.in.h: Likewise.
9920         * lib/sys_stat.in.h: Likewise.
9921         * lib/sys_time.in.h: Likewise.
9922         * lib/sysexits.in.h: Likewise.
9923         * lib/time.in.h: Likewise.
9924         * lib/unistd.in.h: Likewise.
9925         * lib/wchar.in.h: Likewise.
9926         * lib/wctype.in.h: Likewise.
9927         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
9928
9929 2008-10-17  Jim Meyering  <meyering@redhat.com>
9930
9931         ignore-value: don't depend on inline module
9932         * modules/ignore-value (Depends-on): Remove 'inline'.
9933         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
9934         Suggestion from Bruno Haible.
9935
9936 2008-10-17  Bruno Haible  <bruno@clisp.org>
9937
9938         New implementation of condition variables for Win32.
9939         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
9940         (gl_linked_waitqueue_t): New type.
9941         (gl_cond_t): Use it.
9942         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
9943         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
9944         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
9945         (glthread_cond_init_func, glthread_cond_wait_func,
9946         glthread_cond_timedwait_func, glthread_cond_signal_func,
9947         glthread_cond_broadcast_func, glthread_cond_destroy_func):
9948         Reimplemented on the basis of gl_linked_waitqueue_t.
9949         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
9950         gl_waitqueue_t.
9951         (gl_rwlock_t): Update.
9952         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
9953
9954 2008-10-17  Simon Josefsson  <simon@josefsson.org>
9955
9956         * modules/recvfrom (Depends-on): Add dependency on getpeername.
9957         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
9958
9959 2008-10-17  Jim Meyering  <meyering@redhat.com>
9960
9961         ignore-value: new module
9962         * modules/ignore-value: New file.
9963         * lib/ignore-value.h: New file.
9964         * MODULES.html.sh (Compiler warning management): New section,
9965         just for this module.  More to come.
9966
9967 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
9968
9969         open-safer.c: avoid 'signed and unsigned in conditional...' warning
9970         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
9971         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
9972
9973 2008-10-16  Jim Meyering  <meyering@redhat.com>
9974
9975         openat-die.c: avoid 'no previous prototype' warning
9976         * lib/openat-die.c: Include "openat.h".
9977         Reported by Reuben Thomas <rrt@sc3d.org>.
9978
9979 2008-10-16  Simon Josefsson  <simon@josefsson.org>
9980
9981         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
9982         * lib/netdb.in.h: Fix typo.
9983         Reported by Bruno Haible  <bruno@clisp.org>
9984
9985         * lib/netdb.in.h: Include sys/socket.h for platforms without
9986         netdb.h, to get structures like hostent on MinGW.
9987         * modules/netdb (Depends-on): Add sys_socket.
9988
9989 2008-10-15  Simon Josefsson  <simon@josefsson.org>
9990
9991         * modules/netdb, modules/netdb-tests: New file.
9992         * m4/netdb_h.m4: New file.
9993         * lib/netdb.in.h: Add, currently just an empty file pending
9994         definitions.
9995         * tests/test-netdb.c: New file.
9996         * doc/posix-headers/netdb.texi: Mention that we replace it if
9997         needed.
9998         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
9999         netdb.
10000
10001 2008-10-15  Simon Josefsson  <simon@josefsson.org>
10002
10003         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
10004         with code.
10005
10006 2008-10-13  Bruno Haible  <bruno@clisp.org>
10007
10008         * lib/glthread/cond.c (glthread_cond_wait_func,
10009         glthread_cond_timedwait_func): Add a comment.
10010
10011 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
10012
10013         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
10014         * tests/test-select.c: Likewise,
10015
10016 2008-10-13  Bruno Haible  <bruno@clisp.org>
10017
10018         * lib/glthread/cond.c (glthread_cond_wait_func,
10019         glthread_cond_timedwait_func): Fix variable name.
10020         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
10021
10022 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
10023
10024         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
10025         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
10026         struct sockaddr.sa_len.
10027         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
10028
10029 2008-10-13  Simon Josefsson  <simon@josefsson.org>
10030
10031         * build-aux/pmccabe2html: Add css and css_url parameters.
10032
10033 2008-10-12  Bruno Haible  <bruno@clisp.org>
10034
10035         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
10036         calling aclx_get.
10037         Reported by Rainer Tammer <tammer@tammer.net>.
10038
10039 2008-10-12  Bruno Haible  <bruno@clisp.org>
10040
10041         Use msvcrt aware primitives for creation/termination of Win32 threads.
10042         * lib/glthread/thread.c: Include <process.h>.
10043         (glthread_create_func): Use _beginthreadex instead of CreateThread.
10044         (wrapper_func): Update signature.
10045         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
10046
10047 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
10048             Bruno Haible  <bruno@clisp.org>
10049
10050         Provide a Win32 implementation of the 'cond' module.
10051         * lib/glthread/cond.h [USE_WIN32]: New implementation.
10052         * lib/glthread/cond.c (glthread_cond_init_func,
10053         glthread_cond_wait_func, glthread_cond_timedwait_func,
10054         glthread_cond_signal_func, glthread_cond_broadcast_func,
10055         glthread_cond_destroy_func) [USE_WIN32]: New functions.
10056         * modules/cond (Dependencies): Add gettimeofday.
10057
10058 2008-10-11  Bruno Haible  <bruno@clisp.org>
10059
10060         Make sleep work on older versions of mingw.
10061         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
10062         only whether it exists.
10063         * doc/posix-functions/sleep.texi: Mention the problem with older
10064         versions of mingw.
10065
10066 2008-10-11  Bruno Haible  <bruno@clisp.org>
10067
10068         New module 'shutdown'.
10069         * modules/shutdown: New file.
10070         * lib/sys_socket.in.h (shutdown): New declaration.
10071         * lib/winsock.c (shutdown): New function.
10072         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
10073         GNULIB_SHUTDOWN.
10074         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
10075         * doc/posix-functions/shutdown.texi: Document the new module.
10076
10077 2008-10-11  Jim Meyering  <meyering@redhat.com>
10078
10079         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
10080
10081 2008-10-11  Bruno Haible  <bruno@clisp.org>
10082
10083         New module 'fclose'.
10084         * modules/fclose: New file.
10085         * lib/stdio.in.h (fclose): New declaration.
10086         * lib/fclose.c: New file.
10087         * m4/fclose.m4: New file.
10088         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
10089         REPLACE_FCLOSE.
10090         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
10091         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
10092         REPLACE_FCLOSE.
10093         * modules/close (Depends-on): fclose.
10094         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
10095
10096 2008-10-11  Bruno Haible  <bruno@clisp.org>
10097
10098         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
10099         set errno and don't call _close.
10100
10101 2008-10-10  Bruno Haible  <bruno@clisp.org>
10102
10103         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
10104         ACL, not afterwards. Fixes test failure on Cygwin.
10105
10106 2008-10-09  Ben Pfaff  <blp@gnu.org>
10107
10108         * build-aux/announce-gen: Fix gnulib version related part of usage
10109         message.  Die with a useful error message if no tarballs are
10110         found.
10111
10112 2008-10-10  Jim Meyering  <meyering@redhat.com>
10113
10114         bootstrap: use git's --depth=N option only if it's supported
10115         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
10116         recognize the --depth option.  Reported by Pádraig Brady.
10117
10118 2008-10-09  Bruno Haible  <bruno@clisp.org>
10119
10120         New module 'ioctl'.
10121         * modules/ioctl: New file.
10122         * lib/sys_socket.in.h (ioctl): Remove declaration.
10123         * lib/winsock.c: Include <sys/ioctl.h>.
10124         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
10125         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
10126         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
10127         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
10128         * doc/posix-functions/ioctl.texi: Mention the new module.
10129
10130 2008-10-09  Bruno Haible  <bruno@clisp.org>
10131
10132         New module 'sys_ioctl'.
10133         * lib/sys_ioctl.in.h: New file.
10134         * m4/sys_ioctl_h.m4: New file.
10135         * modules/sys_ioctl: New file.
10136         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
10137
10138 2008-10-09  Bruno Haible  <bruno@clisp.org>
10139
10140         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
10141         * lib/winsock.c: Include <stdarg.h>.
10142         (rpl_ioctl): Change to second argument 'int' and then varargs.
10143
10144 2008-10-09  Bruno Haible  <bruno@clisp.org>
10145
10146         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
10147         when the sys_socket module is present and the system has <winsock2.h>.
10148
10149 2008-10-09  Bruno Haible  <bruno@clisp.org>
10150
10151         * doc/posix-functions/close.texi: Mention module 'close' instead of
10152         module 'sys_socket'.
10153
10154 2008-10-09  Bruno Haible  <bruno@clisp.org>
10155
10156         * doc/glibc-headers/sys_ioctl.texi: New file.
10157         * doc/gnulib.texi: Include it.
10158
10159 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
10160             Bruno Haible  <bruno@clisp.org>
10161
10162         Combine the two replacements of 'close'.
10163         * lib/sys_socket.in.h (close): Define to a reminder to include
10164         <unistd.h>.
10165         (_gl_close_fd_maybe_socket): New declaration.
10166         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
10167         * lib/winsock.c (close): Remove undefinition.
10168         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
10169         needed for the gnulib module 'close'.
10170         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
10171         define to an error symbol or to a warning, if suitable.
10172         * lib/close.c: Include <sys/socket.h>.
10173         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
10174         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
10175         UNISTD_H_HAVE_WINSOCK2_H.
10176         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
10177         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
10178         UNISTD_H_HAVE_WINSOCK2_H.
10179         * modules/sys_socket (Files): Add m4/unistd_h.m4.
10180         (configure.ac): Set a module indicator.
10181         (Makefile.am): Substitute GNULIB_CLOSE.
10182         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
10183         * modules/poll-tests (Depends-on): Add close.
10184         * modules/select-tests (Depends-on): Likewise.
10185
10186 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
10187             Bruno Haible  <bruno@clisp.org>
10188
10189         New module 'close'.
10190         * modules/close: New file.
10191         * lib/unistd.in.h (close): Move declaration out of the
10192         FCHDIR_REPLACEMENT scope.
10193         (_gl_unregister_fd): New declaration.
10194         * lib/close.c: New file.
10195         * lib/fchdir.c (rpl_close): Remove function.
10196         * m4/close.m4: New file.
10197         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
10198         close.
10199         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
10200         REPLACE_CLOSE.
10201         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
10202         REPLACE_CLOSE.
10203         * modules/fchdir (Depends-on): Add close.
10204
10205 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
10206             Bruno Haible  <bruno@clisp.org>
10207
10208         * lib/fcntl.in.h (open): Simplify conditionals.
10209         (_gl_register_fd): New declaration.
10210         * lib/fchdir.c (rpl_open): Remove function.
10211         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
10212         also.
10213         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
10214         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
10215         open.
10216
10217 2008-10-09  Jim Meyering  <meyering@redhat.com>
10218
10219         GNUmakefile: use the more name-space-friendly "_version"
10220         * top/GNUmakefile (_dummy): Update.
10221         (_version): Rename from "version".
10222
10223 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
10224             Bruno Haible  <bruno@clisp.org>
10225
10226         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
10227         rpl_close.
10228         (_gl_register_fd): New function, extracted from rpl_open.
10229         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
10230         (rpl_open, rpl_opendir): Use _gl_register_fd.
10231
10232 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
10233
10234         Fix organization of 'open' replacement.
10235         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
10236         (gl_FUNC_OPEN): Use it.
10237         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
10238
10239 2008-10-08  Bruno Haible  <bruno@clisp.org>
10240
10241         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
10242
10243 2008-10-08  Simon Josefsson  <simon@josefsson.org>
10244
10245         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
10246         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
10247         listen).
10248
10249 2008-10-08  Eric Blake  <ebb9@byu.net>
10250
10251         GNUmakefile: add 'make version' target
10252         * top/GNUmakefile (_curr-ver): Split version update rules...
10253         (version): ...into a target.
10254
10255 2008-10-07  Bruno Haible  <bruno@clisp.org>
10256
10257         Use a more portable replacement expression for -0.0L.
10258         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
10259         instead of -0.0L. Fix m4 quotation.
10260
10261         * tests/test-signbit.c: Include <float.h>.
10262         (minus_zero): New variable.
10263         (test_signbitl): Use minus_zero instead of -zero.
10264         * modules/signbit-tests (Depends-on): Add float.
10265
10266         * tests/test-ceill.c: Include <float.h>.
10267         (zero): Remove variable.
10268         (minus_zero): New variable.
10269         (main): Use minus_zero instead of -zero.
10270         * modules/ceill-tests (Depends-on): Add float.
10271
10272         * tests/test-floorl.c: Include <float.h>.
10273         (zero): Remove variable.
10274         (minus_zero): New variable.
10275         (main): Use minus_zero instead of -zero.
10276         * modules/floorl-tests (Depends-on): Add float.
10277
10278         * tests/test-roundl.c: Include <float.h>.
10279         (zero): Remove variable.
10280         (minus_zero): New variable.
10281         (main): Use minus_zero instead of -zero.
10282         * modules/roundl-tests (Depends-on): Add float.
10283
10284         * tests/test-truncl.c: Include <float.h>.
10285         (zero): Remove variable.
10286         (minus_zero): New variable.
10287         (main): Use minus_zero instead of -zero.
10288         * modules/truncl-tests (Depends-on): Add float.
10289
10290         * tests/test-frexpl.c (zero): Remove variable.
10291         (minus_zero): New variable.
10292         (main): Use minus_zero instead of -zero.
10293         * modules/frexpl-tests (Depends-on): Add float.
10294
10295         * tests/test-isnan.c (zerol): Remove variable.
10296         (minus_zerol): New variable.
10297         (test_long_double): Use minus_zerol instead of -zerol.
10298         * modules/isnan-tests (Depends-on): Add float.
10299
10300         * tests/test-isnanl.h (zero): Remove variable.
10301         (minus_zero): New variable.
10302         (main): Use minus_zero instead of -zero.
10303         * modules/isnanl-nolibm-tests (Depends-on): Add float.
10304         * modules/isnanl-tests (Depends-on): Add float.
10305
10306         * tests/test-ldexpl.c (zero): Remove variable.
10307         (minus_zero): New variable.
10308         (main): Use minus_zero instead of -zero.
10309         * modules/ldexpl-tests (Depends-on): Add float.
10310
10311         * tests/test-snprintf-posix.h (zerol): Remove variable.
10312         (minus_zerol): New variable.
10313         (test_function): Use minus_zerol instead of -zerol.
10314         * modules/snprintf-posix-tests (Depends-on): Add float.
10315         * modules/vsnprintf-posix-tests (Depends-on): Add float.
10316
10317         * tests/test-sprintf-posix.h (zerol): Remove variable.
10318         (minus_zerol): New variable.
10319         (test_function): Use minus_zerol instead of -zerol.
10320         * modules/sprintf-posix-tests (Depends-on): Add float.
10321         * modules/vsprintf-posix-tests (Depends-on): Add float.
10322
10323         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
10324         (minus_zerol): New variable.
10325         (test_function): Use minus_zerol instead of -zerol.
10326         * modules/vasnprintf-posix-tests (Depends-on): Add float.
10327
10328         * tests/test-vasprintf-posix.c (zerol): Remove variable.
10329         (minus_zerol): New variable.
10330         (test_function): Use minus_zerol instead of -zerol.
10331         * modules/vasprintf-posix-tests (Depends-on): Add float.
10332
10333 2008-10-07  Simon Josefsson  <simon@josefsson.org>
10334
10335         * MODULES.html.sh (Support for building documentation): Mention
10336         pmccabe2html.  Sort entries.
10337
10338         Add pmccabe2html module, from gnupdf.
10339         * build-aux/pmccabe.css: New file.
10340         * build-aux/pmccabe2html: New file.
10341         * m4/pmccabe2html.m4: New file.
10342         * modules/pmccabe2html: New file.
10343
10344 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
10345
10346         flock: new module
10347         * MODULES.html.sh: Add to list of modules.
10348         * lib/flock.c: flock implementation for Windows and Unix systems
10349         which have fcntl.
10350         * doc/glibc-functions/flock.texi: Update documentation.
10351         * lib/sys_file.in.h: <sys/file.h> header file.
10352         * m4/flock.m4: M4 macros.
10353         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
10354         * modules/flock: flock module.
10355         * modules/flock-tests: flock tests module.
10356         * modules/sys_file: sys/file.h module.
10357         * tests/test-flock.c: test suite for flock.
10358
10359 2008-10-06  Jim Meyering  <meyering@redhat.com>
10360
10361         bootstrap: check for LT_INIT more portably still ;-)
10362         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
10363         Spotted by Bruno Haible.
10364
10365 2008-10-06  Eric Blake  <ebb9@byu.net>
10366
10367         test-signbit: avoid tripping Irix cc bug on -0.0L
10368         * tests/test-signbit.c (minus_zerol): Delete, and replace with
10369         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
10370         entire testsuite consistent and avoids an Irix 6.2 bug.
10371
10372 2008-10-05  Bruno Haible  <bruno@clisp.org>
10373             Jim Meyering  <jim@meyering.net>
10374
10375         Add an option for ignoring EPIPE during close_stdout.
10376         * lib/closeout.h: Include <stdbool.h>.
10377         (close_stdout_set_ignore_EPIPE): New declaration.
10378         * lib/closeout.c: Include <stdbool.h>.
10379         (ignore_EPIPE): New variable.
10380         (close_stdout_set_ignore_EPIPE): New function.
10381         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
10382         * lib/close-stream.c (close_stream): Mention the possible EPIPE
10383         failure.
10384         * modules/closeout (Depends-on): Add stdbool.
10385
10386 2008-10-05  Bruno Haible  <bruno@clisp.org>
10387
10388         * modules/accept: New file.
10389         * modules/bind: New file.
10390         * modules/connect: New file.
10391         * modules/getpeername: New file.
10392         * modules/getsockname: New file.
10393         * modules/getsockopt: New file.
10394         * modules/listen: New file.
10395         * modules/recv: New file.
10396         * modules/recvfrom: New file.
10397         * modules/send: New file.
10398         * modules/sendto: New file.
10399         * modules/setsockopt: New file.
10400         * modules/socket: New file.
10401         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
10402         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
10403         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
10404         the particular module is requested. Add a link warning when the
10405         particular module is not requested.
10406         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
10407         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
10408         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
10409         the particular module is requested.
10410         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
10411         gl_SYS_SOCKET_H_DEFAULTS): New macros.
10412         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
10413         * modules/sys_socket (Depends-on): Add link-warning.
10414         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
10415         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
10416         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
10417         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
10418         GL_LINK_WARNING.
10419         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
10420         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
10421         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
10422         * doc/posix-functions/getpeername.texi: Mention the new module
10423         'getpeername'.
10424         * doc/posix-functions/getsockname.texi: Mention the new module
10425         'getsockname'.
10426         * doc/posix-functions/getsockopt.texi: Mention the new module
10427         'getsockopt'.
10428         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
10429         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
10430         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
10431         * doc/posix-functions/send.texi: Mention the new module 'send'.
10432         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
10433         * doc/posix-functions/setsockopt.texi: Mention the new module
10434         'setsockopt'.
10435         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
10436         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
10437         listen, connect, accept.
10438         * modules/select-tests (Depends-on): Likewise.
10439
10440 2008-10-05  Bruno Haible  <bruno@clisp.org>
10441
10442         * lib/winsock.c (strerror): Remove unused #undef.
10443         (rpl_close): Remove unused local variable.
10444
10445         * modules/sys_socket (Depends-on); Add errno.
10446
10447 2008-10-05  Bruno Haible  <bruno@clisp.org>
10448
10449         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
10450         (select): Add a link warning when the 'select' module is not used.
10451         * modules/sys_select (Depends-on): Add link-warning.
10452         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
10453         Suggested by Paolo Bonzini.
10454
10455 2008-10-05  Jim Meyering  <meyering@redhat.com>
10456
10457         bootstrap: check for LT_INIT more portably
10458         * build-aux/bootstrap: Avoid using grep -E, since it's not
10459         portable enough.  Suggestion from Bruno Haible.
10460
10461 2008-10-05  Bruno Haible  <bruno@clisp.org>
10462
10463         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
10464         as being fixed by gnulib.
10465
10466 2008-10-05  Bruno Haible  <bruno@clisp.org>
10467
10468         * modules/select-tests: New file, mostly copied from
10469         modules/sys_select-tests.
10470         * tests/test-select.c: New file, mostly copied from
10471         tests/test-sys_select.c.
10472         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
10473         * modules/sys_select-tests (Depends-on): Remove all dependencies.
10474         (Makefile.am): Remove test_sys_select_LDADD.
10475
10476         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
10477         to an undefined symbol, for an error message.
10478         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
10479         (gl_SYS_SELECT_H_DEFAULTS): New macro.
10480         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
10481         winsock-select.c here.
10482         * modules/sys_select (Files): Remove lib/winsock-select.c.
10483         (Depends-on): Remove alloca.
10484         (Makefile.am): Substitute GNULIB_SELECT.
10485         * modules/select: New file.
10486         * doc/posix-functions/select.texi: Update.
10487
10488 2008-10-05  Bruno Haible  <bruno@clisp.org>
10489
10490         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
10491         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
10492         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
10493         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
10494         getdtablesize.
10495         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
10496         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
10497
10498 2008-10-05  Bruno Haible  <bruno@clisp.org>
10499
10500         * modules/getdtablesize-tests: New file.
10501         * tests/test-getdtablesize.c: New file.
10502
10503         New module 'getdtablesize'.
10504         * lib/unistd.in.h (getdtablesize): New declaration.
10505         * lib/getdtablesize.c: New file.
10506         * m4/getdtablesize.m4: New file.
10507         * modules/getdtablesize: New file.
10508         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
10509         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
10510         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
10511         HAVE_GETDTABLESIZE.
10512         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
10513
10514 2008-10-05  Bruno Haible  <bruno@clisp.org>
10515
10516         * modules/sched (Makefile.am): Fix typo.
10517         Reported by Simon Josefsson.
10518
10519 2008-10-05  Jim Meyering  <meyering@redhat.com>
10520
10521         bootstrap: check for LT_INIT, too
10522         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
10523         are deprecated.  Suggestion from Ralf Wildenhues.
10524
10525 2008-10-05  Bruno Haible  <bruno@clisp.org>
10526
10527         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
10528         overriding them by ours.
10529         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
10530
10531 2008-10-05  Jim Meyering  <meyering@redhat.com>
10532
10533         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
10534         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
10535         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
10536
10537 2008-10-04  Bruno Haible  <bruno@clisp.org>
10538
10539         * modules/dup2 (License): Change to LGPLv2+.
10540         * modules/sleep (License): Likewise.
10541         * modules/perror (License): Likewise.
10542         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
10543         Blake.
10544         * modules/signal (License): Likewise.
10545         * modules/sigprocmask (License): Likewise.
10546         * modules/raise (License): Change to LGPLv2+, with approval by Jim
10547         Meyering.
10548
10549 2008-10-04  Bruno Haible  <bruno@clisp.org>
10550
10551         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
10552         Reported by Rainer Tammer <tammer@tammer.net>.
10553
10554 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
10555             Bruno Haible  <bruno@clisp.org>
10556
10557         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
10558         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
10559         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
10560
10561 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
10562
10563         filevercmp: new module
10564         * lib/filevercmp.h: New function filevercmp comparing version strings.
10565         * lib/filevercmp.c: Implementation of filevercmp function.
10566         * modules/filevercmp: Module metadata.
10567         * tests/test-filevercmp.c: Unit test for new module.
10568         * modules/filevercmp-tests: Unit test metadata.
10569         * MODULES.html.sh: Add filevercmp module.
10570
10571 2008-10-03  Bruno Haible  <bruno@clisp.org>
10572
10573         * lib/c-ctype.h: Add comment.
10574         Reported by Jim Meyering.
10575
10576 2008-10-02  Bruno Haible  <bruno@clisp.org>
10577
10578         * modules/posix_spawn-internal (Depends-on): Add 'open'.
10579
10580 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
10581
10582         * build-aux/bootstrap: Allow renaming bootstrap, and change the
10583         name of bootstrap.conf accordingly.
10584
10585 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
10586
10587         * build-aux/bootstrap: Install git-merge-changelog configuration
10588         items into .gitconfig if needed.
10589
10590 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
10591
10592         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
10593         git repository, and initialize/update it accordingly.
10594
10595 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
10596
10597         * modules/fsync-tests: New file.
10598         * tests/test-fsync.c: New file.
10599
10600         New module 'fsync'.
10601         * lib/fsync.c: New file.
10602         * m4/fsync.m4: New file.
10603         * modules/fsync: New file.
10604         * lib/unistd.in.h (fsync): New declaration.
10605         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
10606         GNULIB_FSYNC and HAVE_FSYNC.
10607         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
10608         * MODULES.html.sh (posix_functions): Add fsync.
10609         * doc/posix-functions/fsync.texi: Mention the new module.
10610
10611 2008-10-02  Jim Meyering  <meyering@redhat.com>
10612
10613         fts.c: sync with similar code from coreutils' remove.c
10614         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
10615         Guard also with "#if defined __linux__", since for now at least,
10616         this code is Linux-kernel-specific.
10617
10618 2008-10-02  Jim Meyering  <meyering@redhat.com>
10619
10620         fts: bug fixes
10621         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
10622         Include <sys/vfs.h>, not <sys/statfs.h>.
10623
10624         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
10625         Include <sys/vfs.h>, not <sys/statfs.h>.
10626
10627 2008-10-01  Bruno Haible  <bruno@clisp.org>
10628
10629         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
10630         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
10631         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
10632         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
10633         * doc/posix-functions/posix_spawnp.texi: Likewise.
10634         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
10635         whether posix_spawn actually works.
10636         * m4/pipe.m4 (gl_PIPE): Likewise.
10637         * modules/execute (Files): Add m4/posix_spawn.m4.
10638         * modules/pipe (Files): Add m4/posix_spawn.m4.
10639         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
10640
10641 2008-10-01  Jim Meyering  <meyering@redhat.com>
10642
10643         remove trailing spaces
10644         * NEWS: Likewise.
10645         * lib/poll.c (poll): Likewise.
10646         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
10647         * lib/winsock.c (rpl_close): Likewise.
10648         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
10649         * modules/yield: Likewise.
10650         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
10651         * tests/test-sys_select.c (connect_to_socket): Likewise.
10652
10653         fts.c: adjust a new interface to be more generally useful
10654         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
10655         (fts_build): Adjust caller.
10656
10657 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10658
10659         * modules/cond-tests: New file.
10660         * tests/test-cond.c: New file.
10661
10662 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10663             Bruno Haible  <bruno@clisp.org>
10664
10665         * modules/cond (Dependencies): Add errno, time.
10666         * lib/glthread/cond.h: Include <time.h>.
10667         (gl_cond_define, gl_cond_define_initialized): Use the same definition
10668         across platforms.
10669
10670 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10671             Bruno Haible  <bruno@clisp.org>
10672
10673         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
10674
10675 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10676             Bruno Haible  <bruno@clisp.org>
10677
10678         * modules/tls-tests (Depends-on): Add thread, yield.
10679         (configure.ac): Remove all checks.
10680         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
10681         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
10682         gl_thread_self): Remove definitions. Include glthread/thread.h and
10683         glthread/yield.h instead.
10684         (test_tls): Pass an additional NULL argument to gl_thread_join.
10685
10686 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10687             Bruno Haible  <bruno@clisp.org>
10688
10689         * modules/lock-tests (Depends-on): Add thread, yield.
10690         (configure.ac): Remove all checks.
10691         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
10692         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
10693         gl_thread_self): Remove definitions. Include glthread/thread.h and
10694         glthread/yield.h instead.
10695         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
10696         additional NULL argument to gl_thread_join.
10697
10698 2008-09-30  Bruno Haible  <bruno@clisp.org>
10699
10700         Fix the Win32 implementation of the 'thread' module.
10701         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
10702         pointer type.
10703         (gl_thread_self): Invoke gl_thread_self_func.
10704         (gl_thread_self_func): New declaration.
10705         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
10706         (do_init_self_key, init_self_key): New functions.
10707         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
10708         Remove some fields.
10709         (running_threads, running_lock): Remove variables.
10710         (get_current_thread_handle): New function.
10711         (gl_thread_self_func, wrapper_func, glthread_create_func,
10712         glthread_join_func, gl_thread_exit_func): Largely rewritten and
10713         simplified.
10714
10715 2008-09-30  Bruno Haible  <bruno@clisp.org>
10716
10717         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
10718         files.
10719
10720 2008-09-30  Jim Meyering  <meyering@redhat.com>
10721
10722         fts.m4: correct the test for statfs.f_type
10723         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
10724         when checking for statfs.f_type.
10725
10726 2008-09-15  Simon Josefsson  <simon@josefsson.org>
10727
10728         tests: avoid some compiler warnings
10729         * tests/test-memchr.c (main): Pass NULL indirectly.
10730         * tests/test-getdate.c (main): Remove unused variable 'ret'.
10731
10732 2008-09-29  Ondřej Vašík  <ovasik@redhat.com>
10733
10734         getdate.y: disallow countable dayshifts like "4 yesterday ago"
10735         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
10736         exactly specified dayshifts.
10737         (dayshift): New rule.
10738         (rel): Add dayshift.
10739         (relative_time_table) [tomorrow, yesterday, today, now]:
10740         Use tDAY_SHIFT in place of tDAY_UNIT.
10741         * tests/test-getdate.c: Add tests for now-disallowed countable
10742         dayshifts, e.g., "4 yesterday ago".
10743
10744 2008-09-29  Bruno Haible  <bruno@clisp.org>
10745
10746         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
10747         * tests/test-posix_spawn1.in.sh: Renamed from
10748         tests/test-posix_spawn.in.sh.
10749         * tests/test-posix_spawn2.c: New file.
10750         * tests/test-posix_spawn2.in.sh: New file.
10751         * modules/posix_spawnp-tests (Files): Update.
10752         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
10753
10754 2008-09-29  Bruno Haible  <bruno@clisp.org>
10755
10756         Propagate effects of putenv/setenv/unsetenv to child processes.
10757         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
10758         * lib/pipe.c (create_pipe): Likewise.
10759
10760 2008-09-29  Bruno Haible  <bruno@clisp.org>
10761
10762         Enable use of shell scripts as executables in mingw.
10763         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
10764         run the program as a shell script.
10765         * lib/pipe.c (create_pipe): Likewise.
10766         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
10767         resulting array.
10768
10769 2008-09-29  Eric Blake  <ebb9@byu.net>
10770
10771         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
10772
10773 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
10774
10775         * doc/posix-functions/accept.texi: Update mingw problems.
10776         * doc/posix-functions/bind.texi: Update mingw problems.
10777         * doc/posix-functions/close.texi: Update mingw problems.
10778         * doc/posix-functions/connect.texi: Update mingw problems.
10779         * doc/posix-functions/getpeername.texi: Update mingw problems.
10780         * doc/posix-functions/getsockname.texi: Update mingw problems.
10781         * doc/posix-functions/getsockopt.texi: Update mingw problems.
10782         * doc/posix-functions/ioctl.texi: Update mingw problems.
10783         * doc/posix-functions/listen.texi: Update mingw problems.
10784         * doc/posix-functions/recv.texi: Update mingw problems.
10785         * doc/posix-functions/recvfrom.texi: Update mingw problems.
10786         * doc/posix-functions/select.texi: Update mingw problems.
10787         * doc/posix-functions/send.texi: Update mingw problems.
10788         * doc/posix-functions/sendto.texi: Update mingw problems.
10789         * doc/posix-functions/setsockopt.texi: Update mingw problems.
10790         * doc/posix-functions/socket.texi: Update mingw problems.
10791
10792 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
10793             Bruno Haible  <bruno@clisp.org>
10794
10795         * lib/sys_select.in.h: Include sys/time.h.
10796         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
10797         * modules/sys_select: Depend on sys_time.
10798         * tests/test-sys_select.c: Test that sys/select.h defines struct
10799         timeval fully.
10800
10801 2008-09-29  Bruno Haible  <bruno@clisp.org>
10802
10803         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
10804         * lib/sys_select.in.h: Likewise.
10805
10806 2008-09-29  Bruno Haible  <bruno@clisp.org>
10807
10808         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
10809
10810 2008-09-29  Bruno Haible  <bruno@clisp.org>
10811
10812         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
10813         Set LIBSOCKET instead of augmenting LIBS.
10814         * modules/sockets (Link): New section.
10815         * modules/sockets-tests (test_sockets_LDADD): New variable.
10816         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
10817         * modules/poll-tests (test_poll_LDADD): New variable.
10818         * NEWS: Document the change.
10819
10820 2008-09-29  Bruno Haible  <bruno@clisp.org>
10821
10822         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
10823         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
10824         ARPA_INET_H directly.
10825         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
10826
10827 2008-09-28  Bruno Haible  <bruno@clisp.org>
10828
10829         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
10830         from gl_HEADER_SYS_SOCKET.
10831         (gl_HEADER_SYS_SOCKET): Invoke it.
10832         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
10833
10834 2008-09-28  Bruno Haible  <bruno@clisp.org>
10835
10836         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
10837         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
10838         Needed on OSF/1 4.0.
10839
10840 2008-09-28  Bruno Haible  <bruno@clisp.org>
10841
10842         Override open more carefully.
10843         * lib/open.c (orig_open): New function.
10844         (rpl_open): Use orig_open instead of open.
10845         * lib/fcntl.in.h: Add special invocation convention.
10846         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
10847         (gl_FUNC_OPEN): Invoke it.
10848
10849         Override freopen more carefully.
10850         * lib/freopen.c (orig_freopen): New function.
10851         (rpl_freopen): Use orig_freopen instead of freopen.
10852         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
10853         (gl_FUNC_FREOPEN): Invoke it.
10854
10855         Override fopen more carefully.
10856         * lib/fopen.c (orig_fopen): New function.
10857         (rpl_fopen): Use orig_fopen instead of fopen.
10858         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
10859         (gl_FUNC_FOPEN): Invoke it.
10860         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
10861
10862 2008-09-28  Bruno Haible  <bruno@clisp.org>
10863
10864         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
10865         SIGPIPE.
10866
10867 2008-09-28  Bruno Haible  <bruno@clisp.org>
10868
10869         * tests/test-sigaction.c (handler, main): Disable the check whether
10870         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
10871         glibc systems with LinuxThreads.
10872
10873 2008-09-28  Bruno Haible  <bruno@clisp.org>
10874
10875         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
10876
10877         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
10878         with AIX xlc.
10879         * lib/fcntl.in.h (open): Likewise.
10880         Reported by Rainer Tammer <tammer@tammer.net>.
10881
10882 2008-09-28  Bruno Haible  <bruno@clisp.org>
10883
10884         * modules/posix_spawnp-tests: New file.
10885         * tests/test-posix_spawn.c: New file.
10886         * tests/test-posix_spawn.in.sh: New file.
10887
10888         New module 'posix_spawnp'.
10889         * modules/posix_spawnp: New file.
10890         * lib/spawnp.c: New file, from GNU libc with modifications.
10891         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
10892
10893         New module 'posix_spawn'.
10894         * modules/posix_spawn: New file.
10895         * lib/spawn.c: New file, from GNU libc with modifications.
10896         * doc/posix-functions/posix_spawn.texi: Mention the new module.
10897
10898         New module 'posix_spawnattr_destroy'.
10899         * modules/posix_spawnattr_destroy: New file.
10900         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
10901         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
10902         module.
10903
10904         New module 'posix_spawnattr_setsigmask'.
10905         * modules/posix_spawnattr_setsigmask: New file.
10906         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
10907         modifications.
10908         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
10909         new module.
10910
10911         New module 'posix_spawnattr_getsigmask'.
10912         * modules/posix_spawnattr_getsigmask: New file.
10913         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
10914         modifications.
10915         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
10916         new module.
10917
10918         New module 'posix_spawnattr_setsigdefault'.
10919         * modules/posix_spawnattr_setsigdefault: New file.
10920         * lib/spawnattr_setdefault.c: New file, from GNU libc with
10921         modifications.
10922         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
10923         new module.
10924
10925         New module 'posix_spawnattr_getsigdefault'.
10926         * modules/posix_spawnattr_getsigdefault: New file.
10927         * lib/spawnattr_getdefault.c: New file, from GNU libc with
10928         modifications.
10929         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
10930         new module.
10931
10932         New module 'posix_spawnattr_setschedpolicy'.
10933         * modules/posix_spawnattr_setschedpolicy: New file.
10934         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
10935         modifications.
10936         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
10937         new module.
10938
10939         New module 'posix_spawnattr_getschedpolicy'.
10940         * modules/posix_spawnattr_getschedpolicy: New file.
10941         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
10942         modifications.
10943         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
10944         new module.
10945
10946         New module 'posix_spawnattr_setschedparam'.
10947         * modules/posix_spawnattr_setschedparam: New file.
10948         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
10949         modifications.
10950         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
10951         new module.
10952
10953         New module 'posix_spawnattr_getschedparam'.
10954         * modules/posix_spawnattr_getschedparam: New file.
10955         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
10956         modifications.
10957         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
10958         new module.
10959
10960         New module 'posix_spawnattr_setpgroup'.
10961         * modules/posix_spawnattr_setpgroup: New file.
10962         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
10963         modifications.
10964         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
10965         module.
10966
10967         New module 'posix_spawnattr_getpgroup'.
10968         * modules/posix_spawnattr_getpgroup: New file.
10969         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
10970         modifications.
10971         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
10972         module.
10973
10974         New module 'posix_spawnattr_setflags'.
10975         * modules/posix_spawnattr_setflags: New file.
10976         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
10977         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
10978         module.
10979
10980         New module 'posix_spawnattr_getflags'.
10981         * modules/posix_spawnattr_getflags: New file.
10982         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
10983         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
10984         module.
10985
10986         New module 'posix_spawnattr_init'.
10987         * modules/posix_spawnattr_init: New file.
10988         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
10989         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
10990         module.
10991
10992         New module 'posix_spawn_file_actions_destroy'.
10993         * modules/posix_spawn_file_actions_destroy: New file.
10994         * lib/spawn_faction_destroy.c: New file, from GNU libc with
10995         modifications.
10996         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
10997         the new module.
10998
10999         New module 'posix_spawn_file_actions_addopen'.
11000         * modules/posix_spawn_file_actions_addopen: New file.
11001         * lib/spawn_faction_addopen.c: New file, from GNU libc with
11002         modifications.
11003         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
11004         the new module.
11005
11006         New module 'posix_spawn_file_actions_adddup2'.
11007         * modules/posix_spawn_file_actions_adddup2: New file.
11008         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
11009         modifications.
11010         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
11011         the new module.
11012
11013         New module 'posix_spawn_file_actions_addclose'.
11014         * modules/posix_spawn_file_actions_addclose: New file.
11015         * lib/spawn_faction_addclose.c: New file, from GNU libc with
11016         modifications.
11017         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
11018         the new module.
11019
11020         New module 'posix_spawn_file_actions_init'.
11021         * modules/posix_spawn_file_actions_init: New file.
11022         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
11023         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
11024         new module.
11025
11026         New module 'posix_spawn-internal'.
11027         * modules/posix_spawn-internal: New file.
11028         * lib/spawn_int.h: New file, from GNU libc with modifications.
11029         * lib/spawni.c: New file, from GNU libc with modifications.
11030         * m4/posix_spawn.m4: New file.
11031
11032         New module 'spawn'.
11033         * modules/spawn: New file.
11034         * lib/spawn.in.h: New file, from GNU libc with modifications.
11035         * m4/spawn_h.m4: New file.
11036         * doc/posix-headers/spawn.texi: Mention the new module.
11037
11038 2008-09-28  Bruno Haible  <bruno@clisp.org>
11039
11040         * modules/sched-tests: New file.
11041         * tests/test-sched.c: New file.
11042
11043         New module 'sched'.
11044         * modules/sched: New file.
11045         * lib/sched.in.h: New file.
11046         * m4/sched_h.m4: New file.
11047         * doc/posix-headers/sched.texi: Mention the new module.
11048
11049 2008-09-27  Eric Blake  <ebb9@byu.net>
11050
11051         Fix previous patch, and tweak references to $0.
11052         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
11053         (func_version, func_gnulib_dir): Don't call this program
11054         gnulib-tool.
11055         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
11056         with using $0 in function.
11057         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
11058         (func_fatal_error): Reuse the name the user invoked us with.
11059
11060 2008-09-27  Bruno Haible  <bruno@clisp.org>
11061
11062         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
11063         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
11064         (gl_ICONV_H): Not here.
11065         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
11066         instead of assigning ICONV_H directly.
11067
11068         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
11069         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
11070         WCHAR_H directly.
11071
11072 2008-09-27  Bruno Haible  <bruno@clisp.org>
11073
11074         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
11075         * modules/arpa_inet (Depends-on): Add link-warning.
11076         (Makefile.am): Insert the definition of GL_LINK-WARNING.
11077         * modules/unistd (Makefile.am): Likewise.
11078
11079 2008-09-26  Bruno Haible  <bruno@clisp.org>
11080
11081         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
11082         variables.
11083         (func_version): Essentially copied from gnulib-tool.
11084         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
11085         func_readlink): Copied from gnulib-tool.
11086
11087 2008-09-26  Bruno Haible  <bruno@clisp.org>
11088
11089         * gnulib-tool (func_version): Change directory to $gnulib_dir before
11090         invoking git-version-gen.
11091
11092 2008-09-26  Bruno Haible  <bruno@clisp.org>
11093
11094         * posix-modules: Update to directory names changed on 2008-01-19.
11095         Remove commas in output before splitting into words. No more need to
11096         avoid 'ftruncate' since 2007-02-19.
11097
11098 2008-09-26  Bruno Haible  <bruno@clisp.org>
11099
11100         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
11101
11102 2008-09-26  Bruno Haible  <bruno@clisp.org>
11103
11104         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
11105         * modules/fwriteerror (Depends-on): Add errno.
11106
11107 2008-09-26  Bruno Haible  <bruno@clisp.org>
11108
11109         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
11110         * tests/test-vc-list-files-cvs.sh: Likewise.
11111
11112 2008-09-26  Bruno Haible  <bruno@clisp.org>
11113
11114         * doc/posix-headers/sys_resource.texi: Reorder items.
11115
11116 2008-09-26  Jim Meyering  <meyering@redhat.com>
11117
11118         fts: tweak inode comparison function
11119         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
11120         inode numbers, as documented.
11121
11122         fts: sort dirent entries on inode number before traversing
11123         This avoids a quadratic, seek-related performance penalty when
11124         operating on a directory containing many entries (measurable at 10k;
11125         3.5 hours at 2 million entries with a cold cache) on certain types
11126         of file systems, including ext3 and ext4, but not tmpfs.
11127         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
11128         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
11129         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
11130         (fs_handles_readdir_ordered_dirents_efficiently): New function.
11131         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
11132         (fts_build): Set the stat.st_ino member from D_INO.
11133         If it is likely to be useful, sort dirent entries on inode number.
11134
11135         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
11136         and the struct statfs.f_type member.
11137         * modules/fts (Depends-on): Add d-ino.
11138
11139 2008-09-26  Bruno Haible  <bruno@clisp.org>
11140
11141         * modules/sigpipe-die (Depends-on): Add sigpipe.
11142
11143         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
11144         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
11145         and GNULIB_STDIO_H_SIGPIPE are set.
11146         * lib/stdio-write.c: New file.
11147         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
11148         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
11149         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
11150         REPLACE_STDIO_WRITE_FUNCS.
11151         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
11152         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
11153         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
11154         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
11155         * modules/stdio (Files): Add lib/stdio-write.c.
11156         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
11157         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
11158         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
11159         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
11160         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
11161         REPLACE_FPRINTF_POSIX.
11162         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
11163         REPLACE_PRINTF_POSIX.
11164         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
11165         REPLACE_VFPRINTF_POSIX.
11166         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
11167         REPLACE_VPRINTF_POSIX.
11168         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
11169         SIGPIPE issue.
11170         * doc/posix-functions/fputc.texi: Likewise.
11171         * doc/posix-functions/fputs.texi: Likewise.
11172         * doc/posix-functions/fwrite.texi: Likewise.
11173         * doc/posix-functions/printf.texi: Likewise.
11174         * doc/posix-functions/putc.texi: Likewise.
11175         * doc/posix-functions/putchar.texi: Likewise.
11176         * doc/posix-functions/puts.texi: Likewise.
11177         * doc/posix-functions/vfprintf.texi: Likewise.
11178         * doc/posix-functions/vprintf.texi: Likewise.
11179
11180         * modules/safe-write (Depends-on): Add write.
11181
11182         * modules/sigpipe-tests: New file.
11183         * tests/test-sigpipe.c: New file.
11184         * tests/test-sigpipe.sh: New file.
11185
11186         * modules/write: New file.
11187         * lib/unistd.in.h: Include <sys/types.h>.
11188         (write): New declaration.
11189         * lib/write.c: New file.
11190         * m4/write.m4: New file.
11191         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
11192         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
11193         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
11194         GNULIB_WRITE, REPLACE_WRITE.
11195         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
11196         and the SIGPIPE issue.
11197
11198         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
11199         (raise): New declaration.
11200         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
11201         (ext_signal): New function.
11202         (rpl_raise): New function.
11203         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
11204         GNULIB_SIGNAL_H_SIGPIPE.
11205         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
11206         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
11207
11208         * modules/sigpipe: New file.
11209         * m4/sigpipe.m4: New file.
11210
11211 2008-09-25  Derek Price  <derek@ximbiot.com>
11212             Bruno Haible  <bruno@clisp.org>
11213
11214         * gnulib-tool (func_import): Report all license incompatibilities, not
11215         just the first one.
11216
11217 2008-09-25  Bruno Haible  <bruno@clisp.org>
11218
11219         * gnulib-tool (func_import): When computing the edits, consider not
11220         only the Makefile.ams that exist but also those that will be generated.
11221
11222 2008-09-25  Simon Josefsson  <simon@josefsson.org>
11223
11224         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
11225         fixes gnulib-tool --test warning about duplicate dependency.
11226
11227 2008-09-25  Bruno Haible  <bruno@clisp.org>
11228
11229         * gnulib-tool: Don't ask the user to perform edits in the generated
11230         Makefile.ams.
11231         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
11232         apply to the Makefile.am being generated.
11233         (func_emit_tests_Makefile_am): Execute edits that apply to the
11234         Makefile.am being generated.
11235         (func_import): Setup list of Makefile.am edits before emitting the
11236         Makefile.ams, not at the end.
11237         (func_create_testdir): Update.
11238         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
11239
11240 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11241
11242         * gnulib-tool (func_import): Store the --tests-base option in the
11243         comment in gnulib-cache.m4.
11244
11245 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
11246
11247         * NEWS: Document increased portability that sys_select now provides.
11248
11249         * lib/sys_select.in.h: Install select wrapper.
11250         * lib/sys_socket.in.h: Use more descriptive name when there is no
11251         select wrapper.
11252         * lib/winsock-select.c: New.
11253         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
11254         Require gl_HEADER_SYS_SOCKET.
11255         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
11256         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
11257         * tests/test-sys_select.c: Add functional tests.
11258
11259 2008-09-24  Eric Blake  <ebb9@byu.net>
11260
11261         open, fopen: close fd leak in last patch
11262         * lib/open.c (rpl_open): Close fd before returning error.
11263         * lib/fopen.c (rpl_fopen): Close fd before returning error.
11264         * doc/posix-functions/open.texi (open): Document that Irix also
11265         has the bug.
11266         * doc/posix-functions/fopen.texi (fopen): Likewise.
11267         Reported by Paolo Bonzini.
11268
11269 2008-09-24  Bruno Haible  <bruno@clisp.org>
11270
11271         Ensure that a filename ending in a slash cannot be used to access a
11272         non-directory.
11273         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
11274         to check whether it's really a directory.
11275         * lib/fopen.c: Include fcntl.h, unistd.h.
11276         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
11277         and fdopen().
11278         * modules/fopen (Depends-on): Add unistd.
11279         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
11280         * tests/test-fopen.c (main): Likewise.
11281         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
11282         * doc/posix-functions/fopen.texi: Likewise.
11283         Reported by Eric Blake.
11284
11285 2008-09-23  Eric Blake  <ebb9@byu.net>
11286
11287         c-stack: avoid compiler optimizations when provoking overflow
11288         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
11289         recursion harder to optimize, to ensure a stack overflow occurs.
11290         * tests/test-c-stack.c (recurse): Likewise.
11291         Borrowed from libsigsegv.
11292
11293         c-stack: work around Irix sigaltstack bug
11294         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
11295         whether sigaltstack uses wrong end of stack_t (copied in part from
11296         libsigsegv).
11297         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
11298         Irix bug, without requiring an over-allocation.
11299         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
11300         bug.
11301
11302         fopen: document mingw bug on directories
11303         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
11304         not allowing a stream visiting a directory, even though reading
11305         from such a stream is not portable.
11306
11307 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
11308
11309         * lib/poll.c: Rewrite.
11310         * modules/poll: Depend on alloca.
11311
11312 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
11313
11314         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
11315         instead define prototypes for a full set of wrappers.  Ensure
11316         that Cygwin does not use the compatibility code, which is only
11317         for MinGW.
11318         * lib/winsock.c: New.
11319         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
11320         * modules/sys_socket: Add lib/winsock.c.
11321
11322         * modules/poll-tests: Add errno and perror.
11323         * tests/test-poll.c: Use ioctl, not ioctlsocket.
11324
11325 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
11326
11327         * tests/test-poll.c: Downgrade minimum needed Winsock version.
11328
11329 2008-09-23  Bruno Haible  <bruno@clisp.org>
11330
11331         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
11332         * doc/glibc-functions/*: Likewise.
11333
11334 2008-09-23  Simon Josefsson  <simon@josefsson.org>
11335
11336         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
11337         success.
11338
11339 2008-09-22  Eric Blake  <ebb9@byu.net>
11340             Bruno Haible  <bruno@clisp.org>
11341
11342         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
11343         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
11344         supply %A but mishandle pseudo-NaN.
11345         Reported by Simon Josefsson.
11346
11347 2008-09-21  Bruno Haible  <bruno@clisp.org>
11348
11349         * tests/test-lock.c (main): Tweak skip message.
11350         * tests/test-tls.c (main): Likewise.
11351
11352 2008-09-21  Bruno Haible  <bruno@clisp.org>
11353
11354         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
11355         whether 'struct sigaction' has sa_sigaction here...
11356         (gl_PREREQ_SIG_HANDLER_H): ... not here.
11357         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
11358
11359 2008-09-21  Bruno Haible  <bruno@clisp.org>
11360
11361         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
11362         section.
11363         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
11364         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
11365         the new section.
11366         (Support for obsolete systems lacking POSIX:2001): New section.
11367         (String handling <string.h>): Move strdup to the new section.
11368         Suggested by Simon Josefsson and Paolo Bonzini.
11369
11370 2008-09-21  Bruno Haible  <bruno@clisp.org>
11371
11372         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
11373         exponents in %e and %g results on 'long double'. Needed for mingw's
11374         improved *printf functions.
11375         * tests/test-vasprintf-posix.c (test_function): Likewise.
11376         * tests/test-snprintf-posix.h (test_function): Likewise.
11377         * tests/test-sprintf-posix.h (test_function): Likewise.
11378         Reported by Eric Blake.
11379
11380 2008-09-21  Bruno Haible  <bruno@clisp.org>
11381
11382         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
11383         * tests/test-sprintf-posix.h (test_function): Likewise.
11384
11385 2008-09-21  Bruno Haible  <bruno@clisp.org>
11386
11387         * modules/getpass (Depends-on): Add strdup-posix.
11388
11389         New module 'strdup-posix'.
11390         * modules/strdup-posix: New file.
11391         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
11392         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
11393         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
11394         REPLACE_STRDUP.
11395         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
11396         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
11397         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11398         strdup-posix.
11399
11400         * modules/strdup (Depends-on): Remove malloc-posix.
11401
11402 2008-09-20  Bruno Haible  <bruno@clisp.org>
11403
11404         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
11405         Wildenhues.
11406
11407 2008-09-20  Bruno Haible  <bruno@clisp.org>
11408
11409         Ensure that wint_t gets defined on IRIX 5.3.
11410         * lib/wchar.in.h (wint_t): Define if not defined by the system.
11411         * lib/wctype.in.h (wint_t): Likewise.
11412         (__wctype_wint_t): Remove type.
11413         (isw*): Use wint_t instead of __wctype_wint_t.
11414         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
11415         * modules/wchar (Files): Add m4/wint_t.m4.
11416         (Makefile.am): Substitute HAVE_WINT_T.
11417         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
11418         * tests/test-wctype.c: Check that wint_t is defined.
11419         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
11420         * doc/posix-headers/wctype.texi: Likewise.
11421         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
11422
11423 2008-09-18  Bruno Haible  <bruno@clisp.org>
11424
11425         * gnulib-tool (func_exit): Update comment.
11426
11427 2008-09-18  Simon Josefsson  <simon@josefsson.org>
11428
11429         * modules/getaddrinfo (Depends-on): Remove strdup, this module
11430         assumes strdup exists and does not depend on strdup to return
11431         ENOMEM on out of memory conditions.
11432
11433 2008-09-18  Bruno Haible  <bruno@clisp.org>
11434
11435         * lib/vasnprintf.c (VASNPRINTF): When printing ±0.0L in
11436         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
11437         digits for the exponent.
11438
11439 2008-09-18  Jim Meyering  <meyering@redhat.com>
11440             Bruno Haible  <bruno@clisp.org>
11441
11442         * lib/vasnprintf.c (decimal_point_char): Define also if
11443         NEED_PRINTF_INFINITE_LONG_DOUBLE.
11444
11445 2008-09-16  Bruno Haible  <bruno@clisp.org>
11446         and Eric Blake  <ebb9@byu.net>
11447
11448         vasnprintf: support Irix 5.3
11449         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
11450         that mishandle long double infinity.
11451         Reported by Tom G. Christensen.
11452
11453 2008-09-16  Bruno Haible  <bruno@clisp.org>
11454
11455         * doc/glibc-functions/scandir.texi: Mention the function is missing on
11456         Solaris 9.
11457         * doc/glibc-functions/alphasort.texi: Likewise.
11458         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
11459
11460 2008-09-16  Jim Meyering  <meyering@redhat.com>
11461
11462         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
11463         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
11464         a umask modification leak out of a subshell.  Otherwise, the
11465         opensolaris /bin/sh would be accepted and thus cause unwarranted
11466         failures in the coreutils test suite.
11467
11468 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
11469
11470         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
11471         to succeed.
11472
11473 2008-09-16  Jim Meyering  <meyering@redhat.com>
11474
11475         avoid spurious test failure when library is built without ACL support
11476         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
11477         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
11478         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
11479         * tests/test-copy-acl.sh: Likewise.
11480
11481 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11482
11483         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
11484         based on character occurrence counts.
11485
11486 2008-09-15  Eric Blake  <ebb9@byu.net>
11487
11488         tests: avoid some compiler warnings
11489         * tests/test-memchr.c (main): Pass NULL indirectly.
11490         * tests/test-closein.c (main): Avoid unused variable.
11491
11492 2008-09-15  Bruno Haible  <bruno@clisp.org>
11493
11494         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
11495         are missing on OpenBSD 4.0 individually.
11496         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
11497
11498 2008-09-15  Bruno Haible  <bruno@clisp.org>
11499
11500         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
11501         * doc/posix-functions/strerror.texi: Mention also Cygwin.
11502         * doc/posix-functions/perror.texi: Likewise.
11503         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
11504         is missing.
11505         Reported by Eric Blake.
11506
11507         * lib/errno.in.h: Use replacement values >= 2000.
11508         Reported by Eric Blake.
11509
11510 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11511
11512         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
11513         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
11514         limit.
11515         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
11516         compareseq was aborted.
11517
11518 2008-09-14  Bruno Haible  <bruno@clisp.org>
11519
11520         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
11521         yvec_edit_count.
11522         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
11523         (fstrcmp_bounded): Simplify result computation accordingly.
11524
11525 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11526
11527         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
11528         (fstrcmp): Define in terms of fstrcmp_bounded.
11529         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
11530         lower_bound argument.
11531         Return quickly if the result is certainly < lower_bound.
11532         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
11533
11534 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11535
11536         * lib/diffseq.h (EARLY_ABORT): New macro.
11537         (compareseq): Change return type to bool. Return true when EARLY_ABORT
11538         evaluates to true.
11539
11540 2008-09-14  Bruno Haible  <bruno@clisp.org>
11541
11542         * modules/perror-tests: New file.
11543         * tests/test-perror.sh: New file.
11544         * tests/test-perror.c: New file.
11545
11546         New module 'perror'.
11547         * lib/stdio.in.h (perror): New declaration.
11548         * lib/perror.c: New file.
11549         * m4/perror.m4: New file.
11550         * modules/perror: New file.
11551         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
11552         * doc/posix-functions/perror.texi: Mention the perror module.
11553         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
11554         REPLACE_PERROR.
11555         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
11556         REPLACE_PERROR.
11557
11558 2008-09-14  Bruno Haible  <bruno@clisp.org>
11559
11560         * modules/stdio (Makefile.am): Reorder to match the order in
11561         lib/stdio.in.h.
11562         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
11563
11564 2008-09-13  Bruno Haible  <bruno@clisp.org>
11565
11566         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
11567
11568 2008-09-13  Bruno Haible  <bruno@clisp.org>
11569
11570         Extend strerror to cover the added errno values.
11571         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
11572         (rpl_strerror): Provide error messages for the added errno values and
11573         for the WSA* values.
11574         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
11575         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
11576         strerror.
11577         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
11578         * modules/strerror (Depends-on): Add errno.
11579         * doc/posix-functions/strerror.texi: Document the change.
11580         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
11581         and EOVERFLOW.
11582
11583 2008-09-13  Bruno Haible  <bruno@clisp.org>
11584
11585         * modules/EOVERFLOW: Remove file.
11586         * m4/eoverflow.m4: Remove file.
11587         * modules/EOVERFLOW-tests: Remove file.
11588         * tests/test-EOVERFLOW.c: Remove file.
11589         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
11590         * modules/ftell (Depends-on): Likewise.
11591         * modules/getdelim (Depends-on): Likewise.
11592         * modules/getugroups (Depends-on): Likewise.
11593         * modules/poll (Depends-on): Likewise.
11594         * modules/snprintf (Depends-on): Likewise.
11595         * modules/sprintf-posix (Depends-on): Likewise.
11596         * modules/vasnprintf (Depends-on): Likewise.
11597         * modules/vasprintf (Depends-on): Likewise.
11598         * modules/vfprintf-posix (Depends-on): Likewise.
11599         * modules/vsnprintf (Depends-on): Likewise.
11600         * modules/vsprintf-posix (Depends-on): Likewise.
11601         * modules/xvasprintf (Depends-on): Likewise.
11602         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
11603         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
11604         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
11605         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
11606         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
11607         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
11608         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
11609         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
11610         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
11611         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
11612         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
11613         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
11614         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
11615         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
11616         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
11617         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
11618         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
11619         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
11620         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
11621         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
11622         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
11623         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
11624         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
11625         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
11626         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
11627         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
11628         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
11629         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
11630         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
11631         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
11632         * MODULES.html.sh: Remove EOVERFLOW.
11633         * NEWS: Mention the change.
11634
11635 2008-09-13  Bruno Haible  <bruno@clisp.org>
11636
11637         * modules/errno-tests: New file.
11638         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
11639
11640         * lib/errno.in.h: New file.
11641         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
11642         * modules/errno: New file.
11643         * doc/posix-headers/errno.texi: Update documentation.
11644         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
11645
11646 2008-09-13  Bruno Haible  <bruno@clisp.org>
11647
11648         * tests/test-poll.c: Use #if for native Windows, rather than testing
11649         __MSVCRT__.
11650
11651 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11652             Bruno Haible  <bruno@clisp.org>
11653
11654         * lib/glob.c: Don't include <pwd.h> on native Windows.
11655         (WINDOWS32): New macro.
11656         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
11657
11658 2008-09-13  Bruno Haible  <bruno@clisp.org>
11659
11660         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
11661         (ETIMEDOUT): Remove macro.
11662         (glthread_cond_timedwait_multithreaded): New declaration.
11663         (glthread_cond_timedwait): Use it.
11664         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
11665         (glthread_cond_timedwait_multithreaded): New function.
11666
11667 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
11668
11669         * modules/poll-tests: Do not check for io.h.
11670         * tests/test-poll.c: Check for __MSVCRT__ instead.
11671
11672 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
11673
11674         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
11675         * modules/poll-tests: Add inet_pton, stdbool, sockets.
11676         * tests/test-poll.c: Use them.  Use _pipe on Windows.
11677
11678 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
11679
11680         * modules/poll-tests: New.
11681         * tests/test-poll.c: New.
11682
11683 2008-09-12  Eric Blake  <ebb9@byu.net>
11684
11685         frexp: test for NetBSD failure on -0.0
11686         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
11687         not all, bugs from NetBSD 3.0 have been fixed.
11688         * doc/posix-functions/frexp.texi (frexp): Document bug.
11689         Reported by Thomas Klausner.
11690
11691         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
11692         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
11693         literal -0.0.
11694         Reported by Jonathan C. Patschke <jp@centtech.com>.
11695
11696 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11697
11698         * lib/glthread/cond.h: Use dummy implementation also if
11699         USE_WIN32_THREADS.
11700
11701 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11702
11703         * modules/fnmatch-posix (License): Change to LGPLv2+.
11704         * modules/fnmatch-gnu (License): Likewise.
11705
11706 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11707
11708         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
11709
11710 2008-09-11  Jim Meyering  <meyering@redhat.com>
11711
11712         * users.txt: Add gtk-vnc.
11713
11714 2008-09-08  Simon Josefsson  <simon@josefsson.org>
11715
11716         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
11717         rotate amounts.
11718
11719         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
11720         required for 16-bit and 8-bit rotates.
11721         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
11722         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
11723         UINT8_MAX instead of hard-coded constants.
11724         Suggested by Paul Eggert.
11725
11726 2008-09-07  Bruno Haible  <bruno@clisp.org>
11727
11728         * tests/test-striconveh.c (main): Check behaviour when converting from
11729         UTF-7.
11730
11731         Make striconveh work better with stateful encodings.
11732         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
11733         that iconv does not increment the inptr when returning -1/EINVAL.
11734
11735 2008-09-07  Bruno Haible  <bruno@clisp.org>
11736
11737         * build-aux/config.rpath: Update according to libtool-2.2.6.
11738         * build-aux/config.libpath: Likewise.
11739
11740 2008-09-06  Bruno Haible  <bruno@clisp.org>
11741
11742         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
11743         * lib/freadptr.c (freadptr): Likewise.
11744         * lib/freadseek.c (freadptrinc): Likewise.
11745         Reported by Simon Josefsson.
11746
11747 2008-09-06  Bruno Haible  <bruno@clisp.org>
11748
11749         * modules/freadptr (License): Change to LGPLv2+.
11750         * modules/freadseek (License): Likewise.
11751         Suggested by Eric Blake.
11752
11753         * modules/memchr2 (License): Change to LGPLv2+.
11754         Approved by Eric Blake.
11755
11756 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11757             Bruno Haible  <bruno@clisp.org>
11758
11759         Make gnulib-tool work with native 'sed' on AIX.
11760         * gnulib-tool (sed_noop): New variable.
11761         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
11762         func_add_or_update, func_create_testdir): Use it to initialize sed
11763         script variables.
11764         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
11765
11766 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
11767             Bruno Haible  <bruno@clisp.org>
11768
11769         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
11770         also works after #include directives.
11771
11772 2008-09-04  Ondřej Vašík  <ovasik@redhat.com>
11773
11774         getdate.y: reject an out-of-range timezone value
11775         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
11776         the range [-24...+24].  When specified with only one or two digits,
11777         * tests/test-getdate.c: Tests for the fix.
11778         * doc/getdate.texi: Document this change.
11779
11780 2008-09-03  Bruno Haible  <bruno@clisp.org>
11781
11782         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
11783
11784 2008-09-02  Simon Josefsson  <simon@josefsson.org>
11785
11786         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
11787         <bruce.korb@gmail.com> with ideas from Ben Pfaff
11788         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
11789         Blake <ebb9@byu.net>.
11790
11791         * tests/test-bitrotate.c: Add more test vectors.
11792
11793 2008-09-02  Eric Blake  <ebb9@byu.net>
11794
11795         vasnprintf-posix: handle large precision via %.*d
11796         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
11797         when handling it ourselves.
11798         * tests/test-vasnprintf-posix.c (test_function): Add test.
11799         * tests/test-snprintf-posix.h (test_function): Likewise.
11800         * tests/test-sprintf-posix.h (test_function): Likewise.
11801         * tests/test-vasprintf-posix.c (test_function): Likewise.
11802         Reported by Alain Guibert.
11803
11804 2008-09-01  Eric Blake  <ebb9@byu.net>
11805
11806         c-stack: make configure-time check more robust
11807         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
11808         successful sigaction call.
11809         Reported by Tom G. Christensen.
11810
11811 2008-09-01  Bruno Haible  <bruno@clisp.org>
11812
11813         New module 'findprog-lgpl'.
11814         * modules/findprog-lgpl: New file.
11815         * lib/findprog-lgpl.c: New file.
11816         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
11817         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
11818         to decide whether to use strdup or xstrdup, concatenated_filename or
11819         xconcatenated_filename.
11820
11821 2008-09-01  Bruno Haible  <bruno@clisp.org>
11822
11823         Split module 'concat-filename' into 'concat-filename' (LGPL) and
11824         'xconcat-filename' (GPL).
11825         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
11826         (License): Change to LGPLv2+.
11827         * modules/xconcat-filename: New file.
11828         * lib/concat-filename.h (concatenated_filename): Change specification.
11829         (xconcatenated_filename): New declaration.
11830         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
11831         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
11832         memory situations.
11833         * lib/xconcat-filename.c: New file.
11834         * NEWS: Mention the change.
11835         * lib/findprog.c: Include concat-filename.h, not filename.h.
11836         (find_in_path): Use xconcatenated_filename instead of
11837         concatenated_filename.
11838         * lib/javacomp.c: Include concat-filename.h, not filename.h.
11839         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
11840         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
11841         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
11842         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
11843         instead of concatenated_filename.
11844         * lib/javaexec.c: Include concat-filename.h, not filename.h.
11845         (execute_java_class): Use xconcatenated_filename instead of
11846         concatenated_filename.
11847         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
11848         * modules/javacomp (Depends-on): Likewise.
11849         * modules/javaexec (Depends-on): Likewise.
11850
11851 2008-09-01  Bruno Haible  <bruno@clisp.org>
11852
11853         Split module 'filename' into 'filename' and 'concat-filename'.
11854         * modules/filename: Keep only lib/filename.h.
11855         (License): Change to LGPLv2+.
11856         * modules/concat-filename: New file, extracted from modules/filename.
11857         * lib/filename.h (concatenated_filename): Remove declaration.
11858         * lib/concat-filename.h: New file, extracted from lib/filename.h.
11859         * lib/concat-filename.c: Include concat-filename.h.
11860         * NEWS: Mention the change.
11861
11862 2008-09-01  Simon Josefsson  <simon@josefsson.org>
11863
11864         * lib/bitrotate.h (rotl8, rotr8): Add.
11865
11866         * modules/bitrotate (configure.ac): Need
11867         AC_REQUIRE([AC_C_INLINE]).
11868         (Description): Mention stdint.h.  Reported by Bruno Haible
11869         <bruno@clisp.org>.
11870
11871         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
11872         Paolo Bonzini <bonzini@gnu.org>.
11873
11874 2008-08-31  Bruno Haible  <bruno@clisp.org>
11875
11876         Assume Solaris specific bi-arch conventions on Solaris systems.
11877         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
11878         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
11879         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
11880         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
11881         like acl_libdirstem.
11882         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
11883         acl_libdirstem.
11884         * NEWS: Mention the change.
11885         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
11886
11887 2008-08-31  Jim Meyering  <meyering@redhat.com>
11888
11889         * lib/strftime.h: Add comments describing the two added arguments.
11890
11891         remove duplicate #include directives
11892         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
11893         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
11894
11895 2008-08-31  Bruno Haible  <bruno@clisp.org>
11896
11897         New module 'sigpipe-die'.
11898         * modules/sigpipe-die: New file.
11899         * lib/sigpipe-die.h: New file.
11900         * lib/sigpipe-die.c: New file.
11901         * MODULES.html.sh (Signal handling): Add sigpipe-die.
11902
11903 2008-08-31  Bruno Haible  <bruno@clisp.org>
11904
11905         Don't override previously installed signal handlers.
11906         * lib/fatal-signal.c (saved_sigactions): New variable.
11907         (uninstall_handlers): Reset the signal to the saved handler, not
11908         to SIG_DFL (except when ignored).
11909         (install_handlers): Save the previous handlers.
11910
11911 2008-08-30  Bruno Haible  <bruno@clisp.org>
11912
11913         * gnulib-tool (func_reset_sigpipe): New function.
11914         (func_get_automake_snippet, func_modules_transitive_closure,
11915         func_import): Invoke it before a join command that reads from stdin,
11916         to avoid "echo: write error: Broken pipe" error messages on stderr.
11917         Reported by Sam Steingold <sds@gnu.org>.
11918
11919 2008-08-30  Bruno Haible  <bruno@clisp.org>
11920
11921         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
11922         Code copied from m4/open.m4.
11923         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
11924         access and the filename ends in a slash. Code copied from lib/open.c.
11925         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
11926         * tests/test-fopen.c (main): Check against bug with trailing slash.
11927
11928 2008-08-29  Bruno Haible  <bruno@clisp.org>
11929
11930         Avoid some "gcc -pedantic" warnings.
11931         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
11932         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
11933         * lib/dirent.in.h: Likewise.
11934         * lib/fcntl.in.h: Likewise.
11935         * lib/float.in.h: Likewise.
11936         * lib/iconv.in.h: Likewise.
11937         * lib/inttypes.in.h: Likewise.
11938         * lib/locale.in.h: Likewise.
11939         * lib/math.in.h: Likewise.
11940         * lib/netinet_in.in.h: Likewise.
11941         * lib/search.in.h: Likewise.
11942         * lib/signal.in.h: Likewise.
11943         * lib/stdarg.in.h: Likewise.
11944         * lib/stdint.in.h: Likewise.
11945         * lib/stdio.in.h: Likewise.
11946         * lib/stdlib.in.h: Likewise.
11947         * lib/string.in.h: Likewise.
11948         * lib/strings.in.h: Likewise.
11949         * lib/sys_select.in.h: Likewise.
11950         * lib/sys_socket.in.h: Likewise.
11951         * lib/sys_stat.in.h: Likewise.
11952         * lib/sys_time.in.h: Likewise.
11953         * lib/sysexits.in.h: Likewise.
11954         * lib/time.in.h: Likewise.
11955         * lib/unistd.in.h: Likewise.
11956         * lib/wchar.in.h: Likewise.
11957         * lib/wctype.in.h: Likewise.
11958         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
11959         * modules/fchdir (Makefile.am): Likewise.
11960         * modules/fcntl (Makefile.am): Likewise.
11961         * modules/float (Makefile.am): Likewise.
11962         * modules/iconv_open (Makefile.am): Likewise.
11963         * modules/inttypes (Makefile.am): Likewise.
11964         * modules/locale (Makefile.am): Likewise.
11965         * modules/math (Makefile.am): Likewise.
11966         * modules/netinet_in (Makefile.am): Likewise.
11967         * modules/search (Makefile.am): Likewise.
11968         * modules/signal (Makefile.am): Likewise.
11969         * modules/stdarg (Makefile.am): Likewise.
11970         * modules/stdint (Makefile.am): Likewise.
11971         * modules/stdio (Makefile.am): Likewise.
11972         * modules/stdlib (Makefile.am): Likewise.
11973         * modules/string (Makefile.am): Likewise.
11974         * modules/strings (Makefile.am): Likewise.
11975         * modules/sys_select (Makefile.am): Likewise.
11976         * modules/sys_socket (Makefile.am): Likewise.
11977         * modules/sys_stat (Makefile.am): Likewise.
11978         * modules/sys_time (Makefile.am): Likewise.
11979         * modules/sysexits (Makefile.am): Likewise.
11980         * modules/time (Makefile.am): Likewise.
11981         * modules/unistd (Makefile.am): Likewise.
11982         * modules/wchar (Makefile.am): Likewise.
11983         * modules/wctype (Makefile.am): Likewise.
11984         Reported by Reuben Thomas <rrt@sc3d.org>.
11985
11986 2008-08-29  Bruno Haible  <bruno@clisp.org>
11987
11988         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
11989         any more.
11990
11991 2008-08-29  Simon Josefsson  <simon@josefsson.org>
11992
11993         * MODULES.html.sh (Misc): Add bitrotate.
11994
11995         * modules/bitrotate: New file.
11996
11997         * lib/bitrotate.h: New file.
11998
11999         * modules/bitrotate-tests: New file.
12000
12001         * tests/test-bitrotate.c: New file.
12002
12003         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
12004         on the bitrotate module.
12005
12006         * lib/arctwo.c: Use new bitrotate module.
12007
12008 2008-08-29  Jim Meyering  <meyering@redhat.com>
12009
12010         bootstrap: merge changes from coreutils
12011         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
12012         of copied files.  Remove a kludge, now that this is fixed.
12013         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
12014         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
12015         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
12016
12017 2008-08-29  Bruno Haible  <bruno@clisp.org>
12018
12019         * MODULES.html.sh: Remove --cvs-urls option.
12020
12021 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
12022
12023         maint.mk: adjust to file name change
12024         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
12025
12026 2008-08-28  Jim Meyering  <meyering@redhat.com>
12027
12028         * modules/getndelim2 (License): Relicense to LGPLv2+.
12029         Approved by Richard Stallman for the version of 1995, and by
12030         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
12031
12032 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
12033
12034         * lib/getdelim.c (flockfile, funlockfile): Make all of them
12035         dummy if one is not available.  Do not touch them if
12036         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
12037         (getc_maybe_unlocked): New.
12038         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
12039
12040 2008-08-26  Eric Blake  <ebb9@byu.net>
12041
12042         doc/INSTALL: resync from autoconf
12043         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
12044         (INSTALL_PRELUDE): Delete; this is done more efficiently by
12045         moving...
12046         * install.texi [!autoconf]: ...here.  Resync from autoconf.
12047         * INSTALL: Regenerate.
12048         * INSTALL.ISO: New file.
12049         * INSTALL.UTF-8: Likewise.
12050
12051 2008-08-26  Jim Meyering  <meyering@redhat.com>
12052
12053         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
12054         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
12055         these definitions conditional, so that they may be overridden, too.
12056
12057 2008-08-26  Bruno Haible  <bruno@clisp.org>
12058
12059         Generate INSTALL file variants with prettier quotes.
12060         * doc/Makefile (INSTALL_PRELUDE): New macro.
12061         (INSTALL): Use it.
12062         (INSTALL.ISO, INSTALL.UTF-8): New rules.
12063
12064 2008-08-26  Bruno Haible  <bruno@clisp.org>
12065
12066         Run makeinfo in an English locale.
12067         * doc/Makefile (MAKEINFO): New variable.
12068
12069 2008-08-26  Bruno Haible  <bruno@clisp.org>
12070
12071         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
12072         Suggested by Eric Blake.
12073
12074 2008-08-25  Bruno Haible  <bruno@clisp.org>
12075
12076         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
12077
12078 2008-08-25  Eric Blake  <ebb9@byu.net>
12079
12080         c-stack: test that stack overflow can be caught
12081         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
12082         that platform allows handling stack overflow; at least OS/2 EMX
12083         has sigaltstack, but crashes before transferring control to
12084         handler on stack overflow.
12085         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
12086         check for HAVE_STACK_OVERFLOW_HANDLING.
12087         Reported by Elbert Pol.
12088
12089 2008-08-25  Bruno Haible  <bruno@clisp.org>
12090
12091         * doc/posix-functions/strftime.texi: Fix description of strftime
12092         module.
12093
12094 2008-08-24  Bruno Haible  <bruno@clisp.org>
12095
12096         * tests/uniwidth/test-uc_width2.c: New file.
12097         * tests/uniwidth/test-uc_width2.sh: New file.
12098         * modules/uniwidth/width-tests (Files): Add the new files.
12099         (TESTS): Add uniwidth/test-uc_width2.sh.
12100         (TESTS_ENVIRONMENT): New variable.
12101         (check_PROGRAMS): Add test-uc_width2.
12102         (test_uc_width2_SOURCES): New variable.
12103
12104         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
12105         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
12106         not 0x00AB.
12107         Reported by Alexander V. Lukyanov <lav@netis.ru>.
12108
12109 2008-08-22  Eric Blake  <ebb9@byu.net>
12110
12111         test-lock, test-tls: mention why a test is skipped
12112         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
12113         skipped.
12114         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
12115
12116         count-one-bits: relax license
12117         * modules/count-one-bits (License): Relicense to LGPLv2+.
12118         Suggested by Ludovic Courtès, approved by Ben Pfaff.
12119
12120 2008-08-22  Andreas Schwab  <schwab@suse.de>
12121
12122         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
12123         Remove spurious space in assignment.
12124
12125 2008-08-21  Simon Josefsson  <simon@josefsson.org>
12126
12127         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
12128         Paul Eggert <eggert@CS.UCLA.EDU>.
12129
12130 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
12131
12132         * modules/gettext: Add m4/threadlib.m4.
12133
12134 2008-08-19  Eric Blake  <ebb9@byu.net>
12135
12136         test-c-stack: fix compilation failure on FreeBSD 5.0
12137         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
12138         headers before <sys/resource.h>.
12139         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
12140         the bug.
12141         Reported by Nelson H. F. Beebe.
12142
12143         strverscmp: migrate from "strverscmp.h" to <string.h>
12144         * modules/string (Makefile.am): Add new hooks.
12145         * modules/strverscmp (Files): Remove strverscmp.h.
12146         (Depends-on): Add string.
12147         (configure.ac): Add indicator.
12148         (Include): Mention new header.
12149         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
12150         defaults.
12151         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
12152         results.
12153         * lib/strverscmp.h: Delete.
12154         * lib/string.in.h (strverscmp): Provide declaration, when needed.
12155         * tests/test-strverscmp.c (includes): Adjust client.
12156         * lib/check-version.c (includes): Likewise.
12157         * NEWS: Document the change.
12158
12159         strverscmp: add unit test
12160         * modules/strverscmp-tests: New file.
12161         * tests/test-strverscmp.c: Likewise.
12162
12163 2008-08-19  Simon Josefsson  <simon@josefsson.org>
12164
12165         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
12166         regarding Windows crypto stuff, from Mono.
12167
12168 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
12169
12170         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
12171         if present, for intel RND.  Return error on failures.
12172
12173 2008-08-18  Ben Pfaff  <blp@gnu.org>
12174
12175         gitlog-to-changelog: give better diagnostic for failed pipe-open
12176         * build-aux/gitlog-to-changelog: Improve error message: suggest
12177         that the version of Git may be too old.
12178
12179 2008-08-18  Simon Josefsson  <simon@josefsson.org>
12180
12181         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
12182         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
12183
12184 2008-08-18  Bruno Haible  <bruno@clisp.org>
12185
12186         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
12187         pthread_in_use().
12188
12189 2008-08-18  Bruno Haible  <bruno@clisp.org>
12190
12191         * lib/glthread/threadlib.c: Include <pthread.h>.
12192
12193 2008-08-18  Bruno Haible  <bruno@clisp.org>
12194
12195         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
12196         glthread_recursive_lock_* macros.
12197         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
12198         Fix syntax error.
12199
12200 2008-08-18  Bruno Haible  <bruno@clisp.org>
12201
12202         * lib/glthread/thread.c: Avoid forcing a context switch right after
12203         thread creation.
12204
12205 2008-08-17  Bruno Haible  <bruno@clisp.org>
12206
12207         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
12208         * lib/glthread/thread.h: Provide Win32 specific implementation.
12209         * modules/thread (Files): Add lib/glthread/thread.c.
12210         (Depends-on): Add lock.
12211         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
12212
12213 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
12214
12215         New module 'yield'.
12216         * modules/yield: New file.
12217         * lib/glthread/yield.h: New file.
12218         * m4/yield.m4: New file.
12219         * MODULES.html.sh (Multithreading): Add yield.
12220
12221 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
12222
12223         New module 'thread'.
12224         * modules/thread: New file.
12225         * lib/glthread/thread.h: New file.
12226         * m4/thread.m4: New file.
12227         * MODULES.html.sh (Multithreading): Add thread.
12228
12229 2008-08-17  Bruno Haible  <bruno@clisp.org>
12230
12231         * lib/glthread/lock.h: Include <stdlib.h> always.
12232         * lib/glthread/tls.h: Likewise.
12233         * lib/glthread/cond.h: Likewise.
12234
12235 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
12236
12237         New module 'cond'.
12238         * modules/cond: New file.
12239         * lib/glthread/cond.h: New file.
12240         * lib/glthread/cond.c: New file.
12241         * m4/cond.m4: New file.
12242         * MODULES.html.sh (Multithreading): Add cond.
12243
12244 2008-08-16  Eric Blake  <ebb9@byu.net>
12245
12246         c-stack: fix regression on Irix 5.3 from 2008-06-21
12247         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
12248         sa_sigaction...
12249         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
12250         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
12251         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
12252         * modules/signal (Makefile.am): Use the value.
12253         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
12254         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
12255         * doc/posix-headers/signal.texi (signal.h): Document this
12256         portability issue.
12257         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
12258         Reported by Tom G. Christensen.
12259
12260 2008-08-17  Bruno Haible  <bruno@clisp.org>
12261
12262         New module 'threadlib'.
12263         * modules/threadlib: New file.
12264         * lib/glthread/threadlib.c: New file, extracted from
12265         lib/glthread/lock.c.
12266         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
12267         functions.
12268         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
12269         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
12270         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
12271         macros.
12272         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
12273         (gl_DISABLE_THREADS): Remove macro.
12274         * modules/lock (Files): Remove build-aux/config.rpath.
12275         (Depends-on): Remove havelib. Add threadlib.
12276         (configure.ac-early): Remove section.
12277         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
12278         * modules/tls (Depends-on): Remove lock. Add threadlib.
12279         (Link): New section, copied from threadlib.
12280         * MODULES.html.sh (Multithreading): Add threadlib.
12281
12282 2008-08-14  Bruno Haible  <bruno@clisp.org>
12283
12284         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
12285         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
12286         glthread_rwlock_unlock, glthread_rwlock_destroy,
12287         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
12288         glthread_recursive_lock_destroy): Define as macros always.
12289         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
12290         glthread_lock_lock.
12291         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
12292         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
12293         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
12294         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
12295         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
12296         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
12297         (glthread_recursive_lock_lock_func): Renamed from
12298         glthread_recursive_lock_lock.
12299         (glthread_recursive_lock_unlock_func): Renamed from
12300         glthread_recursive_lock_unlock.
12301         (glthread_recursive_lock_destroy_func): Renamed from
12302         glthread_recursive_lock_destroy.
12303
12304 2008-08-14  Bruno Haible  <bruno@clisp.org>
12305
12306         * lib/glthread/lock.h: Renamed from lib/lock.h.
12307         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
12308         * lib/glthread/tls.h: Renamed from lib/tls.h.
12309         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
12310         * lib/fstrcmp.c: Update includes.
12311         * lib/strsignal.c: Update includes.
12312         * modules/lock (Files, Makefile.am): Update.
12313         (Include): Change to "glthread/lock.h".
12314         * modules/tls (Files, Makefile.am): Update.
12315         (Include): Change to "glthread/tls.h".
12316         * tests/test-lock.c: Update includes.
12317         * tests/test-tls.c: Update includes.
12318         * NEWS: Mention the renamed header files.
12319
12320 2008-08-11  Jim Meyering  <meyering@redhat.com>
12321
12322         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
12323
12324 2008-08-11  Eric Blake  <ebb9@byu.net>
12325
12326         test-c-stack: avoid C99-ism
12327         * tests/test-c-stack.c (main): Fix whitespace, move declaration
12328         before statement.
12329         Reported by Alain Guibert.
12330
12331 2008-08-10  Jim Meyering  <meyering@redhat.com>
12332
12333         ensure that return value of uinttostr et al are not ignored
12334         * lib/inttostr.h (__GNUC_PREREQ): Define.
12335         (__attribute_warn_unused_result__): Define.
12336         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
12337
12338 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
12339
12340         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
12341         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
12342
12343 2008-08-07  Jim Meyering  <meyering@redhat.com>
12344
12345         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
12346
12347         * modules/mkstemp (License): Relicense under LGPLv2+.
12348         * modules/tempname (License): Likewise.
12349
12350 2008-08-06  Bruno Haible  <bruno@clisp.org>
12351
12352         * lib/poll.c (poll): Further micro-optimization.
12353
12354 2008-08-06  Jim Meyering  <meyering@redhat.com>
12355
12356         inet_pton.c: use locale-independent tolower
12357         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
12358         (inet_pton6): Use c_tolower rather than tolower.
12359         * modules/inet_pton (Depends-on): Add c-ctype.
12360
12361 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
12362
12363         * lib/poll.c (poll): Avoid division when timeout is 0, cache
12364         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
12365
12366 2008-08-06  Jim Meyering  <meyering@redhat.com>
12367
12368         * modules/inet_pton (License): Relicense under LGPLv2+.
12369
12370 2008-08-03  Bruno Haible  <bruno@clisp.org>
12371
12372         Additional non-aborting API for lock and tls.
12373         * lib/lock.h: Include <errno.h>.
12374         (glthread_lock_init): New macro/function.
12375         (gl_lock_init): Define as wrapper around glthread_lock_init.
12376         (glthread_lock_lock): New macro/function.
12377         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
12378         (glthread_lock_unlock): New macro/function.
12379         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
12380         (glthread_lock_destroy): New macro/function.
12381         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
12382         (glthread_rwlock_init): New macro/function.
12383         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
12384         (glthread_rwlock_rdlock): New macro/function.
12385         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
12386         (glthread_rwlock_wrlock): New macro/function.
12387         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
12388         (glthread_rwlock_unlock): New macro/function.
12389         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
12390         (glthread_rwlock_destroy): New macro/function.
12391         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
12392         (glthread_recursive_lock_init): New macro/function.
12393         (gl_recursive_lock_init): Define as wrapper around
12394         glthread_recursive_lock_init.
12395         (glthread_recursive_lock_lock): New macro/function.
12396         (gl_recursive_lock_lock): Define as wrapper around
12397         glthread_recursive_lock_lock.
12398         (glthread_recursive_lock_unlock): New macro/function.
12399         (gl_recursive_lock_unlock): Define as wrapper around
12400         glthread_recursive_lock_unlock.
12401         (glthread_recursive_lock_destroy): New macro/function.
12402         (gl_recursive_lock_destroy): Define as wrapper around
12403         glthread_recursive_lock_destroy.
12404         (glthread_once): New macro/function.
12405         (gl_once): Define as wrapper around glthread_once.
12406         Update function declarations.
12407         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
12408         glthread_rwlock_init. Return error code.
12409         (glthread_rwlock_rdlock_multithreaded): Renamed from
12410         glthread_rwlock_rdlock. Return error code.
12411         (glthread_rwlock_wrlock_multithreaded): Renamed from
12412         glthread_rwlock_wrlock. Return error code.
12413         (glthread_rwlock_unlock_multithreaded): Renamed from
12414         glthread_rwlock_unlock. Return error code.
12415         (glthread_rwlock_destroy_multithreaded): Renamed from
12416         glthread_rwlock_destroy. Return error code.
12417         (glthread_recursive_lock_init_multithreaded): Renamed from
12418         glthread_recursive_lock_init. Return error code.
12419         (glthread_recursive_lock_lock_multithreaded): Renamed from
12420         glthread_recursive_lock_lock. Return error code.
12421         (glthread_recursive_lock_unlock_multithreaded): Renamed from
12422         glthread_recursive_lock_unlock. Return error code.
12423         (glthread_recursive_lock_destroy_multithreaded): Renamed from
12424         glthread_recursive_lock_destroy. Return error code.
12425         (glthread_once_call): Make static.
12426         (glthread_once_multithreaded): Renamed from glthread_once.
12427         * lib/tls.h: Include <errno.h>.
12428         (glthread_tls_key_init): New macro/function.
12429         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
12430         (glthread_tls_set): New macro/function.
12431         (gl_tls_set): Define as wrapper around glthread_tls_set.
12432         (glthread_tls_key_destroy): New macro/function.
12433         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
12434         Update function declarations.
12435         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
12436         glthread_tls_get.
12437         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
12438
12439 2008-08-04  Eric Blake  <ebb9@byu.net>
12440
12441         gnumakefile: use space, not TAB, outside of targets
12442         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
12443
12444 2008-08-02  Jim Meyering  <meyering@redhat.com>
12445
12446         getdate.y: avoid locale-dependent date parsing failure
12447         In Turkish locales, getdate would fail to recognize keywords
12448         containing a lowercase "i".  The solution is not to rely on
12449         locale-sensitive case-conversion.
12450         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
12451         (lookup_word): Use c_toupper in place of toupper.
12452         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
12453         Reported by Vefa Bicakci <bicave@superonline.com> in
12454         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
12455         * modules/getdate (Depends-on): Add c-ctype.
12456
12457 2008-08-02  Bruno Haible  <bruno@clisp.org>
12458
12459         * gnulib-tool (func_import): When updating or creating a .gitignore
12460         file, prepend each added line with a slash, and ignore leading slashes
12461         from the existing lines.
12462         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
12463
12464 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12465
12466         Portability fix for GNU make 3.79.1.
12467         * top/GNUmakefile: Avoid 'else COND', which older GNU make
12468         versions do not understand.
12469
12470 2008-08-01  Bruno Haible  <bruno@clisp.org>
12471
12472         Work around bug of HP-UX 10.20 cc with -0.0 literal.
12473         * tests/test-isnanf.h (zero): New variable.
12474         (main): Avoid literal -0.0f.
12475         * tests/test-isnand.h (zero): New variable.
12476         (main): Avoid literal -0.0.
12477         * tests/test-isnanl.h (zero): New variable.
12478         (main): Avoid literal -0.0L.
12479         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
12480         (test_float, test_double, test_long_double): Avoid literals -0.0f,
12481         -0.0, -0.0L.
12482         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
12483         (test_signbitd): Avoid literal -0.0.
12484         (test_signbitl): Avoid literal -0.0L.
12485         * tests/test-ceilf1.c (zero): New variable.
12486         (main): Avoid literal -0.0f.
12487         * tests/test-ceill.c (zero): New variable.
12488         (main): Avoid literal -0.0L.
12489         * tests/test-floorf1.c (zero): New variable.
12490         (main): Avoid literal -0.0f.
12491         * tests/test-floorl.c (zero): New variable.
12492         (main): Avoid literal -0.0L.
12493         * tests/test-roundf1.c (zero): New variable.
12494         (main): Avoid literal -0.0f.
12495         * tests/test-round1.c (zero): New variable.
12496         (main): Avoid literal -0.0.
12497         * tests/test-roundl.c (zero): New variable.
12498         (main): Avoid literal -0.0L.
12499         * tests/test-truncf1.c (zero): New variable.
12500         (main): Avoid literal -0.0f.
12501         * tests/test-trunc1.c (zero): New variable.
12502         (main): Avoid literal -0.0.
12503         * tests/test-truncl.c (zero): New variable.
12504         (main): Avoid literal -0.0L.
12505         * tests/test-frexp.c (zero): New variable.
12506         (main): Avoid literal -0.0.
12507         * tests/test-frexpl.c (zero): New variable.
12508         (main): Avoid literal -0.0L.
12509         * tests/test-ldexpl.c (zero): New variable.
12510         (main): Avoid literal -0.0L.
12511         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
12512         (zerod, zerol): New variables.
12513         (test_function): Avoid literals -0.0, -0.0L.
12514         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
12515         (zerod, zerol): New variables.
12516         (test_function): Avoid literals -0.0, -0.0L.
12517         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
12518         (zerod, zerol): New variables.
12519         (test_function): Avoid literals -0.0, -0.0L.
12520         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
12521         (zerod, zerol): New variables.
12522         (test_function): Avoid literals -0.0, -0.0L.
12523         * tests/test-strtod.c (zero): New variable.
12524         (main): Avoid literal -0.0.
12525         Reported by Jonathan C. Patschke <jp@centtech.com>.
12526
12527 2008-07-31  Jim Meyering  <meyering@redhat.com>
12528
12529         sha256.h: correct definition of SHA224_DIGEST_SIZE
12530         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
12531         Reported by Paulie Pena IV <paulie4@gmail.com>.
12532         Define as 224 / 8, rather than as a literal.
12533         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
12534         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
12535         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
12536
12537 2008-07-31  Bruno Haible  <bruno@clisp.org>
12538
12539         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
12540         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
12541         Reported by Jonathan Patschke <jp@centtech.com>.
12542
12543 2008-07-31  Bruno Haible  <bruno@clisp.org>
12544
12545         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
12546         Reported by Paolo Bonzini <bonzini@gnu.org>.
12547
12548 2008-07-30  Eric Blake  <ebb9@byu.net>
12549
12550         test-strtod: allow compilation without -lm
12551         * tests/test-strtod.c (main): Avoid link dependence on fabs.
12552         Reported by Dennis Clarke <blastwave@gmail.com>.
12553
12554 2008-07-28  Jim Meyering  <meyering@redhat.com>
12555
12556         bootstrap: work also when there are no .po files in po/
12557         * build-aux/bootstrap (update_po_files): Complete the change
12558         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
12559
12560 2008-07-27  Jim Meyering  <meyering@redhat.com>
12561
12562         * users.txt: Add zile.
12563
12564 2008-07-26  Ben Pfaff  <blp@gnu.org>
12565
12566         Add missing dependencies on new m4/exponent[fdl].m4 files.
12567         * modules/isnanf-nolibm: Add m4/exponentf.m4.
12568         * modules/isnand-nolibm: Add m4/exponentd.m4.
12569         * modules/isnanl-nolibm: Add m4/exponentl.m4.
12570         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
12571         m4/isnan[fdl].m4, because the macros actually used moved.
12572         Reported by Jim Meyering.
12573
12574 2008-07-14  Ben Pfaff  <blp@gnu.org>
12575
12576         Add isinf module.
12577         * lib/isinf.c: New file.
12578         * lib/math.in.h: Define isinf macro if we have decided to replace
12579         it.
12580         * m4/isinf.m4: New file.
12581         * m4/math_h.m4: Initialize and substitute variables for isinf
12582         module.
12583         * modules/isinf: New file.
12584         * modules/isinf-tests: New file.
12585         * modules/math: Add substitutions for new module.
12586         * tests/test-isinf.c: New file.
12587         * doc/posix-functions/isinf.texi: Mention new module.
12588         * MODULES.html.sh: Mention new module.
12589
12590 2008-07-14  Ben Pfaff  <blp@gnu.org>
12591
12592         Factor out some macros for use by additional modules.
12593         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
12594         exponentf.m4.
12595         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
12596         exponentd.m4.
12597         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
12598         file exponentl.m4.
12599         * m4/exponentf.m4: New file.
12600         * m4/exponentd.m4: New file.
12601         * m4/exponentl.m4: New file.
12602         * modules/isnanf: Use new file m4/exponentf.m4.
12603         * modules/isnand: Use new file m4/exponentd.m4.
12604         * modules/isnanl: Use new file m4/exponentl.m4.
12605
12606 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
12607
12608         mktime.c: normalize tp->tm_isdst value to -1/0/1.
12609         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
12610         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
12611         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
12612
12613         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
12614         readlink on platforms without PATH_MAX.
12615
12616 2008-07-21  Eric Blake  <ebb9@byu.net>
12617
12618         Warn, not fail, on stale version.
12619         * top/GNUmakefile (_curr-ver): Tone down previous patch.
12620
12621         Don't allow installation with stale devel version number.
12622         * top/GNUmakefile (_is-install-target): New macro.
12623         (_curr-ver): Forbid installation with stale version number.
12624
12625 2008-07-20  Bruno Haible  <bruno@clisp.org>
12626
12627         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
12628         TESTS_ENVIRONMENT.
12629         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
12630
12631 2008-07-20  Bruno Haible  <bruno@clisp.org>
12632
12633         * lib/c-stack.h (c_stack_action): Add documentation.
12634         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
12635
12636 2008-07-20  Bruno Haible  <bruno@clisp.org>
12637
12638         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
12639         * modules/readlink (License): Likewise.
12640
12641 2008-07-17  Eric Blake  <ebb9@byu.net>
12642
12643         * modules/c-stack (Link): Fix typo.
12644
12645         Make c-stack use libsigsegv, when available.
12646         * modules/c-stack (Depends-on): Add libsigsegv.
12647         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
12648         needed.
12649         * lib/c-stack.c (SIGSTKSZ): Define fallback.
12650         (segv_handler, overflow_handler, c_stack_action)
12651         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
12652         implementation when libsigsegv is available, but only when using
12653         the library is necessary.
12654         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
12655         comment, explaining why XSI check fails on Linux.
12656         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
12657         * tests/test-c-stack2.sh: Tweak skip message.
12658         * NEWS: Document new link-time requirements.
12659
12660 2008-07-16  Eric Blake  <ebb9@byu.net>
12661
12662         c-stack: Expose false positives when not using libsigsegv.
12663         * modules/c-stack-tests (Files): Expand test.
12664         * tests/test-c-stack.c (main): Add means to conditionally trigger
12665         non-overflow SIGSEGV.
12666         * tests/test-c-stack2.sh: New file.
12667
12668 2008-07-14  Bruno Haible  <bruno@clisp.org>
12669
12670         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
12671         Reported by Eric Blake.
12672
12673 2008-07-14  Sam Steingold  <sds@gnu.org>
12674             Bruno Haible  <bruno@clisp.org>
12675
12676         New module libsigsegv.
12677         * modules/libsigsegv: New file.
12678         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
12679         modifications.
12680         * MODULES.html.sh (Signal handling): New section.
12681
12682 2008-07-14  Bruno Haible  <bruno@clisp.org>
12683
12684         * modules/unictype/ctype-* (Description): Add the word "function".
12685         Improves the resulting doc in MODULES.html.
12686
12687 2008-07-12  Ben Pfaff  <blp@gnu.org>
12688
12689         Add longlong module.
12690         * modules/longlong: New file.
12691
12692 2008-07-12  Bruno Haible  <bruno@clisp.org>
12693
12694         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
12695         to empty.
12696
12697 2008-07-10  Ben Pfaff  <blp@gnu.org>
12698
12699         Add isnan module.
12700         * doc/posix-functions/isnan.texi: Mention new module.
12701         * lib/math.in.h: Define isnan macro if we have decided to replace
12702         it.
12703         * m4/isnan.m4: New file.
12704         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
12705         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
12706         also.
12707         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
12708         redundancy.
12709         * m4/math_h.m4: Initialize and substitute variables for isnan
12710         module.
12711         * modules/isnan: New file.
12712         * modules/isnan-tests: New file.
12713         * modules/math: Add substitutions for new module.
12714         * tests/test-isnan.c: New file.
12715         * MODULES.html.sh: Mention new module.
12716
12717 2008-07-10  Ben Pfaff  <blp@gnu.org>
12718
12719         Add isnanf module.
12720         * lib/isnanf.m4: New file.
12721         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
12722         (gl_HAVE_ISNANF_IN_LIBM): New macro.
12723         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
12724         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
12725         * modules/isnanf: New file.
12726         * modules/isnanf-tests: New file.
12727         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
12728         files.
12729         * tests/test-isnanf-nolibm.c: factored most of its contents into
12730         new file tests/test-isnanf.h.
12731         * tests/test-isnanf.h: New file.
12732         * tests/test-isnanf.c: New file.
12733         * MODULES.html.sh: Mention new module.
12734         * doc/glibc-functions/isnanf.texi: Mention new module.
12735
12736 2008-07-10  Ben Pfaff  <blp@gnu.org>
12737
12738         Add isnand module.
12739         * lib/isnand.h: New file.
12740         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
12741         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
12742         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
12743         functionality also.
12744         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
12745         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
12746         (gl_HAVE_ISNAND_IN_LIBM): New macro.
12747         * modules/isnand: New file.
12748         * modules/isnand-tests: New file.
12749         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
12750         files.
12751         * tests/test-isnand-nolibm.c: factored most of its contents into
12752         new file tests/test-isnand.h.
12753         * tests/test-isnand.h: New file.
12754         * tests/test-isnand.c: New file.
12755         * MODULES.html.sh: Mention new module.
12756
12757 2008-07-10  Ben Pfaff  <blp@gnu.org>
12758
12759         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
12760         * lib/isnand.h: Rename lib/isnand-nolibm.h.
12761         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
12762         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
12763         * modules/isnanf-nolibm: Update references to renamed files.
12764         * modules/isnand-nolibm: Likewise.
12765         * modules/isnanf-nolibm-tests: Likewise.
12766         * modules/isnand-nolibm-tests: Likewise.
12767         * lib/frexp.c: Likewise.
12768         * lib/isfinite.c: Likewise.
12769         * lib/signbitd.c: Likewise.
12770         * lib/signbitf.c: Likewise.
12771         * lib/vasnprintf.c: Likewise.
12772         * tests/test-ceilf1.c: Likewise.
12773         * tests/test-ceilf2.c: Likewise.
12774         * tests/test-floorf1.c: Likewise.
12775         * tests/test-floorf2.c: Likewise.
12776         * tests/test-frexp.c: Likewise.
12777         * tests/test-round1.c: Likewise.
12778         * tests/test-round2.c: Likewise.
12779         * tests/test-roundf1.c: Likewise.
12780         * tests/test-strtod.c: Likewise.
12781         * tests/test-trunc1.c: Likewise.
12782         * tests/test-trunc2.c: Likewise.
12783         * tests/test-truncf1.c: Likewise.
12784         * tests/test-truncf2.c: Likewise.
12785         * NEWS: Mention the renamed header files.
12786
12787 2008-07-11  Jim Meyering  <meyering@redhat.com>
12788
12789         vc-list-files: make the last-resort awk code more portable
12790         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
12791         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
12792         does not support it.
12793
12794 2008-07-10  Eric Blake  <ebb9@byu.net>
12795
12796         Work with tar's bootstrap.
12797         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
12798         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
12799         an m4 comment.
12800
12801 2008-07-09  Jim Meyering  <meyering@redhat.com>
12802
12803         posix-shell.m4: fix typo that made this test malfunction
12804         * m4/posix-shell.m4: Remove capitalization in variable name.
12805
12806 2008-07-08  Bruno Haible  <bruno@clisp.org>
12807
12808         * m4/onceonly.m4: Update comments.
12809         Reported by Ben Pfaff <blp@cs.stanford.edu>.
12810
12811 2008-07-04  Jim Meyering  <meyering@redhat.com>
12812
12813         * users.txt: Add vc-dwim.
12814         (bison, coreutils): Use the gitweb URL.
12815
12816 2008-07-03  Jim Meyering  <meyering@redhat.com>
12817
12818         * users.txt: Add libffcall.  From Sam Steingold.
12819
12820 2008-07-03  Ondřej Vašík  <ovasik@redhat.com>
12821
12822         getdate.y: do not ignore TZ with relative day, month or year offset
12823         * lib/getdate.y (get_date): Move the tz-handling block to follow the
12824         relative-date-handling, since otherwise, the latter would clobber the
12825         sole output (an updated Start value) of the tz-handling block.
12826         * tests/test-getdate.c: Tests for the fix
12827
12828 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12829
12830         Recognize 'foo_LIBRARIES += libgnu.a'.
12831         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
12832         makefile snippet has already specified an installation location,
12833         also using '+='.
12834
12835 2008-07-02  Ondřej Vašík  <ovasik@redhat.com>
12836
12837         getdate.y: factor out common actions
12838         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
12839         Use them in place of open-coded actions.
12840
12841 2008-07-01  Simon Josefsson  <simon@josefsson.org>
12842
12843         Add self-test for getdate module.
12844         * modules/getdate-tests: New file.
12845         * tests/test-getdate.c: New file.
12846
12847 2008-06-29  Bruno Haible  <bruno@clisp.org>
12848
12849         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
12850         .gitignore.
12851         Reported by Sylvain Beucler <beuc@beuc.net>.
12852
12853 2008-06-29  Bruno Haible  <bruno@clisp.org>
12854
12855         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
12856         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
12857
12858 2008-06-29  Bruno Haible  <bruno@clisp.org>
12859
12860         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
12861         EXTRA_DIST.
12862         Reported by Sylvain Beucler <beuc@beuc.net>.
12863
12864 2008-06-26  Jim Meyering  <meyering@redhat.com>
12865
12866         make several modules depend on the "open" module
12867         This provides slightly increased consistency when opening-for-write
12868         the name of a non-directory spelled with a trailing slash.
12869         * modules/chdir-safer: Likewise.
12870         * modules/chown: Likewise.
12871         * modules/clean-temp: Likewise.
12872         * modules/copy-file: Likewise.
12873         * modules/fchdir: Likewise.
12874         * modules/fcntl-safer: Likewise.
12875         * modules/pipe: Likewise.
12876         * modules/utime: Likewise.
12877         Prompted by Eric Blake and Bruno Haible.
12878
12879 2008-06-24  Andreas Schwab  <schwab@suse.de>
12880
12881         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
12882         literals can be used as initializers for global variables.
12883
12884 2008-06-23  Eric Blake  <ebb9@byu.net>
12885
12886         Make gnulib-cache.m4 easier to diff.
12887         * gnulib-tool (func_import): Allow newlines when reading cached
12888         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
12889
12890 2008-06-23  Bruno Haible  <bruno@clisp.org>
12891
12892         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
12893         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
12894         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
12895         m4/signalblocking.m4.
12896         (gl_PREREQ_SIGACTION): Don't invoke it.
12897         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
12898         gl_PREREQ_SIG_HANDLER_H.
12899         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
12900         Don't check for sigaction here.
12901
12902 2008-06-23  Bruno Haible  <bruno@clisp.org>
12903
12904         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
12905         (install_handlers): Don't set the SA_RESETHAND flag.
12906
12907 2008-06-23  Bruno Haible  <bruno@clisp.org>
12908
12909         * m4/sigaction.m4: Comment fixes.
12910         * lib/signal.in.h: Likewise.
12911
12912 2008-06-23  Eric Blake  <ebb9@byu.net>
12913
12914         Fix typo.
12915         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
12916
12917         Avoid SA_ namespace.
12918         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
12919         Reported by Ralf Wildenhues.
12920
12921         Avoid test failure due to SA_RESTORER.
12922         * tests/test-sigaction.c (SA_MASK): New macro.
12923         (main): Avoid failing due to extension flags being set.
12924         Reported by Jim Meyering.
12925
12926         Revert use of sig-handler.h in sigprocmask.c.
12927         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
12928         it requires the existence of struct sigaction.
12929         * lib/sigprocmask.c (handler_t): Restore typedef.
12930         (rpl_signal, old_handlers): Use local type.
12931
12932 2008-06-22  Bruno Haible  <bruno@clisp.org>
12933
12934         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
12935         conditionally.
12936         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
12937
12938 2008-06-22  Bruno Haible  <bruno@clisp.org>
12939
12940         * doc/posix-functions/siginterrupt.texi: Move note.
12941
12942         * lib/signal.in.h (SA_RESTART): New macro.
12943         * lib/sigaction.c: Update comment.
12944
12945         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
12946
12947         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
12948         (gl_PREREQ_SIGPROCMASK): Invoke it.
12949         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
12950
12951         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
12952
12953         * lib/sigprocmask.c: Update a comment.
12954
12955 2008-06-21  Eric Blake  <ebb9@byu.net>
12956
12957         Use sigaction module rather than signal().
12958         * modules/c-stack (Depends-on): Add sigaction.
12959         * modules/fatal-signal (Depends-on): Likewise.
12960         * modules/nanosleep (Depends-on): Likewise.
12961         * modules/sigprocmask (Files): Add sig-handler.h.
12962         * modules/sigaction (Files): Likewise.
12963         * lib/sig-handler.h (get_handler): New file, suggested by Paul
12964         Eggert.
12965         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
12966         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
12967         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
12968         (init_fatal_signals): Likewise.
12969         * lib/nanosleep.c (rpl_nanosleep): Likewise.
12970         (siginterrupt): Delete fallback.
12971         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
12972         instead.
12973         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
12974         siginterrupt.
12975
12976         New module sigaction, for mingw.
12977         * modules/sigaction: New module...
12978         * modules/sigaction-tests: ...and its test.
12979         * m4/sigaction.m4: New file.
12980         * lib/sigaction.c: Likewise.
12981         * tests/test-sigaction.c: Likewise.
12982         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
12983         * modules/signal (Makefile.am): Likewise.
12984         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
12985         needed.
12986         * doc/posix-headers/signal.texi (signal.h): Mention provided
12987         types.
12988         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
12989         that sigaction is preferable.
12990         * doc/posix-functions/sigaction.texi (sigaction): Mention new
12991         module.
12992         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
12993         sigaction.
12994
12995         Improve robustness of sigprocmask by overriding signal.
12996         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
12997         is in use.
12998         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
12999         (SIGKILL, SIGSTOP): Provide fallbacks.
13000         (rpl_signal): Implement.
13001         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
13002         signal can be called inside handlers.
13003
13004         Fix nanosleep module on mingw.
13005         * modules/nanosleep (Depends-on): Add sys_select.
13006         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
13007
13008         Fix licensing of sigprocmask.
13009         * modules/raise (License): Relicense as LGPL.
13010
13011 2008-06-21  Bruno Haible  <bruno@clisp.org>
13012
13013         * lib/propername.c (proper_name_utf8): Don't use the transliterated
13014         result if it contains question marks.
13015         Reported by Michael Geng <linux@michaelgeng.de>.
13016
13017 2008-06-19  Bruno Haible  <bruno@clisp.org>
13018
13019         Fix CVS-ism.
13020         * doc/gnulib.texi: Include updated-stamp.texi.
13021         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
13022         (updated-stamp.texi): New rule.
13023         (gnulib.info): Depend on it.
13024         * doc/.gitignore: Add updated-stamp.texi.
13025         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
13026
13027 2008-06-19  Bruno Haible  <bruno@clisp.org>
13028
13029         * doc/Makefile (gnulib.info): Update and simplify dependencies.
13030         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
13031
13032 2008-06-19  Eric Blake  <ebb9@byu.net>
13033
13034         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
13035         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
13036         Reported by Stepan Kasal.
13037
13038 2008-06-18  Bruno Haible  <bruno@clisp.org>
13039
13040         * lib/fatal-signal.c (init_fatal_signals): Add comment.
13041         Reported by Eric Blake.
13042
13043 2008-06-18  Eric Blake  <ebb9@byu.net>
13044
13045         Work around cygwin 1.5.25 strsignal bug.
13046         * tests/test-strsignal.c: Allow for const char *.
13047         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
13048
13049 2008-06-18  Simon Josefsson  <simon@josefsson.org>
13050
13051         * users.txt: Update URL to article and add author/date
13052         information.
13053
13054 2008-06-17  Bruno Haible  <bruno@clisp.org>
13055
13056         New macro gl_DISABLE_THREADS.
13057         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
13058         if the user did not pass --enable-threads or --disable-threads option.
13059         (gl_DISABLE_THREADS): New macro.
13060         Reported by Eric Blake <ebb9@byu.net>.
13061
13062 2008-06-17  Bruno Haible  <bruno@clisp.org>
13063
13064         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
13065         when the macro ignores it.
13066         Based on a patch by Eric Blake <ebb9@byu.net>.
13067
13068 2008-06-17  Bruno Haible  <bruno@clisp.org>
13069
13070         * modules/tls (License): Change to LGPLv2+.
13071         Reported by Eric Blake.
13072
13073 2008-06-17  Eric Blake  <ebb9@byu.net>
13074
13075         Simplify c-stack prerequisites.
13076         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
13077         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
13078         no longer requires <ucontext.h> to exist.  Optimize setrlimit
13079         check.
13080         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
13081         <sys/resource.h>.
13082
13083         Move c-stack test into testsuite.
13084         * modules/c-stack-tests: New file.
13085         * lib/c-stack.c [DEBUG]: Move test program...
13086         * tests/test-c-stack.c: ...into this new file.  Skip rather than
13087         fail test if sigaltstack is lacking.
13088         * tests/test-c-stack.sh: New driver file.
13089
13090 2008-06-16  Eric Blake  <ebb9@byu.net>
13091
13092         Use raise module consistently.
13093         * modules/fatal-signal (Depends-on): Add raise.
13094         * modules/sigprocmask (Depends-on): Likewise.
13095         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
13096         * lib/sigprocmask.c (sigprocmask): Likewise.
13097         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
13098         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
13099
13100         Fix compliance bug in sigpending.
13101         * lib/sigprocmask.c (sigpending): Return pending array via
13102         parameter, not return value.
13103
13104 2008-06-14  Eric Blake  <ebb9@byu.net>
13105
13106         Improve obstack-printf test code.
13107         * tests/test-obstack-printf.c (test_function): Fix comment, and
13108         simplify usage of obstack_* in macros.  Add a test for coverage.
13109         Reported by Bruno Haible.
13110
13111 2008-06-14  Bruno Haible  <bruno@clisp.org>
13112
13113         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
13114         array size as a constant, not as a const variable.
13115         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
13116         AC_USE_SYSTEM_EXTENSIONS.
13117         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
13118         Test whether the obstack_printf function actually exists.
13119         * modules/obstack-printf (Depends-on): Add extensions.
13120         (Include): Remove obstack.h.
13121         * modules/obstack-printf-posix (Depends-on): Add extensions.
13122         (Include): Remove obstack.h.
13123
13124 2008-06-13  Eric Blake  <ebb9@byu.net>
13125
13126         Add obstack-printf and obstack-printf-posix modules.
13127         * modules/obstack-printf: New file.
13128         * modules/obstack-printf-posix: Likewise.
13129         * MODULES.html.sh (Misc): Mention them.
13130         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
13131         Likewise.
13132         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
13133         Likewise.
13134         * modules/stdio (Makefile.am): Accomodate new modules.
13135         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
13136         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
13137         Declare.
13138         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
13139         functions.
13140         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
13141         (gl_REPLACE_OBSTACK_PRINTF): New macros
13142         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
13143         * tests/test-obstack-printf.c: New file.
13144         * modules/obstack-printf-tests: Likewise.
13145         * modules/obstack-printf-posix-tests: Likewise.
13146
13147 2008-06-11  Bruno Haible  <bruno@clisp.org>
13148
13149         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
13150         * lib/open.c: Include errno.h.
13151         (open): Fail when attempting to write to a file that has a trailing
13152         slash.
13153         * tests/test-open.c (main): Test against trailing slash bug.
13154         * doc/posix-functions/open.texi: Mention the trailing slash bug.
13155
13156 2008-06-10  Bruno Haible  <bruno@clisp.org>
13157
13158         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
13159         for $? to work inside the trap command, with various /bin/sh-s.
13160         * tests/test-vc-list-files-cvs.sh: Likewise.
13161
13162 2008-06-10  Bruno Haible  <bruno@clisp.org>
13163
13164         * lib/acl-internal.h: Don't include gettext.h here.
13165         * lib/set-mode-acl.c: Include gettext.h here.
13166         * lib/copy-acl.c: Likewise.
13167
13168 2008-06-10  Bruno Haible  <bruno@clisp.org>
13169
13170         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
13171         * lib/wait-process.c (wait_subprocess): Likewise.
13172         * lib/execute.h (execute): Add termsigp argument.
13173         * lib/execute.c (execute): Likewise.
13174         * lib/csharpcomp.c (compile_csharp_using_pnet,
13175         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
13176         * lib/csharpexec.c (execute_csharp_using_pnet,
13177         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
13178         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
13179         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
13180         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
13181         is_jikes_present): Update.
13182         * lib/javaexec.c (execute_java_class): Update.
13183         * lib/javaversion.c (execute_and_read_line): Update.
13184         * NEWS: Document the changes.
13185         Reported by Eric Blake.
13186
13187 2008-06-10  Eric Blake  <ebb9@byu.net>
13188
13189         Add missing include.
13190         * tests/test-strstr.c (includes): Add <signal.h>.
13191         * tests/test-strcasestr.c (includes): Likewise.
13192         * tests/test-memmem.c (includes): Likewise.
13193
13194 2008-06-10  Bruno Haible  <bruno@clisp.org>
13195
13196         * lib/wait-process.c (wait_subprocess): Add an assertion.
13197
13198 2008-06-10  Bruno Haible  <bruno@clisp.org>
13199
13200         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
13201
13202 2008-06-10  Bruno Haible  <bruno@clisp.org>
13203
13204         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
13205         using alarm().
13206         * tests/test-strcasestr.c (main): Likewise.
13207         * tests/test-strstr.c (main): Likewise.
13208
13209 2008-06-09  Bruno Haible  <bruno@clisp.org>
13210
13211         Work around the Solaris 10 ACE ACLs ABI change.
13212         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
13213         declare if ACL_NO_TRIVIAL is present.
13214         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
13215         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
13216         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
13217         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
13218         define if ACL_NO_TRIVIAL is present.
13219         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
13220         and use the current ABI.
13221         (file_has_acl): Use same #if condition as elsewhere.
13222         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
13223         in use, and use the current ABI.
13224         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
13225         Reported by Jim Meyering.
13226
13227 2008-06-09  Eric Blake  <ebb9@byu.net>
13228
13229         Work around environments that (stupidly) ignore SIGALRM.
13230         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
13231         before using alarm().
13232         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
13233         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
13234         Reported by Ian Beckwith <ianb@erislabs.net>.
13235
13236         Produce autobuild blurb earlier in log.
13237         * modules/autobuild (configure.ac-early): Move AB_INIT here.
13238
13239 2008-06-09  Jim Meyering  <meyering@redhat.com>
13240         and Ondřej Vašík  <ovasik@redhat.com>
13241
13242         utimens.c: correct kernel bug work-around
13243         Ondřej Vašík found that the invalid return value of 280 indicates
13244         failure, not success, and the kernel bug we're trying to work
13245         around affects not just the utimensat call, but also the fallback
13246         futimens call.
13247         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
13248         not success.
13249         [HAVE_FUTIMENS]: Use the same work-around, here.
13250
13251 2008-06-09  Jim Meyering  <meyering@redhat.com>
13252
13253         add more guards around definition of ACE_-related code
13254         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
13255         ALLOW and ACE_OWNER are also defined.
13256
13257 2008-06-08  Bruno Haible  <bruno@clisp.org>
13258
13259         * lib/acl-internal.h: Add me as co-author.
13260         * lib/file-has-acl.c: Likewise.
13261         * lib/set-mode-acl.c: Likewise.
13262         * lib/copy-acl.c: Likewise.
13263
13264 2008-06-08  Bruno Haible  <bruno@clisp.org>
13265
13266         Add support for AIX ACLs.
13267         * lib/acl-internal.h (acl_nontrivial): New declaration.
13268         * lib/file-has-acl.c (acl_nontrivial): New function.
13269         (file_has_acl): Add implementation using AIX 4 ACL API.
13270         * lib/set-mode-acl.c (qset_acl): Likewise.
13271         * lib/copy-acl.c (qcopy_acl): Likewise.
13272
13273 2008-06-08  Bruno Haible  <bruno@clisp.org>
13274
13275         Add support for HP-UX ACLs.
13276         * lib/acl-internal.h (acl_nontrivial): New declaration.
13277         * lib/file-has-acl.c (acl_nontrivial): New function.
13278         (file_has_acl): Add implementation using HP-UX 11 ACL API.
13279         * lib/set-mode-acl.c (qset_acl): Likewise.
13280         * lib/copy-acl.c (qcopy_acl): Likewise.
13281
13282 2008-06-08  Bruno Haible  <bruno@clisp.org>
13283
13284         Add support for Cygwin ACLs.
13285         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
13286         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
13287         the chmod_or_fchmod call.
13288         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
13289
13290 2008-06-08  Bruno Haible  <bruno@clisp.org>
13291
13292         Fix bug with setuid modes in Solaris 10+ code.
13293         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
13294         succeeded, when the mode contains some special bits.
13295
13296 2008-06-08  Bruno Haible  <bruno@clisp.org>
13297
13298         Add support for Solaris 7..10 ACLs.
13299         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
13300         declarations.
13301         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
13302         functions.
13303         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
13304         * lib/set-mode-acl.c (qset_acl): Likewise.
13305         * lib/copy-acl.c (qcopy_acl): Likewise.
13306
13307 2008-06-08  Bruno Haible  <bruno@clisp.org>
13308
13309         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
13310         declaration.
13311         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
13312         (acl_access_nontrivial): Remove MacOS X case.
13313         (file_has_acl): Use acl_extended_nontrivial.
13314         * lib/copy-acl.c (qcopy_acl): Likewise.
13315
13316 2008-06-08  Bruno Haible  <bruno@clisp.org>
13317
13318         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
13319
13320 2008-06-08  Jim Meyering  <meyering@redhat.com>
13321
13322         * modules/acl (Maintainer): Add Bruno Haible.
13323
13324 2008-06-07  Bruno Haible  <bruno@clisp.org>
13325
13326         Improve support for Tru64 ACLs.
13327         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
13328         ACL on OSF/1.
13329
13330 2008-06-07  Bruno Haible  <bruno@clisp.org>
13331
13332         Add support for MacOS X ACLs.
13333         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
13334         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
13335         * lib/set-mode-acl.c (qset_acl): Likewise.
13336         * lib/copy-acl.c (qcopy_acl): Likewise.
13337
13338 2008-06-07  Bruno Haible  <bruno@clisp.org>
13339
13340         Fix memory leak introduced on 2008-05-22.
13341         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
13342         use.
13343
13344 2008-06-07  Bruno Haible  <bruno@clisp.org>
13345
13346         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
13347         to construct an empty ACL.
13348
13349 2008-06-07  Bruno Haible  <bruno@clisp.org>
13350
13351         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
13352         precisely.
13353         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
13354
13355 2008-06-07  Bruno Haible  <bruno@clisp.org>
13356
13357         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
13358         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
13359
13360 2008-06-07  Bruno Haible  <bruno@clisp.org>
13361
13362         * doc/posix-functions/_setjmp.texi: Explain the use of this function
13363         regardless of POSIX.
13364         * doc/posix-functions/_longjmp.texi: Likewise.
13365         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
13366         SystemV platform in this case.
13367
13368 2008-06-06  Eric Blake  <ebb9@byu.net>
13369
13370         Document abort() bugs.
13371         * doc/posix-functions/abort.texi (abort): Mention anomalies.
13372
13373         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
13374         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
13375         sigsetjmp.
13376         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
13377         siglongjmp, but only as a macro.
13378         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
13379         is obsolete.
13380         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
13381
13382         Tweak documentation to cover cygwin argz bugs.
13383         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
13384         argz bug fix; no code change needed since no cygwin releases
13385         occurred between the last fix and the bug being tested.
13386         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
13387         module and recently fixed cygwin bugs.
13388         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
13389         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
13390         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
13391         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
13392         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
13393         Likewise.
13394         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
13395         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
13396         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
13397         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
13398         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
13399         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
13400         Likewise.
13401
13402         Avoid gcc warning on cygwin.
13403         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
13404         !ACL_NO_TRIVIAL]: Avoid unused variable.
13405
13406 2008-06-05  Eric Blake  <ebb9@byu.net>
13407
13408         Be tolerant of UNKNOWN version in gnulib-tool test dir.
13409         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
13410         git-version-gen fails to come up with a version.
13411         Reported by Simon Josefsson.
13412
13413 2008-06-05  Jim Meyering  <meyering@redhat.com>
13414             Paul Eggert  <eggert@cs.ucla.edu>
13415
13416         utimens.c: work around a probable Linux kernel bug
13417         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
13418         appears to be a kernel bug that causes utimensat to return 280
13419         instead of 0, indicating success.
13420
13421 2008-06-04  Bruno Haible  <bruno@clisp.org>
13422
13423         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
13424         2008-06-01 commit.
13425
13426 2008-06-04  Bruno Haible  <bruno@clisp.org>
13427
13428         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
13429         * lib/file-has-acl.c (acl_access_nontrivial): New function.
13430         (file_has_acl): Use it. Save errno afterwards.
13431         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
13432
13433 2008-06-03  Bruno Haible  <bruno@clisp.org>
13434
13435         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
13436         draft code. Simplify #ifs.
13437         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
13438         Put Solaris code after POSIX-draft code. Fix comments regarding
13439         Solaris 10, HP-UX. Mention Cygwin.
13440         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
13441
13442 2008-06-03  Eric Blake  <ebb9@byu.net>
13443
13444         Provide fallback for older kernels.
13445         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
13446         Provide runtime fallback if kernel lacks support.
13447         Reported by Mike Frysinger.
13448
13449 2008-06-02  Bruno Haible  <bruno@clisp.org>
13450
13451         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
13452         it exists.
13453
13454 2008-06-02  Bruno Haible  <bruno@clisp.org>
13455
13456         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
13457         * lib/copy-acl.c (qcopy_acl): Update comment.
13458
13459 2008-06-02  Bruno Haible  <bruno@clisp.org>
13460
13461         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
13462         like ACL APIs.
13463
13464 2008-06-02  Bruno Haible  <bruno@clisp.org>
13465
13466         * tests/test-file-has-acl.sh: Use different code for Cygwin.
13467         * tests/test-set-mode-acl.sh: Likewise.
13468         * tests/test-copy-acl.sh: Likewise.
13469         * tests/test-copy-file.sh: Likewise.
13470
13471 2008-06-02  Bruno Haible  <bruno@clisp.org>
13472
13473         * tests/test-file-has-acl.sh: Remove unused code.
13474
13475 2008-06-01  Bruno Haible  <bruno@clisp.org>
13476
13477         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
13478         (copy_acl): Just a wrapper around qcopy_acl that emits the error
13479         messages.
13480         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
13481
13482 2008-06-01  Bruno Haible  <bruno@clisp.org>
13483
13484         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
13485         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
13486         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
13487         APIs.
13488         * modules/acl-tests (configure.ac): Remove tests now contained in
13489         m4/acl.m4.
13490
13491 2008-06-02  Jim Meyering  <meyering@redhat.com>
13492
13493         announce-gen: use a better key-server host name
13494         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
13495         it may be more consistently reliable.  Suggested by Werner Koch
13496         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
13497
13498 2008-06-01  Bruno Haible  <bruno@clisp.org>
13499
13500         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
13501         Reported by Voroskoi Andras <voroskoi@gmail.com>.
13502
13503 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
13504
13505         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
13506
13507 2008-06-01  Bruno Haible  <bruno@clisp.org>
13508
13509         New ACL tests.
13510         * tests/test-file-has-acl.sh: New file.
13511         * tests/test-file-has-acl.c: New file.
13512         * tests/test-set-mode-acl.sh: New file.
13513         * tests/test-set-mode-acl.c: New file.
13514         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
13515         * tests/test-copy-acl.c: New file.
13516         * modules/acl-tests: New file, based on modules/copy-file-tests.
13517         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
13518         (Depends-on): Add acl-tests.
13519         (configure.ac): Remove checks.
13520         (Makefile.am): Don't create test-sameacls program here any more.
13521
13522 2008-06-01  Bruno Haible  <bruno@clisp.org>
13523
13524         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
13525         * tests/test-sameacls.c: Include progname.h.
13526         (main): Invoke set_program_name. Portability fixes for MacOS X,
13527         Solaris, HP-UX.
13528
13529 2008-06-01  Bruno Haible  <bruno@clisp.org>
13530
13531         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
13532         function.
13533         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
13534
13535 2008-06-01  Bruno Haible  <bruno@clisp.org>
13536
13537         * modules/rpmatch (Depends-on): Add strdup.
13538
13539 2008-06-01  Bruno Haible  <bruno@clisp.org>
13540
13541         * lib/pipe.c: Include unistd-safer.h.
13542         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
13543         * modules/pipe (Depends-on): Add unistd-safer.
13544
13545 2008-05-30  Simon Josefsson  <simon@josefsson.org>
13546
13547         * modules/autobuild (configure.ac): Call AB_INIT.
13548
13549 2008-05-30  Simon Josefsson  <simon@josefsson.org>
13550
13551         * tests/test-getaddrinfo.c: Don't print debug messages by default.
13552         Suggested by Bruno Haible <bruno@clisp.org>.
13553
13554 2008-05-30  Simon Josefsson  <simon@josefsson.org>
13555
13556         * tests/test-base64.c: Cast size_t to unsigned long when invoking
13557         printf.  Use %lu instead of %d.  Reported by Bruno Haible
13558         <bruno@clisp.org>.
13559
13560 2008-05-29  Eric Blake  <ebb9@byu.net>
13561
13562         Prefer new POSIX 200x interfaces over futimesat.
13563         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
13564         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
13565         when available.
13566         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
13567
13568 2008-05-28  Bruno Haible  <bruno@clisp.org>
13569
13570         * modules/stpcpy (License): Change to LGPLv2+.
13571         Requested by David Lutterkort <dlutter@redhat.com>.
13572
13573 2008-05-27  Bruno Haible  <bruno@clisp.org>
13574
13575         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
13576         current mingw.
13577         Reported by Jose E. Marchesi <jemarch@gnu.org>.
13578
13579 2008-05-27  Bruno Haible  <bruno@clisp.org>
13580
13581         * modules/iconv_open (Link): New section, from module 'iconv'.
13582         * modules/striconv (Link): Likewise.
13583         * modules/striconveh (Link): Likewise.
13584         * modules/xstriconv (Link): Likewise.
13585         * modules/unicodeio (Link): Likewise.
13586         * modules/propername (Link): Likewise.
13587         Reported by Jim Meyering.
13588
13589 2008-05-26  Jim Meyering  <meyering@redhat.com>
13590
13591         sha256: do not artificially restrict buffer length to be < 2^32
13592         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
13593         uint32_t to size_t.
13594         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
13595         to match.
13596
13597         avoid unaligned access errors, e.g., on sparc
13598         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
13599         direct access through a possibly-unaligned uint64* pointer.
13600         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
13601         direct access through a possibly-unaligned uint32* pointer.
13602         Prompted by this patch from Tom "spot" Callaway:
13603         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
13604
13605         sha512.c: fix typo in comment
13606         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
13607
13608 2008-05-25  Bruno Haible  <bruno@clisp.org>
13609
13610         * lib/set-mode-acl.c: Renamed from lib/acl.c.
13611         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
13612         (Makefile.am): Update lib_SOURCES.
13613
13614 2008-05-25  Bruno Haible  <bruno@clisp.org>
13615
13616         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
13617
13618 2008-05-25  Jim Meyering  <meyering@redhat.com>
13619
13620         useless-if-before-free: freed expr may have white-space differences
13621         * build-aux/useless-if-before-free: Recognize cases in which the
13622         freed expression differs from the tested one in embedded white
13623         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
13624         $1 was used, so we can't make any regexp shy.  Improved tests now
13625         detect this.
13626
13627         useless-if-before-free: accept white space in the expression.
13628         * build-aux/useless-if-before-free: For now, any white space
13629         in the expression must be identical in the free argument.
13630
13631         useless-if-before-free: efficiency tweak
13632         * build-aux/useless-if-before-free: Make the expression-matching
13633         regexp "shy".
13634         Make the *outer* regexp shy, not the expr-matching one.
13635
13636         update code-in-comment to accept cast of free arg
13637         * build-aux/useless-if-before-free: Update regexp.
13638
13639 2008-05-25  Bruno Haible  <bruno@clisp.org>
13640
13641         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
13642         * modules/copy-file-tests (Files, Makefile.am): Update.
13643         * tests/test-copy-file.c (func_test_copy): Update.
13644
13645 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
13646
13647         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
13648
13649 2008-05-23  Bruno Haible  <bruno@clisp.org>
13650
13651         Improve support for ACLs on OSF/1.
13652         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
13653         Remove fallback for unknown flavors of ACLs.
13654
13655 2008-05-22  Bruno Haible  <bruno@clisp.org>
13656
13657         Add support for ACLs on OSF/1.
13658         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
13659         replacements.
13660         (acl_free_text): New macro fallback.
13661         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
13662         acl_free.
13663         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
13664         acl_free_text function. Require AC_C_INLINE.
13665
13666 2008-05-22  Bruno Haible  <bruno@clisp.org>
13667
13668         Make copy_acl work on MacOS X 10.5.
13669         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
13670         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
13671         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
13672         If MODE_INSIDE_ACL, don't assume that every system has the same text
13673         representation for ACLs as FreeBSD.
13674         * lib/copy-acl.c (copy_acl): Add support for platforms with
13675         !MODE_INSIDE_ACL.
13676         * lib/file-has-acl.c (file_has_acl): Likewise.
13677         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
13678         FreeBSD, MacOS X, or IRIX, respectively.
13679
13680 2008-05-22  Bruno Haible  <bruno@clisp.org>
13681
13682         * lib/acl.h: Don't include <sys/acl.h>.
13683         (GETACLCNT): Move fallback to lib/acl-internal.h.
13684         * lib/acl-internal.h: Include <sys/acl.h> here.
13685         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
13686
13687 2008-05-22  Bruno Haible  <bruno@clisp.org>
13688
13689         Split off copy_acl function to separate file.
13690         * lib/copy-acl.c: New file, extracted from lib/acl.c.
13691         * lib/acl.c (copy_acl): Moved function to separate file.
13692         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
13693         * modules/acl (Files): Add lib/copy-acl.c.
13694         (Makefiles.am): Augment lib_SOURCES.
13695
13696 2008-05-22  Bruno Haible  <bruno@clisp.org>
13697
13698         * modules/copy-file-tests: New file.
13699         * tests/test-copy-file.sh: New file.
13700         * tests/test-copy-file.c: New file.
13701         * tests/test-copy-file-sameacls.c: New file.
13702
13703 2008-05-22  Eric Blake  <ebb9@byu.net>
13704
13705         Avoid gcc warning.
13706         * tests/test-memcmp.c (main): Pass NULL indirectly.
13707
13708 2008-05-21  Bruno Haible  <bruno@clisp.org>
13709
13710         Add reference doc about ACLs.
13711         * doc/acl-resources.txt: New file.
13712         * doc/acl-cygwin.txt: New file.
13713
13714 2008-05-21  Bruno Haible  <bruno@clisp.org>
13715
13716         Avoid one more warning from gcc.
13717         * lib/vasnprintf.c (IF_LINT): Update comments.
13718         (VASNPRINTF): Use it also for the 'prefix' array initializer.
13719
13720 2008-05-21  Jim Meyering  <meyering@redhat.com>
13721
13722         avoid a warning from gcc
13723         * lib/vasnprintf.c (IF_LINT): Define.
13724         (scale10_round_decimal_long_double):
13725         Use it to avoid a "may be used uninitialized" warning.
13726         (scale10_round_decimal_double): Likewise.
13727
13728 2008-05-21  Simon Josefsson  <simon@josefsson.org>
13729
13730         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
13731         declared.
13732
13733 2008-05-20  Bruno Haible  <bruno@clisp.org>
13734
13735         * tests/test-memcmp.c (main): Test also the sign of the result. Test
13736         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
13737
13738 2008-05-20  Simon Josefsson  <simon@josefsson.org>
13739
13740         * modules/memcmp-tests: New file.
13741         * tests/test-memcmp.c: New file.
13742
13743 2008-05-19  Bruno Haible  <bruno@clisp.org>
13744
13745         * modules/propername (Notice, configure.ac): Put quoted "..." into
13746         --keyword option.
13747         * lib/propername.h: Update comments accordingly.
13748         Reported by Eric Blake.
13749
13750 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
13751
13752         * modules/getpass-gnu (Depends-on): Add fseeko.
13753
13754 2008-05-19  Simon Josefsson  <simon@josefsson.org>
13755
13756         * modules/base64-tests: New file.
13757
13758 2008-05-19  Bo Borgerson <gigabo@gmail.com>
13759
13760         * lib/base64.c (base64_decode_ctx): If a decode context structure
13761         was passed in use it to ignore newlines.  If a context structure
13762         was _not_ passed in, continue to treat newlines as garbage (this
13763         is the historical behavior).  Formerly base64_decode.
13764         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
13765         takes a decode context structure.
13766         * lib/base64.h (base64_decode): Macro for four-argument calls.
13767         (base64_decode_alloc): Likewise.
13768         * lib/base64.c (base64_decode_ctx): If a decode context structure
13769         was passed in use it to ignore newlines.  If a context structure
13770         was _not_ passed in, continue to treat newlines as garbage (this
13771         is the historical behavior).  Formerly base64_decode.
13772         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
13773         takes a decode context structure.
13774         * lib/base64.h (base64_decode): Macro for four-argument calls.
13775         (base64_decode_alloc): Likewise.
13776
13777 2008-05-19  Jim Meyering  <meyering@redhat.com>
13778
13779         avoid a warning from gcc
13780         * lib/trim.c (IF_LINT): Define.
13781         (trim2): Use it to avoid a "may be used uninitialized" warning.
13782
13783         Fix doc typo.
13784         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
13785
13786 2008-05-19  Bruno Haible  <bruno@clisp.org>
13787
13788         * doc/glibc-functions/getpass.texi: Document limits of other
13789         implementations.
13790
13791 2008-05-19  Simon Josefsson  <simon@josefsson.org>
13792             Bruno Haible <bruno@clisp.org>
13793
13794         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
13795
13796 2008-05-18  Bruno Haible  <bruno@clisp.org>
13797
13798         * modules/propername: New file, from GNU gettext.
13799         * lib/propername.h: New file, from GNU gettext.
13800         * lib/propername.c: New file, from GNU gettext.
13801         * MODULES.html.sh (Internationalization functions): Add propername.
13802
13803 2008-05-16  Jim Meyering  <meyering@redhat.com>
13804             Bruno Haible  <bruno@clisp.org>
13805
13806         Avoid some warnings from "gcc -Wshadow".
13807         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
13808
13809 2008-05-15  Eric Blake  <ebb9@byu.net>
13810
13811         Extend previous patch to cygwin 1.7.0.
13812         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
13813         fast implementation in cygwin >= 1.7.0.
13814         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
13815         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
13816
13817 2008-05-15  Bruno Haible  <bruno@clisp.org>
13818
13819         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
13820         implementation in glibc >= 2.9.
13821         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
13822         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
13823
13824 2008-05-15  Bruno Haible  <bruno@clisp.org>
13825
13826         * MODULES.html.sh (Internationalization functions): Remove linebreak.
13827         (Unicode string functions): Add unilbrk/*.
13828         Reported by Karl Berry.
13829
13830 2008-05-15  Eric Blake  <ebb9@byu.net>
13831
13832         Fix violation of <stdbool.h> replacement in regex.
13833         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
13834         * lib/regexec.c (re_search_internal): Likewise.
13835         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
13836
13837 2008-05-15  Jim Meyering  <meyering@redhat.com>
13838
13839         avoid distracting test output when git or cvs is not found
13840         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
13841         * tests/test-vc-list-files-git.sh: Likewise.
13842
13843 2008-05-15  Eric Blake  <ebb9@byu.net>
13844
13845         Glibc finally accepted the memmem speedup code, bugzilla #5514.
13846         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
13847         glibc version.
13848         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
13849         * doc/posix-functions/strstr.texi (strstr): Likewise.
13850         * lib/str-two-way.h (MAX): Sychronize with glibc.
13851
13852 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
13853
13854         * lib/regcomp.c (optimize_utf8): Add a note on why we test
13855         opr.ctx_type.
13856         (calc_first): Initialize constraint field.
13857         (duplicate_node_closure): Use it instead of special casing ANCHORS.
13858         Fix grammar.
13859         (duplicate_node): Merge constraint field for all node types.
13860         (calc_eclosure_iter): Look at constraint field for all node types.
13861         * lib/regex_internal.c (create_cd_newstate): Don't look at
13862         opr.ctx_type.
13863
13864 2008-05-14  Bruno Haible  <bruno@clisp.org>
13865
13866         Help GCC to do better code generation.
13867         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
13868         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
13869         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
13870         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
13871         Declare with attribute 'malloc' if supported.
13872
13873 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
13874
13875         use "echo STR|wc -c" rather than unportable "expr length STR"
13876         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
13877         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
13878
13879 2008-05-14  Jim Meyering  <meyering@redhat.com>
13880
13881         use dd ibs=$n count=1 ... rather than less-portable head -c$n
13882         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
13883         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
13884         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
13885         via Collin Lasse.
13886
13887 2008-05-14  Eric Blake  <ebb9@byu.net>
13888
13889         Avoid quadratic growth in gl_LIBSOURCES.
13890         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
13891         Suggested by Bruno Haible.
13892
13893         Test xmemdup0.
13894         * modules/xmemdup0-tests: New file.
13895         * tests/test-xmemdup0.c: Likewise.
13896
13897 2008-05-13  Eric Blake  <ebb9@byu.net>
13898
13899         Split xmemdup0 into its own module.
13900         * modules/xmemdup0: New file.
13901         * lib/xmemdup0.h: Likewise.
13902         * lib/xmemdup0.c: Likewise.
13903         * MODULES.html.sh (Memory management functions): Add xmemdup0.
13904         * lib/xalloc.h (xmemdup0): Remove.
13905         * lib/xmalloc.c (xmemdup0): Likewise.
13906
13907 2008-05-13  Eric Blake  <ebb9@byu.net>
13908             Bruno Haible  <bruno@clisp.org>
13909
13910         Reduce number of forks required during autoconf.
13911         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
13912         and gl_LIBSOURCES_DIR.
13913         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
13914         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
13915         m4_syscmd per file.
13916         <m4_foreach_w>: Move...
13917         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
13918
13919 2008-05-13  Eric Blake  <ebb9@byu.net>
13920
13921         * gnulib-tool: Fix various comment typos.
13922
13923 2008-05-12  Bruno Haible  <bruno@clisp.org>
13924
13925         Tailor the linebreaking algorithm.
13926         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
13927
13928 2008-05-12  Bruno Haible  <bruno@clisp.org>
13929
13930         Update to Unicode 5.0.0.
13931         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
13932         LBP_JV, LBP_JT. Redistribute values.
13933         (unilbrk_table): Change size.
13934         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
13935         Unicode TR#14 rev. 22.
13936         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
13937         LBP_JV, LBP_JT. Redistribute values.
13938         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
13939         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
13940         Update.
13941         * lib/unilbrk/lbrkprop1.h: Regenerated.
13942         * lib/unilbrk/lbrkprop2.h: Regenerated.
13943         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
13944         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
13945         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
13946         Likewise.
13947         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
13948         Likewise.
13949         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
13950         result.
13951         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
13952         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
13953         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
13954         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
13955         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
13956         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
13957
13958 2008-05-11  Bruno Haible  <bruno@clisp.org>
13959
13960         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
13961
13962 2008-05-11  Bruno Haible  <bruno@clisp.org>
13963
13964         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
13965         * modules/unilbrk/gen-lbrk: New file.
13966
13967 2008-05-11  Bruno Haible  <bruno@clisp.org>
13968
13969         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
13970         * m4/sha512.m4 (gl_SHA512): Likewise.
13971
13972 2008-05-11  Jim Meyering  <meyering@redhat.com>
13973
13974         New modules: crypto/sha256, crypto/sha512 (from coreutils)
13975         * modules/crypto/sha256: New file.
13976         * modules/crypto/sha512: Likewise.
13977         * lib/sha256.c: Likewise.
13978         * lib/sha256.h: Likewise.
13979         * lib/sha512.c: Likewise.
13980         * lib/sha512.h: Likewise.
13981         * lib/u64.h: Likewise.
13982         * m4/sha256.m4: Likewise.
13983         * m4/sha512.m4: Likewise.
13984         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
13985
13986 2008-05-10  Bruno Haible  <bruno@clisp.org>
13987
13988         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
13989         (Input/Output <stdio.h>): Add xprintf.
13990         (Signal handling <signal.h>): Add strsignal.
13991         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
13992         (Core language properties): Add func.
13993         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
13994         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
13995         strings.
13996         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
13997         (Input/output): New section.
13998         (File system functions): Add openat-die, stat-macros.
13999         (Networking functions): Add sockets.
14000         (Unicode string functions): Add unictype/*.
14001         (Support for building libraries and executables): Add gperf.
14002         (Support for building documentation): Add agpl-3.0.
14003         (Misc): Add nocrash.
14004
14005 2008-05-10  Bruno Haible  <bruno@clisp.org>
14006
14007         * modules/unictype/gen-ctype: New file.
14008
14009 2008-05-10  Jim Meyering  <meyering@redhat.com>
14010
14011         Make chdir-safer.c more efficient on a system with no symlinks.
14012         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
14013         also if ELOOP is zero.  Suggested by Bruno Haible.
14014
14015         Make chdir-safer.c slightly safer.
14016         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
14017         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
14018
14019         Avoid compile failure on systems without ELOOP (like mingw).
14020         * lib/chdir-safer.c (ELOOP): Define if not already defined.
14021         Reported by Bruno Haible.
14022
14023 2008-05-10  Bruno Haible  <bruno@clisp.org>
14024
14025         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
14026         (is_utf8_encoding): Use a case-insensitive comparison.
14027         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
14028         streq.
14029
14030 2008-05-10  Bruno Haible  <bruno@clisp.org>
14031
14032         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
14033         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
14034         * lib/unilbrk/ulc-common.h (iconv_string_length,
14035         iconv_string_keeping_offsets): Remove declarations.
14036         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
14037         Don't include <iconv.h>, streq.h, xsize.h.
14038         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
14039         conversion.
14040         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
14041         <iconv.h>, streq.h, xsize.h.
14042         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
14043         conversion.
14044         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
14045         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
14046         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
14047         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
14048
14049 2008-05-10  Bruno Haible  <bruno@clisp.org>
14050
14051         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
14052         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
14053
14054         * modules/unilbrk/u32-width-linebreaks-tests: New file.
14055         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
14056
14057         * modules/unilbrk/u16-width-linebreaks-tests: New file.
14058         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
14059
14060         * modules/unilbrk/u8-width-linebreaks-tests: New file.
14061         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
14062
14063         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
14064         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
14065
14066         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
14067         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
14068
14069         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
14070         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
14071
14072         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
14073         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
14074
14075 2008-05-10  Bruno Haible  <bruno@clisp.org>
14076
14077         Split up 'linebreak' module.
14078         * lib/unilbrk.h: New file, based on lib/linebreak.h.
14079         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
14080         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
14081         modifications.
14082         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
14083         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
14084         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
14085         lib/linebreak.c.
14086         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
14087         lib/linebreak.c.
14088         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
14089         lib/linebreak.c.
14090         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
14091         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
14092         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
14093         lib/linebreak.c.
14094         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
14095         lib/linebreak.c.
14096         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
14097         lib/linebreak.c.
14098         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
14099         lib/linebreak.c.
14100         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
14101         lib/linebreak.c.
14102         * modules/unilbrk/base: New file.
14103         * modules/unilbrk/tables: New file.
14104         * modules/unilbrk/u8-possible-linebreaks: New file.
14105         * modules/unilbrk/u16-possible-linebreaks: New file.
14106         * modules/unilbrk/u32-possible-linebreaks: New file.
14107         * modules/unilbrk/ulc-common: New file.
14108         * modules/unilbrk/ulc-possible-linebreaks: New file.
14109         * modules/unilbrk/u8-width-linebreaks: New file.
14110         * modules/unilbrk/u16-width-linebreaks: New file.
14111         * modules/unilbrk/u32-width-linebreaks: New file.
14112         * modules/unilbrk/ulc-width-linebreaks: New file.
14113         * lib/linebreak.h: Remove file.
14114         * lib/linebreak.c: Remove file.
14115         * m4/linebreak.m4: Remove file.
14116         * modules/linebreak: Remove file.
14117         * NEWS: Mention the changes.
14118
14119 2008-05-09  Eric Blake  <ebb9@byu.net>
14120
14121         Add xmemdup0.
14122         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
14123         implementation.
14124         * lib/xmalloc.c (xmemdup0): New C implementation.
14125
14126 2008-05-08  Bruno Haible  <bruno@clisp.org>
14127
14128         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
14129
14130 2008-05-07  Eric Blake  <ebb9@byu.net>
14131
14132         Support cross-compilation of <wctype.h>.
14133         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
14134         AC_CACHE_CHECK.
14135
14136 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
14137
14138         * build-aux/vc-list-files: Add support for bzr.
14139
14140 2008-05-03  Jim Meyering  <meyering@redhat.com>
14141
14142         avoid failed assertion with tight malloc
14143         * tests/test-getndelim2.c: Correct an off-by-one assertion.
14144
14145 2008-05-03  Simon Josefsson  <simon@josefsson.org>
14146
14147         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
14148         are needed from arpa/inet.h.
14149         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
14150         Reported by Bruno Haible.
14151
14152 2008-05-02  Jim Meyering  <meyering@redhat.com>
14153
14154         avoid compilation error on FreeBSD 6
14155         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
14156
14157 2008-05-01  Jim Meyering  <meyering@redhat.com>
14158
14159         useless-if-before-free: correct --help's exit status description
14160         * build-aux/useless-if-before-free (usage): Like grep, exit 0
14161         for one or more matches, etc.  Reported by Bruno Haible.
14162
14163         vc-list-files: make the stand-alone gnulib test work
14164         * modules/vc-list-files-tests (configure.ac):
14165         Define and AC_SUBST abs_aux_dir.
14166         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
14167         $(abs_top_srcdir) to each script and having each of them
14168         duplicate the work of setting PATH, set PATH here, using
14169         the new variable, abs_aux_dir instead.
14170         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
14171         * tests/test-vc-list-files-git.sh: Likewise.
14172         Reported by Bruno Haible.
14173
14174 2008-05-01  Bruno Haible  <bruno@clisp.org>
14175
14176         * lib/getndelim2.c (getndelim2): Fix newsize computation during
14177         reallocation. Rename 'done' to 'found_delimiter'.
14178
14179 2008-05-01  Jim Meyering  <meyering@redhat.com>
14180
14181         vc-list-files: accommodate /bin/sh like the one from Solaris 10
14182         * build-aux/vc-list-files: Use `...`, not $(...).
14183
14184 2008-04-30  Jim Meyering  <meyering@redhat.com>
14185
14186         add tests for vc-list-files
14187         * modules/vc-list-files-tests: New module.
14188         * tests/test-vc-list-files-cvs.sh: New file.
14189         * tests/test-vc-list-files-git.sh: New file.
14190
14191         avoid a warning from gcc
14192         * lib/getndelim2.c (IF_LINT): Define.
14193         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
14194
14195         vc-list-files: work properly with build-aux/cvsu, too
14196         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
14197         to all cvs-based clauses.
14198
14199         vc-list-files: work properly in the CVS+awk case, too
14200         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
14201
14202         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
14203         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
14204         take more than one file argument, so .  Add quotes, just in case $dir
14205         ever contains a shell meta-character.  Prompted by Soren Hansen in
14206         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
14207
14208 2008-04-29  Eric Blake  <ebb9@byu.net>
14209
14210         Optimize getndelim2 to use block operations when possible.
14211         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
14212         freadseek, and memchr2.
14213         * lib/getndelim2.c (getndelim2): Use them for block reads.
14214
14215 2008-04-29  Bruno Haible  <bruno@clisp.org>
14216
14217         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
14218         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
14219         * modules/inet_ntop (Depends-on): Add extensions.
14220         * modules/inet_pton (Depends-on): Likewise.
14221         Reported by Simon Josefsson.
14222
14223 2008-04-29  Jim Meyering  <meyering@redhat.com>
14224
14225         When the is more than one match in a block, match all of them.
14226         * build-aux/useless-if-before-free: Iterate through each block
14227         until there are no more matches.
14228
14229         Fix broken useless-if-before-free script.
14230         * build-aux/useless-if-before-free: Fix typo: missing "?" after
14231         the expression to match cast of argument to free-like function.
14232
14233 2008-04-29  Eric Blake  <ebb9@byu.net>
14234
14235         Use new header.
14236         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
14237
14238 2008-04-29  Jim Meyering  <meyering@redhat.com>
14239
14240         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
14241         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
14242         by gnulib to exist and to declare e.g., inet_ntop.
14243         Don't include "inet_ntop.h", now removed.
14244
14245         * m4/arpa_inet_h.m4: Remove trailing blanks.
14246
14247 2008-04-29  Eric Blake  <ebb9@byu.net>
14248
14249         Silence valgrind on safe reads beyond potential array bounds.
14250         * lib/rawmemchr.valgrind: New file.
14251         * lib/strchrnul.valgrind: Likewise.
14252         * modules/rawmemchr (Files): Distribute new file.
14253         * modules/strchrnul (Files): Likewise.
14254         Suggested by Bruno Haible.
14255
14256 2008-04-29  Bruno Haible  <bruno@clisp.org>
14257
14258         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
14259         (inet_ntop, inet_pton): Change portability warning's wording.
14260         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
14261         Invoke gl_CHECK_NEXT_HEADERS.
14262         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
14263         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
14264         set ARPA_INET_H.
14265         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
14266         * modules/arpa_inet (Description): No longer only for systems that
14267         lack it.
14268         (Depends-on): Add include_next.
14269         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
14270         HAVE_ARPA_INET_H.
14271
14272 2008-04-29  Jim Meyering  <meyering@redhat.com>
14273
14274         * modules/mkdir (License): Re-license as LGPLv2+.
14275
14276 2008-04-29  Bruno Haible  <bruno@clisp.org>
14277
14278         * modules/rawmemchr (Maintainer): Set to Eric.
14279         * modules/strchrnul (Maintainer): Likewise.
14280
14281 2008-04-29  Simon Josefsson  <simon@josefsson.org>
14282
14283         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
14284         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
14285
14286         * modules/arpa_inet (arpa/inet.h): Use them.
14287
14288 2008-04-28  Eric Blake  <ebb9@byu.net>
14289
14290         Test getndelim2.
14291         * modules/getndelim2-tests: New file.
14292         * tests/test-getndelim2.c: Likewise.
14293         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
14294         stream.
14295         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
14296
14297         * MODULES.html.sh: Document new module.
14298
14299 2008-04-20  Bruno Haible  <bruno@clisp.org>
14300
14301         * lib/c-stack.c (die): Use raise.
14302         * modules/c-stack (Depends-on): Add raise.
14303
14304 2008-04-28  Bruno Haible  <bruno@clisp.org>
14305
14306         Expect rpmatch to be declared.
14307         * lib/yesno.c (rpmatch): Remove declaration.
14308
14309         Declare rpmatch.
14310         * lib/stdlib.in.h (rpmatch): New declaration.
14311         * lib/rpmatch.c: Include <stdlib.h> first.
14312         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
14313         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
14314         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
14315         HAVE_RPMATCH.
14316         * modules/rpmatch (Depends-on): Add stdlib, extensions.
14317         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
14318         (Include): Set to <stdlib.h>.
14319         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
14320         HAVE_RPMATCH.
14321         * NEWS: Document the change.
14322
14323 2008-04-28  Bruno Haible  <bruno@clisp.org>
14324
14325         Change rpmatch to use nl_langinfo when appropriate.
14326         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
14327         (N_): New macro.
14328         (localized_pattern): New function/macro.
14329         (try): Remove match, nomatch arguments. Copy the pattern into safe
14330         memory before caching it.
14331         (rpmatch): Use localized_pattern. Add translator comments.
14332         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
14333         Suggested by Eric Blake.
14334         * modules/rpmatch (Depends-on): Add stdbool.
14335
14336 2008-04-28  Eric Blake  <ebb9@byu.net>
14337
14338         Add rawmemchr module, matching glibc.
14339         * modules/string (Makefile.am): New indicator.
14340         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
14341         * lib/string.in.h (rawmemchr): Declare when appropriate.
14342         * modules/rawmemchr: New file.
14343         * m4/rawmemchr.m4: Likewise.
14344         * lib/rawmemchr.c: Likewise.
14345         * modules/rawmemchr-tests: Likewise.
14346         * tests/test-rawmemchr.c: Likewise.
14347         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
14348         module.
14349         * modules/strchrnul (Depends-on): Add rawmemchr.
14350         * lib/strchrnul.c (strchrnul): Optimize a corner case.
14351
14352         Whitespace cleanup.
14353         * tests/test-strchrnul.c: Reindent.
14354         * lib/strchrnul.c: Likewise.
14355
14356         Optimize and test strchrnul.
14357         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
14358         * modules/strchrnul-tests: New file.
14359         * tests/test-strchrnul.c: Likewise.
14360
14361         Remove intprops dependency.
14362         * modules/memchr (Depends-on): Remove intprops.
14363         * modules/memrchr (Depends-on): Likewise.
14364         * modules/memchr2 (Depends-on): Likewise.
14365         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
14366         * lib/memrchr.c (__memrchr): Likewise.
14367         * lib/memrchr2.c (memchr2): Likewise.
14368         Reported by Simon Josefsson.
14369
14370 2008-04-28  Simon Josefsson  <simon@josefsson.org>
14371
14372         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
14373         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14374
14375 2008-04-28  Simon Josefsson  <simon@josefsson.org>
14376
14377         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
14378
14379         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
14380
14381         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
14382
14383         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
14384         declarations.
14385         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
14386
14387         * m4/inet_pton.m4: Don't check for header files.
14388
14389         * m4/inet_ntop.m4: Don't check for header files.
14390
14391 2008-04-28  Simon Josefsson  <simon@josefsson.org>
14392
14393         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
14394         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
14395         trigger for cygwin).
14396         Reported by Bruno Haible  <bruno@clisp.org>.
14397
14398 2008-04-28  Bruno Haible  <bruno@clisp.org>
14399
14400         * doc/posix-functions/strdup.texi: Mention mingw problem.
14401
14402 2008-04-27  Bruno Haible  <bruno@clisp.org>
14403
14404         * modules/stat-time-tests (Depends-on): Add sleep.
14405         * tests/test-stat-time.c (force_unlink): New function.
14406         (cleanup): Use it.
14407         (test_mtime): Remove the ctime related tests.
14408         (test_ctime): New function, containing the ctime related tests.
14409         (main): Call test_ctime, except on native Windows platforms.
14410
14411 2008-04-27  Bruno Haible  <bruno@clisp.org>
14412
14413         * lib/rpmatch.c (rpmatch): Add some comments.
14414         Reported by James Youngman <jay@gnu.org>.
14415
14416 2008-04-27  Bruno Haible  <bruno@clisp.org>
14417
14418         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
14419         quiet NaNs.
14420
14421 2008-04-27  Bruno Haible  <bruno@clisp.org>
14422
14423         Make test-yesno.sh work on mingw.
14424         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
14425         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
14426         (main): Set stdin to binary mode.
14427         * modules/yesno-tests (Depends-on): Add binary-io.
14428
14429 2008-04-27  Bruno Haible  <bruno@clisp.org>
14430
14431         Fix 'isfinite' on x86, x86_64, ia64 platforms.
14432         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
14433         argument that lie outside the IEEE 854 domain.
14434         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
14435         (gl_ISFINITE): Use it.
14436         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
14437
14438 2008-04-27  Bruno Haible  <bruno@clisp.org>
14439
14440         Allow local renaming in config.h.
14441         * lib/memrchr.c (memrchr): Don't undefine outside libc.
14442
14443 2008-04-27  Bruno Haible  <bruno@clisp.org>
14444
14445         * lib/memchr.c (__memchr): Change type of 'i'.
14446         * lib/memchr2.c (memchr2): Likewise.
14447
14448 2008-04-26  Eric Blake  <ebb9@byu.net>
14449         and Bruno Haible  <bruno@clisp.org>
14450
14451         Optimize and test memrchr.
14452         * modules/memrchr (Depends-on): Add intprops.
14453         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
14454         * modules/memrchr-tests: New file.
14455         * tests/test-memrchr.c: New file.
14456
14457 2008-04-26  Bruno Haible  <bruno@clisp.org>
14458
14459         Add tentative support for DragonFly BSD.
14460         * lib/stdio-impl.h: Add macros for DragonFly BSD.
14461         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
14462         fp.
14463         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
14464         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
14465         * lib/fpurge.c (fpurge): Likewise.
14466         * lib/freadable.c (freaadable): Likewise.
14467         * lib/freadahead.c (freadahead): Likewise.
14468         * lib/freading.c (freading): Likewise.
14469         * lib/freadptr.c (freadptr): Likewise.
14470         * lib/freadseek.c (freadptrinc): Likewise.
14471         * lib/fseeko.c (fseeko): Likewise.
14472         * lib/fseterr.c (fseterr): Likewise.
14473         * lib/fwritable.c (fwritable): Likewise.
14474         * lib/fwriting.c (fwriting): Likewise.
14475
14476 2008-04-26  Bruno Haible  <bruno@clisp.org>
14477
14478         * lib/stdio-impl.h: New file.
14479         * lib/fbufmode.c: Include stdio-impl.h.
14480         (fbufmode): Use fp_, remove redundant #defines.
14481         * lib/fflush.c: Include stdio-impl.h.
14482         (clear_ungetc_buffer): Remove redundant #defines.
14483         * lib/fpurge.c: Include stdio-impl.h.
14484         (fpurge): Remove redundant #defines.
14485         * lib/freadable.c: Include stdio-impl.h.
14486         (freadable): Remove redundant #defines.
14487         * lib/freadahead.c: Include stdio-impl.h.
14488         (freadahead): Remove redundant #defines.
14489         * lib/freading.c: Include stdio-impl.h.
14490         (freading): Remove redundant #defines.
14491         * lib/freadptr.c: Include stdio-impl.h.
14492         (freadptr): Remove redundant #defines.
14493         * lib/freadseek.c: Include stdio-impl.h.
14494         (freadptrinc): Remove redundant #defines.
14495         * lib/fseeko.c: Include stdio-impl.h.
14496         (rpl_fseeko): Remove redundant #defines.
14497         * lib/fseterr.c: Include stdio-impl.h.
14498         (fseterr): Remove redundant #defines.
14499         * lib/fwritable.c: Include stdio-impl.h.
14500         (fwritable: Remove redundant #defines.
14501         * lib/fwriting.c: Include stdio-impl.h.
14502         (fwriting): Remove redundant #defines.
14503         * modules/fbufmode (Files): Add lib/stdio-impl.h.
14504         * modules/fflush (Files): Likewise.
14505         * modules/fpurge (Files): Likewise.
14506         * modules/freadable (Files): Likewise.
14507         * modules/freadahead (Files): Likewise.
14508         * modules/freading (Files): Likewise.
14509         * modules/freadptr (Files): Likewise.
14510         * modules/freadseek (Files): Likewise.
14511         * modules/fseeko (Files): Likewise.
14512         * modules/fseterr (Files): Likewise.
14513         * modules/fwritable (Files): Likewise.
14514         * modules/fwriting (Files): Likewise.
14515
14516 2008-04-26  Bruno Haible  <bruno@clisp.org>
14517
14518         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
14519         restore_seek_optimization, update_fpos_cache): New functions, extracted
14520         from rpl_fflush.
14521         (rpl_fflush): Use them.
14522         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
14523         (gl_REPLACE_FFLUSH): Use it.
14524
14525 2008-04-26  Bruno Haible  <bruno@clisp.org>
14526
14527         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
14528         on Solaris.
14529         * tests/test-xstrtoimax.sh: Likewise.
14530         * tests/test-xstrtoumax.sh: Likewise.
14531         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14532
14533 2008-04-26  Bruno Haible  <bruno@clisp.org>
14534
14535         * modules/memchr-tests: New file.
14536         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
14537
14538 2008-04-26  Eric Blake  <ebb9@byu.net>
14539             Bruno Haible  <bruno@clisp.org>
14540
14541         * lib/memchr.c: Include intprops.h.
14542         (__memchr): Optimize parallel detection of matching bytes. Rename local
14543         variables. Add explanatory comments.
14544
14545 2008-04-26  Bruno Haible  <bruno@clisp.org>
14546
14547         Fix module 'memchr', broken since 2000-10-28.
14548         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
14549
14550 2008-04-26  Bruno Haible  <bruno@clisp.org>
14551
14552         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
14553         comments.
14554
14555 2008-04-25  Eric Blake  <ebb9@byu.net>
14556
14557         Use native fstatat on cygwin 1.7.0.
14558         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
14559         first.
14560
14561 2008-04-23  Eric Blake  <ebb9@byu.net>
14562
14563         Improve memchr2 performance.
14564         * lib/memchr2.c (memchr2): Further optimize parallel detection of
14565         NUL bytes.
14566         * modules/memchr2 (Depends-on): Use intprops.h.
14567
14568 2008-04-23  Simon Josefsson  <simon@josefsson.org>
14569
14570         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
14571         an inline function instead of a CPP macro.  Patch by Ben Pfaff
14572         <blp@cs.stanford.edu>.
14573
14574 2008-04-23  Simon Josefsson  <simon@josefsson.org>
14575
14576         * lib/arpa_inet.in.h: New file.
14577
14578         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
14579         (Makefile.am): Sed in substitute header file.
14580
14581         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
14582         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
14583
14584         * modules/inet_ntop (configure.ac): Use
14585         gl_ARPA_INET_MODULE_INDICATOR.
14586
14587         * modules/inet_pton (configure.ac): Use
14588         gl_ARPA_INET_MODULE_INDICATOR.
14589
14590 2008-04-22  Jim Meyering  <meyering@redhat.com>
14591
14592         * modules/verify (License): Re-license as LGPLv2+.
14593
14594 2008-04-22  Simon Josefsson  <simon@josefsson.org>
14595
14596         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
14597         parameter to void* as per POSIX standard (MinGW uses char*).
14598
14599 2008-04-21  Bruno Haible  <bruno@clisp.org>
14600
14601         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
14602         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
14603         Define to replacements if REPLACE_ISWCNTRL is 1.
14604         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
14605         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
14606         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
14607         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
14608         what it fixes.
14609         * doc/posix-functions/iswalpha.texi: Likewise.
14610         * doc/posix-functions/iswblank.texi: Likewise.
14611         * doc/posix-functions/iswcntrl.texi: Likewise.
14612         * doc/posix-functions/iswdigit.texi: Likewise.
14613         * doc/posix-functions/iswgraph.texi: Likewise.
14614         * doc/posix-functions/iswlower.texi: Likewise.
14615         * doc/posix-functions/iswprint.texi: Likewise.
14616         * doc/posix-functions/iswpunct.texi: Likewise.
14617         * doc/posix-functions/iswspace.texi: Likewise.
14618         * doc/posix-functions/iswupper.texi: Likewise.
14619         * doc/posix-functions/iswxdigit.texi: Likewise.
14620         Reported by Alain Guibert.
14621
14622 2008-04-21  Bruno Haible  <bruno@clisp.org>
14623
14624         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
14625         Patch by Alain Guibert.
14626
14627 2008-04-21  Bruno Haible  <bruno@clisp.org>
14628
14629         Fix test failures on mingw.
14630         * tests/test-xstrtol.c (print_no_progname): New function.
14631         (main): Install it in error_print_progname hook.
14632         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
14633         * tests/test-xstrtoimax.sh: Likewise.
14634         * tests/test-xstrtoumax.sh: Likewise.
14635
14636 2008-04-21  Bruno Haible  <bruno@clisp.org>
14637
14638         Fix test failure on mingw.
14639         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
14640
14641 2008-04-21  Bruno Haible  <bruno@clisp.org>
14642
14643         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
14644         Actually assign a value.
14645
14646 2008-04-20  Bruno Haible  <bruno@clisp.org>
14647
14648         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
14649         take 2.
14650         * lib/canonicalize.c (canonicalize_file_name): Elide if the
14651         'canonicalize-lgpl' module is also used.
14652         * lib/canonicalize-lgpl.c: Undo last change.
14653         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
14654
14655 2008-04-20  Bruno Haible  <bruno@clisp.org>
14656
14657         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
14658         config.h. Provide _mkdir based fallback for mingw.
14659         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
14660         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
14661         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
14662         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
14663         rather than defining mkdir in config.h.
14664         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
14665         (gl_SYS_STAT_H_DEFAULTS): New macro.
14666         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
14667         HAVE_IO_H any more.
14668         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
14669         HAVE_DECL_MKDIR and HAVE_IO_H.
14670
14671 2008-04-20  Bruno Haible  <bruno@clisp.org>
14672
14673         * lib/isapipe.c: Port to native Windows platforms.
14674
14675 2008-04-20  Bruno Haible  <bruno@clisp.org>
14676
14677         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
14678
14679 2008-04-21  Eric Blake  <ebb9@byu.net>
14680
14681         Work around preprocessors that don't handle UINTMAX_MAX.
14682         * lib/memchr2.c (memchr2): Avoid embedded #if.
14683         Reported by Alain Guibert, fix suggested by Bruno Haible.
14684
14685 2008-04-21  Simon Josefsson  <simon@josefsson.org>
14686
14687         * doc/posix-functions/strftime.texi (strftime): Explain better
14688         Windows incompatibility.  Suggested by Micah Cowan
14689         <micah@cowan.name>.
14690
14691 2008-04-20  Bruno Haible  <bruno@clisp.org>
14692
14693         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
14694         unistr/u8-mblen.
14695
14696 2008-04-20  Bruno Haible  <bruno@clisp.org>
14697
14698         Fix test failure on platforms with non-GNU iconv.
14699         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
14700         (U_TO_U8): Use it, rather than u16_to_u8.
14701         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
14702         units at the end of the input string.
14703         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
14704
14705 2008-04-20  Bruno Haible  <bruno@clisp.org>
14706
14707         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
14708         when the resulting length is 0.
14709         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
14710
14711 2008-04-20  Bruno Haible  <bruno@clisp.org>
14712
14713         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
14714         works.
14715         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
14716
14717 2008-04-20  Bruno Haible  <bruno@clisp.org>
14718
14719         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
14720         * modules/tsearch-tests (configure.ac): Test for initstate function.
14721
14722 2008-04-20  Bruno Haible  <bruno@clisp.org>
14723
14724         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
14725         for nlink_t if missing.
14726         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
14727
14728 2008-04-19  Bruno Haible  <bruno@clisp.org>
14729
14730         Work around snprintf bug on Linux libc5.
14731         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
14732         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
14733         gl_SNPRINTF_SIZE1.
14734         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14735         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
14736         that test failed.
14737         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
14738         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
14739         * modules/snprintf (Files): Add m4/printf.m4.
14740         * modules/vsnprintf (Files): Likewise.
14741         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
14742         * doc/posix-functions/vsnprintf.texi: Likewise.
14743
14744 2008-04-19  Bruno Haible  <bruno@clisp.org>
14745
14746         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
14747         from 0.0058 to less than 10^-7.
14748
14749 2008-04-19  Bruno Haible  <bruno@clisp.org>
14750
14751         Fix rounding when a precision is given.
14752         * lib/vasnprintf.c (is_borderline): New function.
14753         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
14754         9...9x.
14755         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
14756         %e, %g.
14757         * tests/test-vasprintf-posix.c (test_function): Likewise.
14758         * tests/test-snprintf-posix.h (test_function): Likewise.
14759         * tests/test-sprintf-posix.h (test_function): Likewise.
14760         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
14761         * tests/test-printf-posix.h (test_function): Likewise.
14762         * tests/test-printf-posix.output: Update.
14763         Reported by John Darrington <john@darrington.wattle.id.au> via
14764         Ben Pfaff <blp@cs.stanford.edu>.
14765
14766 2008-04-18  Simon Josefsson  <simon@josefsson.org>
14767
14768         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
14769         Suggested by Bruno Haible <bruno@clisp.org>.
14770
14771 2008-04-17  Bruno Haible  <bruno@clisp.org>
14772
14773         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
14774         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
14775         implementation.
14776         Patch by Bruce Merry <bmerry@gmail.com>.
14777
14778 2008-04-17  Simon Josefsson  <simon@josefsson.org>
14779
14780         * doc/posix-functions/strftime.texi (strftime): Mention that %e
14781         doesn't work under Windows.
14782
14783 2008-04-16  Bruno Haible  <bruno@clisp.org>
14784
14785         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
14786         New macros.
14787         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
14788         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
14789         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
14790         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
14791         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
14792         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
14793         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
14794         macros.
14795         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
14796         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
14797         Northern Sotho, Uighur.
14798
14799 2008-04-16  Bruno Haible  <bruno@clisp.org>
14800
14801         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
14802         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
14803         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
14804         Reported by Daniel Bergström <daniel@octocode.com>.
14805
14806 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
14807             Bruno Haible  <bruno@clisp.org>
14808
14809         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
14810         function.
14811         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
14812         New functions, mostly extracted from gl_locale_name_default.
14813         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
14814
14815 2008-04-16  Eric Blake  <ebb9@byu.net>
14816
14817         Adjust strtod detection to catch glibc 2.7 bug.
14818         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
14819         Reported by John Gatewood Ham.
14820
14821 2008-04-16  Bruno Haible  <bruno@clisp.org>
14822
14823         Add tentative support for Linux libc5.
14824         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
14825         * lib/fpurge.c (fpurge): Likewise.
14826         * lib/freadable.c (freadable): Likewise.
14827         * lib/freadahead.c (freadahead): Likewise.
14828         * lib/freading.c (freading): Likewise.
14829         * lib/freadptr.c (freadptr): Likewise.
14830         * lib/freadseek.c (freadptrinc): Likewise.
14831         * lib/fseeko.c (rpl_fseeko): Likewise.
14832         * lib/fseterr.c (fseterr): Likewise.
14833         * lib/fwritable.c (fwritable): Likewise.
14834         * lib/fwriting.c (fwriting): Likewise.
14835         Reported by Alain Guibert <alguibert+bts@free.fr>.
14836
14837 2008-04-15  Bruno Haible  <bruno@clisp.org>
14838
14839         * modules/mathl (configure.ac): Define module indicator.
14840
14841 2008-04-15  Bruno Haible  <bruno@clisp.org>
14842
14843         * lib/logl.c (logl): Remove unused variables.
14844
14845 2008-04-15  Bruno Haible  <bruno@clisp.org>
14846
14847         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
14848         fails.
14849
14850 2008-04-15  Bruno Haible  <bruno@clisp.org>
14851
14852         * lib/trim.c (trim2): Fix argument of isspace() macro.
14853
14854 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
14855
14856         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
14857         to 0.
14858         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
14859
14860 2008-04-14  Bruno Haible  <bruno@clisp.org>
14861
14862         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
14863         AC_LANG_PROGRAM argument.
14864         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
14865         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
14866         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
14867         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
14868         * m4/math_h.m4 (gl_MATH_H): Likewise.
14869         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
14870         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
14871         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
14872         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
14873         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
14874         * m4/regex.m4 (gl_REGEX): Likewise.
14875         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
14876         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
14877         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
14878         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
14879         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
14880         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
14881         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
14882         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
14883
14884 2008-04-14  Jim Meyering  <meyering@redhat.com>
14885
14886         test-strtod: fix typos: s/abs/fabs/
14887         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
14888
14889 2008-04-13  Bruno Haible  <bruno@clisp.org>
14890
14891         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
14892         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
14893         module is also used and while not building the reloc-wrapper.
14894
14895 2008-04-13  Bruno Haible  <bruno@clisp.org>
14896
14897         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
14898
14899 2008-04-13  Bruno Haible  <bruno@clisp.org>
14900
14901         Fix AIX compilation failure introduced on 2008-04-02.
14902         * tests/test-frexp.c (exp): Undefine before redefining.
14903         * tests/test-frexpl.c (exp): Likewise.
14904
14905 2008-04-13  Bruno Haible  <bruno@clisp.org>
14906
14907         Work around a HP-UX stdio bug.
14908         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
14909         * tests/test-ftello.c (main): Likewise.
14910         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
14911         * doc/posix-functions/ftello.texi: Likewise.
14912
14913 2008-04-13  Bruno Haible  <bruno@clisp.org>
14914
14915         Make test-signbit pass on HP-UX/hppa.
14916         * tests/test-signbit.c (minus_zerol): New variable.
14917         (test_signbitl): Use it.
14918
14919 2008-04-13  Bruno Haible  <bruno@clisp.org>
14920
14921         Make truncl work on OSF/1 4.0.
14922         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
14923         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
14924         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
14925         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
14926         HAVE_DECL_TRUNCL.
14927         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
14928         HAVE_DECL_TRUNCL.
14929         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
14930
14931 2008-04-13  Bruno Haible  <bruno@clisp.org>
14932
14933         * lib/unictype.h: Remove trailing comma from enumeration definitions.
14934
14935 2008-04-13  Bruno Haible  <bruno@clisp.org>
14936
14937         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
14938         expression, so as to avoid HP-UX 11 cc compiler bug.
14939
14940 2008-04-13  Bruno Haible  <bruno@clisp.org>
14941
14942         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
14943
14944 2008-04-13  Bruno Haible  <bruno@clisp.org>
14945
14946         * lib/git-merge-changelog.c: Remove empty declaration outside of
14947         functions.
14948
14949 2008-04-13  Bruno Haible  <bruno@clisp.org>
14950
14951         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
14952
14953 2008-04-13  Bruno Haible  <bruno@clisp.org>
14954
14955         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
14956         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
14957         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
14958         also if it exists but lacks definitions of the SHUT_* macros.
14959         * modules/sys_socket (Description): Update.
14960         Reported by Elbert Pol <e.pol@chello.nl>.
14961
14962 2008-04-13  Bruno Haible  <bruno@clisp.org>
14963
14964         * lib/localcharset.c (OS2): Don't redefine if already defined.
14965         Reported by Elbert Pol <e.pol@chello.nl>.
14966
14967 2008-04-13  Bruno Haible  <bruno@clisp.org>
14968
14969         * lib/binary-io.h [__EMX__]: Include <io.h>.
14970         Reported by Elbert Pol <e.pol@chello.nl>.
14971
14972 2008-04-12  Bruno Haible  <bruno@clisp.org>
14973
14974         * lib/fpucw.h: Enable the definitions also for x86_64.
14975         Needed for NetBSD/x86_64.
14976         Reported by Thomas Klausner <tk@giga.or.at>.
14977
14978 2008-04-12  Bruno Haible  <bruno@clisp.org>
14979
14980         * tests/test-strtod.c: Include isnand.h.
14981         (main): Use isnand instead of isnan.
14982         Reported by Jim Meyering.
14983
14984 2008-04-12  Bruno Haible  <bruno@clisp.org>
14985
14986         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
14987         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
14988
14989 2008-04-12  Jim Meyering  <meyering@redhat.com>
14990
14991         * m4/math_h.m4 (gl_MATH_H): Fix typos.
14992
14993 2008-04-12  Bruno Haible  <bruno@clisp.org>
14994
14995         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
14996         Reported by Elbert Pol <e.pol@chello.nl>.
14997
14998 2008-04-12  Eric Blake  <ebb9@byu.net>
14999
15000         Work around Solaris 10 math.h bug.
15001         * m4/math_h.m4 (gl_MATH_H): Check for bug.
15002         (gl_MATH_H_DEFAULTS): Set up default.
15003         * modules/math (Makefile.am): Replace new indicators.
15004         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
15005         * tests/test-math.c (main): Test this.
15006         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
15007         * doc/posix-headers/math.texi (math.h): Mention bug.
15008         Reported by Nelson H. F. Beebe and Jim Meyering.
15009
15010 2008-04-11  Bruno Haible  <bruno@clisp.org>
15011
15012         Adapt to future versions of Apple GCC.
15013         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
15014         Reported by Peter O'Gorman <peter@pogma.com>.
15015
15016 2008-04-11  Bruno Haible  <bruno@clisp.org>
15017
15018         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
15019
15020 2008-04-11  Bruno Haible  <bruno@clisp.org>
15021
15022         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
15023
15024         * modules/getaddrinfo-tests (Makefile.am): Define
15025         test_getaddrinfo_LDADD.
15026
15027 2008-04-11  Bruno Haible  <bruno@clisp.org>
15028
15029         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
15030         (init): Fix syntax error.
15031         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
15032         is declared.
15033
15034 2008-04-11  Bruno Haible  <bruno@clisp.org>
15035
15036         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
15037         * modules/glob (Depends-on): Add stdbool.
15038
15039 2008-04-11  Bruno Haible  <bruno@clisp.org>
15040
15041         * lib/trim.c: Include <string.h>.
15042
15043 2008-04-11  Eric Blake  <ebb9@byu.net>
15044
15045         Avoid compile failure on OS/2.
15046         * lib/regex_internal.h (internal_function): Disable optimization
15047         on OS/2 (__EMX__), where it caused compiler error.
15048         Reported by Elbert Pol.
15049
15050 2008-04-11  Bruno Haible  <bruno@clisp.org>
15051
15052         Flush the standard error stream before aborting. Needed on mingw.
15053         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
15054         * tests/test-array_list.c (ASSERT): Likewise.
15055         * tests/test-array_oset.c (ASSERT): Likewise.
15056         * tests/test-avltree_list.c (ASSERT): Likewise.
15057         * tests/test-avltree_oset.c (ASSERT): Likewise.
15058         * tests/test-avltreehash_list.c (ASSERT): Likewise.
15059         * tests/test-binary-io.c (ASSERT): Likewise.
15060         * tests/test-byteswap.c (ASSERT): Likewise.
15061         * tests/test-c-ctype.c (ASSERT): Likewise.
15062         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
15063         * tests/test-c-strcasestr.c (ASSERT): Likewise.
15064         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
15065         * tests/test-c-strstr.c (ASSERT): Likewise.
15066         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
15067         * tests/test-canonicalize.c (ASSERT): Likewise.
15068         * tests/test-carray_list.c (ASSERT): Likewise.
15069         * tests/test-ceilf1.c (ASSERT): Likewise.
15070         * tests/test-ceilf2.c (ASSERT): Likewise.
15071         * tests/test-ceill.c (ASSERT): Likewise.
15072         * tests/test-count-one-bits.c (ASSERT): Likewise.
15073         * tests/test-fbufmode.c (ASSERT): Likewise.
15074         * tests/test-fflush2.c (ASSERT): Likewise.
15075         * tests/test-floorf1.c (ASSERT): Likewise.
15076         * tests/test-floorf2.c (ASSERT): Likewise.
15077         * tests/test-floorl.c (ASSERT): Likewise.
15078         * tests/test-fopen.c (ASSERT): Likewise.
15079         * tests/test-fpending.c (ASSERT): Likewise.
15080         * tests/test-fprintf-posix.c (ASSERT): Likewise.
15081         * tests/test-fpurge.c (ASSERT): Likewise.
15082         * tests/test-freadable.c (ASSERT): Likewise.
15083         * tests/test-freadahead.c (ASSERT): Likewise.
15084         * tests/test-freading.c (ASSERT): Likewise.
15085         * tests/test-freadptr.c (ASSERT): Likewise.
15086         * tests/test-freadptr2.c (ASSERT): Likewise.
15087         * tests/test-freadseek.c (ASSERT): Likewise.
15088         * tests/test-freopen.c (ASSERT): Likewise.
15089         * tests/test-frexp.c (ASSERT): Likewise.
15090         * tests/test-frexpl.c (ASSERT): Likewise.
15091         * tests/test-fseek.c (ASSERT): Likewise.
15092         * tests/test-fseeko.c (ASSERT): Likewise.
15093         * tests/test-fstrcmp.c (ASSERT): Likewise.
15094         * tests/test-ftell.c (ASSERT): Likewise.
15095         * tests/test-ftello.c (ASSERT): Likewise.
15096         * tests/test-func.c (ASSERT): Likewise.
15097         * tests/test-fwritable.c (ASSERT): Likewise.
15098         * tests/test-fwriting.c (ASSERT): Likewise.
15099         * tests/test-getdelim.c (ASSERT): Likewise.
15100         * tests/test-getline.c (ASSERT): Likewise.
15101         * tests/test-i-ring.c (ASSERT): Likewise.
15102         * tests/test-iconv-utf.c (ASSERT): Likewise.
15103         * tests/test-iconv.c (ASSERT): Likewise.
15104         * tests/test-isfinite.c (ASSERT): Likewise.
15105         * tests/test-isnand.c (ASSERT): Likewise.
15106         * tests/test-isnanf.c (ASSERT): Likewise.
15107         * tests/test-isnanl.h (ASSERT): Likewise.
15108         * tests/test-ldexpl.c (ASSERT): Likewise.
15109         * tests/test-linked_list.c (ASSERT): Likewise.
15110         * tests/test-linkedhash_list.c (ASSERT): Likewise.
15111         * tests/test-localename.c (ASSERT): Likewise.
15112         * tests/test-lseek.c (ASSERT): Likewise.
15113         * tests/test-mbscasecmp.c (ASSERT): Likewise.
15114         * tests/test-mbscasestr1.c (ASSERT): Likewise.
15115         * tests/test-mbscasestr2.c (ASSERT): Likewise.
15116         * tests/test-mbscasestr3.c (ASSERT): Likewise.
15117         * tests/test-mbscasestr4.c (ASSERT): Likewise.
15118         * tests/test-mbschr.c (ASSERT): Likewise.
15119         * tests/test-mbscspn.c (ASSERT): Likewise.
15120         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
15121         * tests/test-mbspbrk.c (ASSERT): Likewise.
15122         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
15123         * tests/test-mbsrchr.c (ASSERT): Likewise.
15124         * tests/test-mbsspn.c (ASSERT): Likewise.
15125         * tests/test-mbsstr1.c (ASSERT): Likewise.
15126         * tests/test-mbsstr2.c (ASSERT): Likewise.
15127         * tests/test-mbsstr3.c (ASSERT): Likewise.
15128         * tests/test-memchr2.c (ASSERT): Likewise.
15129         * tests/test-memmem.c (ASSERT): Likewise.
15130         * tests/test-open.c (ASSERT): Likewise.
15131         * tests/test-printf-frexp.c (ASSERT): Likewise.
15132         * tests/test-printf-frexpl.c (ASSERT): Likewise.
15133         * tests/test-printf-posix.c (ASSERT): Likewise.
15134         * tests/test-quotearg.c (ASSERT): Likewise.
15135         * tests/test-rbtree_list.c (ASSERT): Likewise.
15136         * tests/test-rbtree_oset.c (ASSERT): Likewise.
15137         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
15138         * tests/test-round1.c (ASSERT): Likewise.
15139         * tests/test-roundf1.c (ASSERT): Likewise.
15140         * tests/test-roundl.c (ASSERT): Likewise.
15141         * tests/test-signbit.c (ASSERT): Likewise.
15142         * tests/test-sleep.c (ASSERT): Likewise.
15143         * tests/test-snprintf-posix.c (ASSERT): Likewise.
15144         * tests/test-snprintf.c (ASSERT): Likewise.
15145         * tests/test-sprintf-posix.c (ASSERT): Likewise.
15146         * tests/test-stat-time.c (ASSERT): Likewise.
15147         * tests/test-strcasestr.c (ASSERT): Likewise.
15148         * tests/test-strerror.c (ASSERT): Likewise.
15149         * tests/test-striconv.c (ASSERT): Likewise.
15150         * tests/test-striconveh.c (ASSERT): Likewise.
15151         * tests/test-striconveha.c (ASSERT): Likewise.
15152         * tests/test-strsignal.c (ASSERT): Likewise.
15153         * tests/test-strstr.c (ASSERT): Likewise.
15154         * tests/test-strtod.c (ASSERT): Likewise.
15155         * tests/test-trunc1.c (ASSERT): Likewise.
15156         * tests/test-trunc2.c (ASSERT): Likewise.
15157         * tests/test-truncf1.c (ASSERT): Likewise.
15158         * tests/test-truncf2.c (ASSERT): Likewise.
15159         * tests/test-truncl.c (ASSERT): Likewise.
15160         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
15161         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
15162         * tests/test-vasnprintf.c (ASSERT): Likewise.
15163         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
15164         * tests/test-vasprintf.c (ASSERT): Likewise.
15165         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
15166         * tests/test-vprintf-posix.c (ASSERT): Likewise.
15167         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
15168         * tests/test-vsnprintf.c (ASSERT): Likewise.
15169         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
15170         * tests/test-wcwidth.c (ASSERT): Likewise.
15171         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
15172         * tests/test-xprintf-posix.c (ASSERT): Likewise.
15173         * tests/test-xvasprintf.c (ASSERT): Likewise.
15174         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
15175         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
15176         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
15177         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
15178         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
15179         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
15180         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
15181         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
15182         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
15183         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
15184         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
15185         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
15186         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
15187         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
15188         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
15189         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
15190         * tests/unictype/test-block_list.c (ASSERT): Likewise.
15191         * tests/unictype/test-block_of.c (ASSERT): Likewise.
15192         * tests/unictype/test-block_test.c (ASSERT): Likewise.
15193         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
15194         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
15195         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
15196         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
15197         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
15198         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
15199         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
15200         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
15201         * tests/unictype/test-combining.c (ASSERT): Likewise.
15202         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
15203         * tests/unictype/test-digit.c (ASSERT): Likewise.
15204         * tests/unictype/test-mirror.c (ASSERT): Likewise.
15205         * tests/unictype/test-numeric.c (ASSERT): Likewise.
15206         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
15207         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
15208         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
15209         * tests/unictype/test-scripts.c (ASSERT): Likewise.
15210         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
15211         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
15212         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
15213         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
15214         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
15215         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
15216         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
15217         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
15218         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
15219         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
15220         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
15221         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
15222         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
15223         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
15224         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
15225         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
15226         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
15227         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
15228         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
15229         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
15230         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
15231         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
15232         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
15233         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
15234         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
15235         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
15236         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
15237         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
15238         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
15239         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
15240         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
15241         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
15242         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
15243         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
15244         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
15245         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
15246         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
15247         Reported by Eric Blake.
15248
15249 2008-04-11  Bruno Haible  <bruno@clisp.org>
15250
15251         * lib/wchar.in.h: Tweak comment.
15252
15253 2008-04-11  Bruno Haible  <bruno@clisp.org>
15254
15255         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
15256         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
15257         gl_COMMON.
15258         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
15259
15260 2008-04-11  Bruno Haible  <bruno@clisp.org>
15261
15262         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
15263
15264 2008-04-11  Simon Josefsson  <simon@josefsson.org>
15265
15266         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
15267         of attempting to use non-existing /dev/*random.  Based on patch
15268         from Adam Strzelecki <ono@java.pl> in
15269         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
15270
15271 2008-04-08  Bruno Haible  <bruno@clisp.org>
15272
15273         Add tentative support for emx+gcc.
15274         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
15275         * lib/fpurge.c (fpurge): Likewise.
15276         * lib/freadable.c (freadable): Likewise.
15277         * lib/freadahead.c (freadahead): Likewise.
15278         * lib/freading.c (freading): Likewise.
15279         * lib/freadptr.c (freadptr): Likewise.
15280         * lib/freadseek.c (freadptrinc): Likewise.
15281         * lib/fseeko.c (rpl_fseeko): Likewise.
15282         * lib/fseterr.c (fseterr): Likewise.
15283         * lib/fwritable.c (fwritable): Likewise.
15284         * lib/fwriting.c (fwriting): Likewise.
15285         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
15286
15287 2008-04-09  Eric Blake  <ebb9@byu.net>
15288
15289         Avoid some autoconf warnings.
15290         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
15291         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
15292         * m4/afs.m4 (gl_AFS): Likewise.
15293         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
15294         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
15295         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
15296         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
15297         (gl_INTEGER_TYPE_SUFFIX): Likewise.
15298         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
15299         (AC_CHECK_DECLS_ONCE): Likewise.
15300         Rename file...
15301         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
15302         gnulib-tool requires autoconf 2.59 or better.
15303         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
15304
15305 2008-04-08  Eric Blake  <ebb9@byu.net>
15306
15307         Use 'git describe --match' if present (added in git 1.5.5).
15308         * build-aux/git-version-gen: Limit result to tags that match 'v*'
15309         if possible.
15310
15311 2008-04-08  Bruno Haible  <bruno@clisp.org>
15312
15313         Add tentative support for OpenServer.
15314         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
15315         _ptr, _cnt.
15316         * lib/fpurge.c (fpurge): Likewise.
15317         * lib/freadable.c (freadable): Likewise.
15318         * lib/freadahead.c (freadahead): Likewise.
15319         * lib/freading.c (freading): Likewise.
15320         * lib/freadptr.c (freadptr): Likewise.
15321         * lib/freadseek.c (freadptrinc): Likewise.
15322         * lib/fseeko.c (rpl_fseeko): Likewise.
15323         * lib/fseterr.c (fseterr): Likewise.
15324         * lib/fwritable.c (fwritable): Likewise.
15325         * lib/fwriting.c (fwriting): Likewise.
15326         Reported by Roger Cornelius <rac@tenzing.org> and
15327         Brian K. White <brian@aljex.com>.
15328
15329 2008-04-06  Jim Meyering  <meyering@redhat.com>
15330
15331         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
15332
15333 2008-04-06  Bruno Haible  <bruno@clisp.org>
15334
15335         Avoid possible error with non-ASCII bytes in UTF-8 locales.
15336         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
15337         * tests/test-printf-posix.sh: Likewise.
15338         * tests/test-vfprintf-posix.sh: Likewise.
15339         * tests/test-vprintf-posix.sh: Likewise.
15340         * tests/test-xprintf-posix.sh: Likewise.
15341
15342 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15343
15344         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
15345         hide error from 'ls', needed on OS/2.
15346         Report by Elbert Pol <elbert.pol@gmail.com>.
15347
15348 2008-04-04  Eric Blake  <ebb9@byu.net>
15349
15350         Make test-fseeko.c failures meaningful.
15351         * tests/test-fseeko.c: Print line number on failure.
15352         * tests/test-fseek.c: Likewise.
15353         Reported by Nelson H. F. Beebe.
15354
15355         Improve strtod bug detection check.
15356         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
15357         required for Solaris 10.
15358         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
15359
15360 2008-04-04  Bruno Haible  <bruno@clisp.org>
15361
15362         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
15363         by m4/setenv.m4.
15364
15365 2008-04-03  Eric Blake  <ebb9@byu.net>
15366
15367         Ensure sane .version contents.
15368         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
15369         version string.
15370         * build-aux/git-version-gen: Improve documentation.
15371
15372         Make GNU make output nicer.
15373         * top/GNUmakefile [!_have-Makefile]: Add dependency on
15374         MAKECMDGOALS to enforce message for all command line targets.  Set
15375         srcdir for use in maint.mk.
15376
15377         Another maintainer tweak.
15378         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
15379         a target that regenerates version.
15380
15381 2008-04-03  Jim Meyering  <meyering@redhat.com>
15382
15383         vc-list-files: don't cause coreutils "make po-check" failure
15384         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
15385
15386 2008-04-03  Eric Blake  <ebb9@byu.net>
15387
15388         Allow VPATH usage of vc-list-files.
15389         * build-aux/vc-list-files (scriptversion): Add timestamp.
15390         (options): Add --help, --version, -C.
15391         (CVS): Support installed cvsu.
15392
15393 2008-04-02  Bruno Haible  <bruno@clisp.org>
15394
15395         Avoid some "statement with no effect" warnings from gcc.
15396         * tests/test-wctype.c (main): Explicitly ignore unused values.
15397         Reported by Jim Meyering.
15398
15399 2008-04-02  Jim Meyering  <meyering@redhat.com>
15400
15401         Avoid some warnings from "gcc -Wshadow".
15402         * tests/test-frexp.c (exp): Define to a different identifier.
15403         * tests/test-frexpl.c (exp): Likewise.
15404
15405 2008-04-03  Jim Meyering  <meyering@redhat.com>
15406
15407         bootstrap: remove dangling *.[ch] symlinks from lib
15408         * build-aux/bootstrap [dangling symlink removal]: Move find's
15409         -depth option to precede all others, to avoid a warning.
15410         Remove *.[ch] files too, and from "$source_base" (usually lib/).
15411
15412 2008-04-02  Bruno Haible  <bruno@clisp.org>
15413
15414         Avoid some warnings from "gcc -Wshadow".
15415         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
15416         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
15417         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
15418         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
15419         Reported by Jim Meyering.
15420
15421 2008-04-01  Bruno Haible  <bruno@clisp.org>
15422
15423         Fix test to work on IRIX 6.5 with cc.
15424         * tests/test-math.c (numeric_equal): New function.
15425         (main): Use it.
15426
15427 2008-04-01  Bruno Haible  <bruno@clisp.org>
15428
15429         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
15430
15431 2008-04-01  Bruno Haible  <bruno@clisp.org>
15432
15433         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
15434         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
15435         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
15436         (Depends-on): Remove math.
15437
15438         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
15439         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
15440         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
15441         (Depends-on): Remove math.
15442
15443         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
15444         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
15445         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
15446         (Depends-on): Remove math.
15447         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
15448         (Depends-on): Remove math.
15449
15450         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
15451         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
15452         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
15453         (Depends-on): Remove math.
15454         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
15455         (Depends-on): Remove math.
15456
15457         * tests/test-round1.c: Include nan.h.
15458         (main): Use NaNd instead of NAN.
15459         * modules/round-tests (Files): Add tests/nan.h.
15460
15461         * tests/test-trunc1.c: Include nan.h.
15462         (main): Use NaNd instead of NAN.
15463         * modules/trunc-tests (Files): Add tests/nan.h.
15464
15465         * tests/test-roundf1.c: Include nan.h.
15466         (main): Use NaNf instead of NAN.
15467         * modules/roundf-tests (Files): Add tests/nan.h.
15468
15469         * tests/test-truncf1.c: Include nan.h.
15470         (main): Use NaNf instead of NAN.
15471         * modules/truncf-tests (Files): Add tests/nan.h.
15472
15473         * tests/test-ceilf1.c: Include nan.h.
15474         (main): Use NaNf instead of NAN.
15475         * modules/ceilf-tests (Files): Add tests/nan.h.
15476
15477         * tests/test-floorf1.c: Include nan.h.
15478         (main): Use NaNf instead of NAN.
15479         * modules/floorf-tests (Files): Add tests/nan.h.
15480
15481         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
15482         (main): Use NaNf instead of NAN.
15483         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
15484
15485         * tests/test-isnand.c: Include nan.h instead of <math.h>.
15486         (main): Use NaNd instead of NAN.
15487         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
15488
15489         * tests/test-frexp.c: Include nan.h.
15490         (main): Use NaNd instead of NAN.
15491         * modules/frexp-tests (Files): Add tests/nan.h.
15492
15493         * lib/isnan.c: Don't include <math.h>.
15494         (FUNC): Don't use NAN macro.
15495         * modules/isnand-nolibm (Depends-on): Remove math.
15496         * modules/isnanf-nolibm (Depends-on): Remove math.
15497         * modules/isnanl (Depends-on): Remove math.
15498         * modules/isnanl-nolibm (Depends-on): Remove math.
15499
15500         * tests/nan.h: New file.
15501
15502 2008-04-01  Eric Blake  <ebb9@byu.net>
15503
15504         Fix typos.
15505         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
15506         values to be the right type.
15507
15508         For now, cater to gnulib strtod inaccuracies.
15509         * tests/test-strtod.c (main): Allow 1-ulp error on expected
15510         fractional results.  While not as nice from a QoI perspective, it
15511         is a quicker patch than correctly implementing decimal to binary
15512         rounding.
15513
15514 2008-03-31  Eric Blake  <ebb9@byu.net>
15515
15516         Guarantee a definition of NAN.
15517         * lib/math.in.h (NAN): Define if missing.
15518         * tests/test-math.c (main): Test it.
15519         * doc/posix-headers/math.texi (math.h): Document this.
15520         * lib/isnan.c (rpl_isnand): Use it.
15521         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
15522         * tests/test-floorf1.c (NaN): Likewise.
15523         * tests/test-frexp.c (NaN): Likewise.
15524         * tests/test-isnand.c (NaN): Likewise.
15525         * tests/test-isnanf.c (NaN): Likewise.
15526         * tests/test-round1.c (NaN): Likewise.
15527         * tests/test-roundf1.c (NaN): Likewise.
15528         * tests/test-snprintf-posix.h (NaN): Likewise.
15529         * tests/test-sprintf-posix.h (NaN): Likewise.
15530         * tests/test-trunc1.c (NaN): Likewise.
15531         * tests/test-truncf1.c (NaN): Likewise.
15532         * tests/test-vasnprintf-posix.c (NaN): Likewise.
15533         * tests/test-vasprintf-posix.c (NaN): Likewise.
15534         * modules/isnand-nolibm (Depends-on): Add math.
15535         * modules/isnanf-nolibm (Depends-on): Likewise.
15536         * modules/isnanl (Depends-on): Likewise.
15537         * modules/isnanl-nolibm (Depends-on): Likewise.
15538         * modules/snprintf-posix-tests (Depends-on): Likewise.
15539         * modules/sprintf-posix-tests (Depends-on): Likewise.
15540         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
15541         * modules/vsprintf-posix-tests (Depends-on): Likewise.
15542         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
15543         * modules/vasprintf-posix-tests (Depends-on): Likewise.
15544
15545 2008-03-31  Bruno Haible  <bruno@clisp.org>
15546
15547         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
15548         * doc/posix-functions/strtod.texi: Likewise.
15549
15550 2008-03-31  Bruno Haible  <bruno@clisp.org>
15551
15552         * tests/test-strtod.c (main): Don't use C99 syntax.
15553
15554 2008-03-31  Bruno Haible  <bruno@clisp.org>
15555
15556         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
15557         Reported by Eric Blake.
15558
15559 2008-03-31  Jim Meyering  <meyering@redhat.com>
15560
15561         Don't compare actual signbit return values.
15562         * tests/test-strtod.c (main): Rather, compare only their
15563         zero/non-zero nature.
15564
15565 2008-03-31  Eric Blake  <ebb9@byu.net>
15566
15567         More strtod documentation.
15568         * doc/posix-functions/strtod.texi (strtod): Interpret more test
15569         failures as distinct bugs.
15570
15571 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
15572
15573         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
15574         Problem reported by Erik Benada in
15575         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
15576
15577 2008-03-30  Bruno Haible  <bruno@clisp.org>
15578
15579         * tests/test-strtod.c: Add comments about which assertion fails on which
15580         platform.
15581         * doc/posix-functions/strtod.texi: Add info about many more platforms.
15582
15583 2008-03-30  Eric Blake  <ebb9@byu.net>
15584
15585         Test signbit behavior on zeros.
15586         * tests/test-signbit.c (test_signbitf): Add tests for zero.
15587         (test_signbitd, test_signbitl): Likewise.
15588
15589         More strtod touchups.
15590         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
15591         sign of negative underflow, for now.  Use .5, not .1.
15592         * doc/posix-functions/strtod.texi (strtod): Mention these
15593         limitations.
15594         Reported by Jim Meyering.
15595
15596 2008-03-30  Bruno Haible  <bruno@clisp.org>
15597
15598         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
15599         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
15600
15601 2008-03-30  Bruno Haible  <bruno@clisp.org>
15602
15603         Avoid failure when attempting to return empty iconv results on some
15604         platforms.
15605         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
15606         allocation, don't report ENOMEM when the resulting string is empty.
15607
15608 2008-03-30  Bruno Haible  <bruno@clisp.org>
15609
15610         Fix buffer overrun.
15611         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
15612         Don't consider the width for tmp_length. Check count against tmp_length
15613         before doing the padding. Ensure enough allocation during padding.
15614
15615 2008-03-30  Eric Blake  <ebb9@byu.net>
15616
15617         strtod touchups.
15618         * lib/strtod.c (strtod): Avoid compiler warnings.
15619         Reported by Jim Meyering.
15620
15621 2008-03-30  Bruno Haible  <bruno@clisp.org>
15622
15623         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
15624         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
15625         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
15626         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
15627         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
15628         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
15629         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
15630         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
15631
15632         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
15633         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
15634         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
15635         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
15636         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
15637         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
15638         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
15639         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
15640
15641         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
15642         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
15643         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
15644         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
15645         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
15646         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
15647         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
15648         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
15649
15650         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
15651         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
15652
15653         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
15654         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
15655
15656         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
15657         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
15658
15659         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
15660         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
15661         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
15662
15663         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
15664         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
15665         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
15666
15667         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
15668         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
15669         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
15670
15671         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
15672         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
15673         * modules/vasprintf (Depends-on): Add EOVERFLOW.
15674
15675         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
15676         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
15677         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
15678         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
15679         (Depends-on): Add EOVERFLOW.
15680         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
15681         (Depends-on): Add EOVERFLOW.
15682         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
15683         (Depends-on): Add EOVERFLOW.
15684         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
15685         (Depends-on): Add EOVERFLOW.
15686         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
15687         (Depends-on): Add EOVERFLOW.
15688         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
15689         (Depends-on): Add EOVERFLOW.
15690         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
15691         (Depends-on): Add EOVERFLOW.
15692         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
15693         (Depends-on): Add EOVERFLOW.
15694
15695         * lib/sprintf.c (EOVERFLOW): Remove fallback.
15696         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
15697         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
15698
15699         * lib/snprintf.c (EOVERFLOW): Remove fallback.
15700         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
15701         * modules/snprintf (Depends-on): Add EOVERFLOW.
15702
15703         * lib/poll.c (EOVERFLOW): Remove fallback.
15704         * modules/poll (Depends-on): Add EOVERFLOW.
15705
15706         * lib/getugroups.c (EOVERFLOW): Remove fallback.
15707         * modules/getugroups (Depends-on): Add EOVERFLOW.
15708
15709         * lib/getdelim.c (EOVERFLOW): Remove fallback.
15710         * modules/getdelim (Depends-on): Add EOVERFLOW.
15711
15712         * lib/ftell.c (EOVERFLOW): Remove fallback.
15713         * modules/ftell (Depends-on): Add EOVERFLOW.
15714
15715         * lib/fprintf.c (EOVERFLOW): Remove fallback.
15716         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
15717         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
15718
15719         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
15720
15721         * modules/EOVERFLOW-tests: New file.
15722         * tests/test-EOVERFLOW.c: New file.
15723
15724         * modules/EOVERFLOW: New file.
15725         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
15726
15727 2008-03-30  Bruno Haible  <bruno@clisp.org>
15728
15729         Fix bug introduced on 2007-06-10.
15730         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
15731         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
15732
15733 2008-03-30  Bruno Haible  <bruno@clisp.org>
15734
15735         Improve freadseek's efficiency after ungetc.
15736         * lib/freadseek.c: Include freadahead.h.
15737         (freadptrinc): New function, extracted from freadseek.
15738         (freadseek): Use it in a loop. Use freadahead to determine the number
15739         of loop iterations.
15740         * modules/freadseek (Depends-on): Add freadahead.
15741         (configure.ac): Require AC_C_INLINE.
15742
15743 2008-03-30  Bruno Haible  <bruno@clisp.org>
15744
15745         * lib/freadseek.c (freadseek): Don't ignore the return value of
15746         freadptr.
15747
15748 2008-03-29  Eric Blake  <ebb9@byu.net>
15749
15750         Add hex float support.
15751         * modules/strtod (Depends-on): Add c-ctype.
15752         (Link): Mention POW_LIB.
15753         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
15754         whitespace between 'e' and exponent.
15755         * tests/test-strtod.c (main): Enable hex float tests.
15756         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
15757         now provides.
15758
15759         Document various strtod bugs, with some fixes.
15760         * doc/posix-functions/strtod.texi (strtod): Document bugs with
15761         "-0x", "inf", "nan", and hex constants.
15762         * doc/posix-functions/atof.texi (atof): Likewise.
15763         * modules/stdlib (Makefile.am): Support strtod.
15764         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
15765         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
15766         detect additional strtod bugs.
15767         * lib/stdlib.in.h (rpl_strtod): Add declarations.
15768         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
15769         bool where appropriate.  Parse 'inf' and 'nan'.
15770         * tests/test-strtod.c: New file.
15771         * modules/strtod (Depends-on): Add stdbool, stdlib.
15772         (configure.ac): Turn on module indicator.
15773         * modules/strtod-tests: New module.
15774
15775 2008-03-29  Eric Blake  <ebb9@byu.net>
15776
15777         Fix ftell on mingw.
15778         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
15779         * modules/ftell-tests (Depends-on): Add binary-io.
15780         * modules/ftello-tests (Depends-on): Likewise.
15781         * tests/test-ftell.c (main): Enhance test to cover behavior after
15782         ungetc.  Enforce binary mode.
15783         * tests/test-ftello.c (main): Likewise.
15784
15785         Pass test-freadseek on cygwin.
15786         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
15787         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
15788         ungetc buffer.
15789
15790         * tests/test-fflush2.c (main): Fix typo.
15791
15792 2008-03-29  Bruno Haible  <bruno@clisp.org>
15793
15794         * tests/test-fflush2.c (main): Temporarily disable the contents of
15795         this test.
15796         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
15797         Reported by Eric Blake.
15798
15799 2008-03-28  Simon Josefsson  <simon@josefsson.org>
15800
15801         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
15802         (GC_SHA224_DIGEST_SIZE): Add.
15803
15804         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
15805         (gc_hash_digest_length): Likewise.
15806         (gc_hash_buffer): Likewise.
15807
15808 2008-03-25  Bruno Haible  <bruno@clisp.org>
15809
15810         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
15811         detail which gettext release to use.
15812         Reported by Simon Josefsson.
15813
15814 2008-03-26  Jim Meyering  <meyering@redhat.com>
15815
15816         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
15817         * modules/gnumakefile (clean-GNUmakefile): Also, use
15818         test ... && ... || : syntax rather than if-then ... fi.
15819
15820         gnumakefile: Don't double-quote-expand $(VPATH) value.
15821         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
15822
15823 2008-03-24  Eric Blake  <ebb9@byu.net>
15824
15825         Alter GNUmakefile to install into top directory.
15826         * modules/maintainer-makefile: Split, and add dependency...
15827         * modules/gnumakefile: to this new module.
15828         * build-aux/GNUmakefile: Move...
15829         * top/GNUmakefile: ...here.
15830         * build-aux/maint.mk: Move...
15831         * top/maint.mk: ...here.
15832         * MODULES.html.sh (Support for maintaining...): Document new
15833         module.
15834
15835 2008-03-23  Bruno Haible  <bruno@clisp.org>
15836
15837         * gnulib-tool: New options --vc-files, --no-vc-files.
15838         (func_usage): Document them.
15839         (vc_files): New variable.
15840         (func_import): Consider vc_files.
15841         (func_create_testdir): Set vc_files to empty.
15842         Suggested by Jim Meyering and Karl Berry.
15843
15844 2008-03-23  Bruno Haible  <bruno@clisp.org>
15845
15846         Fix regex compilation error on HP-UX 11.
15847         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
15848         * modules/regex (Files): Add m4/mbstate_t.m4.
15849         Reported by Ton Voon <ton.voon@altinity.com>.
15850
15851 2008-03-23  Bruno Haible  <bruno@clisp.org>
15852
15853         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
15854
15855 2008-03-23  Eric Blake  <ebb9@byu.net>
15856             Bruno Haible  <bruno@clisp.org>
15857
15858         Install files from top/ in the destination directory.
15859         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
15860         augmentation also for the files from top/.
15861         (func_import, func_create_testdir): Rewrite file names:
15862         top/filename -> filename.
15863
15864 2008-03-23  Bruno Haible  <bruno@clisp.org>
15865
15866         Tweak "gnulib --version" output.
15867         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
15868
15869 2008-03-23  Bruno Haible  <bruno@clisp.org>
15870
15871         Tweak "gnulib --version" output.
15872         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
15873         rather than contents of ChangeLog, when possible.
15874
15875 2008-03-21  Eric Blake  <ebb9@byu.net>
15876
15877         More --version tweaks.
15878         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
15879         date of last ChangeLog entry.
15880
15881 2008-03-21  Jim Meyering  <meyering@redhat.com>
15882
15883         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
15884
15885 2008-03-20  Eric Blake  <ebb9@byu.net>
15886
15887         VPATH fix.
15888         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
15889
15890 2008-03-20  Simon Josefsson  <simon@josefsson.org>
15891
15892         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
15893         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
15894
15895 2008-03-20  Eric Blake  <ebb9@byu.net>
15896
15897         Sync GNUmakefile with coreutils.
15898         * build-aux/GNUmakefile (have-Makefile): Rename...
15899         (_have-Makefile): ...to this, for namespace consideration.
15900         (GNUmakefile.cfg): Include, if present.
15901         (_autoreconf): Define a default.
15902         (_is-dist-target): New rule for rebuilds to pick up intra-release
15903         version.
15904         (maint-cfg.mk): Rename...
15905         (cfg.mk): ...to this.
15906
15907 2008-03-18  Jim Meyering  <meyering@redhat.com>
15908
15909         New script and module: mktempd
15910         * MODULES.html.sh (maint+release support): Add mktempd.
15911         * build-aux/mktempd: New file.
15912         * modules/mktempd: New file.
15913
15914 2008-03-15  Jim Meyering  <meyering@redhat.com>
15915
15916         Undo last change.
15917         * lib/sha1.c, lib/md5.c: 63 != ~63.
15918         Reported by Andreas Schwab.
15919
15920         sha1.c, md5.c: Hoist a redundant expression.
15921         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
15922         "ctx->buflen" only once, before calling *_process_block.
15923         * lib/md5.c (md5_process_bytes): Likewise.
15924
15925 2008-03-14  Eric Blake  <ebb9@byu.net>
15926
15927         Bump copyright year in files generated by gnulib-tool.
15928         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
15929         gnulib-tool, rather than hard-coding it.
15930
15931         Fix 'gnulib-tool --version' output to work with git.
15932         * gnulib-tool (func_gnulib_dir): New function, extracted from...
15933         (startup): ...here.
15934         (func_version): Use it to invoke git-version-gen, rather than
15935         relying on CVS keyword expansion.  Modernize wording.
15936         (cvsdatestamp, last_checkin_date, version): Kill unused
15937         variables.
15938
15939 2008-03-12  Jim Meyering  <meyering@redhat.com>
15940
15941         Recognize optional cast of the argument to free.
15942         * build-aux/useless-if-before-free: Update regexps.
15943
15944         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
15945
15946 2008-03-11  Bruno Haible  <bruno@clisp.org>
15947
15948         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
15949         by a single package.
15950         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
15951         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
15952         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
15953         Reported by Sam Steingold <sds@gnu.org>.
15954
15955 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
15956
15957         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
15958         repositories.
15959
15960 2008-03-11  Bruno Haible  <bruno@clisp.org>
15961
15962         Avoid conflicts between local macro definitions.
15963         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
15964         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
15965
15966 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
15967             Bruno Haible  <bruno@clisp.org>
15968
15969         Make va_copy work with some version of xlc on AIX 5.1.
15970         * lib/stdarg.in.h: New file.
15971         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
15972         On AIX, use a <stdarg.h> file substitute.
15973         * modules/stdarg (Files): Add lib/stdarg.in.h.
15974         (Depends-on): Add include_next.
15975         (Makefile.am): Build a stdarg.h substitute if requested.
15976         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
15977
15978 2008-03-10  Bruno Haible  <bruno@clisp.org>
15979
15980         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
15981         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
15982         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
15983
15984 2008-03-10  Bruno Haible  <bruno@clisp.org>
15985
15986         * modules/stdlib (Depends-on): Add include_next, remove
15987         absolute-header.
15988
15989 2008-03-09  Bruno Haible  <bruno@clisp.org>
15990
15991         * lib/freadahead.h (freadahead): Document more precisely.
15992         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
15993         the sum of both buffer sizes.
15994         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
15995         * NEWS: Document the change.
15996
15997 2008-03-09  Bruno Haible  <bruno@clisp.org>
15998
15999         Extend freadptr to return also the buffer size.
16000         * lib/freadptr.h (freadptr): Add sizep argument.
16001         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
16002         (freadptr): Add sizep argument. Determine buffer size like freadahead
16003         does.
16004         * tests/test-freadptr.c: Don't include freadahead.h.
16005         (main): Adapt for new calling convention of freadptr.
16006         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
16007         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
16008         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
16009         tests/test-freadptr2.sh.
16010         (Depends): Remove freadahead.
16011         (TESTS): Add test-freadptr2.sh.
16012         (check_PROGRAMS): Add test-freadptr2.
16013
16014 2008-03-09  Bruno Haible  <bruno@clisp.org>
16015
16016         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
16017         Report and solution by Simon Josefsson.
16018
16019 2008-03-06  Bruno Haible  <bruno@clisp.org>
16020
16021         Make fflush after ungetc work on BSD platforms.
16022         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
16023         * tests/test-fflush2.c: New file.
16024         * tests/test-fflush2.sh: New file.
16025         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
16026         tests/test-fflush2.c.
16027         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
16028         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
16029
16030 2008-03-06  Eric Blake  <ebb9@byu.net>
16031
16032         Likewise for ftello.
16033         * modules/ftello (Dependencies): Add extensions.
16034         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
16035
16036 2008-03-06  Bruno Haible  <bruno@clisp.org>
16037
16038         * modules/fseeko (Dependencies): Add extensions.
16039         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
16040         Needed on glibc systems.
16041
16042 2008-03-06  Bruno Haible  <bruno@clisp.org>
16043
16044         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
16045         email address.
16046         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
16047
16048 2008-03-06  Bruno Haible  <bruno@clisp.org>
16049
16050         * users.txt: Add libgnupdf.
16051
16052 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
16053
16054         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
16055         (Header File Substitutes, Function Substitutes,
16056         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
16057         (Build robot for gnulib): Fix typo.
16058
16059 2008-03-06  Bruno Haible  <bruno@clisp.org>
16060
16061         * doc/gnulib-tool.texi (VCS Issues): Small updates.
16062         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
16063
16064 2008-03-06  Bruno Haible  <bruno@clisp.org>
16065
16066         * doc/func.texi: New file, extracted from doc/gnulib.texi.
16067         * doc/gnulib.texi: Include it.
16068
16069 2008-03-06  Simon Josefsson  <simon@josefsson.org>
16070
16071         * modules/func (License): Change license to unlimited; there was
16072         no LGPL parts in the module anyway.
16073
16074 2008-03-06  Simon Josefsson  <simon@josefsson.org>
16075
16076         * modules/__func__: Renamed to modules/func.
16077         * modules/__func__-tests: Renamed to modules/func-tests.
16078         * tests/test-__func__.c: Renamed to tests/test-func.c.
16079         * m4/__func__.m4: Renamed to m4/func.m4.
16080         * doc/gnulib.texi (__func__): Section renamed to func.
16081         Suggested by Eric Blake <ebb9@byu.net>.
16082
16083 2008-03-06  Simon Josefsson  <simon@josefsson.org>
16084
16085         * doc/gnulib.texi (__func__): Use C99 terminology when talking
16086         about __func__.  Make example self-contained.  Suggested by Eric
16087         Blake <ebb9@byu.net>.
16088
16089         * tests/test-__func__.c (main): Avoid extraneous () around __func.
16090         Suggested by Eric Blake <ebb9@byu.net>.
16091
16092 2008-03-06  Simon Josefsson  <simon@josefsson.org>
16093
16094         * modules/__func__: New file.
16095         * modules/__func__-tests: New file.
16096         * tests/test-__func__.c: New file.
16097         * m4/__func__.m4: New file.
16098         * doc/gnulib.texi (__func__): Document __func__ module.
16099
16100 2008-03-05  Simon Josefsson  <simon@josefsson.org>
16101
16102         * modules/byteswap (License): Re-license as LGPLv2+.
16103
16104 2008-03-05  Simon Josefsson  <simon@josefsson.org>
16105
16106         * doc/Makefile: Add pdf target.
16107
16108 2008-03-05  Simon Josefsson  <simon@josefsson.org>
16109
16110         * modules/inline (License): Use 'unlimited', since there are only
16111         *.m4 files in this module.
16112
16113 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
16114             Bruno Haible  <bruno@clisp.org>
16115
16116         Add support for HP C 7.1 on OpenVMS 8.3.
16117         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
16118
16119 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
16120
16121         Update VMS specifics.
16122         * lib/getopt.c [VMS]: Remove include of unixlib.h.
16123
16124 2008-03-02  Jim Meyering  <meyering@redhat.com>
16125
16126         Remove the last dependency on the "free" module.
16127         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
16128         Reported by Bob Proulx.
16129
16130         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
16131
16132         Remove useless "if" tests before free.  Deprecate "free" module.
16133         * doc/posix-functions/free.texi: Mention that this
16134         module is no longer useful.
16135         * modules/free (Notice): Say this module is obsolete.
16136         * modules/readutmp (Depends-on): Remove free.
16137         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
16138         * lib/putenv.c (putenv): Likewise.
16139         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
16140         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
16141         * tests/test-c-strcasestr.c (main): Likewise.
16142         * tests/test-c-strstr.c (main): Likewise.
16143         * tests/test-mbscasestr1.c (main): Likewise.
16144         * tests/test-mbscasestr2.c (main): Likewise.
16145         * tests/test-mbsstr1.c (main): Likewise.
16146         * tests/test-mbsstr2.c (main): Likewise.
16147         * tests/test-memmem.c (main): Likewise.
16148         * tests/test-strcasestr.c (main): Likewise.
16149         * tests/test-striconv.c (main): Likewise.
16150         * tests/test-striconveh.c (main): Likewise.
16151         * tests/test-striconveha.c (main): Likewise.
16152         * tests/test-strstr.c (main): Likewise.
16153
16154         * build-aux/git-version-gen: Adjust a comment and the Usage string.
16155
16156         bootstrap: sync from coreutils again
16157         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
16158
16159 2008-03-01  Jim Meyering  <meyering@redhat.com>
16160
16161         bootstrap: sync from coreutils
16162         * build-aux/bootstrap (update_po_files): Copy a .po file into place
16163         also when the target doesn't exist.
16164
16165 2008-03-01  Eric Blake  <ebb9@byu.net>
16166
16167         Fix bugs in last patch.
16168         * lib/memchr2.c (memchr2): Fix typo.
16169         * tests/test-memchr2.c: Test previous bug, and don't use GNU
16170         extension.
16171         Reported by Bruce Korb.
16172
16173         New module 'memchr2'.
16174         * modules/memchr2: New file.
16175         * modules/memchr2-tests: Likewise.
16176         * lib/memchr2.h: Likewise.
16177         * lib/memchr2.c: Likewise, based on memchr.c.
16178         * tests/test-memchr2.c: New test.
16179         * MODULES.html.sh (String handling): Add memchr2.
16180
16181 2008-02-29  Bruno Haible  <bruno@clisp.org>
16182
16183         * modules/freadseek-tests: New file.
16184         * tests/test-freadseek.sh: New file.
16185         * tests/test-freadseek.c: New file.
16186
16187         New module 'freadseek'.
16188         * modules/freadseek: New file.
16189         * lib/freadseek.h: New file.
16190         * lib/freadseek.c: New file.
16191         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
16192
16193 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
16194
16195         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
16196         wydawca.
16197
16198         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
16199         program_invocation_name and program_invocation_short_name are
16200         present.
16201
16202 2008-02-28  Bruno Haible  <bruno@clisp.org>
16203
16204         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
16205         * tests/test-freadptr.sh: Also test non-seekable stdin.
16206
16207 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
16208
16209         * build-aux/bootstrap (source_base, m4_base)
16210         (doc_base, tests_base): New variables.
16211         (gnulib_tool_options): Do not hardcode base directories, use
16212         the above variables instead.
16213
16214 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
16215
16216         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
16217
16218 2008-02-28  Bruno Haible  <bruno@clisp.org>
16219
16220         * modules/freadptr-tests: New file.
16221         * tests/test-freadptr.sh: New file.
16222         * tests/test-freadptr.c: New file.
16223
16224         New module 'freadptr'.
16225         * modules/freadptr: New file.
16226         * lib/freadptr.h: New file.
16227         * lib/freadptr.c: New file.
16228         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
16229
16230 2008-02-26  Karl Berry  <karl@freefriends.org>
16231
16232         Sync from Libtool:
16233         * libltdl/argz.c (argz_add, argz_count): New functions.
16234         * libltdl/argz.in.h: Declare them.
16235         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
16236
16237 2008-02-22  Bruno Haible  <bruno@clisp.org>
16238
16239         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
16240         is a pointer type.  Needed for HP-UX 10.
16241         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
16242         * doc/posix-functions/gmtime_r.texi: Likewise.
16243         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
16244
16245 2008-02-24  Bruno Haible  <bruno@clisp.org>
16246
16247         * modules/environ-tests: New file.
16248         * tests/test-environ.c: New file.
16249
16250         New module 'environ'.
16251         * modules/environ: New file.
16252         * lib/unistd.in.h (environ): New declaration.
16253         * m4/environ.m4: New file.
16254         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
16255         after use.
16256         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
16257         HAVE_DECL_ENVIRON.
16258         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
16259         HAVE_DECL_ENVIRON.
16260         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
16261         wrong claim that 'environ' is missing on some systems.
16262         * modules/execute (Depends-on): Add environ.
16263         * lib/execute.c (environ): Remove fallback declaration.
16264         * modules/pipe (Depends-on): Add environ.
16265         * lib/pipe.c (environ): Remove fallback declaration.
16266         * modules/setenv (Depends-on): Add environ.
16267         * lib/setenv.c (environ): Remove fallback declaration.
16268         * modules/unsetenv (Depends-on): Add environ.
16269         * lib/unsetenv.c (environ): Remove fallback declaration.
16270         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
16271         m4/environ.m4.
16272         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
16273         (gl_PREREQ_UNSETENV): Likewise.
16274
16275 2008-02-24  Bruno Haible  <bruno@clisp.org>
16276
16277         * doc/posix-functions/environ.texi: Document the MacOS X problem.
16278
16279 2008-02-20  Bob Proulx  <bob@proulx.com>
16280
16281         Enable use of older two part flavor 'git describe'.
16282         * build-aux/git-version-gen: If using the older two part flavor of
16283         git version then recreate the third part now present in the
16284         newer three part flavor of git describe.
16285
16286 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
16287
16288         * lib/fts.c (fts_build): Typo correction to comment.
16289
16290 2008-02-17  Bruno Haible  <bruno@clisp.org>
16291
16292         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
16293         generating no-op conflicts.
16294
16295 2008-02-17  Bruno Haible  <bruno@clisp.org>
16296
16297         Speed up by 10%.
16298         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
16299         result_entries, rather than an index-based loop.
16300
16301 2008-02-17  Bruno Haible  <bruno@clisp.org>
16302
16303         Speed up by 25%.
16304         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
16305         'hashcode_cached'.
16306         (entry_create): New function.
16307         (entry_hashcode): Use the cached hashcode if possible.
16308         (read_changelog_file, try_split_merged_entry): Use entry_create.
16309
16310 2008-02-17  Bruno Haible  <bruno@clisp.org>
16311
16312         Speed up from O(n^2) to O(n) for long ChangeLog files.
16313         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
16314         (read_changelog_file): Change implementation of entries_reversed list
16315         to rbtreehash.
16316         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
16317
16318 2008-02-17  Bruno Haible  <bruno@clisp.org>
16319
16320         New option --split-merged-entry.
16321         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
16322         (find_paragraph_end, try_split_merged_entry): New functions.
16323         (long_options): Add option --split-merged-entry.
16324         (usage): Document option --split-merged-entry.
16325         (main): Implement option --split-merged-entry.
16326         Reported by Eric Blake.
16327
16328 2008-02-17  Bruno Haible  <bruno@clisp.org>
16329
16330         * lib/git-merge-changelog.c: Include c-strstr.h.
16331         (main): Support the "git pull --rebase" situation.
16332         * modules/git-merge-changelog (Depends-on): Add c-strstr.
16333         Reported by Eric Blake.
16334
16335 2008-02-16  Eric Blake  <ebb9@byu.net>
16336
16337         Avoid doubling \ in common case of "c-maybe" quoting style.
16338         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
16339         eliding outer quotes.
16340         * lib/quotearg.h: Document this.
16341         * tests/test-quotearg.c (result_strings, inputs, results_g)
16342         (flag_results, locale_results): Test it by adding a new string to
16343         each test group.
16344         (compare_strings): Test new string.
16345
16346 2008-02-13  Eric Blake  <ebb9@byu.net>
16347
16348         Avoid trigraph quoting in default output.
16349         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
16350         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
16351         unless explicitly requested.
16352         * tests/test-quotearg.c (flag_results, main): Add additional tests.
16353
16354 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
16355
16356         Don't rely on signed integer overflowing to negative value.
16357         * lib/getugroups.c (getugroups): Include <limits.h>.
16358         Instead, compare against INT_MAX, and increment only if the test passes.
16359
16360 2008-02-13  Jim Meyering  <meyering@redhat.com>
16361         and Eric Blake  <ebb9@byu.net>
16362
16363         Avoid shadowing warning and compile errors on Linux.
16364         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
16365         forwarding macros on Linux.
16366         (dcgettext): Define a stub, for Linux.
16367         (results_g, main): Avoid warnings.
16368
16369 2008-02-12  Eric Blake  <ebb9@byu.net>
16370
16371         Silence warning in last patch.
16372         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
16373
16374         Quotearg part 4: add tests, fix c-maybe colon quoting.
16375         * lib/quotearg.h: Improve documentation.
16376         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
16377         escapes when adding outer quotes.  When quoting trigraphs, use
16378         valid C notation.  When quoting NUL, omit extra characters if next
16379         character is not digit.  Alter prototype.
16380         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
16381         callers.
16382         * modules/quotearg-tests: New module.
16383         * tests/test-quotearg.c: New test.
16384
16385 2008-02-07  Eric Blake  <ebb9@byu.net>
16386
16387         Quotearg part 3: add flag to control outer quote elision.
16388         * lib/quotearg.h (c_maybe_quoting_style): New style.
16389         (enum quoting_flags): Better documentation of flags.
16390         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
16391         c-maybe style.
16392         (quotearg_buffer_restyled): Handle new flag to elide outer
16393         quotes.
16394
16395         Quotearg part 2: add flag that can control NUL elision.
16396         * lib/quotearg.h (set_quoting_flags): New prototype.
16397         * lib/quotearg.c (struct quoting_options): Add flag field.
16398         (set_quoting_flags): New function.
16399         (quotearg_buffer_restyled): Add flags parameter.
16400         (quotearg_alloc_mem): Set the flag if length cannot be returned.
16401         (quotearg_n_options): Set the flag, since length cannot be
16402         returned.
16403         (quoting_options_from_style): Default flags correctly.
16404
16405         Quotearg part 1: more wrappers, restore quotearg_char state.
16406         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
16407         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
16408         (quotearg_colon_mem): New wrappers.
16409         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
16410         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
16411         functions.
16412         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
16413         (quotearg_colon_mem): New functions.
16414
16415 2008-02-11  Bruno Haible  <bruno@clisp.org>
16416
16417         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
16418         library in the current directory: it does not work with parallel make.
16419         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16420
16421 2008-02-11  Bruno Haible  <bruno@clisp.org>
16422
16423         * .gitattributes: New file.
16424
16425 2008-02-11  Jim Meyering  <meyering@redhat.com>
16426
16427         useless-if-before-free: Fix reversed exit values.
16428         * build-aux/useless-if-before-free: Use correct values
16429         for EXIT_MATCH and EXIT_NO_MATCH.
16430
16431         * build-aux/useless-if-before-free: Close stdout carefully.
16432
16433 2008-02-10  Bruno Haible  <bruno@clisp.org>
16434
16435         New module 'git-merge-changelog'.
16436         * modules/git-merge-changelog: New file.
16437         * lib/git-merge-changelog.c: New file.
16438
16439 2008-02-10  Jim Meyering  <meyering@redhat.com>
16440
16441         useless-if-before-free: New option: --list (-l).
16442
16443         useless-if-before-free: Don't exit immediately upon open failure.
16444         * build-aux/useless-if-before-free: Exit 2 for errors.
16445         Upon failure to open a file, don't exit immediately.
16446         Rather, just warn and continue with any remaining files.
16447
16448 2008-02-10  Bruno Haible  <bruno@clisp.org>
16449
16450         New abstract list operation 'node_set_value'.
16451         * lib/gl_list.h (gl_list_node_set_value): New function.
16452         (struct gl_list_implementation): New field node_set_value.
16453         * lib/gl_list.c (gl_list_node_set_value): New function.
16454         * lib/gl_array_list.c (gl_array_node_set_value): New function.
16455         (gl_array_list_implementation): Update.
16456         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
16457         (gl_carray_list_implementation): Update.
16458         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
16459         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
16460         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
16461         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
16462         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
16463         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
16464         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
16465         Update.
16466         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
16467         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
16468         (gl_sublist_list_implementation): Update.
16469
16470 2008-02-10  Bruno Haible  <bruno@clisp.org>
16471
16472         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
16473         Needed when ELEMENT is #defined to 'some_type *'.
16474
16475 2008-02-10  Jim Meyering  <meyering@redhat.com>
16476
16477         New script and module: useless-if-before-free
16478         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
16479         * build-aux/useless-if-before-free: New file.
16480         * modules/useless-if-before-free: New file.
16481
16482         * build-aux/gitlog-to-changelog: Use committer date, not author date.
16483
16484         xstrtol_error: Fix typo.
16485         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
16486         s/exit_failure/exit_status/.
16487
16488 2008-02-09  Jim Meyering  <meyering@redhat.com>
16489
16490         New script and module: gitlog-to-changelog
16491         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
16492         * modules/gitlog-to-changelog: New file.
16493         * build-aux/gitlog-to-changelog: New file.
16494
16495 2008-02-08  Jim Meyering  <meyering@redhat.com>
16496
16497         Avoid two "parameter unused" warnings.
16498         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
16499         Mark "st" as used.
16500
16501         Use "git COMMAND", not "git-COMMAND".
16502         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
16503         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
16504         * build-aux/git-version-gen: Use "git status", not "git-status".
16505
16506 2008-02-07  Bruno Haible  <bruno@clisp.org>
16507
16508         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
16509         Avoids a crash on Windows Vista.
16510         Reported by Adam Strzelecki <ono@java.pl> via
16511         Simon Josefsson <simon@josefsson.org>.
16512
16513 2008-02-06  Bruno Haible  <bruno@clisp.org>
16514
16515         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
16516         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
16517         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
16518         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
16519         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
16520         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
16521         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
16522         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
16523         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
16524         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
16525         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
16526         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
16527         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
16528         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
16529         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
16530         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
16531         left-adjust flag.
16532         * tests/test-snprintf-posix.h (test_function): Likewise.
16533         * tests/test-sprintf-posix.h (test_function): Likewise.
16534         * tests/test-vasprintf-posix.c (test_function): Likewise.
16535         * doc/posix-functions/fprintf.texi: Update.
16536         * doc/posix-functions/printf.texi: Update.
16537         * doc/posix-functions/snprintf.texi: Update.
16538         * doc/posix-functions/sprintf.texi: Update.
16539         * doc/posix-functions/vfprintf.texi: Update.
16540         * doc/posix-functions/vprintf.texi: Update.
16541         * doc/posix-functions/vsnprintf.texi: Update.
16542         * doc/posix-functions/vsprintf.texi: Update.
16543         Reported by Peter Fales <psfales@alcatel-lucent.com>.
16544
16545 2008-02-06  Bruno Haible  <bruno@clisp.org>
16546
16547         Fix bug introduced on 2008-01-26.
16548         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
16549
16550 2008-02-06  Bruno Haible  <bruno@clisp.org>
16551
16552         Fix bug introduced on 2007-06-10.
16553         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
16554         !NEED_PRINTF_FLAG_ZERO.
16555
16556 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
16557
16558         getloadavg: use libperfstat on AIX5
16559         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
16560
16561 2008-02-03  Bruno Haible  <bruno@clisp.org>
16562
16563         * lib/diffseq.h: Add comments about required #includes.
16564         Reported by Michael Biggs <gnulib@doubleplum.net>.
16565
16566 2008-02-01  Bruno Haible  <bruno@clisp.org>
16567
16568         * users.txt: Add gnuit.
16569
16570 2008-01-31  Bruno Haible  <bruno@clisp.org>
16571
16572         * lib/md4.c (set_uint32): Mark as inline.
16573         * lib/md5.c (set_uint32): Likewise.
16574         * lib/sha1.c (set_uint32): Likewise.
16575         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
16576         * m4/md5.m4 (gl_MD5): Likewise.
16577         * m4/sha1.m4 (gl_SHA1): Likewise.
16578
16579 2008-01-31  Jim Meyering  <meyering@redhat.com>
16580
16581         Use "sizeof VAR", rather than a literal "4".
16582         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
16583         * lib/md4.c (md4_read_ctx): Likewise.
16584         * lib/sha1.c (sha1_read_ctx): Likewise.
16585
16586 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16587
16588         * tests/test-sha1.c: New file, based on test-md5.c.
16589
16590         * modules/crypto/sha1-tests: New file.
16591
16592 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16593
16594         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
16595
16596 2008-01-31  Jim Meyering  <meyering@redhat.com>
16597
16598         Prefer "sizeof v" over the equivalent "4".
16599         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
16600         * lib/md5.c (set_uint32): Likewise.
16601         * lib/sha1.c (set_uint32): Likewise.
16602
16603 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16604
16605         * lib/sha1.c (set_uint32): Mark function as static.
16606
16607 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16608
16609         md2: clarify comments to say that alignment is not required.
16610         * lib/md2.h: Remove warning about alignment in comment.
16611         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
16612         never been required.
16613
16614 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16615
16616         md4: adapt alignment constraint fix from sha1.
16617         * lib/md4.c (set_uint32): New function, from sha1.c
16618         (md4_read_ctx): Use it.
16619         (md4_finish_ctx): Doc fix.
16620         * lib/md4.h: Doc fix.
16621
16622 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16623
16624         md5: adapt alignment constraint fix from sha1.
16625         * lib/md5.c (set_uint32): New function, from sha1.c
16626         (md5_read_ctx): Use it.
16627         (md5_finish_ctx): Doc fix.
16628         * lib/md5.h: Doc fix.
16629
16630 2008-01-30  Peter Palfrader  <weasel@debian.org>
16631
16632         sha1: remove the result buffer alignment constraint
16633         * lib/sha1.c (set_uint32): New function.
16634         (sha1_read_ctx): Rewrite to remove the result buffer alignment
16635         constraint.
16636         (sha1_finish_ctx): Remove comment warning about alignment constraint.
16637         * lib/sha1.h: Likewise.
16638
16639 2008-01-30  Andreas Schwab  <schwab@suse.de>
16640             Bruno Haible  <bruno@clisp.org>
16641
16642         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
16643         correct definition of LDBL_MIN_EXP.
16644
16645 2008-01-30  Karl Berry  <karl@gnu.org>
16646
16647         * config/srclist-update: try to preserve x bit on updates.
16648         * config/srclistvars.sh: update for karl.
16649
16650 2008-01-29  Jim Meyering  <meyering@redhat.com>
16651
16652         vasnprintf.c: Avoid warning about unused label
16653         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
16654         "overflow" label definition and associated code with the
16655         same cpp condition that guards the sole use of that label.
16656
16657 2008-01-26  Bruno Haible  <bruno@clisp.org>
16658
16659         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
16660         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
16661         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
16662         * lib/isnanl-nolibm.h (isnanl): Likewise.
16663         Reported by Paul Eggert <eggert@cs.ucla.edu>.
16664
16665 2008-01-26  Bruno Haible  <bruno@clisp.org>
16666
16667         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
16668         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
16669
16670 2008-01-26  Bruno Haible  <bruno@clisp.org>
16671
16672         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
16673         GCC >= 4.0 built-in.
16674         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
16675
16676 2008-01-26  Bruno Haible  <bruno@clisp.org>
16677
16678         Rename isnan, applicable to 'double' only, to isnand.
16679         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
16680         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
16681         (configure.ac): Update.
16682         (Include): Replace "isnan.h" with "isnand.h".
16683         * m4/isnand.m4: Renamed from m4/isnan.m4.
16684         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
16685         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
16686         instead of isnan.c.
16687         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
16688         instead of HAVE_ISNAN_IN_LIBC.
16689         (isnand): Renamed from isnan.
16690         * lib/isnand.c: New file.
16691         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
16692         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
16693         (Makefile.am): Update.
16694         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
16695         Include isnand.h instead of isnan.h.
16696         (main): Test isnand instead of isnan.
16697         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
16698         isnan-nolibm.
16699         * modules/frexp (Depends-on): Likewise.
16700         * modules/frexp-tests (Depends-on): Likewise.
16701         * modules/frexp-nolibm (Depends-on): Likewise.
16702         * modules/frexp-nolibm-tests (Depends-on): Likewise.
16703         * modules/isfinite (Depends-on): Likewise.
16704         * modules/round-tests (Depends-on): Likewise.
16705         * modules/signbit (Depends-on): Likewise.
16706         * modules/signbit-tests (Depends-on): Likewise.
16707         * modules/snprintf-posix (Depends-on): Likewise.
16708         * modules/sprintf-posix (Depends-on): Likewise.
16709         * modules/trunc-tests (Depends-on): Likewise.
16710         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
16711         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
16712         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
16713         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
16714         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
16715         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
16716         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
16717         * modules/vasnprintf-posix (Depends-on): Likewise.
16718         * modules/vasprintf-posix (Depends-on): Likewise.
16719         * modules/vfprintf-posix (Depends-on): Likewise.
16720         * modules/vsnprintf-posix (Depends-on): Likewise.
16721         * modules/vsprintf-posix (Depends-on): Likewise.
16722         * lib/frexp.c: Include isnand.h instead of isnan.h.
16723         (ISNAN): Set to isnand instead of isnan.
16724         * lib/isfinite.c: Include isnand.h instead of isnan.h.
16725         (gl_isfinited): Use isnand instead of isnan.
16726         * lib/signbitd.c: Include isnand.h instead of isnan.h.
16727         (gl_signbitd): Use isnand instead of isnan.
16728         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
16729         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
16730         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
16731         (main): Use isnand instead of isnan.
16732         * tests/test-round1.c: Include isnand.h.
16733         (main): Use isnand instead of isnan.
16734         * tests/test-round2.c: Include isnand.h instead of isnan.h.
16735         (ISNAN): Set to isnand instead of isnan.
16736         * tests/test-trunc1.c: Include isnand.h.
16737         (main): Use isnand instead of isnan.
16738         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
16739         (equal): Use isnand instead of isnan.
16740         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
16741         isnand-nolibm.
16742         * NEWS: Mention the change.
16743
16744 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
16745             Bruno Haible  <bruno@clisp.org>
16746
16747         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
16748         the GCC builtins for signbits are present and set
16749         REPLACE_SIGNBIT_USING_GCC if so.
16750         * lib/math.in.h (signbit): Define using GCC builtins if
16751         REPLACE_SIGNBIT_USING_GCC is set.
16752         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
16753         REPLACE_SIGNBIT_USING_GCC.
16754         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
16755
16756 2008-01-25  Jim Meyering  <meyering@redhat.com>
16757
16758         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
16759         * lib/poll.c: Include <config.h>, not "config.h".
16760         * tests/test-getaddrinfo.c: Likewise.
16761
16762 2008-01-25  Simon Josefsson  <simon@josefsson.org>
16763
16764         * modules/sockets-tests: New file.
16765
16766 2008-01-24  Simon Josefsson  <simon@josefsson.org>
16767
16768         * modules/sockets: New module, can be used to call WSA_Startup and
16769         WSA_Cleanup when needed.
16770
16771         * lib/sockets.h, lib/sockets.c: New files.
16772
16773         * m4/sockets.m4: New file.
16774
16775         * tests/test-sockets.c: New file.
16776
16777 2008-01-19  Bruno Haible  <bruno@clisp.org>
16778
16779         * doc/posix-headers: Renamed from doc/headers.
16780         * doc/posix-functions: Renamed from doc/functions.
16781         * doc/gnulib.texi: Update.
16782
16783 2008-01-19  Bruno Haible  <bruno@clisp.org>
16784
16785         * doc/glibc-functions/strcasestr.texi: Include contents of
16786         doc/functions/strcasestr.texi, fixing the list of platforms.
16787         * doc/functions/strcasestr.texi: Remove file.
16788
16789 2008-01-19  Bruno Haible  <bruno@clisp.org>
16790
16791         * doc/glibc-functions/memmem.texi: Include contents of
16792         doc/functions/memmem.texi.
16793         * doc/functions/memmem.texi: Remove file.
16794
16795 2008-01-18  Bruno Haible  <bruno@clisp.org>
16796
16797         * doc/glibc-functions/*.texi: New files.
16798         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
16799         to use the new files.
16800
16801 2008-01-17  Bruno Haible  <bruno@clisp.org>
16802
16803         * tests/test-gethostname.c (main): Fix printf statement.
16804
16805 2008-01-17  Simon Josefsson  <simon@josefsson.org>
16806
16807         * modules/gethostname-tests: New file.
16808
16809         * tests/test-gethostname.c: New file.
16810
16811 2008-01-17  Simon Josefsson  <simon@josefsson.org>
16812
16813         * lib/gethostname.c: Include string.h unconditionally, strncpy is
16814         used by the UNAME case.  Reported by Bruno Haible
16815         <bruno@clisp.org>.
16816
16817 2008-01-17  Eric Blake  <ebb9@byu.net>
16818
16819         Convert c-strcasestr to be more efficient.
16820         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
16821         (Depends-on): Add c-strcase, remove malloca, strnlen.
16822         * tests/test-c-strcasestr.c (main): Enhance test.
16823         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
16824
16825 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
16826
16827         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
16828         Use it in creating po/Makevars.
16829
16830 2008-01-15  Simon Josefsson  <simon@josefsson.org>
16831
16832         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
16833         Applications that requires it should initialize libgcrypt
16834         manually.
16835
16836 2008-01-16  Simon Josefsson  <simon@josefsson.org>
16837
16838         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
16839
16840 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
16841
16842         Fix problem with getdate on mingw32 reported by Simon Josefsson
16843         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
16844         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
16845         tzname", when deciding whether to declare tzname.
16846         * lib/strftime.c (tzname): Likewise.
16847
16848 2008-01-15  Bruno Haible  <bruno@clisp.org>
16849
16850         Work around a MacOS X 10.5 bug in frexpl().
16851         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
16852         * doc/functions/frexpl.texi: Document the bug.
16853         Reported by Elias Pipping <pipping@gentoo.org>.
16854
16855 2008-01-14  Eric Blake  <ebb9@byu.net>
16856
16857         Touch up previous patch.
16858         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
16859         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
16860
16861         Convert strcasestr module to use Two-Way algorithm.
16862         * modules/strcasestr-simple: New module, based on the old
16863         strcasestr, but with Two-Way rather than KMP.
16864         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
16865         * lib/string.in.h (rpl_strcasestr): Declare.
16866         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
16867         performance.
16868         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
16869         * modules/string (Makefile.am): Support strcasestr.
16870         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
16871         * modules/strcasestr-tests (Depends-on): Check for alarm.
16872         * tests/test-strcasestr.c: Augment test.
16873         * lib/str-two-way.h: Clean up stray macro.
16874         * NEWS: Document new module.
16875         * MODULES.html.sh (string handling): Likewise.
16876         * doc/functions/strcasestr.texi: New file.
16877         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
16878         here, since it is not a POSIX function.
16879
16880 2008-01-14  Colin Watson  <cjwatson@debian.org>
16881             Bruno Haible  <bruno@clisp.org>
16882
16883         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
16884         works fine; if not, set REPLACE_STRSIGNAL.
16885         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
16886         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16887         REPLACE_STRSIGNAL.
16888         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
16889         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
16890         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
16891
16892 2008-01-14  Bruno Haible  <bruno@clisp.org>
16893
16894         * modules/strsignal (Include): Change to <string.h>.
16895
16896 2008-01-14  Colin Watson  <cjwatson@debian.org>
16897
16898         * modules/argp (Notice): Add a notice recommending to change
16899         XGETTEXT_OPTIONS.
16900         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
16901
16902 2008-01-13  Colin Watson  <cjwatson@debian.org>
16903
16904         * modules/strsignal-tests: New file.
16905         * tests/test-strsignal.c: New file.
16906
16907         * lib/strsignal.c: New file, from glibc with modifications.
16908         * lib/siglist.h: New file, from glibc with modifications.
16909         * lib/string.in.h (strsignal): New declaration.
16910         * m4/strsignal.m4: New file.
16911         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16912         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
16913         * modules/strsignal: New file.
16914         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
16915         HAVE_DECL_STRSIGNAL.
16916
16917 2008-01-13  Bruno Haible  <bruno@clisp.org>
16918
16919         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
16920         locale encoding is not ASCII. Needed for OpenBSD 4.0.
16921         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
16922         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
16923
16924 2008-01-13  Bruno Haible  <bruno@clisp.org>
16925
16926         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
16927         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
16928         * lib/argp.h (__attribute__): Likewise.
16929         * lib/c-stack.c (__attribute__): Likewise.
16930         * lib/error.h (__attribute__): Likewise.
16931         * lib/fts.c (__attribute__): Likewise.
16932         * lib/openat.h (__attribute__): Likewise.
16933         * lib/stdio.in.h (__attribute__): Likewise.
16934         * lib/string.in.h (__attribute__): Likewise.
16935         * lib/utimens.c (__attribute__): Likewise.
16936         * lib/vasnprintf.h (__attribute__): Likewise.
16937         * lib/xalloc.h (__attribute__): Likewise.
16938         * lib/xprintf.h (__attribute__): Likewise.
16939         * lib/xstrtol.h (__attribute__): Likewise.
16940         * lib/xvasprintf.h (__attribute__): Likewise.
16941
16942 2008-01-12  Bruno Haible  <bruno@clisp.org>
16943
16944         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
16945         * doc/glibc-headers/a.out.texi: New file.
16946         * doc/glibc-headers/aliases.texi: New file.
16947         * doc/glibc-headers/alloca.texi: New file.
16948         * doc/glibc-headers/ar.texi: New file.
16949         * doc/glibc-headers/argp.texi: New file.
16950         * doc/glibc-headers/argz.texi: New file.
16951         * doc/glibc-headers/byteswap.texi: New file.
16952         * doc/glibc-headers/crypt.texi: New file.
16953         * doc/glibc-headers/endian.texi: New file.
16954         * doc/glibc-headers/envz.texi: New file.
16955         * doc/glibc-headers/err.texi: New file.
16956         * doc/glibc-headers/error.texi: New file.
16957         * doc/glibc-headers/execinfo.texi: New file.
16958         * doc/glibc-headers/fpu_control.texi: New file.
16959         * doc/glibc-headers/fstab.texi: New file.
16960         * doc/glibc-headers/fts.texi: New file.
16961         * doc/glibc-headers/getopt.texi: New file.
16962         * doc/glibc-headers/ieee754.texi: New file.
16963         * doc/glibc-headers/ifaddrs.texi: New file.
16964         * doc/glibc-headers/libintl.texi: New file.
16965         * doc/glibc-headers/mcheck.texi: New file.
16966         * doc/glibc-headers/mntent.texi: New file.
16967         * doc/glibc-headers/obstack.texi: New file.
16968         * doc/glibc-headers/paths.texi: New file.
16969         * doc/glibc-headers/printf.texi: New file.
16970         * doc/glibc-headers/pty.texi: New file.
16971         * doc/glibc-headers/resolv.texi: New file.
16972         * doc/glibc-headers/shadow.texi: New file.
16973         * doc/glibc-headers/sysexits.texi: New file.
16974         * doc/glibc-headers/ttyent.texi: New file.
16975
16976 2008-01-12  Jim Meyering  <meyering@redhat.com>
16977
16978         announce-gen: emit Gnulib's git-based version string.
16979         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
16980         New option --gnulib-version=V, where V is expected to be
16981         the output of running git describe in the gnulib directory.
16982         (get_tool_versions): Request feedback on xdelta.  I suspect it's
16983         not useful, and plan to stop publishing an xdelta file with each
16984         coreutils release.
16985
16986         * build-aux/announce-gen: Also check for lzma-compressed files.
16987
16988 2008-01-11  Bruno Haible  <bruno@clisp.org>
16989
16990         * tests/test-memmem.c (main): Increase maximum allowed time.
16991         * tests/test-strstr.c (main): Likewise.
16992
16993 2008-01-11  Bruno Haible  <bruno@clisp.org>
16994
16995         * doc/functions/memmem.texi: Add more precisions about platforms.
16996         * doc/functions/strstr.texi: Likewise.
16997
16998 2008-01-10  Eric Blake  <ebb9@byu.net>
16999
17000         * m4/strstr.m4: Delete cruft from copy-n-paste.
17001         Reported by Bruno Haible.
17002
17003 2008-01-10  Bruno Haible  <bruno@clisp.org>
17004
17005         Make c-strstr rely on strstr.
17006         * lib/c-strstr.c: Don't include str-kmp.h.
17007         (c_strstr): Define in terms of strstr.
17008         * modules/c-strstr (Files): Remove lib/str-kmp.h.
17009         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
17010
17011 2008-01-10  Bruno Haible  <bruno@clisp.org>
17012
17013         * doc/gnulib.texi (String Functions in C Locale): New section.
17014         * doc/c-ctype.texi: New file.
17015         * doc/c-strcase.texi: New file.
17016         * doc/c-strcaseeq.texi: New file.
17017         * doc/c-strcasestr.texi: New file.
17018         * doc/c-strstr.texi: New file.
17019         * doc/c-strtod.texi: New file.
17020         * doc/c-strtold.texi: New file.
17021
17022 2008-01-10  Eric Blake  <ebb9@byu.net>
17023
17024         * lib/relocatable.h: Fix a comment.
17025
17026 2008-01-10  Eric Blake  <ebb9@byu.net>
17027
17028         Share two-way algorithm.
17029         * lib/str-two-way.h: New file, merged from...
17030         * lib/memmem.c: ...here...
17031         * lib/strstr.c: ...and here.
17032         * modules/memmem (Files): Use it.
17033         * modules/strstr (Files): Likewise.
17034
17035         Avoid quadratic strstr implementations.
17036         * lib/strstr.c: New file.
17037         * m4/strstr.m4: Likewise.
17038         * modules/strstr: Likewise.
17039         * modules/strstr-tests: Likewise.
17040         * tests/test-strstr.c: Likewise.
17041         * lib/string.in.h (rpl_strstr): Declare.
17042         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
17043         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
17044         * modules/string (Makefile.am): Likewise.
17045         * MODULES.html.sh (string handling): Mention new module.
17046         * doc/functions/strstr.texi (strstr): Document the bug.
17047
17048 2008-01-10  Bruno Haible  <bruno@clisp.org>
17049
17050         * lib/relocatable.h (relocate): State whether result is freshly
17051         allocated or not.
17052         * lib/relocatable.c (relocate): Return a freshly allocated string
17053         instead of a pointer to a privately held string.
17054         Reported by Sylvain Beucler <beuc@gnu.org>.
17055
17056 2008-01-10  Colin Watson  <cjwatson@debian.org>
17057
17058         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
17059         s/S_ISNLK/S_ISLNK/.
17060
17061 2008-01-09  Bruno Haible  <bruno@clisp.org>
17062
17063         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
17064         and other files.
17065         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
17066         if it's only a guess.
17067         * modules/memmem: Simplify by depending on memmem-simple.
17068
17069 2008-01-09  Bruno Haible  <bruno@clisp.org>
17070
17071         Work around OpenBSD 4.0 tdelete() bug.
17072         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
17073         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
17074         macros and don't redefine the enum values.
17075         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
17076         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
17077         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
17078
17079 2008-01-09  Bruno Haible  <bruno@clisp.org>
17080
17081         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
17082         (main): Don't perform the tests if setlocale did not install a UTF-8
17083         locale. Needed on OpenBSD 4.0.
17084         * modules/wcwidth-tests (Depends-on): Add localcharset.
17085
17086 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17087
17088         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
17089         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
17090         * NEWS: announce this.
17091         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
17092
17093 2008-01-09  Simon Josefsson  <simon@josefsson.org>
17094         and Eric Blake  <ebb9@byu.net>
17095
17096         Add memmem-simple module.
17097         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
17098         (gl_FUNC_MEMMEM): Separate performance from presence checks.
17099         * modules/memmem-simple: New file.
17100         * modules/memmem (Description): Tweak.
17101         * MODULES.html.sh (string handling): Mention new module.
17102         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
17103         addressed by memmem-simple.
17104         * NEWS: Document the difference.
17105
17106 2008-01-09  Eric Blake  <ebb9@byu.net>
17107
17108         Give gcc some memmem optimization hints.
17109         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
17110         (strcasestr): Declare as pure.
17111         * modules/memmem (Maintainer): Claim my implementation.
17112
17113 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17114
17115         Support AIX 6.1 and higher.
17116         * build-aux/config.libpath: Likewise.
17117         * build-aux/config.rpath: Likewise.
17118
17119 2008-01-08  Jim Meyering  <meyering@redhat.com>
17120             Bruno Haible  <bruno@clisp.org>
17121
17122         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
17123         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
17124         Reported by Peter Fales in
17125         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
17126
17127 2008-01-08  Bruno Haible  <bruno@clisp.org>
17128
17129         * modules/unictype/category-of (Depends-on): Add
17130         unictype/category-none.
17131         * modules/unictype/category-and-tests (Depends-on): Add
17132         unictype/category-{L,N,Lu,Nd}.
17133         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
17134         * modules/unictype/category-or-tests (Depends-on): Add
17135         unictype/category-{L,N}.
17136         * modules/unictype/category-name-tests (Depends-on): Add
17137         unictype/category-{Z,Nl}.
17138         Reported by Simon Josefsson.
17139
17140 2008-01-08  Bruno Haible  <bruno@clisp.org>
17141
17142         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
17143         convention better.
17144         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
17145         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
17146         Reported by Peter Miller <millerp@canb.auug.org.au>.
17147
17148 2008-01-08  Eric Blake  <ebb9@byu.net>
17149
17150         Rewrite memmem to guarantee linear complexity without malloc.
17151         * lib/memmem.c (memmem): Use Two-Way rather than
17152         Knuth-Morris-Pratt, to allow O(1) space usage.
17153         (critical_factorization, two_way_short_needle)
17154         (two_way_long_needle): New functions.
17155         (knuth_morris_pratt): Delete.
17156         * modules/memmem (Depends-on): No longer need malloca or stdbool.
17157         Add stdint.
17158         * tests/test-memmem.c (main): Add tests for periodic needle and
17159         sublinear performance.
17160         * doc/functions/memmem.texi (memmem): Document other deficiencies
17161         in cygwin and older glibc.
17162
17163 2008-01-08  Bruno Haible  <bruno@clisp.org>
17164
17165         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
17166         augmentation.
17167
17168 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
17169
17170         Add a configure time option: --disable-acl.
17171         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
17172         AC_ARG_ENABLE(acl).
17173
17174 2008-01-06  Simon Josefsson  <simon@josefsson.org>
17175
17176         * tests/test-localename.c: Don't include obsolete "setenv.h".
17177
17178         * modules/localename-tests (Depends-on): Need unsetenv.
17179
17180 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17181
17182         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
17183
17184 2008-01-06  Colin Watson  <cjwatson@debian.org>
17185
17186         * users.txt: Add man-db.
17187
17188 2008-01-07  Bruno Haible  <bruno@clisp.org>
17189
17190         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
17191         previous section name.
17192
17193 2008-01-07  Bruno Haible  <bruno@clisp.org>
17194
17195         * lib/progname.c (set_program_name): Don't strip off a leading
17196         "lt-" prefix outside a .libs directory.
17197         Suggested by Paul Eggert.
17198
17199 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
17200             Bruno Haible  <bruno@clisp.org>
17201
17202         Improve memory cleanup in 'relocatable' module.
17203         * lib/relocatable.h (compute_curr_prefix): Change return type to
17204         'char *'.
17205         * lib/relocatable.c (compute_curr_prefix): Change return type to
17206         'char *'. Free curr_installdir after use.
17207         (relocate): Free curr_prefix_better after use.
17208         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
17209
17210 2008-01-01  Bruno Haible  <bruno@clisp.org>
17211
17212         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
17213         failure on older glibc systems.
17214         Reported by Peter Fales <psfales@alcatel-lucent.com>.
17215
17216 2008-01-05  Eric Blake  <ebb9@byu.net>
17217
17218         Avoid quadratic system memmem.
17219         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
17220         Reported by Ralf Wildenhues.
17221
17222         Fix memmem test for mingw.
17223         * modules/memmem-tests (configure.ac): Check for alarm.
17224         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
17225         it.
17226         * doc/functions/memmem.texi: New file.
17227         * doc/gnulib.texi (Function Substitutes): Add memmem.
17228         Reported by Bruno Haible.
17229
17230 2008-01-04  Bruno Haible  <bruno@clisp.org>
17231
17232         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
17233         Require gl_HEADER_STRINGS_H_DEFAULTS, not
17234         gl_HEADER_STRING_H_DEFAULTS.
17235
17236 2008-01-04  Eric Blake  <ebb9@byu.net>
17237
17238         Shorten duration of memmem test.
17239         * tests/test-memmem.c (main): Use alarm to declare failure if test
17240         is taking too long.
17241         Reported by Ralf Wildenhues.
17242
17243 2007-12-21  Simon Josefsson  <simon@josefsson.org>
17244
17245         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
17246         string, needed by strerror.
17247
17248 2008-01-03  Colin Watson  <cjwatson@debian.org>
17249             Bruno Haible  <bruno@clisp.org>
17250
17251         * doc/gnulib-tool.texi (Localization): New section.
17252
17253 2008-01-02  Bruno Haible  <bruno@clisp.org>
17254
17255         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
17256         variables to 'unsigned char *' type.
17257         Reported by Paul Eggert.
17258
17259 2008-01-02  Jim Meyering  <jim@meyering.net>
17260
17261         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
17262
17263 2007-12-31  Jim Meyering  <jim@meyering.net>
17264
17265         Avoid use of private FTS type name.
17266         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
17267
17268 2007-12-30  Karl Berry  <karl@gnu.org>
17269
17270         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
17271         work around defect in Texinfo and/or the standalone Info browser.
17272
17273 2007-12-30  Bruno Haible  <bruno@clisp.org>
17274
17275         Unify 5 copies of the KMP code.
17276         * lib/str-kmp.h: New file.
17277         * lib/c-strcasestr.c: Include str-kmp.h.
17278         (knuth_morris_pratt): Remove function.
17279         (c_strcasestr): Update.
17280         * lib/c-strstr.c: Include str-kmp.h.
17281         (knuth_morris_pratt): Remove function.
17282         (c_strcasestr): Update.
17283         * lib/mbscasestr.c: Include str-kmp.h.
17284         (knuth_morris_pratt_unibyte): Remove function.
17285         * lib/mbsstr.c: Include str-kmp.h.
17286         (knuth_morris_pratt_unibyte): Remove function.
17287         * lib/strcasestr.c: Include str-kmp.h.
17288         (knuth_morris_pratt): Remove function.
17289         (strcasestr): Update.
17290         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
17291         * modules/c-strstr (Files): Likewise.
17292         * modules/mbscasestr (Files): Likewise.
17293         * modules/mbsstr (Files): Likewise.
17294         * modules/strcasestr (Files): Likewise.
17295         Suggested by Paul Eggert.
17296
17297 2007-12-30  Bruno Haible  <bruno@clisp.org>
17298
17299         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
17300         defined.
17301
17302 2007-12-30  Bruno Haible  <bruno@clisp.org>
17303
17304         * lib/xmalloca.h: Include xalloc.h.
17305         (xnmalloca): New macro.
17306
17307 2007-12-30  Bruno Haible  <bruno@clisp.org>
17308
17309         * lib/malloca.h (nmalloca): New macro.
17310         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
17311         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
17312         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
17313         knuth_morris_pratt_multibyte): Likewise.
17314         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
17315         knuth_morris_pratt_multibyte): Likewise.
17316         * lib/memmem.c (knuth_morris_pratt): Likewise.
17317         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
17318
17319 2007-12-25  Bruno Haible  <bruno@clisp.org>
17320
17321         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
17322         * lib/glob.c: Don't include openat.h.
17323         (link_exists2_p): Add back the code that deals with the
17324         !GLOB_ALTDIRFUNC case.
17325         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
17326         let it do the filename concatenation.
17327         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
17328         * modules/glob (Depends-on): Remove openat.
17329
17330 2007-12-31  Bruno Haible  <bruno@clisp.org>
17331
17332         * modules/dirfd (License): Change to LGPLv2+.
17333         Approved by Jim Meyering.
17334
17335 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
17336
17337         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
17338         when multiplying M by sizeof (size_t).
17339
17340 2007-12-10  Martin Lambers  <marlam@marlam.de>
17341
17342         Override getpagesize on mingw.
17343         * lib/getpagesize.c: New file.
17344         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
17345         * modules/getpagesize (Files): Add lib/getpagesize.c.
17346         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
17347         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
17348         REPLACE_GETPAGESIZE.
17349         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
17350
17351 2007-12-25  Bruno Haible  <bruno@clisp.org>
17352
17353         * modules/localcharset (Notice): New field.
17354         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
17355         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
17356
17357 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
17358             Bruno Haible  <bruno@clisp.org>
17359
17360         Avoid using the syntax symbol() in formatted documentation.
17361         * MODULES.html.sh (func_module): When replacing symbol() with a
17362         hyperlink, remove the parentheses. Show an error if some remain.
17363         Recognize and render the '...' syntax.
17364         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
17365         Rework. Add paragraph about GCC's inlining.
17366         * doc/alloca.texi: Likewise.
17367         * doc/error.texi: Remove parentheses from symbol reference.
17368         * doc/gnulib-intro.texi: Likewise.
17369         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
17370         * modules/fnmatch (Description): Reword to say "the ... function".
17371         * modules/full-read (Description): Likewise.
17372         * modules/full-write (Description): Likewise.
17373         * modules/safe-read (Description): Likewise.
17374         * modules/safe-write (Description): Likewise.
17375         * modules/strchrnul (Description): Likewise.
17376         * modules/trim (Description): Likewise.
17377         * modules/error (Description): Remove parentheses from symbol
17378         references.
17379         * modules/verror (Description): Likewise.
17380         Reported by Karl Berry.
17381
17382 2007-12-25  Bruno Haible  <bruno@clisp.org>
17383
17384         Fixup after 2007-10-16 commit.
17385         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
17386
17387 2007-12-24  Bruno Haible  <bruno@clisp.org>
17388
17389         Make --enable-relocatable work with DESTDIR.
17390         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
17391         to compute installdir from destprog.
17392         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
17393         also set the RELOC_DESTDIR variable.
17394         Reported by Левашев Иван <octagram@bluebottle.com>.
17395
17396 2007-12-24  Bruno Haible  <bruno@clisp.org>
17397
17398         Fix link error due to xalloc_die().
17399         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
17400         of xreadlink.
17401         * lib/relocwrapper.c: Update comments.
17402         * build-aux/install-reloc: Remove xreadlink.c from file list.
17403         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
17404         xreadlink.c.
17405         Reported by Левашев Иван <octagram@bluebottle.com>.
17406
17407 2007-12-24  Bruno Haible  <bruno@clisp.org>
17408
17409         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
17410         * lib/setenv.h: Remove file.
17411         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
17412         lib/setenv.h.
17413         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
17414         (Depends-on): Add stdlib.
17415         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
17416         gl_FUNC_UNSETENV.
17417         (Include): Replace setenv.h with <stdlib.h>.
17418         * modules/unsetenv: New file.
17419         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
17420         * lib/unsetenv.c: Include <stdlib.h> first.
17421         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
17422         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
17423         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
17424         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
17425         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
17426         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
17427         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
17428         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
17429         * doc/functions/unsetenv.texi: Update.
17430         * modules/xsetenv (Depends-on): Add unsetenv.
17431         * modules/getdate (Depends-on): Likewise.
17432         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
17433         * lib/xsetenv.c: Don't include setenv.h.
17434         * lib/getdate.y: Likewise.
17435         * lib/relocwrapper.c: Likewise.
17436         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
17437         (Depends-on): Add stdlib.
17438         * NEWS: Mention the changes.
17439         Reported by Левашев Иван <octagram@bluebottle.com>.
17440
17441 2007-12-23  Bruno Haible  <bruno@clisp.org>
17442
17443         * lib/memmem.c (memmem): Use lowercase variable names. Tab
17444         indentation.
17445
17446 2007-12-23  Bruno Haible  <bruno@clisp.org>
17447
17448         * lib/c-strcasestr.c: Add more comments.
17449         * lib/c-strstr.c: Likewise.
17450         * lib/mbscasestr.c: Likewise.
17451         * lib/mbsstr.c: Likewise.
17452         * lib/strcasestr.c: Likewise.
17453         * lib/memmem.c: Likewise.
17454
17455 2007-12-23  Bruno Haible  <bruno@clisp.org>
17456
17457         * tests/test-memmem.c: Include <string.h> first.
17458
17459 2007-12-22  Bruno Haible  <bruno@clisp.org>
17460
17461         * gnulib-tool (func_create_testdir): Change $auxdir while generating
17462         the contents of $testsbase.
17463         Reported by Ralf Wildenhues.
17464
17465 2007-12-22  Bruno Haible  <bruno@clisp.org>
17466
17467         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
17468         two variables local_ldadd_before, local_ldadd_last.
17469
17470 2007-12-20  Eric Blake  <ebb9@byu.net>
17471
17472         Work around circular library issue when cross-compiling.
17473         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
17474         that progname.o does not need to pull in rpl_memcmp.
17475
17476 2007-12-19  Eric Blake  <ebb9@byu.net>
17477
17478         Fix memmem to avoid O(n^2) worst-case complexity.
17479         * lib/memmem.c (knuth_morris_pratt): New function.
17480         (memmem): Use it if first few naive iterations fail.
17481         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
17482         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
17483         * modules/memchr (License): Likewise.
17484         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
17485         malloca.
17486         * tests/test-memmem.c: Rewrite, borrowing ideas from
17487         test-mbsstr1.c; the old version wouldn't even compile!
17488         * modules/memmem-tests: New file.
17489         * lib/string.in.h (rpl_memmem): Add declaration.
17490         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
17491         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
17492         REPLACE_MEMMEM.
17493
17494 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
17495
17496         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
17497         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
17498         before any system include files, and undef after them all.  This
17499         should fix a problem on VMS reported by John E. Malmberg in
17500         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
17501
17502 2007-12-17  Eric Blake  <ebb9@byu.net>
17503
17504         Revert addition of verify, for BSD/OS.
17505         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
17506         can't handle large files, for the sake of obsolete platforms.
17507         * modules/fseeko (Depends-on): Remove verify.
17508         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
17509         * doc/functions/ftello.texi (ftello): Likewise.
17510         * doc/functions/fgetpos.texi (fgetpos): Likewise.
17511         Reported by Larry Jones.
17512
17513 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
17514
17515         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
17516         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
17517
17518 2007-12-17  Jim Meyering  <meyering@redhat.com>
17519
17520         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
17521         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
17522         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
17523         * modules/getcwd (Depends-on): Add openat.
17524         Reported by Petr Salinger.
17525
17526 2007-12-17  Bruno Haible  <bruno@clisp.org>
17527
17528         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
17529         avoid a segmentation fault of the configure test on x86_64 systems.
17530
17531 2007-12-15  Jim Meyering  <meyering@redhat.com>
17532
17533         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
17534
17535 2007-12-13  Eric Blake  <ebb9@byu.net>
17536
17537         Another fseek test.
17538         * tests/test-fseek.c (main): Also test ungetc handling.
17539         * tests/test-fseeko.c (main): Likewise.
17540         * modules/fseeko (Depends-on): Add verify.
17541         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
17542         large.
17543         Reported by Larry Jones.
17544
17545         Fix fseeko on mingw.
17546         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
17547         seek.
17548
17549         Beef up fseek tests.
17550         * tests/test-fseek.c (main): Also test eof handling.
17551         * tests/test-fseeko.c (main): Likewise.
17552         Reported by Larry Jones.
17553
17554 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
17555
17556         Fix fseeko on BSD-based platforms.
17557         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
17558         successful seek.
17559
17560 2007-12-12  Eric Blake  <ebb9@byu.net>
17561
17562         Allow circular dependency of separate libtests.a
17563         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
17564         when use_libtests.
17565
17566 2007-12-11  Eric Blake  <ebb9@byu.net>
17567
17568         Fix bug with -0.0L in previous patch.
17569         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
17570         * tests/test-isnan.c (main): Also test on zeroes.
17571         * tests/test-isnanf.c (main): Likewise.
17572         * tests/test-isnanl.h (main): Likewise.
17573
17574         Detect pseudo-denormals on x86 even when cross-compiling.
17575         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
17576         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
17577         invalid bit patterns that happen to satisfy ==.
17578
17579         Avoid link failures with separate libtests.a.
17580         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
17581         last, to satisfy circular dependencies.
17582
17583 2007-12-11  Eric Blake  <ebb9@byu.net>
17584         and Bruno Haible  <bruno@clisp.org>
17585
17586         Fix OpenBSD 4.0 <float.h> handling of long double.
17587         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
17588         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
17589         * doc/headers/float.texi (float.h): Document OpenBSD bug.
17590
17591 2007-12-11  Jim Meyering  <meyering@redhat.com>
17592
17593         * users.txt: Add libvirt.
17594
17595         Support versions of autoconf prior to 2.59c.
17596         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
17597         if it is not already defined.
17598
17599 2007-12-09  Bruno Haible  <bruno@clisp.org>
17600
17601         Let 'gnulib-tool --import' collect sources needed for the tests in
17602         tests/ rather than in lib/.
17603         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
17604         argument. If true, add rules to generate libtests.a, and put libtests.a
17605         into $(LDADD). Consider source files in subdirectories and set
17606         uses_subdirs.
17607         (func_emit_initmacro_start, func_emit_initmacro_end,
17608         func_emit_initmacro_done): Pass all arguments explicitly.
17609         (func_import): Determine two module lists main_modules,
17610         testsrelated_modules. Determine use_libtests. Determine two variables
17611         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
17612         instead of just sed_transform_lib_file. Determine two variables
17613         main_files and testsrelated_files. Compute 'files' as the union of
17614         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
17615         func_add_or_update. In the generated gnulib-comp.m4, collect the
17616         object files for tests/ in different variables than those for lib/.
17617         Substitute LIBTESTS_LIBDEPS.
17618         (func_create_testdir): Combine the uses_subdirs results from
17619         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
17620
17621 2007-12-09  Bruno Haible  <bruno@clisp.org>
17622
17623         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
17624         the build-aux directory.
17625
17626 2007-12-09  Bruno Haible  <bruno@clisp.org>
17627
17628         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
17629         introduced on 2006-09-09.
17630
17631 2007-12-07  Jim Meyering  <meyering@redhat.com>
17632
17633         Let these macros work also with autoconf-2.59.
17634         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
17635         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
17636         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
17637
17638 2007-12-06  Jim Meyering  <meyering@redhat.com>
17639
17640         Avoid a configure-time syntax error in gl_FUNC_ACL.
17641         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
17642         function in each branch, before testing the cache variable.
17643
17644 2007-12-04  Eric Blake  <ebb9@byu.net>
17645
17646         Make scripts executable.
17647         * build-aux/config.guess: Add execute permissions.
17648         * build-aux/config.sub: Likewise.
17649         * build-aux/gendocs.sh: Likewise.
17650
17651         Fix frexp on mingw.
17652         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
17653         cross-compiling.
17654         * doc/functions/frexp.texi (frexp): Document the bug.
17655
17656         Make cygwin fseeko check more reliable.
17657         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
17658         version numbers, rather than unrelated feature check.
17659         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
17660         * doc/functions/ftello.texi (ftello): Likewise.
17661         Reported by Bruno Haible.
17662
17663         * m4/strerror.m4: Bump version number.
17664
17665 2007-12-03  Bruno Haible  <bruno@clisp.org>
17666
17667         * doc/functions/mprotect.texi: Mention the mingw problem.
17668
17669 2007-12-03  Eric Blake  <ebb9@byu.net>
17670
17671         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
17672         REPLACE_STRERROR is initialized before this macro.
17673
17674 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
17675
17676         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
17677         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
17678         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
17679         put -lsec in even for programs other than 'ls'.  This fixes a problem
17680         for gettext reported by Bruno Haible in
17681         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
17682         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
17683         Add support for Solaris 10.  This isn't efficient, but should get the
17684         job done for now.
17685
17686 2007-12-03  James Youngman  <jay@gnu.org>
17687
17688         * doc/regexprops-generic.texi: change "an close-group" to "a
17689         close-group" and "illegal" to "not allowed".
17690
17691 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17692
17693         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
17694         pr_byname.h. Needed for the rare case when the maintainer has done
17695         "make maintainer-clean" in the source directory and then attempts a
17696         build outside the source directory.
17697         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
17698         scripts_byname.h.
17699
17700 2007-12-02  Martin Lambers <marlam@marlam.de>
17701             Bruno Haible  <bruno@clisp.org>
17702
17703         * lib/getpagesize.h: Remove file.
17704         * lib/unistd.in.h: Include declaration of getpagesize here.
17705         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
17706         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
17707         HAVE_SYS_PARAM_H.
17708         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
17709         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
17710         * modules/getpagesize (Files): Remove lib/getpagesize.h.
17711         (Depends-on): Add unistd.
17712         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
17713         (Include): Use <unistd.h> instead of getpagesize.h.
17714         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
17715         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
17716         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
17717         gl_GETPAGESIZE invocation, already handled by module dependency.
17718         * lib/pagealign_alloc.c: Don't include getpagesize.h.
17719
17720 2007-12-02  Bruno Haible  <bruno@clisp.org>
17721
17722         * modules/strings-tests: New file.
17723         * tests/test-strings.c: New file.
17724
17725         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
17726         * lib/strings.in.h: New file.
17727         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
17728         * m4/strings_h.m4: New file.
17729         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
17730         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
17731         * modules/strings: New file.
17732         * modules/string (Makefile.am): Update.
17733         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
17734         Reported by Karl Berry.
17735
17736 2007-12-01  Eric Blake  <ebb9@byu.net>
17737
17738         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
17739         accomodate fix in cygwin 1.5.25.
17740
17741 2007-12-01  Jim Meyering  <meyering@redhat.com>
17742
17743         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
17744         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
17745         that would inhibit utf8-optimization of a regexp containing line-
17746         or buffer-anchors, e.g., `^', `$'.
17747
17748 2007-11-30  Bruno Haible  <bruno@clisp.org>
17749
17750         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
17751         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
17752         glthread_recursive_lock_init.
17753         * lib/lock.c (glthread_recursive_lock_init)
17754         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
17755         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
17756
17757 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
17758
17759         New function qset_acl, like set_acl but with syscall semantics.
17760         * lib/acl.h (qset_acl): New decl.
17761         * lib/acl.c (qset_acl): New function.
17762         (set_acl): Use new function.  Use more-consistent diagnostics.
17763
17764 2007-11-28  Jim Meyering  <meyering@redhat.com>
17765
17766         * modules/physmem (License): Change from GPL to LGPLv2+.
17767
17768 2007-11-26  Bruno Haible  <bruno@clisp.org>
17769
17770         * lib/vasnprintf.c (decode_long_double): Don't abort if the
17771         'long double' type has excess precision.
17772         Reported by Jim Meyering in
17773         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
17774
17775 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17776
17777         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
17778         Sync from <http://gnu.org/licenses>.
17779         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
17780         with license text from same location.
17781         * doc/maintain.texi, doc/standards.texi:  Sync from
17782         <http://savannah.gnu.org/projects/gnustandards>.
17783
17784 2007-11-22  Ondřej Vašík  <ovasik@redhat.com>
17785         and Jim Meyering  <meyering@redhat.com>
17786
17787         Adjust getdate' grammar to accept a slightly more regular language.
17788         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
17789         Before, the former was rejected.
17790         * lib/getdate.y (digits_to_date_time): New function, factored
17791         out of ...
17792         (number): ...here.  Just call digits_to_date_time.
17793         (hybrid): New non-terminal to handle an <unsigned number,
17794         signed relative offset> sequence consistently.
17795
17796 2007-11-18  Jim Meyering  <meyering@redhat.com>
17797
17798         Pull my changes from coreutils:
17799         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
17800         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
17801         use of $gnulib_tool_option_extras, so that it's separated from the
17802         preceding argument.
17803
17804         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
17805         * build-aux/bootstrap (cp_mark_as_generated): Create any required
17806         parent destination directories before copying a file into place.
17807
17808 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
17809
17810         bootstrap: work also with 4-argument variant of AC_INIT
17811         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
17812
17813 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
17814
17815         Port test-getaddrinfo to Solaris.
17816         Problem reported by Bruno Haible in
17817         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
17818         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
17819         explanation of setting 'hints'.
17820         Don't reject an implementation merely because it returns EAI_SERVICE.
17821         (EAI_SERVICE): Define to 0 if not defined.
17822
17823 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
17824
17825         The license of gnu-make and posix-shell is now "GPLed build tool".
17826         * modules/gnu-make (License): Likewise.
17827         * modules/posix-shell (License): Likewise.
17828
17829         New module posix-shell, for determining a POSIX shell
17830         or perhaps something that is close enough to a POSIX shell.
17831         * m4/posix-shell.m4: New file.
17832         * modules/posix-shell: New file.
17833
17834         * MODULES.html.sh: Mention new module.
17835
17836         New module gnu-make, for determining whether we're using GNU Make.
17837         * m4/gnu-make.m4: New file.
17838         * modules/gnu-make: New file.
17839         * MODULES.html.sh: Mention new module.
17840
17841 2007-11-14  Jim Meyering  <meyering@redhat.com>
17842
17843         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
17844         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
17845         use this macro to create a function _definition_.
17846         Remove useless "#undef ARGMATCH_DIE".
17847
17848 2007-11-14  Bruno Haible  <bruno@clisp.org>
17849
17850         * lib/config.charset: Update for OpenBSD 4.1.
17851         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
17852
17853 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
17854
17855         Document 64-bit #if problems in stdint.texi.
17856         * doc/headers/stdint.texi (stdint.h): Mention problems with
17857         64-bit-#if, and how to work around them.
17858
17859         Don't insist on 'long long int' support in the preprocessor.  It
17860         breaks too many things.  For example, PRIdMAX still uses a 'long
17861         long int' format with the latest Sun compiler, even though
17862         HAVE_LONG_LONG_INT isn't defined due to that compiler's
17863         preprocessor problem.  This causes the latest coreutils to dump
17864         core on Solaris 10 sparc with the Sun C compiler.
17865         Instead, fix the 2007-10-16 problem in a different way, by evaluating
17866         the troublesome expressions at configure-time, not at #if-time.
17867         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
17868         preprocessor.
17869         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
17870         compile-time C checks, done at 'configure'-time.
17871         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
17872         * modules/inttypes (Makefile): Substitute the new symbols that
17873         gl_INTTYPES_H now generates.
17874         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
17875
17876 2007-11-12  Bruno Haible  <bruno@clisp.org>
17877
17878         Tests for Unicode character classification functions.
17879
17880         * modules/unictype/bidicategory-byname-tests: New file.
17881         * modules/unictype/bidicategory-name-tests: New file.
17882         * modules/unictype/bidicategory-of-tests: New file.
17883         * modules/unictype/bidicategory-test-tests: New file.
17884         * modules/unictype/block-list-tests: New file.
17885         * modules/unictype/block-of-tests: New file.
17886         * modules/unictype/block-test-tests: New file.
17887         * modules/unictype/category-C-tests: New file.
17888         * modules/unictype/category-Cc-tests: New file.
17889         * modules/unictype/category-Cf-tests: New file.
17890         * modules/unictype/category-Cn-tests: New file.
17891         * modules/unictype/category-Co-tests: New file.
17892         * modules/unictype/category-Cs-tests: New file.
17893         * modules/unictype/category-L-tests: New file.
17894         * modules/unictype/category-Ll-tests: New file.
17895         * modules/unictype/category-Lm-tests: New file.
17896         * modules/unictype/category-Lo-tests: New file.
17897         * modules/unictype/category-Lt-tests: New file.
17898         * modules/unictype/category-Lu-tests: New file.
17899         * modules/unictype/category-M-tests: New file.
17900         * modules/unictype/category-Mc-tests: New file.
17901         * modules/unictype/category-Me-tests: New file.
17902         * modules/unictype/category-Mn-tests: New file.
17903         * modules/unictype/category-N-tests: New file.
17904         * modules/unictype/category-Nd-tests: New file.
17905         * modules/unictype/category-Nl-tests: New file.
17906         * modules/unictype/category-No-tests: New file.
17907         * modules/unictype/category-P-tests: New file.
17908         * modules/unictype/category-Pc-tests: New file.
17909         * modules/unictype/category-Pd-tests: New file.
17910         * modules/unictype/category-Pe-tests: New file.
17911         * modules/unictype/category-Pf-tests: New file.
17912         * modules/unictype/category-Pi-tests: New file.
17913         * modules/unictype/category-Po-tests: New file.
17914         * modules/unictype/category-Ps-tests: New file.
17915         * modules/unictype/category-S-tests: New file.
17916         * modules/unictype/category-Sc-tests: New file.
17917         * modules/unictype/category-Sk-tests: New file.
17918         * modules/unictype/category-Sm-tests: New file.
17919         * modules/unictype/category-So-tests: New file.
17920         * modules/unictype/category-Z-tests: New file.
17921         * modules/unictype/category-Zl-tests: New file.
17922         * modules/unictype/category-Zp-tests: New file.
17923         * modules/unictype/category-Zs-tests: New file.
17924         * modules/unictype/category-and-not-tests: New file.
17925         * modules/unictype/category-and-tests: New file.
17926         * modules/unictype/category-byname-tests: New file.
17927         * modules/unictype/category-name-tests: New file.
17928         * modules/unictype/category-none-tests: New file.
17929         * modules/unictype/category-of-tests: New file.
17930         * modules/unictype/category-or-tests: New file.
17931         * modules/unictype/category-test-withtable-tests: New file.
17932         * modules/unictype/combining-class-tests: New file.
17933         * modules/unictype/ctype-alnum-tests: New file.
17934         * modules/unictype/ctype-alpha-tests: New file.
17935         * modules/unictype/ctype-blank-tests: New file.
17936         * modules/unictype/ctype-cntrl-tests: New file.
17937         * modules/unictype/ctype-digit-tests: New file.
17938         * modules/unictype/ctype-graph-tests: New file.
17939         * modules/unictype/ctype-lower-tests: New file.
17940         * modules/unictype/ctype-print-tests: New file.
17941         * modules/unictype/ctype-punct-tests: New file.
17942         * modules/unictype/ctype-space-tests: New file.
17943         * modules/unictype/ctype-upper-tests: New file.
17944         * modules/unictype/ctype-xdigit-tests: New file.
17945         * modules/unictype/decimal-digit-tests: New file.
17946         * modules/unictype/digit-tests: New file.
17947         * modules/unictype/mirror-tests: New file.
17948         * modules/unictype/numeric-tests: New file.
17949         * modules/unictype/property-alphabetic-tests: New file.
17950         * modules/unictype/property-ascii-hex-digit-tests: New file.
17951         * modules/unictype/property-bidi-arabic-digit-tests: New file.
17952         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
17953         * modules/unictype/property-bidi-block-separator-tests: New file.
17954         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
17955         * modules/unictype/property-bidi-common-separator-tests: New file.
17956         * modules/unictype/property-bidi-control-tests: New file.
17957         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
17958         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
17959         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
17960         * modules/unictype/property-bidi-european-digit-tests: New file.
17961         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
17962         * modules/unictype/property-bidi-left-to-right-tests: New file.
17963         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
17964         * modules/unictype/property-bidi-other-neutral-tests: New file.
17965         * modules/unictype/property-bidi-pdf-tests: New file.
17966         * modules/unictype/property-bidi-segment-separator-tests: New file.
17967         * modules/unictype/property-bidi-whitespace-tests: New file.
17968         * modules/unictype/property-byname-tests: New file.
17969         * modules/unictype/property-combining-tests: New file.
17970         * modules/unictype/property-composite-tests: New file.
17971         * modules/unictype/property-currency-symbol-tests: New file.
17972         * modules/unictype/property-dash-tests: New file.
17973         * modules/unictype/property-decimal-digit-tests: New file.
17974         * modules/unictype/property-default-ignorable-code-point-tests: New file.
17975         * modules/unictype/property-deprecated-tests: New file.
17976         * modules/unictype/property-diacritic-tests: New file.
17977         * modules/unictype/property-extender-tests: New file.
17978         * modules/unictype/property-format-control-tests: New file.
17979         * modules/unictype/property-grapheme-base-tests: New file.
17980         * modules/unictype/property-grapheme-extend-tests: New file.
17981         * modules/unictype/property-grapheme-link-tests: New file.
17982         * modules/unictype/property-hex-digit-tests: New file.
17983         * modules/unictype/property-hyphen-tests: New file.
17984         * modules/unictype/property-id-continue-tests: New file.
17985         * modules/unictype/property-id-start-tests: New file.
17986         * modules/unictype/property-ideographic-tests: New file.
17987         * modules/unictype/property-ids-binary-operator-tests: New file.
17988         * modules/unictype/property-ids-trinary-operator-tests: New file.
17989         * modules/unictype/property-ignorable-control-tests: New file.
17990         * modules/unictype/property-iso-control-tests: New file.
17991         * modules/unictype/property-join-control-tests: New file.
17992         * modules/unictype/property-left-of-pair-tests: New file.
17993         * modules/unictype/property-line-separator-tests: New file.
17994         * modules/unictype/property-logical-order-exception-tests: New file.
17995         * modules/unictype/property-lowercase-tests: New file.
17996         * modules/unictype/property-math-tests: New file.
17997         * modules/unictype/property-non-break-tests: New file.
17998         * modules/unictype/property-not-a-character-tests: New file.
17999         * modules/unictype/property-numeric-tests: New file.
18000         * modules/unictype/property-other-alphabetic-tests: New file.
18001         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
18002         * modules/unictype/property-other-grapheme-extend-tests: New file.
18003         * modules/unictype/property-other-id-continue-tests: New file.
18004         * modules/unictype/property-other-id-start-tests: New file.
18005         * modules/unictype/property-other-lowercase-tests: New file.
18006         * modules/unictype/property-other-math-tests: New file.
18007         * modules/unictype/property-other-uppercase-tests: New file.
18008         * modules/unictype/property-paired-punctuation-tests: New file.
18009         * modules/unictype/property-paragraph-separator-tests: New file.
18010         * modules/unictype/property-pattern-syntax-tests: New file.
18011         * modules/unictype/property-pattern-white-space-tests: New file.
18012         * modules/unictype/property-private-use-tests: New file.
18013         * modules/unictype/property-punctuation-tests: New file.
18014         * modules/unictype/property-quotation-mark-tests: New file.
18015         * modules/unictype/property-radical-tests: New file.
18016         * modules/unictype/property-sentence-terminal-tests: New file.
18017         * modules/unictype/property-soft-dotted-tests: New file.
18018         * modules/unictype/property-space-tests: New file.
18019         * modules/unictype/property-terminal-punctuation-tests: New file.
18020         * modules/unictype/property-test-tests: New file.
18021         * modules/unictype/property-titlecase-tests: New file.
18022         * modules/unictype/property-unassigned-code-value-tests: New file.
18023         * modules/unictype/property-unified-ideograph-tests: New file.
18024         * modules/unictype/property-uppercase-tests: New file.
18025         * modules/unictype/property-variation-selector-tests: New file.
18026         * modules/unictype/property-white-space-tests: New file.
18027         * modules/unictype/property-xid-continue-tests: New file.
18028         * modules/unictype/property-xid-start-tests: New file.
18029         * modules/unictype/property-zero-width-tests: New file.
18030         * modules/unictype/scripts-tests: New file.
18031         * modules/unictype/syntax-c-ident-tests: New file.
18032         * modules/unictype/syntax-c-whitespace-tests: New file.
18033         * modules/unictype/syntax-java-ident-tests: New file.
18034         * modules/unictype/syntax-java-whitespace-tests: New file.
18035         * tests/unictype/test-bidi_byname.c: New file.
18036         * tests/unictype/test-bidi_name.c: New file.
18037         * tests/unictype/test-bidi_of.c: New file.
18038         * tests/unictype/test-bidi_test.c: New file.
18039         * tests/unictype/test-block_list.c: New file.
18040         * tests/unictype/test-block_of.c: New file.
18041         * tests/unictype/test-block_test.c: New file.
18042         * tests/unictype/test-categ_and.c: New file.
18043         * tests/unictype/test-categ_and_not.c: New file.
18044         * tests/unictype/test-categ_byname.c: New file.
18045         * tests/unictype/test-categ_name.c: New file.
18046         * tests/unictype/test-categ_none.c: New file.
18047         * tests/unictype/test-categ_of.c: New file.
18048         * tests/unictype/test-categ_or.c: New file.
18049         * tests/unictype/test-categ_test_withtable.c: New file.
18050         * tests/unictype/test-combining.c: New file.
18051         * tests/unictype/test-decdigit.c: New file.
18052         * tests/unictype/test-digit.c: New file.
18053         * tests/unictype/test-mirror.c: New file.
18054         * tests/unictype/test-numeric.c: New file.
18055         * tests/unictype/test-pr_byname.c: New file.
18056         * tests/unictype/test-pr_test.c: New file.
18057         * tests/unictype/test-predicate-part1.h: New file.
18058         * tests/unictype/test-predicate-part2.h: New file.
18059         * tests/unictype/test-scripts.c: New file.
18060         * tests/unictype/test-sy_c_ident.c: New file.
18061         * tests/unictype/test-sy_java_ident.c: New file.
18062
18063         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
18064         for Unicode 5.0.0.
18065         * tests/unictype/test-categ_Cc.c: Likewise.
18066         * tests/unictype/test-categ_Cf.c: Likewise.
18067         * tests/unictype/test-categ_Cn.c: Likewise.
18068         * tests/unictype/test-categ_Co.c: Likewise.
18069         * tests/unictype/test-categ_Cs.c: Likewise.
18070         * tests/unictype/test-categ_L.c: Likewise.
18071         * tests/unictype/test-categ_Ll.c: Likewise.
18072         * tests/unictype/test-categ_Lm.c: Likewise.
18073         * tests/unictype/test-categ_Lo.c: Likewise.
18074         * tests/unictype/test-categ_Lt.c: Likewise.
18075         * tests/unictype/test-categ_Lu.c: Likewise.
18076         * tests/unictype/test-categ_M.c: Likewise.
18077         * tests/unictype/test-categ_Mc.c: Likewise.
18078         * tests/unictype/test-categ_Me.c: Likewise.
18079         * tests/unictype/test-categ_Mn.c: Likewise.
18080         * tests/unictype/test-categ_N.c: Likewise.
18081         * tests/unictype/test-categ_Nd.c: Likewise.
18082         * tests/unictype/test-categ_Nl.c: Likewise.
18083         * tests/unictype/test-categ_No.c: Likewise.
18084         * tests/unictype/test-categ_P.c: Likewise.
18085         * tests/unictype/test-categ_Pc.c: Likewise.
18086         * tests/unictype/test-categ_Pd.c: Likewise.
18087         * tests/unictype/test-categ_Pe.c: Likewise.
18088         * tests/unictype/test-categ_Pf.c: Likewise.
18089         * tests/unictype/test-categ_Pi.c: Likewise.
18090         * tests/unictype/test-categ_Po.c: Likewise.
18091         * tests/unictype/test-categ_Ps.c: Likewise.
18092         * tests/unictype/test-categ_S.c: Likewise.
18093         * tests/unictype/test-categ_Sc.c: Likewise.
18094         * tests/unictype/test-categ_Sk.c: Likewise.
18095         * tests/unictype/test-categ_Sm.c: Likewise.
18096         * tests/unictype/test-categ_So.c: Likewise.
18097         * tests/unictype/test-categ_Z.c: Likewise.
18098         * tests/unictype/test-categ_Zl.c: Likewise.
18099         * tests/unictype/test-categ_Zp.c: Likewise.
18100         * tests/unictype/test-categ_Zs.c: Likewise.
18101         * tests/unictype/test-ctype_alnum.c: Likewise.
18102         * tests/unictype/test-ctype_alpha.c: Likewise.
18103         * tests/unictype/test-ctype_blank.c: Likewise.
18104         * tests/unictype/test-ctype_cntrl.c: Likewise.
18105         * tests/unictype/test-ctype_digit.c: Likewise.
18106         * tests/unictype/test-ctype_graph.c: Likewise.
18107         * tests/unictype/test-ctype_lower.c: Likewise.
18108         * tests/unictype/test-ctype_print.c: Likewise.
18109         * tests/unictype/test-ctype_punct.c: Likewise.
18110         * tests/unictype/test-ctype_space.c: Likewise.
18111         * tests/unictype/test-ctype_upper.c: Likewise.
18112         * tests/unictype/test-ctype_xdigit.c: Likewise.
18113         * tests/unictype/test-decdigit.h: Likewise.
18114         * tests/unictype/test-digit.h: Likewise.
18115         * tests/unictype/test-numeric.h: Likewise.
18116         * tests/unictype/test-pr_alphabetic.c: Likewise.
18117         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
18118         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
18119         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
18120         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
18121         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
18122         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
18123         * tests/unictype/test-pr_bidi_control.c: Likewise.
18124         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
18125         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
18126         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
18127         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
18128         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
18129         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
18130         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
18131         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
18132         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
18133         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
18134         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
18135         * tests/unictype/test-pr_combining.c: Likewise.
18136         * tests/unictype/test-pr_composite.c: Likewise.
18137         * tests/unictype/test-pr_currency_symbol.c: Likewise.
18138         * tests/unictype/test-pr_dash.c: Likewise.
18139         * tests/unictype/test-pr_decimal_digit.c: Likewise.
18140         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
18141         * tests/unictype/test-pr_deprecated.c: Likewise.
18142         * tests/unictype/test-pr_diacritic.c: Likewise.
18143         * tests/unictype/test-pr_extender.c: Likewise.
18144         * tests/unictype/test-pr_format_control.c: Likewise.
18145         * tests/unictype/test-pr_grapheme_base.c: Likewise.
18146         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
18147         * tests/unictype/test-pr_grapheme_link.c: Likewise.
18148         * tests/unictype/test-pr_hex_digit.c: Likewise.
18149         * tests/unictype/test-pr_hyphen.c: Likewise.
18150         * tests/unictype/test-pr_id_continue.c: Likewise.
18151         * tests/unictype/test-pr_id_start.c: Likewise.
18152         * tests/unictype/test-pr_ideographic.c: Likewise.
18153         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
18154         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
18155         * tests/unictype/test-pr_ignorable_control.c: Likewise.
18156         * tests/unictype/test-pr_iso_control.c: Likewise.
18157         * tests/unictype/test-pr_join_control.c: Likewise.
18158         * tests/unictype/test-pr_left_of_pair.c: Likewise.
18159         * tests/unictype/test-pr_line_separator.c: Likewise.
18160         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
18161         * tests/unictype/test-pr_lowercase.c: Likewise.
18162         * tests/unictype/test-pr_math.c: Likewise.
18163         * tests/unictype/test-pr_non_break.c: Likewise.
18164         * tests/unictype/test-pr_not_a_character.c: Likewise.
18165         * tests/unictype/test-pr_numeric.c: Likewise.
18166         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
18167         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
18168         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
18169         * tests/unictype/test-pr_other_id_continue.c: Likewise.
18170         * tests/unictype/test-pr_other_id_start.c: Likewise.
18171         * tests/unictype/test-pr_other_lowercase.c: Likewise.
18172         * tests/unictype/test-pr_other_math.c: Likewise.
18173         * tests/unictype/test-pr_other_uppercase.c: Likewise.
18174         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
18175         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
18176         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
18177         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
18178         * tests/unictype/test-pr_private_use.c: Likewise.
18179         * tests/unictype/test-pr_punctuation.c: Likewise.
18180         * tests/unictype/test-pr_quotation_mark.c: Likewise.
18181         * tests/unictype/test-pr_radical.c: Likewise.
18182         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
18183         * tests/unictype/test-pr_soft_dotted.c: Likewise.
18184         * tests/unictype/test-pr_space.c: Likewise.
18185         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
18186         * tests/unictype/test-pr_titlecase.c: Likewise.
18187         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
18188         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
18189         * tests/unictype/test-pr_uppercase.c: Likewise.
18190         * tests/unictype/test-pr_variation_selector.c: Likewise.
18191         * tests/unictype/test-pr_white_space.c: Likewise.
18192         * tests/unictype/test-pr_xid_continue.c: Likewise.
18193         * tests/unictype/test-pr_xid_start.c: Likewise.
18194         * tests/unictype/test-pr_zero_width.c: Likewise.
18195         * tests/unictype/test-sy_c_whitespace.c: Likewise.
18196         * tests/unictype/test-sy_java_whitespace.c: Likewise.
18197
18198 2007-11-12  Bruno Haible  <bruno@clisp.org>
18199
18200         Unicode character classification functions.
18201         * lib/unictype.h: New file.
18202         * modules/unictype/base: New file.
18203         * modules/unictype/category-L: New file.
18204         * modules/unictype/category-Lu: New file.
18205         * modules/unictype/category-Ll: New file.
18206         * modules/unictype/category-Lt: New file.
18207         * modules/unictype/category-Lm: New file.
18208         * modules/unictype/category-Lo: New file.
18209         * modules/unictype/category-M: New file.
18210         * modules/unictype/category-Mn: New file.
18211         * modules/unictype/category-Mc: New file.
18212         * modules/unictype/category-Me: New file.
18213         * modules/unictype/category-N: New file.
18214         * modules/unictype/category-Nd: New file.
18215         * modules/unictype/category-Nl: New file.
18216         * modules/unictype/category-No: New file.
18217         * modules/unictype/category-P: New file.
18218         * modules/unictype/category-Pc: New file.
18219         * modules/unictype/category-Pd: New file.
18220         * modules/unictype/category-Ps: New file.
18221         * modules/unictype/category-Pe: New file.
18222         * modules/unictype/category-Pi: New file.
18223         * modules/unictype/category-Pf: New file.
18224         * modules/unictype/category-Po: New file.
18225         * modules/unictype/category-S: New file.
18226         * modules/unictype/category-Sm: New file.
18227         * modules/unictype/category-Sc: New file.
18228         * modules/unictype/category-Sk: New file.
18229         * modules/unictype/category-So: New file.
18230         * modules/unictype/category-Z: New file.
18231         * modules/unictype/category-Zs: New file.
18232         * modules/unictype/category-Zl: New file.
18233         * modules/unictype/category-Zp: New file.
18234         * modules/unictype/category-C: New file.
18235         * modules/unictype/category-Cc: New file.
18236         * modules/unictype/category-Cf: New file.
18237         * modules/unictype/category-Cs: New file.
18238         * modules/unictype/category-Co: New file.
18239         * modules/unictype/category-Cn: New file.
18240         * modules/unictype/category-or: New file.
18241         * modules/unictype/category-of: New file.
18242         * modules/unictype/category-test: New file.
18243         * modules/unictype/category-test-withtable: New file.
18244         * modules/unictype/category-byname: New file.
18245         * modules/unictype/category-none: New file.
18246         * modules/unictype/category-and: New file.
18247         * modules/unictype/category-and-not: New file.
18248         * modules/unictype/category-name: New file.
18249         * modules/unictype/combining-class: New file.
18250         * modules/unictype/category-all: New file.
18251         * modules/unictype/bidicategory-all: New file.
18252         * modules/unictype/bidicategory-byname: New file.
18253         * modules/unictype/bidicategory-name: New file.
18254         * modules/unictype/bidicategory-of: New file.
18255         * modules/unictype/bidicategory-test: New file.
18256         * modules/unictype/decimal-digit: New file.
18257         * modules/unictype/digit: New file.
18258         * modules/unictype/numeric: New file.
18259         * modules/unictype/mirror: New file.
18260         * modules/unictype/property-white-space: New file.
18261         * modules/unictype/property-alphabetic: New file.
18262         * modules/unictype/property-other-alphabetic: New file.
18263         * modules/unictype/property-not-a-character: New file.
18264         * modules/unictype/property-default-ignorable-code-point: New file.
18265         * modules/unictype/property-other-default-ignorable-code-point: New
18266         file.
18267         * modules/unictype/property-deprecated: New file.
18268         * modules/unictype/property-logical-order-exception: New file.
18269         * modules/unictype/property-variation-selector: New file.
18270         * modules/unictype/property-private-use: New file.
18271         * modules/unictype/property-unassigned-code-value: New file.
18272         * modules/unictype/property-uppercase: New file.
18273         * modules/unictype/property-other-uppercase: New file.
18274         * modules/unictype/property-lowercase: New file.
18275         * modules/unictype/property-other-lowercase: New file.
18276         * modules/unictype/property-titlecase: New file.
18277         * modules/unictype/property-soft-dotted: New file.
18278         * modules/unictype/property-id-start: New file.
18279         * modules/unictype/property-other-id-start: New file.
18280         * modules/unictype/property-id-continue: New file.
18281         * modules/unictype/property-other-id-continue: New file.
18282         * modules/unictype/property-xid-start: New file.
18283         * modules/unictype/property-xid-continue: New file.
18284         * modules/unictype/property-pattern-white-space: New file.
18285         * modules/unictype/property-pattern-syntax: New file.
18286         * modules/unictype/property-join-control: New file.
18287         * modules/unictype/property-grapheme-base: New file.
18288         * modules/unictype/property-grapheme-extend: New file.
18289         * modules/unictype/property-other-grapheme-extend: New file.
18290         * modules/unictype/property-grapheme-link: New file.
18291         * modules/unictype/property-bidi-control: New file.
18292         * modules/unictype/property-bidi-left-to-right: New file.
18293         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
18294         * modules/unictype/property-bidi-arabic-right-to-left: New file.
18295         * modules/unictype/property-bidi-european-digit: New file.
18296         * modules/unictype/property-bidi-eur-num-separator: New file.
18297         * modules/unictype/property-bidi-eur-num-terminator: New file.
18298         * modules/unictype/property-bidi-arabic-digit: New file.
18299         * modules/unictype/property-bidi-common-separator: New file.
18300         * modules/unictype/property-bidi-block-separator: New file.
18301         * modules/unictype/property-bidi-segment-separator: New file.
18302         * modules/unictype/property-bidi-whitespace: New file.
18303         * modules/unictype/property-bidi-non-spacing-mark: New file.
18304         * modules/unictype/property-bidi-boundary-neutral: New file.
18305         * modules/unictype/property-bidi-pdf: New file.
18306         * modules/unictype/property-bidi-embedding-or-override: New file.
18307         * modules/unictype/property-bidi-other-neutral: New file.
18308         * modules/unictype/property-hex-digit: New file.
18309         * modules/unictype/property-ascii-hex-digit: New file.
18310         * modules/unictype/property-ideographic: New file.
18311         * modules/unictype/property-unified-ideograph: New file.
18312         * modules/unictype/property-radical: New file.
18313         * modules/unictype/property-ids-binary-operator: New file.
18314         * modules/unictype/property-ids-trinary-operator: New file.
18315         * modules/unictype/property-zero-width: New file.
18316         * modules/unictype/property-space: New file.
18317         * modules/unictype/property-non-break: New file.
18318         * modules/unictype/property-iso-control: New file.
18319         * modules/unictype/property-format-control: New file.
18320         * modules/unictype/property-dash: New file.
18321         * modules/unictype/property-hyphen: New file.
18322         * modules/unictype/property-punctuation: New file.
18323         * modules/unictype/property-line-separator: New file.
18324         * modules/unictype/property-paragraph-separator: New file.
18325         * modules/unictype/property-quotation-mark: New file.
18326         * modules/unictype/property-sentence-terminal: New file.
18327         * modules/unictype/property-terminal-punctuation: New file.
18328         * modules/unictype/property-currency-symbol: New file.
18329         * modules/unictype/property-math: New file.
18330         * modules/unictype/property-other-math: New file.
18331         * modules/unictype/property-paired-punctuation: New file.
18332         * modules/unictype/property-left-of-pair: New file.
18333         * modules/unictype/property-combining: New file.
18334         * modules/unictype/property-composite: New file.
18335         * modules/unictype/property-decimal-digit: New file.
18336         * modules/unictype/property-numeric: New file.
18337         * modules/unictype/property-diacritic: New file.
18338         * modules/unictype/property-extender: New file.
18339         * modules/unictype/property-ignorable-control: New file.
18340         * modules/unictype/property-test: New file.
18341         * modules/unictype/property-byname: New file.
18342         * modules/unictype/property-all: New file.
18343         * modules/unictype/scripts: New file.
18344         * modules/unictype/scripts-all: New file.
18345         * modules/unictype/block-of: New file.
18346         * modules/unictype/block-test: New file.
18347         * modules/unictype/block-list: New file.
18348         * modules/unictype/block-all: New file.
18349         * modules/unictype/syntax-c-whitespace: New file.
18350         * modules/unictype/syntax-java-whitespace: New file.
18351         * modules/unictype/syntax-c-ident: New file.
18352         * modules/unictype/syntax-java-ident: New file.
18353         * modules/unictype/ctype-alnum: New file.
18354         * modules/unictype/ctype-alpha: New file.
18355         * modules/unictype/ctype-cntrl: New file.
18356         * modules/unictype/ctype-digit: New file.
18357         * modules/unictype/ctype-graph: New file.
18358         * modules/unictype/ctype-lower: New file.
18359         * modules/unictype/ctype-print: New file.
18360         * modules/unictype/ctype-punct: New file.
18361         * modules/unictype/ctype-space: New file.
18362         * modules/unictype/ctype-upper: New file.
18363         * modules/unictype/ctype-xdigit: New file.
18364         * modules/unictype/ctype-blank: New file.
18365         * lib/unictype/bidi_byname.c: New file.
18366         * lib/unictype/bidi_name.c: New file.
18367         * lib/unictype/bidi_of.c: New file.
18368         * lib/unictype/bidi_test.c: New file.
18369         * lib/unictype/bitmap.h: New file.
18370         * lib/unictype/block_test.c: New file.
18371         * lib/unictype/blocks.c: New file.
18372         * lib/unictype/categ_C.c: New file.
18373         * lib/unictype/categ_Cc.c: New file.
18374         * lib/unictype/categ_Cf.c: New file.
18375         * lib/unictype/categ_Cn.c: New file.
18376         * lib/unictype/categ_Co.c: New file.
18377         * lib/unictype/categ_Cs.c: New file.
18378         * lib/unictype/categ_L.c: New file.
18379         * lib/unictype/categ_Ll.c: New file.
18380         * lib/unictype/categ_Lm.c: New file.
18381         * lib/unictype/categ_Lo.c: New file.
18382         * lib/unictype/categ_Lt.c: New file.
18383         * lib/unictype/categ_Lu.c: New file.
18384         * lib/unictype/categ_M.c: New file.
18385         * lib/unictype/categ_Mc.c: New file.
18386         * lib/unictype/categ_Me.c: New file.
18387         * lib/unictype/categ_Mn.c: New file.
18388         * lib/unictype/categ_N.c: New file.
18389         * lib/unictype/categ_Nd.c: New file.
18390         * lib/unictype/categ_Nl.c: New file.
18391         * lib/unictype/categ_No.c: New file.
18392         * lib/unictype/categ_P.c: New file.
18393         * lib/unictype/categ_Pc.c: New file.
18394         * lib/unictype/categ_Pd.c: New file.
18395         * lib/unictype/categ_Pe.c: New file.
18396         * lib/unictype/categ_Pf.c: New file.
18397         * lib/unictype/categ_Pi.c: New file.
18398         * lib/unictype/categ_Po.c: New file.
18399         * lib/unictype/categ_Ps.c: New file.
18400         * lib/unictype/categ_S.c: New file.
18401         * lib/unictype/categ_Sc.c: New file.
18402         * lib/unictype/categ_Sk.c: New file.
18403         * lib/unictype/categ_Sm.c: New file.
18404         * lib/unictype/categ_So.c: New file.
18405         * lib/unictype/categ_Z.c: New file.
18406         * lib/unictype/categ_Zl.c: New file.
18407         * lib/unictype/categ_Zp.c: New file.
18408         * lib/unictype/categ_Zs.c: New file.
18409         * lib/unictype/categ_and.c: New file.
18410         * lib/unictype/categ_and_not.c: New file.
18411         * lib/unictype/categ_byname.c: New file.
18412         * lib/unictype/categ_name.c: New file.
18413         * lib/unictype/categ_none.c: New file.
18414         * lib/unictype/categ_of.c: New file.
18415         * lib/unictype/categ_or.c: New file.
18416         * lib/unictype/categ_test.c: New file.
18417         * lib/unictype/combining.c: New file.
18418         * lib/unictype/ctype_alnum.c: New file.
18419         * lib/unictype/ctype_alpha.c: New file.
18420         * lib/unictype/ctype_blank.c: New file.
18421         * lib/unictype/ctype_cntrl.c: New file.
18422         * lib/unictype/ctype_digit.c: New file.
18423         * lib/unictype/ctype_graph.c: New file.
18424         * lib/unictype/ctype_lower.c: New file.
18425         * lib/unictype/ctype_print.c: New file.
18426         * lib/unictype/ctype_punct.c: New file.
18427         * lib/unictype/ctype_space.c: New file.
18428         * lib/unictype/ctype_upper.c: New file.
18429         * lib/unictype/ctype_xdigit.c: New file.
18430         * lib/unictype/decdigit.c: New file.
18431         * lib/unictype/digit.c: New file.
18432         * lib/unictype/identsyntaxmap.h: New file.
18433         * lib/unictype/mirror.c: New file.
18434         * lib/unictype/numeric.c: New file.
18435         * lib/unictype/pr_alphabetic.c: New file.
18436         * lib/unictype/pr_ascii_hex_digit.c: New file.
18437         * lib/unictype/pr_bidi_arabic_digit.c: New file.
18438         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
18439         * lib/unictype/pr_bidi_block_separator.c: New file.
18440         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
18441         * lib/unictype/pr_bidi_common_separator.c: New file.
18442         * lib/unictype/pr_bidi_control.c: New file.
18443         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
18444         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
18445         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
18446         * lib/unictype/pr_bidi_european_digit.c: New file.
18447         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
18448         * lib/unictype/pr_bidi_left_to_right.c: New file.
18449         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
18450         * lib/unictype/pr_bidi_other_neutral.c: New file.
18451         * lib/unictype/pr_bidi_pdf.c: New file.
18452         * lib/unictype/pr_bidi_segment_separator.c: New file.
18453         * lib/unictype/pr_bidi_whitespace.c: New file.
18454         * lib/unictype/pr_byname.c: New file.
18455         * lib/unictype/pr_byname.gperf: New file.
18456         * lib/unictype/pr_combining.c: New file.
18457         * lib/unictype/pr_composite.c: New file.
18458         * lib/unictype/pr_currency_symbol.c: New file.
18459         * lib/unictype/pr_dash.c: New file.
18460         * lib/unictype/pr_decimal_digit.c: New file.
18461         * lib/unictype/pr_default_ignorable_code_point.c: New file.
18462         * lib/unictype/pr_deprecated.c: New file.
18463         * lib/unictype/pr_diacritic.c: New file.
18464         * lib/unictype/pr_extender.c: New file.
18465         * lib/unictype/pr_format_control.c: New file.
18466         * lib/unictype/pr_grapheme_base.c: New file.
18467         * lib/unictype/pr_grapheme_extend.c: New file.
18468         * lib/unictype/pr_grapheme_link.c: New file.
18469         * lib/unictype/pr_hex_digit.c: New file.
18470         * lib/unictype/pr_hyphen.c: New file.
18471         * lib/unictype/pr_id_continue.c: New file.
18472         * lib/unictype/pr_id_start.c: New file.
18473         * lib/unictype/pr_ideographic.c: New file.
18474         * lib/unictype/pr_ids_binary_operator.c: New file.
18475         * lib/unictype/pr_ids_trinary_operator.c: New file.
18476         * lib/unictype/pr_ignorable_control.c: New file.
18477         * lib/unictype/pr_iso_control.c: New file.
18478         * lib/unictype/pr_join_control.c: New file.
18479         * lib/unictype/pr_left_of_pair.c: New file.
18480         * lib/unictype/pr_line_separator.c: New file.
18481         * lib/unictype/pr_logical_order_exception.c: New file.
18482         * lib/unictype/pr_lowercase.c: New file.
18483         * lib/unictype/pr_math.c: New file.
18484         * lib/unictype/pr_non_break.c: New file.
18485         * lib/unictype/pr_not_a_character.c: New file.
18486         * lib/unictype/pr_numeric.c: New file.
18487         * lib/unictype/pr_other_alphabetic.c: New file.
18488         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
18489         * lib/unictype/pr_other_grapheme_extend.c: New file.
18490         * lib/unictype/pr_other_id_continue.c: New file.
18491         * lib/unictype/pr_other_id_start.c: New file.
18492         * lib/unictype/pr_other_lowercase.c: New file.
18493         * lib/unictype/pr_other_math.c: New file.
18494         * lib/unictype/pr_other_uppercase.c: New file.
18495         * lib/unictype/pr_paired_punctuation.c: New file.
18496         * lib/unictype/pr_paragraph_separator.c: New file.
18497         * lib/unictype/pr_pattern_syntax.c: New file.
18498         * lib/unictype/pr_pattern_white_space.c: New file.
18499         * lib/unictype/pr_private_use.c: New file.
18500         * lib/unictype/pr_punctuation.c: New file.
18501         * lib/unictype/pr_quotation_mark.c: New file.
18502         * lib/unictype/pr_radical.c: New file.
18503         * lib/unictype/pr_sentence_terminal.c: New file.
18504         * lib/unictype/pr_soft_dotted.c: New file.
18505         * lib/unictype/pr_space.c: New file.
18506         * lib/unictype/pr_terminal_punctuation.c: New file.
18507         * lib/unictype/pr_test.c: New file.
18508         * lib/unictype/pr_titlecase.c: New file.
18509         * lib/unictype/pr_unassigned_code_value.c: New file.
18510         * lib/unictype/pr_unified_ideograph.c: New file.
18511         * lib/unictype/pr_uppercase.c: New file.
18512         * lib/unictype/pr_variation_selector.c: New file.
18513         * lib/unictype/pr_white_space.c: New file.
18514         * lib/unictype/pr_xid_continue.c: New file.
18515         * lib/unictype/pr_xid_start.c: New file.
18516         * lib/unictype/pr_zero_width.c: New file.
18517         * lib/unictype/scripts.c: New file.
18518         * lib/unictype/sy_c_ident.c: New file.
18519         * lib/unictype/sy_c_whitespace.c: New file.
18520         * lib/unictype/sy_java_ident.c: New file.
18521         * lib/unictype/sy_java_whitespace.c: New file.
18522
18523         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
18524         Unicode 5.0.0.
18525         * lib/unictype/blocks.h: Likewise.
18526         * lib/unictype/categ_C.h: Likewise.
18527         * lib/unictype/categ_Cc.h: Likewise.
18528         * lib/unictype/categ_Cf.h: Likewise.
18529         * lib/unictype/categ_Cn.h: Likewise.
18530         * lib/unictype/categ_Co.h: Likewise.
18531         * lib/unictype/categ_Cs.h: Likewise.
18532         * lib/unictype/categ_L.h: Likewise.
18533         * lib/unictype/categ_Ll.h: Likewise.
18534         * lib/unictype/categ_Lm.h: Likewise.
18535         * lib/unictype/categ_Lo.h: Likewise.
18536         * lib/unictype/categ_Lt.h: Likewise.
18537         * lib/unictype/categ_Lu.h: Likewise.
18538         * lib/unictype/categ_M.h: Likewise.
18539         * lib/unictype/categ_Mc.h: Likewise.
18540         * lib/unictype/categ_Me.h: Likewise.
18541         * lib/unictype/categ_Mn.h: Likewise.
18542         * lib/unictype/categ_N.h: Likewise.
18543         * lib/unictype/categ_Nd.h: Likewise.
18544         * lib/unictype/categ_Nl.h: Likewise.
18545         * lib/unictype/categ_No.h: Likewise.
18546         * lib/unictype/categ_P.h: Likewise.
18547         * lib/unictype/categ_Pc.h: Likewise.
18548         * lib/unictype/categ_Pd.h: Likewise.
18549         * lib/unictype/categ_Pe.h: Likewise.
18550         * lib/unictype/categ_Pf.h: Likewise.
18551         * lib/unictype/categ_Pi.h: Likewise.
18552         * lib/unictype/categ_Po.h: Likewise.
18553         * lib/unictype/categ_Ps.h: Likewise.
18554         * lib/unictype/categ_S.h: Likewise.
18555         * lib/unictype/categ_Sc.h: Likewise.
18556         * lib/unictype/categ_Sk.h: Likewise.
18557         * lib/unictype/categ_Sm.h: Likewise.
18558         * lib/unictype/categ_So.h: Likewise.
18559         * lib/unictype/categ_Z.h: Likewise.
18560         * lib/unictype/categ_Zl.h: Likewise.
18561         * lib/unictype/categ_Zp.h: Likewise.
18562         * lib/unictype/categ_Zs.h: Likewise.
18563         * lib/unictype/categ_of.h: Likewise.
18564         * lib/unictype/combining.h: Likewise.
18565         * lib/unictype/ctype_alnum.h: Likewise.
18566         * lib/unictype/ctype_alpha.h: Likewise.
18567         * lib/unictype/ctype_blank.h: Likewise.
18568         * lib/unictype/ctype_cntrl.h: Likewise.
18569         * lib/unictype/ctype_digit.h: Likewise.
18570         * lib/unictype/ctype_graph.h: Likewise.
18571         * lib/unictype/ctype_lower.h: Likewise.
18572         * lib/unictype/ctype_print.h: Likewise.
18573         * lib/unictype/ctype_punct.h: Likewise.
18574         * lib/unictype/ctype_space.h: Likewise.
18575         * lib/unictype/ctype_upper.h: Likewise.
18576         * lib/unictype/ctype_xdigit.h: Likewise.
18577         * lib/unictype/decdigit.h: Likewise.
18578         * lib/unictype/digit.h: Likewise.
18579         * lib/unictype/mirror.h: Likewise.
18580         * lib/unictype/numeric.h: Likewise.
18581         * lib/unictype/pr_alphabetic.h: Likewise.
18582         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
18583         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
18584         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
18585         * lib/unictype/pr_bidi_block_separator.h: Likewise.
18586         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
18587         * lib/unictype/pr_bidi_common_separator.h: Likewise.
18588         * lib/unictype/pr_bidi_control.h: Likewise.
18589         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
18590         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
18591         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
18592         * lib/unictype/pr_bidi_european_digit.h: Likewise.
18593         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
18594         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
18595         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
18596         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
18597         * lib/unictype/pr_bidi_pdf.h: Likewise.
18598         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
18599         * lib/unictype/pr_bidi_whitespace.h: Likewise.
18600         * lib/unictype/pr_combining.h: Likewise.
18601         * lib/unictype/pr_composite.h: Likewise.
18602         * lib/unictype/pr_currency_symbol.h: Likewise.
18603         * lib/unictype/pr_dash.h: Likewise.
18604         * lib/unictype/pr_decimal_digit.h: Likewise.
18605         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
18606         * lib/unictype/pr_deprecated.h: Likewise.
18607         * lib/unictype/pr_diacritic.h: Likewise.
18608         * lib/unictype/pr_extender.h: Likewise.
18609         * lib/unictype/pr_format_control.h: Likewise.
18610         * lib/unictype/pr_grapheme_base.h: Likewise.
18611         * lib/unictype/pr_grapheme_extend.h: Likewise.
18612         * lib/unictype/pr_grapheme_link.h: Likewise.
18613         * lib/unictype/pr_hex_digit.h: Likewise.
18614         * lib/unictype/pr_hyphen.h: Likewise.
18615         * lib/unictype/pr_id_continue.h: Likewise.
18616         * lib/unictype/pr_id_start.h: Likewise.
18617         * lib/unictype/pr_ideographic.h: Likewise.
18618         * lib/unictype/pr_ids_binary_operator.h: Likewise.
18619         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
18620         * lib/unictype/pr_ignorable_control.h: Likewise.
18621         * lib/unictype/pr_iso_control.h: Likewise.
18622         * lib/unictype/pr_join_control.h: Likewise.
18623         * lib/unictype/pr_left_of_pair.h: Likewise.
18624         * lib/unictype/pr_line_separator.h: Likewise.
18625         * lib/unictype/pr_logical_order_exception.h: Likewise.
18626         * lib/unictype/pr_lowercase.h: Likewise.
18627         * lib/unictype/pr_math.h: Likewise.
18628         * lib/unictype/pr_non_break.h: Likewise.
18629         * lib/unictype/pr_not_a_character.h: Likewise.
18630         * lib/unictype/pr_numeric.h: Likewise.
18631         * lib/unictype/pr_other_alphabetic.h: Likewise.
18632         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
18633         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
18634         * lib/unictype/pr_other_id_continue.h: Likewise.
18635         * lib/unictype/pr_other_id_start.h: Likewise.
18636         * lib/unictype/pr_other_lowercase.h: Likewise.
18637         * lib/unictype/pr_other_math.h: Likewise.
18638         * lib/unictype/pr_other_uppercase.h: Likewise.
18639         * lib/unictype/pr_paired_punctuation.h: Likewise.
18640         * lib/unictype/pr_paragraph_separator.h: Likewise.
18641         * lib/unictype/pr_pattern_syntax.h: Likewise.
18642         * lib/unictype/pr_pattern_white_space.h: Likewise.
18643         * lib/unictype/pr_private_use.h: Likewise.
18644         * lib/unictype/pr_punctuation.h: Likewise.
18645         * lib/unictype/pr_quotation_mark.h: Likewise.
18646         * lib/unictype/pr_radical.h: Likewise.
18647         * lib/unictype/pr_sentence_terminal.h: Likewise.
18648         * lib/unictype/pr_soft_dotted.h: Likewise.
18649         * lib/unictype/pr_space.h: Likewise.
18650         * lib/unictype/pr_terminal_punctuation.h: Likewise.
18651         * lib/unictype/pr_titlecase.h: Likewise.
18652         * lib/unictype/pr_unassigned_code_value.h: Likewise.
18653         * lib/unictype/pr_unified_ideograph.h: Likewise.
18654         * lib/unictype/pr_uppercase.h: Likewise.
18655         * lib/unictype/pr_variation_selector.h: Likewise.
18656         * lib/unictype/pr_white_space.h: Likewise.
18657         * lib/unictype/pr_xid_continue.h: Likewise.
18658         * lib/unictype/pr_xid_start.h: Likewise.
18659         * lib/unictype/pr_zero_width.h: Likewise.
18660         * lib/unictype/scripts.h: Likewise.
18661         * lib/unictype/scripts_byname.gperf: Likewise.
18662         * lib/unictype/sy_c_ident.h: Likewise.
18663         * lib/unictype/sy_c_whitespace.h: Likewise.
18664         * lib/unictype/sy_java_ident.h: Likewise.
18665         * lib/unictype/sy_java_whitespace.h: Likewise.
18666
18667         * lib/unictype/Makefile: New file.
18668         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
18669         glibc.
18670         * lib/unictype/3level.h: New file, copied from glibc.
18671         * lib/unictype/3levelbit.h: New file.
18672
18673 2007-11-11  Bruno Haible  <bruno@clisp.org>
18674
18675         * modules/gperf: New file.
18676         * modules/iconv_open (Depends-on): Add it.
18677         (Makefile.am): Remove the GPERF definition.
18678
18679 2007-11-11  Bruno Haible  <bruno@clisp.org>
18680
18681         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
18682         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
18683
18684 2007-11-11  Bruno Haible  <bruno@clisp.org>
18685
18686         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
18687         (usage): Remove function.
18688
18689 2007-11-11  Bruno Haible  <bruno@clisp.org>
18690
18691         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
18692         gl_FUNC_CEILF_LIBS.
18693         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
18694         gl_FUNC_CEIL_LIBS.
18695         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
18696         gl_FUNC_CEILL_LIBS.
18697         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
18698         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
18699         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
18700
18701 2007-11-11  Bruno Haible  <bruno@clisp.org>
18702
18703         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
18704         roundf were declared but do not exist on functions.
18705         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
18706         roundl were declared but do not exist on functions.
18707         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
18708         HAVE_FLOORL_AND_CEILL, respectively.
18709         Needed for Sun C on Solaris 10.
18710
18711 2007-11-11  Bruno Haible  <bruno@clisp.org>
18712
18713         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
18714         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
18715         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
18716         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
18717         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
18718         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
18719         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
18720         HAVE_DECL_ROUNDF.
18721         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
18722         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
18723         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
18724         of HAVE_DECL_ROUND*.
18725         * modules/math (Makefile.am): Update.
18726
18727 2007-11-10  Bruno Haible  <bruno@clisp.org>
18728
18729         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
18730         ptrdiff_t as m4/intl.m4.
18731
18732 2007-11-10  Jim Meyering  <meyering@redhat.com>
18733
18734         Avoid link failure for the argmatch test.
18735         * tests/test-argmatch.c (usage): Define function to avoid a link
18736         failure: argmatch_die requires a usage function.
18737
18738 2007-11-09  Bruno Haible  <bruno@clisp.org>
18739
18740         * doc/functions/snprintf.texi: Mention BeOS deficiency.
18741         * doc/functions/vsnprintf.texi: Likewise.
18742         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
18743         with a size argument < 2.
18744
18745 2007-11-09  Bruno Haible  <bruno@clisp.org>
18746
18747         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
18748         buffer. Fixes an inefficiency introduced on 2007-11-03.
18749
18750 2007-11-09  Bruno Haible  <bruno@clisp.org>
18751
18752         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
18753         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
18754
18755 2007-11-08  Jim Meyering  <meyering@redhat.com>
18756
18757         Change cache variable name prefix "jm_" to "gl_" everywhere.
18758         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
18759         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
18760         * m4/uptime.m4: s/gl_/jm_/
18761
18762 2007-11-07  Bruno Haible  <bruno@clisp.org>
18763
18764         Update to GNU gettext 0.17.
18765         * m4/intl.m4: Update to GNU gettext 0.17.
18766         * m4/po.m4: Likewise.
18767         * modules/gettext (Files): Remove m4/ulonglong.m4.
18768         (configure.ac): Require gettext infrastructure from version 0.17.
18769
18770 2007-11-06  Bruno Haible  <bruno@clisp.org>
18771
18772         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
18773         symbolic values are not defined in a public header.
18774         * lib/freadable.c (freadable) [QNX]: Likewise.
18775         * lib/freadahead.c (freadahead) [QNX]: Likewise.
18776         * lib/freading.c (freading) [QNX]: Likewise.
18777         * lib/fseterr.c (fseterr) [QNX]: Likewise.
18778         * lib/fwritable.c (fwritable) [QNX]: Likewise.
18779         * lib/fwriting.c (fwriting) [QNX]: Likewise.
18780         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
18781         Reported by Alain Magloire.
18782
18783         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
18784
18785 2007-11-05  Bruno Haible  <bruno@clisp.org>
18786
18787         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
18788         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
18789         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
18790         Reported by Eric Blake.
18791
18792 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18793             Bruno Haible  <bruno@clisp.org>
18794
18795         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
18796         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
18797         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
18798         (malloc): Undefine also before including <stdlib.h>.
18799         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
18800         Needed on OSF/1 4.0.
18801
18802 2007-11-05  Jim Meyering  <meyering@redhat.com>
18803
18804         git-version-gen: sync from coreutils.
18805         * build-aux/git-version-gen: Add comments.
18806         Change the first '-' to '.' in the snapshot version string,
18807         e.g., 6.9-377-08144 -> 6.9.377-08144
18808         Remove first parameter.
18809         Don't declare a version "-dirty" merely because a time
18810         stamp has changed.
18811
18812 2007-11-04  Bruno Haible  <bruno@clisp.org>
18813
18814         * lib/lock.h: Protect all macro definitions containing an 'if'
18815         statement through a "do { ... } while (0)".
18816         * lib/tls.h: Likewise.
18817
18818 2007-11-04  Bruno Haible  <bruno@clisp.org>
18819
18820         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
18821
18822 2007-11-04  Bruno Haible  <bruno@clisp.org>
18823
18824         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
18825         * modules/fprintf-posix (Depends-on): Add nocrash.
18826         * modules/snprintf-posix (Depends-on): Likewise.
18827         * modules/sprintf-posix (Depends-on): Likewise.
18828         * modules/vasnprintf-posix (Depends-on): Likewise.
18829         * modules/vasprintf-posix (Depends-on): Likewise.
18830         * modules/vfprintf-posix (Depends-on): Likewise.
18831         * modules/vsnprintf-posix (Depends-on): Likewise.
18832         * modules/vsprintf-posix (Depends-on): Likewise.
18833         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
18834         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
18835         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
18836         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
18837         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
18838         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
18839         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
18840
18841 2007-11-04  Bruno Haible  <bruno@clisp.org>
18842
18843         * modules/nocrash: New file.
18844         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
18845         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
18846
18847 2007-11-04  Bruno Haible  <bruno@clisp.org>
18848
18849         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
18850         precision handling.
18851         * tests/test-vasprintf-posix.c (test_function): Likewise.
18852         * tests/test-snprintf-posix.h (test_function): Likewise.
18853         * tests/test-sprintf-posix.h (test_function): Likewise.
18854
18855         Fix *printf behaviour for large precisions on mingw and BeOS.
18856         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
18857         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
18858         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
18859         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
18860         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18861         gl_PRINTF_PRECISION and test its result. Invoke
18862         gl_PREREQ_VASNPRINTF_PRECISION.
18863         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18864         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18865         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18866         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18867         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18868         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18869         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18870         * doc/functions/fprintf.texi: Update.
18871         * doc/functions/printf.texi: Update.
18872         * doc/functions/snprintf.texi: Update.
18873         * doc/functions/sprintf.texi: Update.
18874         * doc/functions/vfprintf.texi: Update.
18875         * doc/functions/vprintf.texi: Update.
18876         * doc/functions/vsnprintf.texi: Update.
18877         * doc/functions/vsprintf.texi: Update.
18878
18879 2007-11-04  Bruno Haible  <bruno@clisp.org>
18880
18881         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
18882
18883 2007-11-04  Bruno Haible  <bruno@clisp.org>
18884
18885         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
18886         Reported by Sylvain Beucler <beuc@gnu.org>.
18887
18888 2007-11-03  Bruno Haible  <bruno@clisp.org>
18889
18890         * tests/test-fprintf-posix2.sh: New file.
18891         * tests/test-fprintf-posix2.c: New file.
18892         * modules/fprintf-posix-tests (Files): Add them.
18893         (TESTS): Add test-fprintf-posix2.sh.
18894         (configure.ac): Check for getrlimit and setrlimit.
18895         (check_PROGRAMS): Add test-fprintf-posix2.
18896
18897         * tests/test-printf-posix2.sh: New file.
18898         * tests/test-printf-posix2.c: New file.
18899         * modules/printf-posix-tests (Files): Add them.
18900         (TESTS): Add test-printf-posix2.sh.
18901         (configure.ac): Check for getrlimit and setrlimit.
18902         (check_PROGRAMS): Add test-printf-posix2.
18903
18904         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
18905         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
18906         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
18907         (decode_double): New function, copied from decode_long_double.
18908         (scale10_round_decimal_decoded): New function, extracted from
18909         scale10_round_decimal_long_double.
18910         (scale10_round_decimal_long_double): Use it.
18911         (scale10_round_decimal_double): New function.
18912         (floorlog10): New function.
18913         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
18914         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
18915         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
18916         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18917         gl_PRINTF_ENOMEM and test its result. Invoke
18918         gl_PREREQ_VASNPRINTF_ENOMEM.
18919         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18920         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18921         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18922         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18923         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18924         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18925         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18926         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
18927         * modules/snprintf-posix (Depends-on): Likewise.
18928         * modules/sprintf-posix (Depends-on): Likewise.
18929         * modules/vasnprintf-posix (Depends-on): Likewise.
18930         * modules/vasprintf-posix (Depends-on): Likewise.
18931         * modules/vfprintf-posix (Depends-on): Likewise.
18932         * modules/vsnprintf-posix (Depends-on): Likewise.
18933         * modules/vsprintf-posix (Depends-on): Likewise.
18934         * doc/functions/fprintf.texi: Update.
18935         * doc/functions/printf.texi: Update.
18936         * doc/functions/snprintf.texi: Update.
18937         * doc/functions/sprintf.texi: Update.
18938         * doc/functions/vfprintf.texi: Update.
18939         * doc/functions/vprintf.texi: Update.
18940         * doc/functions/vsnprintf.texi: Update.
18941         * doc/functions/vsprintf.texi: Update.
18942
18943 2007-11-03  Bruno Haible  <bruno@clisp.org>
18944
18945         * modules/frexp-nolibm-tests: New file.
18946
18947         * modules/frexp-nolibm: New file.
18948         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
18949
18950 2007-11-03  Bruno Haible  <bruno@clisp.org>
18951
18952         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
18953         value is C99 compliant.
18954         Needed for OSF/1 5.1.
18955
18956 2007-11-03  Bruno Haible  <bruno@clisp.org>
18957
18958         Fix out-of-memory handling of vasnprintf.
18959         * lib/printf-parse.c: Include <errno.h>.
18960         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
18961         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
18962         is already set.
18963
18964 2007-11-02  Eric Blake  <ebb9@byu.net>
18965
18966         Fix tests on cygwin.
18967         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
18968
18969 2007-11-01  Bruno Haible  <bruno@clisp.org>
18970
18971         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
18972         warning.
18973         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
18974         needed for POSIX compatibility.
18975
18976 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
18977
18978         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
18979         for compatibility with GNU.
18980
18981 2007-11-01  Bruno Haible  <bruno@clisp.org>
18982
18983         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
18984         (putenv): Renamed from rpl_putenv. Change argument type from
18985         'const char *' to 'char *'.
18986         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
18987         of defining putenv in config.h, just set REPLACE_PUTENV.
18988         * modules/putenv (Depends-on): Add stdlib.
18989         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
18990         (Include): Use <stdlib.h>.
18991         * lib/stdlib.in.h (putenv): New declaration.
18992         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
18993         REPLACE_PUTENV.
18994         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
18995         REPLACE_PUTENV.
18996         Needed for MacOS X 10.5.0.
18997         Reported by Peter O'Gorman <peter@pogma.com>.
18998
18999 2007-11-01  Jim Meyering  <meyering@redhat.com>
19000
19001         Treat an empty date string exactly like "0".
19002         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
19003         if the remaining date string (to be parsed) is empty, use "0".
19004         Reported by Mischa Molhoek and discussed in this thread:
19005         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
19006
19007 2007-10-31  Bruno Haible  <bruno@clisp.org>
19008
19009         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
19010         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
19011         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
19012         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
19013         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
19014         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
19015
19016 2007-10-31  Bruno Haible  <bruno@clisp.org>
19017
19018         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
19019         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
19020         (AC_TYPE_LONG_LONG_INT): Use it.
19021         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
19022         it as well.
19023         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
19024         to m4/longlong.m4.
19025         * modules/stdint (Files): Remove m4/ulonglong.m4.
19026         * modules/strtoull (Files): Use m4/longlong.m4 instead of
19027         m4/ulonglong.m4.
19028         * modules/strtoumax (Files): Likewise.
19029
19030 2007-10-30  Bruno Haible  <bruno@clisp.org>
19031
19032         * modules/xvasprintf-posix: New file.
19033         Suggested by Eric Blake.
19034
19035 2007-10-30  Bruno Haible  <bruno@clisp.org>
19036
19037         * modules/xprintf-posix-tests: New file.
19038         * tests/test-xprintf-posix.sh: New file.
19039         * tests/test-xprintf-posix.c: New file.
19040         * tests/test-xfprintf-posix.c: New file.
19041
19042         * modules/xprintf-posix: New file.
19043
19044 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19045
19046         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
19047         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
19048         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
19049
19050 2007-10-29  Bruno Haible  <bruno@clisp.org>
19051
19052         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
19053         contain the special marker '_cv_'.
19054         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
19055         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
19056         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
19057         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
19058         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
19059         Reported by Ralf Wildenhues.
19060
19061 2007-10-29  Bruno Haible  <bruno@clisp.org>
19062
19063         * gnulib-tool (func_import): When --lgpl is not specified, set
19064         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
19065         GPLv3.
19066         Reported by Simon Josefsson.
19067
19068 2007-10-28  Bruno Haible  <bruno@clisp.org>
19069
19070         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
19071         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
19072         HAVE_DECL_ISFINITE.
19073         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
19074         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
19075         HAVE_DECL_ISFINITE.
19076
19077 2007-10-28  Bruno Haible  <bruno@clisp.org>
19078
19079         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
19080         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
19081
19082 2007-10-28  Bruno Haible  <bruno@clisp.org>
19083
19084         Fix link errors with Sun C 5.0 on Solaris 10.
19085         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
19086         function is declared but not present in the compiler's libm.
19087         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
19088         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
19089         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
19090         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
19091         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
19092         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
19093         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
19094         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
19095         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
19096         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
19097         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
19098         HAVE_DECL_FLOORL.
19099
19100 2007-10-28  Bruno Haible  <bruno@clisp.org>
19101
19102         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
19103         gl_FUNC_FLOORL. Cache the result.
19104         (gl_FUNC_FLOORL): Use it.
19105         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
19106         gl_FUNC_CEILL. Cache the result.
19107         (gl_FUNC_CEILL): Use it.
19108
19109         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
19110         gl_FUNC_FLOOR. Cache the result.
19111         (gl_FUNC_FLOOR): Use it.
19112         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
19113         gl_FUNC_CEIL. Cache the result.
19114         (gl_FUNC_CEIL): Use it.
19115
19116         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
19117         gl_FUNC_FLOORF. Cache the result.
19118         (gl_FUNC_FLOORF): Use it.
19119         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
19120         gl_FUNC_CEILF. Cache the result.
19121         (gl_FUNC_CEILF): Use it.
19122
19123 2007-10-28  Bruno Haible  <bruno@clisp.org>
19124
19125         * gnulib-tool: Allow specifying the LGPL version number through
19126         --lgpl=2 or --lgpl=3.
19127         (func_usage): Document --lgpl with argument.
19128         Handle --lgpl=... arguments.
19129         (func_import): Recognize also gl_LGPL calls with an argument. When
19130         --lgpl=2 is used and the module's license is just LGPL, report an
19131         error. Set sed_transform_lib_file according to the lgpl variable. In
19132         the generated files, use --lgpl or gl_LGPL invocations with argument,
19133         if necessary.
19134         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
19135         an LGPv2+ license.
19136         * doc/gnulib-tool.texi (Modified imports): Update explanation of
19137         gl_LGPL macro.
19138
19139 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19140             Bruno Haible  <bruno@clisp.org>
19141
19142         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
19143         (u16_uctomb_aux): Likewise.
19144         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
19145         !HAVE_INLINE.
19146         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
19147
19148 2007-10-28  Bruno Haible  <bruno@clisp.org>
19149
19150         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
19151         Invoke AM_GETTEXT_OPTION if it exists.
19152         * modules/vasprintf: Likewise.
19153         * modules/verror: Likewise.
19154         * modules/xprintf: Likewise.
19155         * modules/xvasprintf: Likewise.
19156
19157 2007-10-27  Ben Pfaff  <blp@gnu.org>
19158
19159         * lib/math.in.h: Define isfinite macro and prototypes for
19160         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
19161         implementations.
19162         * m4/math_h.m4: New substitutions for isfinite module.
19163         * lib/isfinite.c: New file.
19164         * m4/isfinite.m4: New file.
19165         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
19166         * modules/isfinite: New file.
19167         * modules/isfinite-tests: New file.
19168         * tests/tests-isfinite.c: New file.
19169         * doc/functions/isfinite.texi: Mention isfinite module.
19170         * MODULES.html.sh: Mention new module.
19171
19172 2007-10-27  Ben Pfaff  <blp@gnu.org>
19173
19174         Ralf Wildenhues reported that Tru64 4.0D declares the round
19175         functions but does not have definitions.
19176         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
19177         cannot be found in any library, set the output variable to
19178         "missing" instead of "".
19179         * m4/round.m4: Also use our substitute if we cannot find round in
19180         any library, even if it is declared.
19181         * m4/roundf.m4: Likewise for roundf.
19182         * m4/roundl.m4: Likewise for roundl.
19183         * lib/math.in.h: Undefine roundf, round, roundl before defining
19184         their replacements, to allow for hypothetical systems where these
19185         may be defined as macros but not available in libraries.
19186
19187 2007-10-27  Bruno Haible  <bruno@clisp.org>
19188
19189         * doc/gnulib.texi: Invoke @firstparagraphindent.
19190         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
19191         changes in gnulib.
19192         (Source changes): New section.
19193
19194 2007-10-26  Bruno Haible  <bruno@clisp.org>
19195
19196         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
19197         borrowed from autoconf.
19198
19199 2007-10-26  Bruno Haible  <bruno@clisp.org>
19200
19201         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
19202         strerror returned the empty string. Needed on HP-UX 11.00.
19203
19204 2007-10-24  Micah Cowan  <micah@cowan.name>
19205
19206         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
19207         * build-aux/bootstrap: Remove support for now-unnecessary option,
19208         --cvs-user, and envvars CVS_USER, CVS_RSH.
19209
19210 2007-10-24  Jim Meyering  <meyering@redhat.com>
19211
19212         Avoid diagnostics from sha1sum when there is no cached checksum.
19213         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
19214         if the po.s1 file hasn't been created yet.
19215
19216         * build-aux/bootstrap: Sync from coreutils:
19217         2007-10-24  Jim Meyering  <meyering@redhat.com>
19218         Get gnulib from the git repository, not from an obsolete cvs one.
19219         * build-aux/bootstrap: Suggestion from Micah Cowan.
19220         2007-10-04  Jim Meyering  <jim@meyering.net>
19221         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
19222         (update_po_files): Work also when there are no .po files in po/.
19223
19224 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19225
19226         * README: Append ".git" to git and cg examples.
19227         Problem reported by Benoit Sigoure.
19228
19229 2007-10-23  Micah Cowan  <micah@cowan.name>
19230
19231         * users.txt: Add wget.
19232
19233 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19234
19235         Fix linking of some unistdio tests on FreeBSD.
19236         * modules/unistdio/u16-vsnprintf-tests
19237         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
19238         * modules/unistdio/u16-vsprintf-tests
19239         (test_u16_vsnprintf1_LDADD): Likewise.
19240         * modules/unistdio/u32-vsnprintf-tests
19241         (test_u32_vsnprintf1_LDADD): Likewise.
19242         * modules/unistdio/u32-vsprintf-tests
19243         (test_u32_vsprintf1_LDADD): Likewise.
19244         * modules/unistdio/u8-vsnprintf-tests
19245         (test_u8_vsnprintf1_LDADD): Likewise.
19246         * modules/unistdio/u8-vsprintf-tests
19247         (test_u8_vsprintf1_LDADD): Likewise.
19248         * modules/unistdio/ulc-vsnprintf-tests
19249         (test_ulc_vsnprintf1_LDADD): Likewise.
19250         * modules/unistdio/ulc-vsprintf-tests
19251         (test_ulc_vsprintf1_LDADD): Likewise.
19252
19253         Fix linking of some uniconv tests on FreeBSD.
19254         * modules/uniconv/u16-conv-from-enc-tests
19255         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
19256         * modules/uniconv/u16-conv-to-enc-tests
19257         (test_u16_conv_to_enc_LDADD): Likewise.
19258         * modules/uniconv/u16-strconv-from-enc-tests
19259         (test_u16_strconv_from_enc_LDADD): Likewise.
19260         * modules/uniconv/u16-strconv-to-enc-tests
19261         (test_u16_strconv_to_enc_LDADD): Likewise.
19262         * modules/uniconv/u32-conv-from-enc-tests
19263         (test_u32_conv_from_enc_LDADD): Likewise.
19264         * modules/uniconv/u32-conv-to-enc-tests
19265         (test_u32_conv_to_enc_LDADD): Likewise.
19266         * modules/uniconv/u32-strconv-from-enc-tests
19267         (test_u32_strconv_from_enc_LDADD): Likewise.
19268         * modules/uniconv/u32-strconv-to-enc-tests
19269         (test_u32_strconv_to_enc_LDADD): Likewise.
19270         * modules/uniconv/u8-conv-from-enc-tests
19271         (test_u8_conv_from_enc_LDADD): Likewise.
19272         * modules/uniconv/u8-conv-to-enc-tests
19273         (test_u8_conv_to_enc_LDADD): Likewise.
19274         * modules/uniconv/u8-strconv-from-enc-tests
19275         (test_u8_strconv_from_enc_LDADD): Likewise.
19276         * modules/uniconv/u8-strconv-to-enc-tests
19277         (test_u8_strconv_to_enc_LDADD): Likewise.
19278
19279 2007-10-22  Bruno Haible  <bruno@clisp.org>
19280
19281         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
19282         size.
19283
19284 2007-10-22  Eric Blake  <ebb9@byu.net>
19285
19286         Tweak x*printf documentation.
19287         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
19288         variable name and comments.
19289         Suggested by Bruno Haible.
19290
19291 2007-10-22  Bruno Haible  <bruno@clisp.org>
19292
19293         * lib/acl.c (copy_acl): Fix file name in comment.
19294
19295 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
19296
19297         Fix Tru64 problem with stdbool.h.
19298         * lib/stdbool.in.h (false, true):
19299         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
19300         Don't declare as an enum in this situation; it runs afoul of Tru64.
19301         Problem reported by Steven M. Schweda in
19302         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
19303
19304 2007-10-22  Eric Blake  <ebb9@byu.net>
19305
19306         Also wrap vf?printf.
19307         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
19308         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
19309         (xvprintf, xvfprintf): New functions.
19310
19311 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19312
19313         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
19314         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
19315
19316         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
19317         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
19318
19319 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
19320
19321         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
19322         by Bruno Haible.
19323
19324 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19325
19326         * lib/getloadavg.c
19327         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
19328         Undef `sys' after including sys/table.h, for Tru64 4.0D.
19329
19330         * tests/test-i-ring.c: Work for C89.
19331
19332 2007-10-22  Bruno Haible  <bruno@clisp.org>
19333
19334         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
19335         -1u, in preprocessor expression, so that we don't test for the bug
19336         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
19337         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
19338
19339 2007-10-22  Eric Blake  <ebb9@byu.net>
19340
19341         * tests/test-yesno.sh: Silence stderr during test.
19342
19343 2007-10-22  Simon Josefsson  <simon@josefsson.org>
19344
19345         * modules/crypto/gc-camellia: New file.
19346
19347         * m4/gc-camellia.m4: New file.
19348
19349         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
19350
19351         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
19352
19353 2007-10-22  Simon Josefsson  <simon@josefsson.org>
19354
19355         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
19356         --help to stdout.  Reported by sms@antinode.org (Steven
19357         M. Schweda).
19358
19359 2007-10-22  Simon Josefsson  <simon@josefsson.org>
19360
19361         * users.txt: Fix link to libksba.
19362
19363 2007-10-21  Ben Pfaff  <blp@gnu.org>
19364
19365         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
19366         round.c roundf implementation that depends on floorf and ceilf to
19367         be tested unconditionally.
19368
19369 2007-10-21  Ben Pfaff  <blp@gnu.org>
19370
19371         * m4/check-libm-func.m4: Removed.
19372         * m4/check-math-lib.m4: New file.
19373         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
19374         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
19375         definition and lack of AC_LIBOBJ([roundf]).
19376         * m4/roundl.m4: Ditto, and similarly for roundl.
19377         * modules/round: Reference new m4 file.
19378         * modules/roundf: Ditto.
19379         * modules/roundl: Ditto.
19380         * tests/test-round2.c (main): Use ROUND instead of round.
19381         Bug report from Bruno Haible.
19382
19383 2007-10-21  Bruno Haible  <bruno@clisp.org>
19384
19385         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
19386         context.
19387
19388 2007-10-21  Bruno Haible  <bruno@clisp.org>
19389
19390         * tests/test-wcwidth.c (main): Allow negative result for some control
19391         characters.
19392
19393         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
19394         Needed on OSF/1 5.1.
19395
19396 2007-10-21  Bruno Haible  <bruno@clisp.org>
19397
19398         * tests/test-floorf1.c: Include isnanf.h.
19399         (main): Use isnanf() instead of isnan().
19400         * tests/test-ceilf1.c: Include isnanf.h.
19401         (main): Use isnanf() instead of isnan().
19402         * tests/test-truncf1.c: Include isnanf.h.
19403         (main): Use isnanf() instead of isnan().
19404         * tests/test-roundf1.c: Include isnanf.h.
19405         (main): Use isnanf() instead of isnan().
19406
19407 2007-10-21  Eric Blake  <ebb9@byu.net>
19408
19409         * users.txt: Update URL for m4.
19410
19411 2007-10-21  Bruno Haible  <bruno@clisp.org>
19412
19413         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
19414
19415 2007-10-21  Bruno Haible  <bruno@clisp.org>
19416
19417         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
19418         Git's management files if the CVS files are not present.
19419
19420 2007-10-20  Bruno Haible  <bruno@clisp.org>
19421
19422         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
19423         gcc-3.4.x.
19424
19425 2007-10-20  Ben Pfaff  <blp@gnu.org>
19426
19427         * lib/math.in.h: Declare round, roundf, roundl if we are providing
19428         implementations.
19429         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
19430         * lib/round.c: New file.
19431         * lib/roundf.c: New file.
19432         * lib/roundl.c: New file.
19433         * m4/round.m4: New file.
19434         * m4/roundf.m4: New file.
19435         * m4/roundl.m4: New file.
19436         * m4/check-libm-func-m4: New file.
19437         * modules/math: Replace round, roundf, roundl related @VARS@ in
19438         math.in.h.
19439         * modules/round: New file.
19440         * modules/round-tests: New file.
19441         * modules/roundf: New file.
19442         * modules/roundf-tests: New file.
19443         * modules/roundl: New file.
19444         * modules/roundl-tests: New file.
19445         * tests/test-round1.c: New file.
19446         * tests/test-round2.c: New file.
19447         * tests/test-roundf1.c: New file.
19448         * tests/test-roundf2.c: New file.
19449         * tests/test-roundl.c: New file.
19450         * doc/functions/round.texi: Mention round module.
19451         * doc/functions/roundf.texi: Mention roundf module.
19452         * doc/functions/roundl.texi: Mention roundl module.
19453         * MODULES.html.sh: Mention new modules.
19454         Thanks to Bruno Haible for suggestions.
19455
19456 2007-10-20  Jim Meyering  <meyering@redhat.com>
19457
19458         * lib/xprintf.c: Include <config.h> unconditionally.
19459
19460         Change xprintf's license to GPL.
19461         * modules/xprintf (License): s/LGPL/GPL/, since this module
19462         depends on modules (exit and exitfail) which are GPL.
19463         Suggestion from Bruno Haible.
19464
19465         xprintf fixes.
19466         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
19467         Use a clearer diagnostic.
19468         Patch from Bruno Haible.
19469
19470 2007-10-20  Bruno Haible  <bruno@clisp.org>
19471
19472         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
19473         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
19474         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19475
19476 2007-10-20  Bruno Haible  <bruno@clisp.org>
19477
19478         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
19479         precision in the comparison result > x - 1 or similar.
19480         * tests/test-ceilf2.c (correct_result_p): Likewise.
19481         * tests/test-truncf2.c (correct_result_p): Likewise.
19482         * tests/test-trunc2.c (correct_result_p): Likewise.
19483         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19484
19485 2007-10-20  Bruno Haible  <bruno@clisp.org>
19486
19487         * modules/ceil: New file.
19488         * m4/ceil.m4: New file.
19489         * doc/functions/ceil.texi: Mention the 'ceil' module.
19490
19491 2007-10-20  Bruno Haible  <bruno@clisp.org>
19492
19493         * modules/floor: New file.
19494         * m4/floor.m4: New file.
19495         * doc/functions/floor.texi: Mention the 'floor' module.
19496
19497 2007-10-20  Bruno Haible  <bruno@clisp.org>
19498
19499         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
19500         of %a.
19501         * modules/floorf-tests (Depends-on): Likewise.
19502         * modules/truncf-tests (Depends-on): Likewise.
19503         * modules/trunc-tests (Depends-on): Likewise.
19504         Reported by Ben Pfaff.
19505
19506 2007-10-19  Jim Meyering  <meyering@redhat.com>
19507
19508         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
19509         Don't bother testing specific errno values.  Just test ferror.
19510
19511         New module: xprintf
19512         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
19513
19514 2007-10-19  Bruno Haible  <bruno@clisp.org>
19515
19516         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
19517         syntax.
19518         * modules/javaexec (Makefile.am): Likewise.
19519         * modules/relocatable-prog (Makefile.am): Likewise.
19520         Suggested by Jim Meyering.
19521
19522 2007-10-18  Bruno Haible  <bruno@clisp.org>
19523
19524         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
19525         Reported by Jim Meyering.
19526
19527 2007-10-18  Eric Blake  <ebb9@byu.net>
19528
19529         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
19530
19531 2007-10-18  Bruno Haible  <bruno@clisp.org>
19532
19533         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
19534         the format string into writable memory. Needed in Fortify conditions.
19535
19536 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
19537             Bruno Haible  <bruno@clisp.org>
19538
19539         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
19540         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
19541         * modules/trim (Depends-on): Add mbchar.
19542         (configure.ac): Add gl_FUNC_MBRTOWC.
19543         (Makefile.am): Augment lib_SOURCES.
19544
19545 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
19546
19547         Modify glob.c to use fstatat and dirfd, to simplify it.
19548         Suggested by Eric Blake.
19549         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
19550         Don't include <stdbool.h>; not used.
19551         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
19552         (link_exists_p): Simplify implementation, since we can now assume
19553         dirfd and fstatat.
19554         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
19555
19556 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19557
19558         * gnulib-tool (func_get_dependencies): Fix sed script to
19559         match only tests.
19560
19561 2007-10-17  Bruno Haible  <bruno@clisp.org>
19562
19563         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
19564         allow locale names without encoding suffix.
19565         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
19566         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
19567
19568 2007-10-16  Bruno Haible  <bruno@clisp.org>
19569
19570         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
19571         * lib/getgroups.c (getgroups): Likewise.
19572         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
19573
19574 2007-10-16  Bruno Haible  <bruno@clisp.org>
19575
19576         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
19577         * modules/malloc-posix (License): Likewise.
19578         * modules/realloc-posix (License): Likewise.
19579         * modules/calloc-posix (License): Likewise.
19580         * modules/intprops (License): Change from GPL to LGPL, with
19581         Paul Eggert's approval.
19582
19583 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19584
19585         Merge glibc changes into lib/glob.c.
19586
19587         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
19588         2007-10-15 04:59:03 UTC.  Here are the changes:
19589
19590         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
19591
19592         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
19593
19594         * lib/glob.c: Add some branch prediction throughout.
19595
19596         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
19597
19598         [BZ #5103]
19599         * lib/glob.c (glob): Recognize patterns starting \/.
19600
19601         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
19602
19603         [BZ #3996]
19604         * lib/glob.c (attribute_hidden): Define if not defined.
19605         (glob): Unescape dirname, filename or username when needed and not
19606         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
19607         is NULL.  Handle unescaped [ in pattern without closing ].
19608         Don't pass GLOB_CHECK down to recursive glob for directories.
19609         (__glob_pattern_type): New function.
19610         (__glob_pattern_p): Implement using __glob_pattern_type.
19611         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
19612         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
19613         Remove unreachable code.
19614
19615         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
19616
19617         * lib/glob.c (glob_in_dir): Add some comments and asserts to
19618         explain why there are no leaks.
19619
19620         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
19621
19622         [BZ #3253]
19623         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
19624         time, rather allocate increasingly bigger arrays of pointers, if
19625         possible with alloca, if too large with malloc.
19626
19627 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19628
19629         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
19630         Problem reported by H.Merijn Brand in
19631         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
19632         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
19633         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
19634
19635 2007-10-15  Bruno Haible  <bruno@clisp.org>
19636
19637         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
19638         with explicit rpl_ prefix.
19639         * lib/fopen.c (fopen): Likewise.
19640         * lib/freopen.c (freopen): Likewise.
19641         * lib/iconv.c (iconv): Likewise.
19642         * lib/iconv_close.c (iconv_close): Likewise.
19643
19644 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19645
19646         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
19647
19648 2007-10-15  Bruno Haible  <bruno@clisp.org>
19649
19650         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
19651         <stddef.h> instead of <stdlib.h> since we only need NULL.
19652         Reported by Ben Pfaff <blp@cs.stanford.edu>.
19653
19654 2007-10-15  Bruno Haible  <bruno@clisp.org>
19655
19656         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
19657         Replace paragraph talking about LIBOBJS.
19658         Reported by Colin Watson <cjwatson@debian.org>.
19659
19660 2007-10-15  Bruno Haible  <bruno@clisp.org>
19661
19662         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
19663         <stdlib.h> before using NULL.
19664
19665 2007-10-15  Simon Josefsson  <simon@josefsson.org>
19666
19667         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
19668         Reported by Albert Chin <china@thewrittenword.com>.
19669
19670 2007-10-14  Bruno Haible  <bruno@clisp.org>
19671
19672         * modules/iconv_open-utf-tests: New file.
19673         * tests/test-iconv-utf.c: New file.
19674
19675         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
19676         * modules/iconv_open-utf: New file.
19677         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
19678         (iconv, iconv_close): New declarations.
19679         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
19680         be defined.
19681         (iconv_open): Add special handling of conversion between UTF-8 and
19682         UTF-{16,32}{BE,LE}.
19683         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
19684         * lib/iconv_close.c: New file.
19685         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
19686         gl_FUNC_ICONV_OPEN.
19687         (gl_FUNC_ICONV_OPEN): Use it.
19688         (gl_FUNC_ICONV_OPEN_UTF): New macro.
19689         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
19690         and REPLACE_ICONV_UTF.
19691         * modules/iconv_open (Depends-on): Add c-strcase.
19692         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
19693         ICONV_CONST.
19694         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
19695
19696 2007-10-13  Albert Chin  <china@thewrittenword.com>
19697             Bruno Haible  <bruno@clisp.org>
19698
19699         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
19700         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
19701
19702 2007-10-13  Bruno Haible  <bruno@clisp.org>
19703
19704         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
19705         defined, use the ISO C99 inline semantics.
19706         * lib/argp.h (ARGP_EI): Likewise.
19707
19708 2007-10-13  Bruno Haible  <bruno@clisp.org>
19709
19710         Handle 'inline' change in gcc 4.3.0.
19711         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
19712         argp_fmtstream_write, argp_fmtstream_set_lmargin,
19713         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
19714         argp_fmtstream_point): Disable 'extern' declaration if the function
19715         definition is going to be provided inline.
19716         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
19717         semantics, not the ISO C99 inline semantics.
19718         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
19719         'extern' declaration if the function definition is going to be provided
19720         inline.
19721         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
19722         the GNU C inline semantics, not the ISO C99 inline semantics. With
19723         GCC 4.2, avoid a warning.
19724
19725 2007-10-13  Bruno Haible  <bruno@clisp.org>
19726
19727         * lib/freading.h (freading): Enable the use of __freading for
19728         glibc >= 2.7.
19729         * lib/freading.c (freading): Likewise.
19730
19731 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
19732
19733         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
19734         "warning: C99 inline functions are not supported; using GNU89".
19735
19736 2007-10-12  Bruno Haible  <bruno@clisp.org>
19737
19738         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
19739         of 2.
19740         * tests/test-ceilf2.c: New file.
19741         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
19742
19743         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
19744         * modules/ceilf-tests: Update.
19745
19746 2007-10-12  Bruno Haible  <bruno@clisp.org>
19747
19748         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
19749         of 2.
19750         * tests/test-floorf2.c: New file.
19751         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
19752
19753         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
19754         * modules/floorf-tests: Update.
19755
19756 2007-10-12  Bruno Haible  <bruno@clisp.org>
19757
19758         * tests/test-trunc2.c: New file.
19759         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
19760
19761         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
19762         * modules/trunc-tests: Update.
19763
19764 2007-10-12  Bruno Haible  <bruno@clisp.org>
19765
19766         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
19767         of 2.
19768         * tests/test-truncf2.c: New file.
19769         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
19770
19771         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
19772         * modules/truncf-tests: Update.
19773
19774 2007-10-11  Eric Blake  <ebb9@byu.net>
19775
19776         Don't claim strerror is broken on Interix.
19777         * doc/functions/strerror.texi (strerror): Known broken systems are
19778         now Solaris 8, and not Interix.
19779         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
19780         Interix on cross-compile.
19781         Reported by Martin Koeppe in
19782         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
19783
19784 2007-10-11  Bruno Haible  <bruno@clisp.org>
19785
19786         * modules/i-ring-tests: New file.
19787         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
19788         instead of assert.
19789
19790 2007-10-11  Bruno Haible  <bruno@clisp.org>
19791
19792         * modules/filenamecat-tests: New file.
19793         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
19794         * lib/filenamecat.c: Remove test code.
19795
19796 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
19797
19798         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
19799
19800         * lib/strerror.c: Include <string.h> always, to test interface,
19801         and to remove the need for the dummy.
19802         Include intprops.h to compute width instead of doing it ourselves
19803         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
19804         (strerror): Define it to return NULL if there's no system strerror.
19805         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
19806         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
19807         ancient pre-strerror Unix systems well any more.  Saying "unknown
19808         system error" is enough.
19809         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
19810         simpler strerror.c implementation.
19811         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
19812         Simplify the tests to reflect the simpler strerror implementation.
19813         * modules/strerror (Depends-on): Add intprops.
19814
19815 2007-10-09  Eric Blake  <ebb9@byu.net>
19816
19817         Silence test-fpending.
19818         * modules/fpending-tests (Files): Add wrapper script.
19819         * tests/test-fpending.sh: New file.
19820
19821 2007-10-09  Bruno Haible  <bruno@clisp.org>
19822
19823         * MODULES.html.sh (func_module): Don't create a hyperlink for
19824         function names like 'printf_frexp'.
19825         (Misc): Add crc, memxor.
19826         (Characteristics of floating types): New section.
19827         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
19828         isnanf-nolibm, signbit, trunc, truncf, truncl.
19829         (Enhancements for ISO C 99 functions): New subsection Input/output.
19830         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
19831         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
19832         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
19833         (Compatibility checks for POSIX:2001 functions): Add clock-time.
19834         (Enhancements for POSIX:2001 functions): Add chdir-long.
19835         (File system functions): Add areadlink, chdir-safer, read-file.
19836         Remove cycle-check.
19837         (File system as inode set): New section.
19838         (Date and time): Add gethrxtime.
19839         (Multithreading): Add openmp.
19840         (Internationalization functions): Add localename.
19841         (Unicode string functions): Add unistr/u*-mbsnlen.
19842         (Support for maintaining and releasing projects): Add git-version-gen.
19843         (Lone files): Remove directories.
19844
19845 2007-10-08  Ben Pfaff  <blp@gnu.org>
19846
19847         * lib/xmalloca.h: Fix typo in comment.
19848
19849 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
19850
19851         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
19852         when avoiding problems with integer overflow.  Use a portable test
19853         instead.
19854
19855 2007-10-08  Simon Josefsson  <simon@josefsson.org>
19856
19857         * modules/dummy (License): Change to LGPLv2+.
19858         * modules/float (License): Likewise
19859         * modules/realloc (License): Likewise
19860         * modules/stdlib (License): Likewise
19861
19862 2007-10-07  Bruno Haible  <bruno@clisp.org>
19863
19864         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
19865         * floor.c (TWO_MANT_DIG): Likewise.
19866         * ceil.c (TWO_MANT_DIG): Likewise.
19867         Reported by Ben Pfaff.
19868
19869 2007-10-07  Bruno Haible  <bruno@clisp.org>
19870
19871         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
19872         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
19873         * lib/frexp.c (FUNC): Likewise.
19874         * lib/printf-frexp.h (printf_frexp): Likewise.
19875         * lib/printf-frexpl.h (printf_frexpl): Likewise.
19876         * lib/printf-frexp.c (FUNC): Likewise.
19877         Suggested by Jim Meyering.
19878
19879 2007-10-07  Jim Meyering  <meyering@redhat.com>
19880
19881         Make xnanosleep's integer overflow test more robust.
19882         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
19883         so that gcc-4.3.0 doesn't optimize away this test for overflow.
19884
19885 2007-10-07  Bruno Haible  <bruno@clisp.org>
19886
19887         * NEWS: Mention the license change.
19888
19889         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
19890         abbreviations in the modules files.
19891
19892         Change copyright notice from GPLv2+ to GPLv3+.
19893         * README: Change copyright notice.
19894         * MODULES.html.sh: Likewise.
19895         * build-aux/bootstrap.conf: Likewise.
19896         * build-aux/config.libpath: Likewise.
19897         * build-aux/csharpcomp.sh.in: Likewise.
19898         * build-aux/csharpexec.sh.in: Likewise.
19899         * build-aux/install-reloc: Likewise.
19900         * build-aux/javacomp.sh.in: Likewise.
19901         * build-aux/javaexec.sh.in: Likewise.
19902         * build-aux/ldd.sh.in: Likewise.
19903         * build-aux/reloc-ldflags: Likewise.
19904         * build-aux/relocatable.sh.in: Likewise.
19905         * build-aux/x-to-1.in: Likewise.
19906         * check-module: Likewise.
19907         * config/srclistvars.sh: Likewise.
19908         * gnulib-tool: Likewise.
19909         * lib/acl-internal.h: Likewise.
19910         * lib/acl.c: Likewise.
19911         * lib/acl.h: Likewise.
19912         * lib/acl_entries.c: Likewise.
19913         * lib/areadlink-with-size.c: Likewise.
19914         * lib/areadlink.c: Likewise.
19915         * lib/areadlink.h: Likewise.
19916         * lib/argmatch.c: Likewise.
19917         * lib/argmatch.h: Likewise.
19918         * lib/argp-ba.c: Likewise.
19919         * lib/argp-eexst.c: Likewise.
19920         * lib/argp-fmtstream.c: Likewise.
19921         * lib/argp-fmtstream.h: Likewise.
19922         * lib/argp-fs-xinl.c: Likewise.
19923         * lib/argp-help.c: Likewise.
19924         * lib/argp-namefrob.h: Likewise.
19925         * lib/argp-parse.c: Likewise.
19926         * lib/argp-pin.c: Likewise.
19927         * lib/argp-pv.c: Likewise.
19928         * lib/argp-pvh.c: Likewise.
19929         * lib/argp-xinl.c: Likewise.
19930         * lib/argp.h: Likewise.
19931         * lib/at-func.c: Likewise.
19932         * lib/atanl.c: Likewise.
19933         * lib/backupfile.c: Likewise.
19934         * lib/backupfile.h: Likewise.
19935         * lib/basename.c: Likewise.
19936         * lib/binary-io.h: Likewise.
19937         * lib/byteswap.in.h: Likewise.
19938         * lib/c-stack.c: Likewise.
19939         * lib/c-stack.h: Likewise.
19940         * lib/c-strcasestr.c: Likewise.
19941         * lib/c-strcasestr.h: Likewise.
19942         * lib/c-strstr.c: Likewise.
19943         * lib/c-strstr.h: Likewise.
19944         * lib/c-strtod.c: Likewise.
19945         * lib/calloc.c: Likewise.
19946         * lib/canon-host.c: Likewise.
19947         * lib/canon-host.h: Likewise.
19948         * lib/canonicalize-lgpl.c: Likewise.
19949         * lib/canonicalize.c: Likewise.
19950         * lib/canonicalize.h: Likewise.
19951         * lib/ceil.c: Likewise.
19952         * lib/ceilf.c: Likewise.
19953         * lib/ceill.c: Likewise.
19954         * lib/chdir-long.c: Likewise.
19955         * lib/chdir-long.h: Likewise.
19956         * lib/chdir-safer.c: Likewise.
19957         * lib/chdir-safer.h: Likewise.
19958         * lib/chown.c: Likewise.
19959         * lib/classpath.c: Likewise.
19960         * lib/classpath.h: Likewise.
19961         * lib/clean-temp.c: Likewise.
19962         * lib/clean-temp.h: Likewise.
19963         * lib/cloexec.c: Likewise.
19964         * lib/close-stream.c: Likewise.
19965         * lib/closein.c: Likewise.
19966         * lib/closein.h: Likewise.
19967         * lib/closeout.c: Likewise.
19968         * lib/closeout.h: Likewise.
19969         * lib/concat-filename.c: Likewise.
19970         * lib/copy-file.c: Likewise.
19971         * lib/copy-file.h: Likewise.
19972         * lib/count-one-bits.h: Likewise.
19973         * lib/crc.c: Likewise.
19974         * lib/crc.h: Likewise.
19975         * lib/creat-safer.c: Likewise.
19976         * lib/csharpcomp.c: Likewise.
19977         * lib/csharpcomp.h: Likewise.
19978         * lib/csharpexec.c: Likewise.
19979         * lib/csharpexec.h: Likewise.
19980         * lib/cycle-check.c: Likewise.
19981         * lib/cycle-check.h: Likewise.
19982         * lib/diacrit.c: Likewise.
19983         * lib/diacrit.h: Likewise.
19984         * lib/diffseq.h: Likewise.
19985         * lib/dirchownmod.c: Likewise.
19986         * lib/dirent.in.h: Likewise.
19987         * lib/dirfd.c: Likewise.
19988         * lib/dirfd.h: Likewise.
19989         * lib/dirname.c: Likewise.
19990         * lib/dirname.h: Likewise.
19991         * lib/dummy.c: Likewise.
19992         * lib/dup-safer.c: Likewise.
19993         * lib/dup2.c: Likewise.
19994         * lib/eealloc.h: Likewise.
19995         * lib/error.c: Likewise.
19996         * lib/error.h: Likewise.
19997         * lib/euidaccess.c: Likewise.
19998         * lib/exclude.c: Likewise.
19999         * lib/exclude.h: Likewise.
20000         * lib/execute.c: Likewise.
20001         * lib/execute.h: Likewise.
20002         * lib/exitfail.c: Likewise.
20003         * lib/exitfail.h: Likewise.
20004         * lib/expl.c: Likewise.
20005         * lib/fatal-signal.c: Likewise.
20006         * lib/fatal-signal.h: Likewise.
20007         * lib/fbufmode.c: Likewise.
20008         * lib/fbufmode.h: Likewise.
20009         * lib/fchdir.c: Likewise.
20010         * lib/fchmodat.c: Likewise.
20011         * lib/fchownat.c: Likewise.
20012         * lib/fcntl--.h: Likewise.
20013         * lib/fcntl-safer.h: Likewise.
20014         * lib/fcntl.in.h: Likewise.
20015         * lib/fd-safer.c: Likewise.
20016         * lib/fflush.c: Likewise.
20017         * lib/file-has-acl.c: Likewise.
20018         * lib/file-set.c: Likewise.
20019         * lib/file-type.c: Likewise.
20020         * lib/file-type.h: Likewise.
20021         * lib/fileblocks.c: Likewise.
20022         * lib/filemode.c: Likewise.
20023         * lib/filemode.h: Likewise.
20024         * lib/filename.h: Likewise.
20025         * lib/filenamecat.c: Likewise.
20026         * lib/filenamecat.h: Likewise.
20027         * lib/findprog.c: Likewise.
20028         * lib/findprog.h: Likewise.
20029         * lib/float.in.h: Likewise.
20030         * lib/floor.c: Likewise.
20031         * lib/floorf.c: Likewise.
20032         * lib/floorl.c: Likewise.
20033         * lib/fopen-safer.c: Likewise.
20034         * lib/fopen.c: Likewise.
20035         * lib/fpending.c: Likewise.
20036         * lib/fpending.h: Likewise.
20037         * lib/fprintf.c: Likewise.
20038         * lib/fprintftime.h: Likewise.
20039         * lib/fpucw.h: Likewise.
20040         * lib/fpurge.c: Likewise.
20041         * lib/fpurge.h: Likewise.
20042         * lib/freadable.c: Likewise.
20043         * lib/freadable.h: Likewise.
20044         * lib/freadahead.c: Likewise.
20045         * lib/freadahead.h: Likewise.
20046         * lib/freading.c: Likewise.
20047         * lib/freading.h: Likewise.
20048         * lib/free.c: Likewise.
20049         * lib/freopen.c: Likewise.
20050         * lib/frexp.c: Likewise.
20051         * lib/frexpl.c: Likewise.
20052         * lib/fseek.c: Likewise.
20053         * lib/fseterr.c: Likewise.
20054         * lib/fseterr.h: Likewise.
20055         * lib/fstatat.c: Likewise.
20056         * lib/fstrcmp.c: Likewise.
20057         * lib/fstrcmp.h: Likewise.
20058         * lib/fsusage.c: Likewise.
20059         * lib/fsusage.h: Likewise.
20060         * lib/ftell.c: Likewise.
20061         * lib/ftello.c: Likewise.
20062         * lib/fts-cycle.c: Likewise.
20063         * lib/fts.c: Likewise.
20064         * lib/fts_.h: Likewise.
20065         * lib/full-read.c: Likewise.
20066         * lib/full-read.h: Likewise.
20067         * lib/full-write.c: Likewise.
20068         * lib/full-write.h: Likewise.
20069         * lib/fwritable.c: Likewise.
20070         * lib/fwritable.h: Likewise.
20071         * lib/fwriteerror.c: Likewise.
20072         * lib/fwriteerror.h: Likewise.
20073         * lib/fwriting.c: Likewise.
20074         * lib/fwriting.h: Likewise.
20075         * lib/gcd.c: Likewise.
20076         * lib/gcd.h: Likewise.
20077         * lib/getcwd.c: Likewise.
20078         * lib/getdate.h: Likewise.
20079         * lib/getdate.y: Likewise.
20080         * lib/getdomainname.c: Likewise.
20081         * lib/getdomainname.h: Likewise.
20082         * lib/getgroups.c: Likewise.
20083         * lib/gethostname.c: Likewise.
20084         * lib/gethrxtime.c: Likewise.
20085         * lib/gethrxtime.h: Likewise.
20086         * lib/getloadavg.c: Likewise.
20087         * lib/getndelim2.c: Likewise.
20088         * lib/getndelim2.h: Likewise.
20089         * lib/getnline.c: Likewise.
20090         * lib/getnline.h: Likewise.
20091         * lib/getopt.c: Likewise.
20092         * lib/getopt.in.h: Likewise.
20093         * lib/getopt1.c: Likewise.
20094         * lib/getopt_int.h: Likewise.
20095         * lib/getpagesize.h: Likewise.
20096         * lib/getsubopt.c: Likewise.
20097         * lib/gettime.c: Likewise.
20098         * lib/getugroups.c: Likewise.
20099         * lib/getugroups.h: Likewise.
20100         * lib/getusershell.c: Likewise.
20101         * lib/gl_anyavltree_list1.h: Likewise.
20102         * lib/gl_anyavltree_list2.h: Likewise.
20103         * lib/gl_anyhash_list1.h: Likewise.
20104         * lib/gl_anyhash_list2.h: Likewise.
20105         * lib/gl_anylinked_list1.h: Likewise.
20106         * lib/gl_anylinked_list2.h: Likewise.
20107         * lib/gl_anyrbtree_list1.h: Likewise.
20108         * lib/gl_anyrbtree_list2.h: Likewise.
20109         * lib/gl_anytree_list1.h: Likewise.
20110         * lib/gl_anytree_list2.h: Likewise.
20111         * lib/gl_anytree_oset.h: Likewise.
20112         * lib/gl_anytreehash_list1.h: Likewise.
20113         * lib/gl_anytreehash_list2.h: Likewise.
20114         * lib/gl_array_list.c: Likewise.
20115         * lib/gl_array_list.h: Likewise.
20116         * lib/gl_array_oset.c: Likewise.
20117         * lib/gl_array_oset.h: Likewise.
20118         * lib/gl_avltree_list.c: Likewise.
20119         * lib/gl_avltree_list.h: Likewise.
20120         * lib/gl_avltree_oset.c: Likewise.
20121         * lib/gl_avltree_oset.h: Likewise.
20122         * lib/gl_avltreehash_list.c: Likewise.
20123         * lib/gl_avltreehash_list.h: Likewise.
20124         * lib/gl_carray_list.c: Likewise.
20125         * lib/gl_carray_list.h: Likewise.
20126         * lib/gl_linked_list.c: Likewise.
20127         * lib/gl_linked_list.h: Likewise.
20128         * lib/gl_linkedhash_list.c: Likewise.
20129         * lib/gl_linkedhash_list.h: Likewise.
20130         * lib/gl_list.c: Likewise.
20131         * lib/gl_list.h: Likewise.
20132         * lib/gl_oset.c: Likewise.
20133         * lib/gl_oset.h: Likewise.
20134         * lib/gl_rbtree_list.c: Likewise.
20135         * lib/gl_rbtree_list.h: Likewise.
20136         * lib/gl_rbtree_oset.c: Likewise.
20137         * lib/gl_rbtree_oset.h: Likewise.
20138         * lib/gl_rbtreehash_list.c: Likewise.
20139         * lib/gl_rbtreehash_list.h: Likewise.
20140         * lib/gl_sublist.c: Likewise.
20141         * lib/gl_sublist.h: Likewise.
20142         * lib/group-member.c: Likewise.
20143         * lib/group-member.h: Likewise.
20144         * lib/hard-locale.c: Likewise.
20145         * lib/hard-locale.h: Likewise.
20146         * lib/hash-pjw.c: Likewise.
20147         * lib/hash-pjw.h: Likewise.
20148         * lib/hash-triple.c: Likewise.
20149         * lib/hash.c: Likewise.
20150         * lib/hash.h: Likewise.
20151         * lib/human.c: Likewise.
20152         * lib/human.h: Likewise.
20153         * lib/i-ring.c: Likewise.
20154         * lib/i-ring.h: Likewise.
20155         * lib/idcache.c: Likewise.
20156         * lib/imaxabs.c: Likewise.
20157         * lib/imaxdiv.c: Likewise.
20158         * lib/inet_pton.c: Likewise.
20159         * lib/inet_pton.h: Likewise.
20160         * lib/intprops.h: Likewise.
20161         * lib/inttostr.c: Likewise.
20162         * lib/inttostr.h: Likewise.
20163         * lib/inttypes.in.h: Likewise.
20164         * lib/isapipe.c: Likewise.
20165         * lib/isdir.c: Likewise.
20166         * lib/isnan.c: Likewise.
20167         * lib/isnan.h: Likewise.
20168         * lib/isnanf.c: Likewise.
20169         * lib/isnanf.h: Likewise.
20170         * lib/isnanl-nolibm.h: Likewise.
20171         * lib/isnanl.c: Likewise.
20172         * lib/isnanl.h: Likewise.
20173         * lib/javacomp.c: Likewise.
20174         * lib/javacomp.h: Likewise.
20175         * lib/javaexec.c: Likewise.
20176         * lib/javaexec.h: Likewise.
20177         * lib/javaversion.c: Likewise.
20178         * lib/javaversion.h: Likewise.
20179         * lib/javaversion.java: Likewise.
20180         * lib/lbrkprop.h: Likewise.
20181         * lib/lchmod.h: Likewise.
20182         * lib/lchown.c: Likewise.
20183         * lib/ldexpl.c: Likewise.
20184         * lib/linebreak.c: Likewise.
20185         * lib/linebreak.h: Likewise.
20186         * lib/linebuffer.c: Likewise.
20187         * lib/linebuffer.h: Likewise.
20188         * lib/locale.in.h: Likewise.
20189         * lib/logl.c: Likewise.
20190         * lib/long-options.c: Likewise.
20191         * lib/long-options.h: Likewise.
20192         * lib/lstat.c: Likewise.
20193         * lib/lstat.h: Likewise.
20194         * lib/math.in.h: Likewise.
20195         * lib/mbchar.c: Likewise.
20196         * lib/mbchar.h: Likewise.
20197         * lib/mbfile.h: Likewise.
20198         * lib/mbiter.h: Likewise.
20199         * lib/mbscasecmp.c: Likewise.
20200         * lib/mbscasestr.c: Likewise.
20201         * lib/mbschr.c: Likewise.
20202         * lib/mbscspn.c: Likewise.
20203         * lib/mbslen.c: Likewise.
20204         * lib/mbsncasecmp.c: Likewise.
20205         * lib/mbsnlen.c: Likewise.
20206         * lib/mbspbrk.c: Likewise.
20207         * lib/mbspcasecmp.c: Likewise.
20208         * lib/mbsrchr.c: Likewise.
20209         * lib/mbssep.c: Likewise.
20210         * lib/mbsspn.c: Likewise.
20211         * lib/mbsstr.c: Likewise.
20212         * lib/mbstok_r.c: Likewise.
20213         * lib/mbswidth.c: Likewise.
20214         * lib/mbswidth.h: Likewise.
20215         * lib/mbuiter.h: Likewise.
20216         * lib/memcasecmp.c: Likewise.
20217         * lib/memcasecmp.h: Likewise.
20218         * lib/memchr.c: Likewise.
20219         * lib/memcmp.c: Likewise.
20220         * lib/memcoll.c: Likewise.
20221         * lib/memcoll.h: Likewise.
20222         * lib/memcpy.c: Likewise.
20223         * lib/memrchr.c: Likewise.
20224         * lib/mkancesdirs.c: Likewise.
20225         * lib/mkdir-p.c: Likewise.
20226         * lib/mkdir-p.h: Likewise.
20227         * lib/mkdir.c: Likewise.
20228         * lib/mkdirat.c: Likewise.
20229         * lib/mkdtemp.c: Likewise.
20230         * lib/mkstemp-safer.c: Likewise.
20231         * lib/mkstemp.c: Likewise.
20232         * lib/modechange.c: Likewise.
20233         * lib/modechange.h: Likewise.
20234         * lib/mountlist.c: Likewise.
20235         * lib/mountlist.h: Likewise.
20236         * lib/mpsort.c: Likewise.
20237         * lib/nanosleep.c: Likewise.
20238         * lib/obstack.c: Likewise.
20239         * lib/obstack.h: Likewise.
20240         * lib/open-safer.c: Likewise.
20241         * lib/open.c: Likewise.
20242         * lib/openat-die.c: Likewise.
20243         * lib/openat-priv.h: Likewise.
20244         * lib/openat-proc.c: Likewise.
20245         * lib/openat.c: Likewise.
20246         * lib/openat.h: Likewise.
20247         * lib/pagealign_alloc.c: Likewise.
20248         * lib/pagealign_alloc.h: Likewise.
20249         * lib/physmem.c: Likewise.
20250         * lib/physmem.h: Likewise.
20251         * lib/pipe-safer.c: Likewise.
20252         * lib/pipe.c: Likewise.
20253         * lib/pipe.h: Likewise.
20254         * lib/posixtm.c: Likewise.
20255         * lib/posixtm.h: Likewise.
20256         * lib/posixver.c: Likewise.
20257         * lib/printf-frexp.c: Likewise.
20258         * lib/printf-frexp.h: Likewise.
20259         * lib/printf-frexpl.c: Likewise.
20260         * lib/printf-frexpl.h: Likewise.
20261         * lib/printf.c: Likewise.
20262         * lib/progname.c: Likewise.
20263         * lib/progname.h: Likewise.
20264         * lib/progreloc.c: Likewise.
20265         * lib/putenv.c: Likewise.
20266         * lib/quote.c: Likewise.
20267         * lib/quote.h: Likewise.
20268         * lib/quotearg.c: Likewise.
20269         * lib/quotearg.h: Likewise.
20270         * lib/raise.c: Likewise.
20271         * lib/readline.c: Likewise.
20272         * lib/readline.h: Likewise.
20273         * lib/readlink.c: Likewise.
20274         * lib/readtokens.c: Likewise.
20275         * lib/readtokens.h: Likewise.
20276         * lib/readtokens0.c: Likewise.
20277         * lib/readtokens0.h: Likewise.
20278         * lib/readutmp.c: Likewise.
20279         * lib/readutmp.h: Likewise.
20280         * lib/realloc.c: Likewise.
20281         * lib/relocwrapper.c: Likewise.
20282         * lib/rename-dest-slash.c: Likewise.
20283         * lib/rename.c: Likewise.
20284         * lib/rmdir.c: Likewise.
20285         * lib/rpmatch.c: Likewise.
20286         * lib/safe-read.c: Likewise.
20287         * lib/safe-read.h: Likewise.
20288         * lib/safe-write.c: Likewise.
20289         * lib/safe-write.h: Likewise.
20290         * lib/same-inode.h: Likewise.
20291         * lib/same.c: Likewise.
20292         * lib/same.h: Likewise.
20293         * lib/save-cwd.c: Likewise.
20294         * lib/save-cwd.h: Likewise.
20295         * lib/savedir.c: Likewise.
20296         * lib/savedir.h: Likewise.
20297         * lib/savewd.c: Likewise.
20298         * lib/savewd.h: Likewise.
20299         * lib/search.in.h: Likewise.
20300         * lib/setenv.c: Likewise.
20301         * lib/setenv.h: Likewise.
20302         * lib/settime.c: Likewise.
20303         * lib/sh-quote.c: Likewise.
20304         * lib/sh-quote.h: Likewise.
20305         * lib/sig2str.c: Likewise.
20306         * lib/sig2str.h: Likewise.
20307         * lib/signal.in.h: Likewise.
20308         * lib/signbitd.c: Likewise.
20309         * lib/signbitf.c: Likewise.
20310         * lib/signbitl.c: Likewise.
20311         * lib/sigprocmask.c: Likewise.
20312         * lib/sincosl.c: Likewise.
20313         * lib/sleep.c: Likewise.
20314         * lib/sprintf.c: Likewise.
20315         * lib/sqrtl.c: Likewise.
20316         * lib/stat-time.h: Likewise.
20317         * lib/stdio--.h: Likewise.
20318         * lib/stdio-safer.h: Likewise.
20319         * lib/stdlib--.h: Likewise.
20320         * lib/stdlib-safer.h: Likewise.
20321         * lib/stdlib.in.h: Likewise.
20322         * lib/stpcpy.c: Likewise.
20323         * lib/stpncpy.c: Likewise.
20324         * lib/strchrnul.c: Likewise.
20325         * lib/strcspn.c: Likewise.
20326         * lib/strerror.c: Likewise.
20327         * lib/strftime.c: Likewise.
20328         * lib/strftime.h: Likewise.
20329         * lib/striconveh.c: Likewise.
20330         * lib/striconveh.h: Likewise.
20331         * lib/striconveha.c: Likewise.
20332         * lib/striconveha.h: Likewise.
20333         * lib/stripslash.c: Likewise.
20334         * lib/strnlen1.c: Likewise.
20335         * lib/strnlen1.h: Likewise.
20336         * lib/strtod.c: Likewise.
20337         * lib/strtoimax.c: Likewise.
20338         * lib/strtok_r.c: Likewise.
20339         * lib/strtol.c: Likewise.
20340         * lib/strtoll.c: Likewise.
20341         * lib/strtoul.c: Likewise.
20342         * lib/strtoull.c: Likewise.
20343         * lib/sysexits.in.h: Likewise.
20344         * lib/tempname.c: Likewise.
20345         * lib/tempname.h: Likewise.
20346         * lib/timespec.h: Likewise.
20347         * lib/tls.c: Likewise.
20348         * lib/tls.h: Likewise.
20349         * lib/tmpdir.c: Likewise.
20350         * lib/tmpdir.h: Likewise.
20351         * lib/tmpfile-safer.c: Likewise.
20352         * lib/tmpfile.c: Likewise.
20353         * lib/trigl.c: Likewise.
20354         * lib/trigl.h: Likewise.
20355         * lib/trim.c: Likewise.
20356         * lib/trim.h: Likewise.
20357         * lib/trunc.c: Likewise.
20358         * lib/truncf.c: Likewise.
20359         * lib/truncl.c: Likewise.
20360         * lib/tsearch.c: Likewise.
20361         * lib/unicodeio.c: Likewise.
20362         * lib/unicodeio.h: Likewise.
20363         * lib/unistd--.h: Likewise.
20364         * lib/unistd-safer.h: Likewise.
20365         * lib/unistdio/ulc-fprintf.c: Likewise.
20366         * lib/unistdio/ulc-vfprintf.c: Likewise.
20367         * lib/unlinkdir.c: Likewise.
20368         * lib/unlinkdir.h: Likewise.
20369         * lib/unlocked-io.h: Likewise.
20370         * lib/unsetenv.c: Likewise.
20371         * lib/userspec.c: Likewise.
20372         * lib/utime.c: Likewise.
20373         * lib/utimecmp.c: Likewise.
20374         * lib/utimecmp.h: Likewise.
20375         * lib/utimens.c: Likewise.
20376         * lib/verify.h: Likewise.
20377         * lib/verror.c: Likewise.
20378         * lib/verror.h: Likewise.
20379         * lib/version-etc-fsf.c: Likewise.
20380         * lib/version-etc.c: Likewise.
20381         * lib/version-etc.h: Likewise.
20382         * lib/vfprintf.c: Likewise.
20383         * lib/vprintf.c: Likewise.
20384         * lib/vsprintf.c: Likewise.
20385         * lib/w32spawn.h: Likewise.
20386         * lib/wait-process.c: Likewise.
20387         * lib/wait-process.h: Likewise.
20388         * lib/wcwidth.c: Likewise.
20389         * lib/write-any-file.c: Likewise.
20390         * lib/xalloc-die.c: Likewise.
20391         * lib/xalloc.h: Likewise.
20392         * lib/xasprintf.c: Likewise.
20393         * lib/xgetcwd.c: Likewise.
20394         * lib/xgetcwd.h: Likewise.
20395         * lib/xgetdomainname.c: Likewise.
20396         * lib/xgetdomainname.h: Likewise.
20397         * lib/xgethostname.c: Likewise.
20398         * lib/xmalloc.c: Likewise.
20399         * lib/xmalloca.c: Likewise.
20400         * lib/xmalloca.h: Likewise.
20401         * lib/xmemcoll.c: Likewise.
20402         * lib/xnanosleep.c: Likewise.
20403         * lib/xreadlink.c: Likewise.
20404         * lib/xreadlink.h: Likewise.
20405         * lib/xsetenv.c: Likewise.
20406         * lib/xsetenv.h: Likewise.
20407         * lib/xstriconv.c: Likewise.
20408         * lib/xstriconv.h: Likewise.
20409         * lib/xstrndup.c: Likewise.
20410         * lib/xstrndup.h: Likewise.
20411         * lib/xstrtod.c: Likewise.
20412         * lib/xstrtod.h: Likewise.
20413         * lib/xstrtol-error.c: Likewise.
20414         * lib/xstrtol.c: Likewise.
20415         * lib/xstrtol.h: Likewise.
20416         * lib/xtime.h: Likewise.
20417         * lib/xvasprintf.c: Likewise.
20418         * lib/xvasprintf.h: Likewise.
20419         * lib/yesno.c: Likewise.
20420         * lib/yesno.h: Likewise.
20421         * posix-modules: Likewise.
20422         * tests/test-alloca-opt.c: Likewise.
20423         * tests/test-arcfour.c: Likewise.
20424         * tests/test-arctwo.c: Likewise.
20425         * tests/test-argmatch.c: Likewise.
20426         * tests/test-argp-2.sh: Likewise.
20427         * tests/test-argp.c: Likewise.
20428         * tests/test-arpa_inet.c: Likewise.
20429         * tests/test-array_list.c: Likewise.
20430         * tests/test-array_oset.c: Likewise.
20431         * tests/test-atexit.c: Likewise.
20432         * tests/test-avltree_list.c: Likewise.
20433         * tests/test-avltree_oset.c: Likewise.
20434         * tests/test-avltreehash_list.c: Likewise.
20435         * tests/test-base64.c: Likewise.
20436         * tests/test-binary-io.c: Likewise.
20437         * tests/test-byteswap.c: Likewise.
20438         * tests/test-c-ctype.c: Likewise.
20439         * tests/test-c-strcasecmp.c: Likewise.
20440         * tests/test-c-strcasestr.c: Likewise.
20441         * tests/test-c-strncasecmp.c: Likewise.
20442         * tests/test-c-strstr.c: Likewise.
20443         * tests/test-canonicalize-lgpl.c: Likewise.
20444         * tests/test-canonicalize.c: Likewise.
20445         * tests/test-carray_list.c: Likewise.
20446         * tests/test-ceilf.c: Likewise.
20447         * tests/test-ceill.c: Likewise.
20448         * tests/test-count-one-bits.c: Likewise.
20449         * tests/test-crc.c: Likewise.
20450         * tests/test-dirname.c: Likewise.
20451         * tests/test-fbufmode.c: Likewise.
20452         * tests/test-fcntl.c: Likewise.
20453         * tests/test-fflush.c: Likewise.
20454         * tests/test-floorf.c: Likewise.
20455         * tests/test-floorl.c: Likewise.
20456         * tests/test-fopen.c: Likewise.
20457         * tests/test-fprintf-posix.c: Likewise.
20458         * tests/test-fprintf-posix.h: Likewise.
20459         * tests/test-fpurge.c: Likewise.
20460         * tests/test-freadable.c: Likewise.
20461         * tests/test-freadahead.c: Likewise.
20462         * tests/test-freading.c: Likewise.
20463         * tests/test-freopen.c: Likewise.
20464         * tests/test-frexp.c: Likewise.
20465         * tests/test-frexpl.c: Likewise.
20466         * tests/test-fseek.c: Likewise.
20467         * tests/test-fseeko.c: Likewise.
20468         * tests/test-fseterr.c: Likewise.
20469         * tests/test-fstrcmp.c: Likewise.
20470         * tests/test-ftell.c: Likewise.
20471         * tests/test-ftello.c: Likewise.
20472         * tests/test-fwritable.c: Likewise.
20473         * tests/test-fwriting.c: Likewise.
20474         * tests/test-getaddrinfo.c: Likewise.
20475         * tests/test-getpass.c: Likewise.
20476         * tests/test-gettimeofday.c: Likewise.
20477         * tests/test-hmac-md5.c: Likewise.
20478         * tests/test-hmac-sha1.c: Likewise.
20479         * tests/test-iconv.c: Likewise.
20480         * tests/test-iconvme.c: Likewise.
20481         * tests/test-inttypes.c: Likewise.
20482         * tests/test-isnan.c: Likewise.
20483         * tests/test-isnanf.c: Likewise.
20484         * tests/test-isnanl-nolibm.c: Likewise.
20485         * tests/test-isnanl.c: Likewise.
20486         * tests/test-isnanl.h: Likewise.
20487         * tests/test-ldexpl.c: Likewise.
20488         * tests/test-linked_list.c: Likewise.
20489         * tests/test-linkedhash_list.c: Likewise.
20490         * tests/test-locale.c: Likewise.
20491         * tests/test-localename.c: Likewise.
20492         * tests/test-lock.c: Likewise.
20493         * tests/test-lseek.c: Likewise.
20494         * tests/test-malloca.c: Likewise.
20495         * tests/test-math.c: Likewise.
20496         * tests/test-mbscasecmp.c: Likewise.
20497         * tests/test-mbscasestr1.c: Likewise.
20498         * tests/test-mbscasestr2.c: Likewise.
20499         * tests/test-mbscasestr3.c: Likewise.
20500         * tests/test-mbscasestr4.c: Likewise.
20501         * tests/test-mbschr.c: Likewise.
20502         * tests/test-mbscspn.c: Likewise.
20503         * tests/test-mbsncasecmp.c: Likewise.
20504         * tests/test-mbspbrk.c: Likewise.
20505         * tests/test-mbspcasecmp.c: Likewise.
20506         * tests/test-mbsrchr.c: Likewise.
20507         * tests/test-mbsspn.c: Likewise.
20508         * tests/test-mbsstr1.c: Likewise.
20509         * tests/test-mbsstr2.c: Likewise.
20510         * tests/test-mbsstr3.c: Likewise.
20511         * tests/test-md5.c: Likewise.
20512         * tests/test-memmem.c: Likewise.
20513         * tests/test-netinet_in.c: Likewise.
20514         * tests/test-open.c: Likewise.
20515         * tests/test-printf-frexp.c: Likewise.
20516         * tests/test-printf-frexpl.c: Likewise.
20517         * tests/test-printf-posix.c: Likewise.
20518         * tests/test-printf-posix.h: Likewise.
20519         * tests/test-rbtree_list.c: Likewise.
20520         * tests/test-rbtree_oset.c: Likewise.
20521         * tests/test-rbtreehash_list.c: Likewise.
20522         * tests/test-read-file.c: Likewise.
20523         * tests/test-rijndael.c: Likewise.
20524         * tests/test-search.c: Likewise.
20525         * tests/test-signbit.c: Likewise.
20526         * tests/test-sleep.c: Likewise.
20527         * tests/test-snprintf-posix.c: Likewise.
20528         * tests/test-snprintf-posix.h: Likewise.
20529         * tests/test-snprintf.c: Likewise.
20530         * tests/test-sprintf-posix.c: Likewise.
20531         * tests/test-sprintf-posix.h: Likewise.
20532         * tests/test-stat-time.c: Likewise.
20533         * tests/test-stdbool.c: Likewise.
20534         * tests/test-stdint.c: Likewise.
20535         * tests/test-stdio.c: Likewise.
20536         * tests/test-stdlib.c: Likewise.
20537         * tests/test-stpncpy.c: Likewise.
20538         * tests/test-strcasestr.c: Likewise.
20539         * tests/test-striconv.c: Likewise.
20540         * tests/test-striconveh.c: Likewise.
20541         * tests/test-striconveha.c: Likewise.
20542         * tests/test-string.c: Likewise.
20543         * tests/test-sys_select.c: Likewise.
20544         * tests/test-sys_socket.c: Likewise.
20545         * tests/test-sys_stat.c: Likewise.
20546         * tests/test-sys_time.c: Likewise.
20547         * tests/test-sysexits.c: Likewise.
20548         * tests/test-time.c: Likewise.
20549         * tests/test-tls.c: Likewise.
20550         * tests/test-trunc.c: Likewise.
20551         * tests/test-truncf.c: Likewise.
20552         * tests/test-truncl.c: Likewise.
20553         * tests/test-unistd.c: Likewise.
20554         * tests/test-vasnprintf-posix.c: Likewise.
20555         * tests/test-vasnprintf-posix2.c: Likewise.
20556         * tests/test-vasnprintf.c: Likewise.
20557         * tests/test-vasprintf-posix.c: Likewise.
20558         * tests/test-vasprintf.c: Likewise.
20559         * tests/test-verify.c: Likewise.
20560         * tests/test-vfprintf-posix.c: Likewise.
20561         * tests/test-vprintf-posix.c: Likewise.
20562         * tests/test-vsnprintf-posix.c: Likewise.
20563         * tests/test-vsnprintf.c: Likewise.
20564         * tests/test-vsprintf-posix.c: Likewise.
20565         * tests/test-wchar.c: Likewise.
20566         * tests/test-wctype.c: Likewise.
20567         * tests/test-wcwidth.c: Likewise.
20568         * tests/test-xstrtol.c: Likewise.
20569         * tests/test-xvasprintf.c: Likewise.
20570         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
20571         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
20572         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
20573         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
20574         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
20575         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
20576         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
20577         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
20578         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
20579         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
20580         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
20581         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
20582         * tests/uniname/test-uninames.c: Likewise.
20583         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
20584         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
20585         * tests/unistdio/test-u16-printf1.h: Likewise.
20586         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
20587         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
20588         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
20589         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
20590         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
20591         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
20592         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
20593         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
20594         * tests/unistdio/test-u32-printf1.h: Likewise.
20595         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
20596         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
20597         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
20598         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
20599         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
20600         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
20601         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
20602         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
20603         * tests/unistdio/test-u8-printf1.h: Likewise.
20604         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
20605         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
20606         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
20607         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
20608         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
20609         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
20610         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
20611         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
20612         * tests/unistdio/test-ulc-printf1.h: Likewise.
20613         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
20614         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
20615         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
20616         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
20617         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
20618         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
20619         * tests/uniwidth/test-u16-strwidth.c: Likewise.
20620         * tests/uniwidth/test-u16-width.c: Likewise.
20621         * tests/uniwidth/test-u32-strwidth.c: Likewise.
20622         * tests/uniwidth/test-u32-width.c: Likewise.
20623         * tests/uniwidth/test-u8-strwidth.c: Likewise.
20624         * tests/uniwidth/test-u8-width.c: Likewise.
20625         * tests/uniwidth/test-uc_width.c: Likewise.
20626         * config/srclist-update: Likewise.
20627         (fixlicense): Update to GPLv3+.
20628
20629         Change copyright notice from LGPLv2.1+ to LGPLv3+.
20630         * tests/test-tsearch.c: Change copyright notice.
20631
20632         Change copyright notice from LGPLv2.0+ to LGPLv3+.
20633         * lib/c-strcaseeq.h: Change copyright notice.
20634         * lib/streq.h: Likewise.
20635         * lib/uniconv.h: Likewise.
20636         * lib/uniconv/u-conv-from-enc.h: Likewise.
20637         * lib/uniconv/u-conv-to-enc.h: Likewise.
20638         * lib/uniconv/u-strconv-from-enc.h: Likewise.
20639         * lib/uniconv/u-strconv-to-enc.h: Likewise.
20640         * lib/uniconv/u16-conv-from-enc.c: Likewise.
20641         * lib/uniconv/u16-conv-to-enc.c: Likewise.
20642         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
20643         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
20644         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
20645         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
20646         * lib/uniconv/u32-conv-from-enc.c: Likewise.
20647         * lib/uniconv/u32-conv-to-enc.c: Likewise.
20648         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
20649         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
20650         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
20651         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
20652         * lib/uniconv/u8-conv-from-enc.c: Likewise.
20653         * lib/uniconv/u8-conv-to-enc.c: Likewise.
20654         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
20655         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
20656         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
20657         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
20658         * lib/uniname.h: Likewise.
20659         * lib/uniname/uniname.c: Likewise.
20660         * lib/unistdio.h: Likewise.
20661         * lib/unistdio/u-asnprintf.h: Likewise.
20662         * lib/unistdio/u-asprintf.h: Likewise.
20663         * lib/unistdio/u-printf-args.c: Likewise.
20664         * lib/unistdio/u-printf-args.h: Likewise.
20665         * lib/unistdio/u-printf-parse.h: Likewise.
20666         * lib/unistdio/u-snprintf.h: Likewise.
20667         * lib/unistdio/u-sprintf.h: Likewise.
20668         * lib/unistdio/u-vasprintf.h: Likewise.
20669         * lib/unistdio/u-vsnprintf.h: Likewise.
20670         * lib/unistdio/u-vsprintf.h: Likewise.
20671         * lib/unistdio/u16-asnprintf.c: Likewise.
20672         * lib/unistdio/u16-asprintf.c: Likewise.
20673         * lib/unistdio/u16-printf-parse.c: Likewise.
20674         * lib/unistdio/u16-snprintf.c: Likewise.
20675         * lib/unistdio/u16-sprintf.c: Likewise.
20676         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
20677         * lib/unistdio/u16-u16-asprintf.c: Likewise.
20678         * lib/unistdio/u16-u16-snprintf.c: Likewise.
20679         * lib/unistdio/u16-u16-sprintf.c: Likewise.
20680         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
20681         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
20682         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
20683         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
20684         * lib/unistdio/u16-vasnprintf.c: Likewise.
20685         * lib/unistdio/u16-vasprintf.c: Likewise.
20686         * lib/unistdio/u16-vsnprintf.c: Likewise.
20687         * lib/unistdio/u16-vsprintf.c: Likewise.
20688         * lib/unistdio/u32-asnprintf.c: Likewise.
20689         * lib/unistdio/u32-asprintf.c: Likewise.
20690         * lib/unistdio/u32-printf-parse.c: Likewise.
20691         * lib/unistdio/u32-snprintf.c: Likewise.
20692         * lib/unistdio/u32-sprintf.c: Likewise.
20693         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
20694         * lib/unistdio/u32-u32-asprintf.c: Likewise.
20695         * lib/unistdio/u32-u32-snprintf.c: Likewise.
20696         * lib/unistdio/u32-u32-sprintf.c: Likewise.
20697         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
20698         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
20699         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
20700         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
20701         * lib/unistdio/u32-vasnprintf.c: Likewise.
20702         * lib/unistdio/u32-vasprintf.c: Likewise.
20703         * lib/unistdio/u32-vsnprintf.c: Likewise.
20704         * lib/unistdio/u32-vsprintf.c: Likewise.
20705         * lib/unistdio/u8-asnprintf.c: Likewise.
20706         * lib/unistdio/u8-asprintf.c: Likewise.
20707         * lib/unistdio/u8-printf-parse.c: Likewise.
20708         * lib/unistdio/u8-snprintf.c: Likewise.
20709         * lib/unistdio/u8-sprintf.c: Likewise.
20710         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
20711         * lib/unistdio/u8-u8-asprintf.c: Likewise.
20712         * lib/unistdio/u8-u8-snprintf.c: Likewise.
20713         * lib/unistdio/u8-u8-sprintf.c: Likewise.
20714         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
20715         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
20716         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
20717         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
20718         * lib/unistdio/u8-vasnprintf.c: Likewise.
20719         * lib/unistdio/u8-vasprintf.c: Likewise.
20720         * lib/unistdio/u8-vsnprintf.c: Likewise.
20721         * lib/unistdio/u8-vsprintf.c: Likewise.
20722         * lib/unistdio/ulc-asnprintf.c: Likewise.
20723         * lib/unistdio/ulc-asprintf.c: Likewise.
20724         * lib/unistdio/ulc-printf-parse.c: Likewise.
20725         * lib/unistdio/ulc-snprintf.c: Likewise.
20726         * lib/unistdio/ulc-sprintf.c: Likewise.
20727         * lib/unistdio/ulc-vasnprintf.c: Likewise.
20728         * lib/unistdio/ulc-vasprintf.c: Likewise.
20729         * lib/unistdio/ulc-vsnprintf.c: Likewise.
20730         * lib/unistdio/ulc-vsprintf.c: Likewise.
20731         * lib/unistr.h: Likewise.
20732         * lib/unistr/u-cpy-alloc.h: Likewise.
20733         * lib/unistr/u-cpy.h: Likewise.
20734         * lib/unistr/u-endswith.h: Likewise.
20735         * lib/unistr/u-move.h: Likewise.
20736         * lib/unistr/u-set.h: Likewise.
20737         * lib/unistr/u-startswith.h: Likewise.
20738         * lib/unistr/u-stpcpy.h: Likewise.
20739         * lib/unistr/u-stpncpy.h: Likewise.
20740         * lib/unistr/u-strcat.h: Likewise.
20741         * lib/unistr/u-strcpy.h: Likewise.
20742         * lib/unistr/u-strcspn.h: Likewise.
20743         * lib/unistr/u-strdup.h: Likewise.
20744         * lib/unistr/u-strlen.h: Likewise.
20745         * lib/unistr/u-strncat.h: Likewise.
20746         * lib/unistr/u-strncpy.h: Likewise.
20747         * lib/unistr/u-strnlen.h: Likewise.
20748         * lib/unistr/u-strpbrk.h: Likewise.
20749         * lib/unistr/u-strspn.h: Likewise.
20750         * lib/unistr/u-strstr.h: Likewise.
20751         * lib/unistr/u-strtok.h: Likewise.
20752         * lib/unistr/u16-check.c: Likewise.
20753         * lib/unistr/u16-chr.c: Likewise.
20754         * lib/unistr/u16-cmp.c: Likewise.
20755         * lib/unistr/u16-cpy-alloc.c: Likewise.
20756         * lib/unistr/u16-cpy.c: Likewise.
20757         * lib/unistr/u16-endswith.c: Likewise.
20758         * lib/unistr/u16-mblen.c: Likewise.
20759         * lib/unistr/u16-mbsnlen.c: Likewise.
20760         * lib/unistr/u16-mbtouc-aux.c: Likewise.
20761         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
20762         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
20763         * lib/unistr/u16-mbtouc.c: Likewise.
20764         * lib/unistr/u16-mbtoucr.c: Likewise.
20765         * lib/unistr/u16-move.c: Likewise.
20766         * lib/unistr/u16-next.c: Likewise.
20767         * lib/unistr/u16-prev.c: Likewise.
20768         * lib/unistr/u16-set.c: Likewise.
20769         * lib/unistr/u16-startswith.c: Likewise.
20770         * lib/unistr/u16-stpcpy.c: Likewise.
20771         * lib/unistr/u16-stpncpy.c: Likewise.
20772         * lib/unistr/u16-strcat.c: Likewise.
20773         * lib/unistr/u16-strchr.c: Likewise.
20774         * lib/unistr/u16-strcmp.c: Likewise.
20775         * lib/unistr/u16-strcpy.c: Likewise.
20776         * lib/unistr/u16-strcspn.c: Likewise.
20777         * lib/unistr/u16-strdup.c: Likewise.
20778         * lib/unistr/u16-strlen.c: Likewise.
20779         * lib/unistr/u16-strmblen.c: Likewise.
20780         * lib/unistr/u16-strmbtouc.c: Likewise.
20781         * lib/unistr/u16-strncat.c: Likewise.
20782         * lib/unistr/u16-strncmp.c: Likewise.
20783         * lib/unistr/u16-strncpy.c: Likewise.
20784         * lib/unistr/u16-strnlen.c: Likewise.
20785         * lib/unistr/u16-strpbrk.c: Likewise.
20786         * lib/unistr/u16-strrchr.c: Likewise.
20787         * lib/unistr/u16-strspn.c: Likewise.
20788         * lib/unistr/u16-strstr.c: Likewise.
20789         * lib/unistr/u16-strtok.c: Likewise.
20790         * lib/unistr/u16-to-u32.c: Likewise.
20791         * lib/unistr/u16-to-u8.c: Likewise.
20792         * lib/unistr/u16-uctomb-aux.c: Likewise.
20793         * lib/unistr/u16-uctomb.c: Likewise.
20794         * lib/unistr/u32-check.c: Likewise.
20795         * lib/unistr/u32-chr.c: Likewise.
20796         * lib/unistr/u32-cmp.c: Likewise.
20797         * lib/unistr/u32-cpy-alloc.c: Likewise.
20798         * lib/unistr/u32-cpy.c: Likewise.
20799         * lib/unistr/u32-endswith.c: Likewise.
20800         * lib/unistr/u32-mblen.c: Likewise.
20801         * lib/unistr/u32-mbsnlen.c: Likewise.
20802         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
20803         * lib/unistr/u32-mbtouc.c: Likewise.
20804         * lib/unistr/u32-mbtoucr.c: Likewise.
20805         * lib/unistr/u32-move.c: Likewise.
20806         * lib/unistr/u32-next.c: Likewise.
20807         * lib/unistr/u32-prev.c: Likewise.
20808         * lib/unistr/u32-set.c: Likewise.
20809         * lib/unistr/u32-startswith.c: Likewise.
20810         * lib/unistr/u32-stpcpy.c: Likewise.
20811         * lib/unistr/u32-stpncpy.c: Likewise.
20812         * lib/unistr/u32-strcat.c: Likewise.
20813         * lib/unistr/u32-strchr.c: Likewise.
20814         * lib/unistr/u32-strcmp.c: Likewise.
20815         * lib/unistr/u32-strcpy.c: Likewise.
20816         * lib/unistr/u32-strcspn.c: Likewise.
20817         * lib/unistr/u32-strdup.c: Likewise.
20818         * lib/unistr/u32-strlen.c: Likewise.
20819         * lib/unistr/u32-strmblen.c: Likewise.
20820         * lib/unistr/u32-strmbtouc.c: Likewise.
20821         * lib/unistr/u32-strncat.c: Likewise.
20822         * lib/unistr/u32-strncmp.c: Likewise.
20823         * lib/unistr/u32-strncpy.c: Likewise.
20824         * lib/unistr/u32-strnlen.c: Likewise.
20825         * lib/unistr/u32-strpbrk.c: Likewise.
20826         * lib/unistr/u32-strrchr.c: Likewise.
20827         * lib/unistr/u32-strspn.c: Likewise.
20828         * lib/unistr/u32-strstr.c: Likewise.
20829         * lib/unistr/u32-strtok.c: Likewise.
20830         * lib/unistr/u32-to-u16.c: Likewise.
20831         * lib/unistr/u32-to-u8.c: Likewise.
20832         * lib/unistr/u32-uctomb.c: Likewise.
20833         * lib/unistr/u8-check.c: Likewise.
20834         * lib/unistr/u8-chr.c: Likewise.
20835         * lib/unistr/u8-cmp.c: Likewise.
20836         * lib/unistr/u8-cpy-alloc.c: Likewise.
20837         * lib/unistr/u8-cpy.c: Likewise.
20838         * lib/unistr/u8-endswith.c: Likewise.
20839         * lib/unistr/u8-mblen.c: Likewise.
20840         * lib/unistr/u8-mbsnlen.c: Likewise.
20841         * lib/unistr/u8-mbtouc-aux.c: Likewise.
20842         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
20843         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
20844         * lib/unistr/u8-mbtouc.c: Likewise.
20845         * lib/unistr/u8-mbtoucr.c: Likewise.
20846         * lib/unistr/u8-move.c: Likewise.
20847         * lib/unistr/u8-next.c: Likewise.
20848         * lib/unistr/u8-prev.c: Likewise.
20849         * lib/unistr/u8-set.c: Likewise.
20850         * lib/unistr/u8-startswith.c: Likewise.
20851         * lib/unistr/u8-stpcpy.c: Likewise.
20852         * lib/unistr/u8-stpncpy.c: Likewise.
20853         * lib/unistr/u8-strcat.c: Likewise.
20854         * lib/unistr/u8-strchr.c: Likewise.
20855         * lib/unistr/u8-strcmp.c: Likewise.
20856         * lib/unistr/u8-strcpy.c: Likewise.
20857         * lib/unistr/u8-strcspn.c: Likewise.
20858         * lib/unistr/u8-strdup.c: Likewise.
20859         * lib/unistr/u8-strlen.c: Likewise.
20860         * lib/unistr/u8-strmblen.c: Likewise.
20861         * lib/unistr/u8-strmbtouc.c: Likewise.
20862         * lib/unistr/u8-strncat.c: Likewise.
20863         * lib/unistr/u8-strncmp.c: Likewise.
20864         * lib/unistr/u8-strncpy.c: Likewise.
20865         * lib/unistr/u8-strnlen.c: Likewise.
20866         * lib/unistr/u8-strpbrk.c: Likewise.
20867         * lib/unistr/u8-strrchr.c: Likewise.
20868         * lib/unistr/u8-strspn.c: Likewise.
20869         * lib/unistr/u8-strstr.c: Likewise.
20870         * lib/unistr/u8-strtok.c: Likewise.
20871         * lib/unistr/u8-to-u16.c: Likewise.
20872         * lib/unistr/u8-to-u32.c: Likewise.
20873         * lib/unistr/u8-uctomb-aux.c: Likewise.
20874         * lib/unistr/u8-uctomb.c: Likewise.
20875         * lib/unitypes.h: Likewise.
20876         * lib/uniwidth.h: Likewise.
20877         * lib/uniwidth/cjk.h: Likewise.
20878         * lib/uniwidth/u16-strwidth.c: Likewise.
20879         * lib/uniwidth/u16-width.c: Likewise.
20880         * lib/uniwidth/u32-strwidth.c: Likewise.
20881         * lib/uniwidth/u32-width.c: Likewise.
20882         * lib/uniwidth/u8-strwidth.c: Likewise.
20883         * lib/uniwidth/u8-width.c: Likewise.
20884         * lib/uniwidth/width.c: Likewise.
20885
20886 2007-10-07  Bruno Haible  <bruno@clisp.org>
20887
20888         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
20889         The file is still under LGPL (see modules/inttypes).
20890
20891 2007-10-06  Bruno Haible  <bruno@clisp.org>
20892
20893         * modules/trunc (Dependencies): Add 'extensions'.
20894         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
20895         Reported by Ben Pfaff <blp@gnu.org>.
20896
20897 2007-10-06  Bruno Haible  <bruno@clisp.org>
20898
20899         * modules/freopen-tests: New file.
20900         * tests/test-freopen.c: New file.
20901
20902         * modules/fopen-tests: New file.
20903         * tests/test-fopen.c: New file.
20904
20905         * modules/fopen: New file.
20906         * lib/fopen.c: New file.
20907         * m4/fopen.m4: New file.
20908         * modules/freopen: New file.
20909         * lib/freopen.c: New file.
20910         * m4/freopen.m4: New file.
20911         * lib/stdio.in.h (fopen, freopen): New declarations.
20912         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
20913         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
20914         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
20915         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
20916         * doc/functions/fopen.texi: Mention the 'fopen' module.
20917         * doc/functions/freopen.texi: Mention the 'freopen' module.
20918
20919 2007-10-06  Bruno Haible  <bruno@clisp.org>
20920
20921         * modules/open-tests: New file.
20922         * tests/test-open.c: New file.
20923
20924         * modules/open: New file.
20925         * lib/open.c: New file.
20926         * m4/open.m4: New file.
20927         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
20928         lib/open.c does.
20929         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
20930         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
20931         macros.
20932         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
20933         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
20934         REPLACE_OPEN.
20935         * doc/functions/open.texi: Mention the 'open' module.
20936
20937 2007-10-04  Bruno Haible  <bruno@clisp.org>
20938
20939         * modules/ceill-tests: New file.
20940         * tests/test-ceill.c: New file.
20941
20942         * modules/ceill: New file.
20943         * lib/ceill.c: Replace entire file.
20944         * m4/ceill.m4: New file.
20945         * lib/math.in.h (ceill): Replace declaration.
20946         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
20947         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
20948         * doc/functions/ceill.texi: Mention the 'ceill' module.
20949         * modules/mathl (Files): Remove lib/ceill.c.
20950         (Depends-on): Add ceill.
20951
20952 2007-10-04  Bruno Haible  <bruno@clisp.org>
20953
20954         * modules/ceilf-tests: New file.
20955         * tests/test-ceilf.c: New file.
20956
20957         * modules/ceilf: New file.
20958         * lib/ceil.c: New file.
20959         * lib/ceilf.c: New file.
20960         * m4/ceilf.m4: New file.
20961         * lib/math.in.h (ceilf): New declaration.
20962         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
20963         HAVE_DECL_CEILF.
20964         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
20965         HAVE_DECL_CEILF.
20966         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
20967
20968 2007-10-04  Bruno Haible  <bruno@clisp.org>
20969
20970         * modules/floorl-tests: New file.
20971         * tests/test-floorl.c: New file.
20972
20973         * modules/floorl: New file.
20974         * lib/floorl.c: Replace entire file.
20975         * m4/floorl.m4: New file.
20976         * lib/math.in.h (floorl): Replace declaration.
20977         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
20978         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
20979         * doc/functions/floorl.texi: Mention the 'floorl' module.
20980         * modules/mathl (Files): Remove lib/floorl.c.
20981         (Depends-on): Add floorl.
20982
20983 2007-10-04  Bruno Haible  <bruno@clisp.org>
20984
20985         * modules/floorf-tests: New file.
20986         * tests/test-floorf.c: New file.
20987
20988         * modules/floorf: New file.
20989         * lib/floor.c: New file.
20990         * lib/floorf.c: New file.
20991         * m4/floorf.m4: New file.
20992         * lib/math.in.h (floorf): New declaration.
20993         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
20994         HAVE_DECL_FLOORF.
20995         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
20996         HAVE_DECL_FLOORF.
20997         * doc/functions/floorf.texi: Mention the 'floorf' module.
20998
20999 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
21000             Bruno Haible  <bruno@clisp.org>
21001
21002         Advertise for the Git server instead of the CVS server.
21003         * doc/gnulib-intro.texi (Steady Development): Mention the Git
21004         repository instead of the CVS one.
21005         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
21006         about all VCS systems generically.
21007         * doc/gnulib.texi (Introduction): Capitalize `Git'.
21008
21009 2007-10-04  Bruno Haible  <bruno@clisp.org>
21010
21011         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
21012         means.
21013         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
21014
21015 2007-10-04  Bruno Haible  <bruno@clisp.org>
21016
21017         * modules/truncl-tests: New file.
21018         * tests/test-truncl.c: New file.
21019
21020         * modules/truncl: New file.
21021         * lib/truncl.c: New file.
21022         * m4/truncl.m4: New file.
21023         * lib/math.in.h (truncl): New declaration.
21024         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
21025         HAVE_DECL_TRUNCL.
21026         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
21027         HAVE_DECL_TRUNCL.
21028         * doc/functions/truncl.texi: Mention the 'truncl' module.
21029
21030 2007-10-04  Bruno Haible  <bruno@clisp.org>
21031
21032         * modules/truncf-tests: New file.
21033         * tests/test-truncf.c: New file.
21034
21035         * modules/truncf: New file.
21036         * lib/trunc.c: Make paramerizable through USE_* macros.
21037         * lib/truncf.c: New file.
21038         * m4/truncf.m4: New file.
21039         * lib/math.in.h (truncf): New declaration.
21040         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
21041         HAVE_DECL_TRUNCF.
21042         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
21043         HAVE_DECL_TRUNCF.
21044         * doc/functions/truncf.texi: Mention the 'truncf' module.
21045
21046 2007-10-03  Bruno Haible  <bruno@clisp.org>
21047
21048         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
21049         augmentation also for tests modules.
21050         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
21051         * modules/atexit-tests (Makefile.am): Likewise.
21052         * modules/binary-io-tests (Makefile.am): Likewise.
21053         * modules/c-strcase-tests (Makefile.am): Likewise.
21054         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
21055         * modules/canonicalize-tests (Makefile.am): Likewise.
21056         * modules/closein-tests (Makefile.am): Likewise.
21057         * modules/fprintf-posix-tests (Makefile.am): Likewise.
21058         * modules/freadahead-tests (Makefile.am): Likewise.
21059         * modules/fseek-tests (Makefile.am): Likewise.
21060         * modules/fseeko-tests (Makefile.am): Likewise.
21061         * modules/ftell-tests (Makefile.am): Likewise.
21062         * modules/ftello-tests (Makefile.am): Likewise.
21063         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
21064         * modules/isnanl-tests (Makefile.am): Likewise.
21065         * modules/lseek-tests (Makefile.am): Likewise.
21066         * modules/mbscasecmp-tests (Makefile.am): Likewise.
21067         * modules/mbscasestr-tests (Makefile.am): Likewise.
21068         * modules/mbschr-tests (Makefile.am): Likewise.
21069         * modules/mbscspn-tests (Makefile.am): Likewise.
21070         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
21071         * modules/mbspbrk-tests (Makefile.am): Likewise.
21072         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
21073         * modules/mbsrchr-tests (Makefile.am): Likewise.
21074         * modules/mbsspn-tests (Makefile.am): Likewise.
21075         * modules/mbsstr-tests (Makefile.am): Likewise.
21076         * modules/printf-posix-tests (Makefile.am): Likewise.
21077         * modules/snprintf-posix-tests (Makefile.am): Likewise.
21078         * modules/sprintf-posix-tests (Makefile.am): Likewise.
21079         * modules/tsearch-tests (Makefile.am): Likewise.
21080         * modules/uniname/uniname-tests (Makefile.am): Likewise.
21081         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
21082         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
21083         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
21084         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
21085         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
21086         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
21087         * modules/vprintf-posix-tests (Makefile.am): Likewise.
21088         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
21089         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
21090         * modules/xstrtoimax-tests (Makefile.am): Likewise.
21091         * modules/xstrtol-tests (Makefile.am): Likewise.
21092         * modules/xstrtoumax-tests (Makefile.am): Likewise.
21093         * modules/yesno-tests (Makefile.am): Likewise.
21094
21095 2007-10-03  Bruno Haible  <bruno@clisp.org>
21096
21097         * modules/trunc-tests: New file.
21098         * tests/test-trunc.c: New file.
21099
21100         * modules/trunc: New file.
21101         * lib/trunc.c: New file.
21102         * m4/trunc.m4: New file.
21103         * lib/math.in.h (trunc): New declaration.
21104         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
21105         HAVE_DECL_TRUNC.
21106         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
21107         HAVE_DECL_TRUNC.
21108         * doc/functions/trunc.texi: Mention the 'trunc' module.
21109
21110 2007-10-03  Bruno Haible  <bruno@clisp.org>
21111
21112         * tests/test-fpending.c: New file, mostly copied
21113         from coreutils/lib/t-fpending.c.
21114         * modules/fpending-tests: New file.
21115
21116 2007-10-03  Bruno Haible  <bruno@clisp.org>
21117
21118         Port the stdio extensions to QNX (untested).
21119         * lib/fseterr.c (fseterr): Add support for QNX.
21120         * lib/fbufmode.c (fbufmode): Likewise.
21121         * lib/freadable.c (freadable): Likewise.
21122         * lib/fwritable.c (fwritable): Likewise.
21123         * lib/freading.c (freading): Likewise.
21124         * lib/fwriting.c (fwriting): Likewise.
21125         * lib/freadahead.c (freadahed): Likewise.
21126         * lib/fpurge.c (fpurge): Likewise.
21127         * lib/fseeko.c (rpl_fseeko): Likewise.
21128
21129 2007-10-03  Bruno Haible  <bruno@clisp.org>
21130             Jim Meyering  <jim@meyering.net>
21131             Eric Blake  <ebb9@byu.net>
21132
21133         * doc/relocatable.texi: Use @command instead of @program.
21134
21135 2007-10-02  Jim Meyering  <jim@meyering.net>
21136
21137         Perform one more "_.h" -> ".in.h" substitution.
21138         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
21139         instead of unistd_.h here, too.
21140
21141 2007-10-01  Bruno Haible  <bruno@clisp.org>
21142
21143         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
21144         Needed for the alloca-opt module.
21145
21146 2007-09-30  Bruno Haible  <bruno@clisp.org>
21147
21148         * lib/alloca.in.h: Renamed from lib/alloca_.h.
21149         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
21150         alloca_.h.
21151         * lib/argz.in.h: Renamed from lib/argz_.h.
21152         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
21153         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
21154         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
21155         byteswap_.h.
21156         * lib/dirent.in.h: Renamed from lib/dirent_.h.
21157         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
21158         dirent_.h.
21159         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
21160         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
21161         fcntl_.h.
21162         * lib/float.in.h: Renamed from lib/float_.h.
21163         * modules/float (Files, Makefile.am): Use float.in.h instead of
21164         float_.h.
21165         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
21166         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
21167         fnmatch_.h.
21168         * lib/getopt.in.h: Renamed from lib/getopt_.h.
21169         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
21170         getopt_.h.
21171         * lib/glob.in.h: Renamed from lib/glob_.h.
21172         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
21173         * lib/iconv.in.h: Renamed from lib/iconv_.h.
21174         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
21175         iconv_.h.
21176         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
21177         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
21178         inttypes_.h.
21179         * lib/locale.in.h: Renamed from lib/locale_.h.
21180         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
21181         locale_.h.
21182         * lib/math.in.h: Renamed from lib/math_.h.
21183         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
21184         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
21185         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
21186         of netinet_in_.h. Add dependency.
21187         * lib/poll.in.h: Renamed from lib/poll_.h.
21188         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
21189         * lib/search.in.h: Renamed from lib/search_.h.
21190         * modules/search (Files, Makefile.am): Use search.in.h instead of
21191         search_.h.
21192         * lib/signal.in.h: Renamed from lib/signal_.h.
21193         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
21194         _signal.h.
21195         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
21196         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
21197         stdbool_.h.
21198         * lib/stdint.in.h: Renamed from lib/stdint_.h.
21199         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
21200         stdint_.h.
21201         * lib/stdio.in.h: Renamed from lib/stdio_.h.
21202         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
21203         stdio_.h.
21204         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
21205         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
21206         stdlib_.h.
21207         * lib/string.in.h: Renamed from lib/string_.h.
21208         * modules/string (Files, Makefile.am): Use string.in.h instead of
21209         string_.h.
21210         * doc/gnulib-tool.texi (Initial import): Update.
21211         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
21212         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
21213         of sys_select_.h. Add dependency.
21214         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
21215         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
21216         of sys_socket_.h.
21217         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
21218         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
21219         sys_stat_.h.
21220         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
21221         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
21222         sys_time_.h.
21223         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
21224         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
21225         sysexits_.h.
21226         * lib/time.in.h: Renamed from lib/time_.h.
21227         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
21228         * lib/unistd.in.h: Renamed from lib/unistd_.h.
21229         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
21230         unistd_.h.
21231         * lib/wchar.in.h: Renamed from lib/wchar_.h.
21232         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
21233         wchar_.h.
21234         * lib/wctype.in.h: Renamed from lib/wctype_.h.
21235         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
21236         wctype_.h.
21237         * build-aux/bootstrap (slurp): Update.
21238         * lib/.cppi-disable: Update.
21239
21240 2007-09-30  Bruno Haible  <bruno@clisp.org>
21241
21242         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
21243         Needed on BeOS.
21244
21245 2007-09-30  Bruno Haible  <bruno@clisp.org>
21246
21247         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
21248
21249 2007-09-29  Bruno Haible  <bruno@clisp.org>
21250
21251         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
21252
21253 2007-09-29  Bruno Haible  <bruno@clisp.org>
21254
21255         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
21256         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
21257         * build-aux/install-reloc: Compile also areadlink.c.
21258         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
21259
21260 2007-09-29  Bruno Haible  <bruno@clisp.org>
21261
21262         * gnulib-tool (func_emit_initmacro_done): Indentation.
21263
21264 2007-09-29  Bruno Haible  <bruno@clisp.org>
21265
21266         * README: Add CVS checkout update instructions.
21267         Info from Bob Proulx <bob@proulx.com>.
21268
21269 2007-09-28  Eric Blake  <ebb9@byu.net>
21270
21271         Provide move-if-change.
21272         * build-aux/move-if-change: New file, based on best practice
21273         rather than any canonical upstream location.
21274
21275 2007-09-28  Jim Meyering  <jim@meyering.net>
21276
21277         Fix canonicalize loop-detection corner case.
21278         Do not attempt to stat the symlink values stored via seen_triple.
21279         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
21280         on linux-2.6.18, (but not 2.6.22).
21281         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
21282         triple_compare.  The former compares dev,ino,filename, while the latter
21283         would actually stat dirname(filename) when dev and ino were equal.
21284         * lib/hash-triple.c: Install <string.h>.
21285         (STREQ): Define.
21286         (triple_compare_ino_str): New function.
21287         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
21288
21289 2007-09-28  Eric Blake  <ebb9@byu.net>
21290
21291         Enforce that AC_REPLACE_FUNCS files exist.
21292         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
21293         override check for typos.
21294
21295         Fix test-closein on Solaris 10.
21296         * tests/test-closein.c (main): Don't assume stdin can be inherited
21297         closed on all systems.
21298         * tests/test-closein.sh: Likewise.
21299         Reported by Piotr Tarnowski.
21300
21301 2007-09-28  Jim Meyering  <jim@meyering.net>
21302
21303         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
21304
21305 2007-09-27  Jim Meyering  <jim@meyering.net>
21306
21307         canonicalize: Avoid a false-positive cycle failure.
21308         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
21309         Sort.  Remove cycle-check.
21310         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
21311         not cycle-check.h.
21312         (seen_triple): New function.
21313         (canonicalize_filename_mode): Use it instead of cycle-check.
21314         * tests/test-canonicalize.c: Add a test for this bug.
21315         * tests/test-canonicalize.sh: Set up and run the test.
21316
21317         New module, file-set, from coreutils.
21318         * modules/file-set: Define it.
21319         * lib/file-set.c, lib/file-set.h: Implement.
21320
21321         New module, hash-triple, from coreutils.
21322         * modules/hash-triple: Define it.
21323         * lib/hash-triple.c, lib/hash-triple.h: Implement.
21324
21325 2007-09-25  Eric Blake  <ebb9@byu.net>
21326
21327         Fix strerror on Interix.
21328         * lib/string_.h (strerror): Declare replacement.
21329         * doc/functions/strerror.texi (strerror): Document the Interix
21330         shortcoming.
21331         * modules/string (Makefile.am): Support new hooks.
21332         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
21333         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
21334         gl_FUNC_STRERROR_SEPARATE.
21335         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
21336         * lib/strerror.c (rpl_strerror): Provide replacement.
21337         * modules/strerror (Depends-on): Add string.
21338         (configure.ac): Detect use of module.
21339         * tests/test-strerror.c: New file.
21340         * modules/strerror-tests: New test module.
21341         * modules/argp (Depends-on): Add strerror.
21342         * modules/error (Depends-on): Likewise.
21343         Reported by Martin Koeppe.
21344
21345 2007-09-24  Bruno Haible  <bruno@clisp.org>
21346
21347         * README: Update git instructions.
21348
21349 2007-09-24  Eric Blake  <ebb9@byu.net>
21350
21351         Revert fpending breakage from 2007-09-08.
21352         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
21353         __fpending.c.
21354
21355 2007-09-24  Jim Meyering  <jim@meyering.net>
21356
21357         filenamecat.c: Add a test.
21358         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
21359         showing how the function works when DIR is the empty string.
21360
21361 2007-09-21  Simon Josefsson  <simon@josefsson.org>
21362
21363         * tests/test-canonicalize.sh: Turn on executable bit.
21364
21365 2007-09-19  Eric Blake  <ebb9@byu.net>
21366
21367         * README: Update CVS instructions.
21368
21369 2007-09-18  Bruno Haible  <bruno@clisp.org>
21370
21371         * modules/areadlink: New file.
21372         * lib/areadlink.h (areadlink): New declaration.
21373         * lib/areadlink.c: New file, based on lib/xreadlink.c.
21374
21375 2007-09-17  Jim Meyering  <jim@meyering.net>
21376
21377         * lib/savewd.c (ESTALE) [!defined]: Define.
21378         Reported to be required on Interix by Martin Koeppe.
21379
21380 2007-09-17  Bruno Haible  <bruno@clisp.org>
21381
21382         * gnulib-tool (func_version): Use $version.
21383
21384 2007-09-16  Bruno Haible  <bruno@clisp.org>
21385
21386         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
21387         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
21388         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
21389         Reported by Greg Schafer <gschafer@zip.com.au>.
21390
21391 2007-09-15  Bruno Haible  <bruno@clisp.org>
21392
21393         * gnulib-tool (sed): Try a little harder to make bash understand the
21394         alias.
21395         Reported by Bruce Korb <bruce.korb@gmail.com>.
21396
21397 2007-09-13  Eric Blake  <ebb9@byu.net>
21398
21399         * ChangeLog: Remove conflict markers.
21400
21401 2007-09-13  Simon Josefsson  <simon@josefsson.org>
21402
21403         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
21404         Reported by Bruno Haible <bruno@clisp.org>.
21405
21406 2007-09-12  Bruno Haible  <bruno@clisp.org>
21407
21408         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
21409         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
21410         is not defined.
21411
21412 2007-09-12  Eric Blake  <ebb9@byu.net>
21413
21414         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
21415         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
21416         Autoconf definition.
21417         * modules/euidaccess (Depends-on): Add extensions, for
21418         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
21419         * modules/fnmatch (Depends-on): Likewise.
21420         * modules/getaddrinfo (Depends-on): Likewise.
21421         * modules/getdelim (Depends-on): Likewise.
21422         * modules/getline (Depends-on): Likewise.
21423         * modules/getsubopt (Depends-on): Likewise.
21424         * modules/gettext (Depends-on): Likewise.
21425         * modules/group-member (Depends-on): Likewise.
21426         * modules/mbchar (Depends-on): Likewise.
21427         * modules/memmem (Depends-on): Likewise.
21428         * modules/mempcpy (Depends-on): Likewise.
21429         * modules/memrchr (Depends-on): Likewise.
21430         * modules/pagealign_alloc (Depends-on): Likewise.
21431         * modules/readutmp (Depends-on): Likewise.
21432         * modules/stpcpy (Depends-on): Likewise.
21433         * modules/stpncpy (Depends-on): Likewise.
21434         * modules/strchrnul (Depends-on): Likewise.
21435         * modules/strndup (Depends-on): Likewise.
21436         * modules/strsep (Depends-on): Likewise.
21437         * modules/strverscmp (Depends-on): Likewise.
21438         * modules/vasprintf (Depends-on): Likewise.
21439         * modules/wcwidth (Depends-on): Likewise.
21440         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
21441         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
21442         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
21443         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
21444         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
21445         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
21446         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
21447         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
21448         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
21449         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
21450         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
21451         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
21452         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
21453         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
21454         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
21455         * m4/readutmp.m4 (gl_READUTMP): Likewise.
21456         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
21457         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
21458         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
21459         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
21460         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
21461         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
21462         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
21463         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
21464         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
21465         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
21466         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
21467         so that lock.m4 can be used in gettext without extensions module.
21468
21469 2007-09-11  Bruno Haible  <bruno@clisp.org>
21470
21471         * m4/isc-posix.m4: Remove file.
21472         Suggested by Eric Blake.
21473
21474 2007-09-11  Eric Blake  <ebb9@byu.net>
21475
21476         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
21477
21478 2007-09-10  Bruno Haible  <bruno@clisp.org>
21479
21480         * posix-modules: Fix typo in error message.
21481         Reported by Matt <mkraai@beckman.com>.
21482
21483 2007-09-09  Bruno Haible  <bruno@clisp.org>
21484
21485         * doc/functions/getdelim.texi: Update list of platforms lacking the
21486         function.
21487         * doc/functions/getline.texi: Likewise.
21488
21489 2007-09-09  Jim Meyering  <jim@meyering.net>
21490
21491         * lib/hash.c (hash_initialize): Detect calloc failure.
21492         Reported by Bruno Haible.
21493
21494 2007-09-09  Bruno Haible  <bruno@clisp.org>
21495
21496         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
21497         malloc or realloc fails.
21498
21499 2007-09-09  Bruno Haible  <bruno@clisp.org>
21500
21501         * modules/getcwd (Depends-on): Add malloc-posix.
21502         * modules/glob (Depends-on): Likewise.
21503         * modules/putenv (Depends-on): Likewise.
21504         * modules/strdup (Depends-on): Likewise.
21505         * modules/getdelim (Depends-on): Add realloc-posix.
21506         * modules/read-file (Depends-on): Likewise.
21507
21508 2007-09-09  Bruno Haible  <bruno@clisp.org>
21509
21510         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
21511         (gl_FUNC_MALLOC_POSIX): Require it.
21512         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
21513         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
21514         * modules/realloc (Files): Add m4/malloc.m4.
21515         * modules/calloc (Files): Likewise.
21516
21517 2007-09-09  Bruno Haible  <bruno@clisp.org>
21518
21519         * modules/malloc-posix: New file.
21520         * modules/malloc (Depends-on): Add malloc-posix.
21521         * lib/malloc.c: Include errno.h.
21522         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
21523         and a POSIX-compatible malloc into a single function. Set ENOMEM
21524         when returning NULL.
21525         * m4/malloc.m4: New file.
21526         * doc/functions/malloc.texi: Mention the malloc-posix module.
21527         * lib/stdlib_.h (malloc): New declaration.
21528         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
21529         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
21530         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
21531         and HAVE_MALLOC_POSIX.
21532
21533 2007-09-09  Bruno Haible  <bruno@clisp.org>
21534
21535         * modules/realloc-posix: New file.
21536         * modules/realloc (Depends-on): Add realloc-posix.
21537         * lib/realloc.c: Include errno.h.
21538         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
21539         and a POSIX-compatible realloc into a single function. Set ENOMEM
21540         when returning NULL.
21541         * m4/realloc.m4: New file.
21542         * doc/functions/realloc.texi: Mention the realloc-posix module.
21543         * lib/stdlib_.h (realloc): New declaration.
21544         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
21545         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
21546         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
21547         and HAVE_REALLOC_POSIX.
21548
21549 2007-09-09  Bruno Haible  <bruno@clisp.org>
21550
21551         * modules/calloc-posix: New file.
21552         * modules/calloc (Depends-on): Add calloc-posix.
21553         * lib/calloc.c: Include errno.h.
21554         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
21555         and a POSIX-compatible calloc into a single function. Set ENOMEM
21556         when returning NULL.
21557         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
21558         * doc/functions/calloc.texi: Mention the calloc-posix module.
21559         * lib/stdlib_.h (calloc): New declaration.
21560         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
21561         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
21562         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
21563         and HAVE_CALLOC_POSIX.
21564
21565 2007-09-09  Bruno Haible  <bruno@clisp.org>
21566
21567         Allow for modules to show an arbitrary notice.
21568         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
21569         * gnulib-tool: New option --extract-notice.
21570         (func_usage): Document it.
21571         (sed_extract_prog): Update.
21572         (func_get_notice): New function.
21573         (func_modules_notice): New function.
21574         (func_import, func_create_testdir): Invoke it.
21575         Suggested by Jim Meyering.
21576
21577 2007-09-09  Bruno Haible  <bruno@clisp.org>
21578
21579         * gnulib-tool: New options --verbose, --quiet.
21580         (func_usage): Document them.
21581         (verbose): New variable.
21582         (func_execute_command): New function.
21583         (func_import): Don't show the module list and the file list if
21584         $verbose < 0.
21585         (func_create_testdir): Likewise. Use func_execute_command.
21586         (func_create_megatestdir): Use func_execute_command.
21587
21588 2007-09-08  Bruno Haible  <bruno@clisp.org>
21589
21590         * gnulib-tool (func_import): Prefer rsync over wget when available,
21591         for fetching the PO files.
21592
21593 2007-09-08  Bruno Haible  <bruno@clisp.org>
21594
21595         * posix-modules: New file. Portions copied from gnulib-tool.
21596         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
21597
21598 2007-09-08  Jim Meyering  <jim@meyering.net>
21599
21600         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
21601         * lib/fpending.h: Rename from __fpending.h.
21602         * lib/fpending.c: Rename from __fpending.c.
21603         Include "fpending.h", not "__fpending.h".
21604         * lib/__fpending.h, lib/__fpending.c: Remove files.
21605         * modules/fpending (Files): Reflect new file names.
21606         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
21607
21608 2007-09-08  Bruno Haible  <bruno@clisp.org>
21609
21610         * m4/inttypes-h.m4: Remove stub file.
21611
21612 2007-09-07  Simon Josefsson  <simon@josefsson.org>
21613
21614         * doc/headers/stdint.texi: Discuss #include_next issue.
21615
21616 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
21617
21618         * build-aux/bootstrap: Remove obsolete comment about wget --help.
21619
21620 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21621
21622         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
21623         in variable name.
21624
21625 2007-09-03  Jim Meyering  <jim@meyering.net>
21626
21627         New module: git-version-gen.
21628         * modules/git-version-gen: New file.
21629
21630         Import changes from coreutils for bootstrap script.
21631
21632         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
21633
21634         bootstrap: uses rsync to download the .po files
21635         * build-aux/bootstrap (po_download_command_format): New global.
21636         (download_po_files): Use rsync.
21637         (update_po_files): Don't remove .po files after download,
21638         so future rsync runs can take advantage of the copies.
21639
21640         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
21641
21642         Solve the unnecessary-.po-file-regeneration problem once and for all.
21643         * build-aux/bootstrap (download_po_files): New function, renamed from
21644         get_translations.  Now, downloads, but doesn't update LINGUAS.
21645         (update_po_files): New function.
21646
21647         bootstrap: Ignore more.
21648         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
21649         uniwidth to e.g., lib/.gitignore.
21650         (slurp): Handle the sys_stat_.h -> sys mapping, too.
21651
21652         * build-aux/bootstrap: New setting: vc_ignore.
21653         (insert_sorted_if_absent): Create $file if absent.
21654         Adapt to new, possibly empty, list: $vc_ignore.
21655
21656         bootstrap: generate more ignorable names
21657         * build-aux/bootstrap (slurp): When generating ignorable names,
21658         also map .sin to .sed, .gperf to .c, and .y to .c.
21659
21660 2007-09-03  Jim Meyering  <jim@meyering.net>
21661
21662         * build-aux/git-version-gen: New file, from coreutils.  For details, see
21663         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
21664
21665 2007-09-02  Bruno Haible  <bruno@clisp.org>
21666
21667         Fix mis-recognition of 'mcs' on QNX 6.
21668         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
21669         output contains the string "Mono".
21670         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
21671         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
21672
21673 2007-09-01  Bruno Haible  <bruno@clisp.org>
21674
21675         Fix collision between uniwidth/* and linebreak modules.
21676         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
21677         u32_width): Remove declarations.
21678         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
21679         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
21680         streq3, streq2, streq1, streq0): Remove functions.
21681         (STREQ): Remove macro.
21682         (is_cjk_encoding): Remove function.
21683         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
21684         (uc_width, u8_width, u16_width, u32_width): Remove functions.
21685         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
21686         * NEWS: Document the change.
21687
21688 2007-09-01  Bruno Haible  <bruno@clisp.org>
21689
21690         * lib/streq.h: Add double-inclusion guard.
21691
21692 2007-09-01  Karl Berry  <karl@gnu.org>
21693
21694         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
21695
21696 2007-08-28  Jim Meyering  <jim@meyering.net>
21697
21698         Rename mreadlink_with_size to areadlink_with_size.
21699         * NEWS: Document the change.
21700         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
21701         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
21702         * lib/mreadlink.h: Rename this to...
21703         * lib/areadlink.h: ...this.
21704         * modules/mreadlink-with-size: Rename this to...
21705         * modules/areadlink-with-size: ...this.
21706         * lib/canonicalize.c: Reflect the renaming.
21707         * modules/canonicalize: Likewise.
21708
21709 2007-08-26  Bruno Haible  <bruno@clisp.org>
21710
21711         * gnulib-tool (func_import): When deciding which files to remove,
21712         consider also dangling symbolic links.
21713         Reported by Eric Blake.
21714
21715 2007-08-26  Bruno Haible  <bruno@clisp.org>
21716
21717         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
21718
21719 2007-08-23  Simon Josefsson  <simon@josefsson.org>
21720
21721         * lib/readline.c: Don't include getline.h, the prototype is now
21722         found in stdio.h.
21723
21724 2007-08-23  Jim Meyering  <jim@meyering.net>
21725
21726         Getdelim touchup.
21727         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
21728         around the funlockfile call, since funlockfile never sets errno.
21729         Don't set errno upon failed realloc.
21730
21731 2007-08-22  Eric Blake  <ebb9@byu.net>
21732
21733         Getline touchups.
21734         * lib/getdelim.c (getdelim): Revert regression that required *n to
21735         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
21736         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
21737         getdelim, rather than whether implementation is missing.
21738         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
21739         * lib/stdio_.h (getline): Also declare if replacement is
21740         required.
21741         * doc/functions/getdelim.texi: New file.
21742         * doc/functions/getline.texi: Likewise.
21743         * doc/gnulib.texi (Function Substitutes): Add new files.
21744         Reported by Bruno Haible.
21745
21746 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
21747
21748         * users.txt: Add Guile.
21749
21750 2007-08-22  Eric Blake  <ebb9@byu.net>
21751
21752         * tests/test-getdelim.c (main): Use remove, not unlink.
21753         * tests/test-getline.c (main): Likewise.
21754
21755         Move getline and getdelim into stdio.h, per POSIX 200x.
21756         * modules/getline (Files): Remove getline.h.
21757         (Depends-on): Add stdio.
21758         (configure.ac): Add module indicator.
21759         * modules/getdelim (Files): Remove getdelim.h.
21760         (Depends-on): Add stdio.
21761         (configure.ac): Add module indicator.
21762         * modules/stdio (Makefile.am): Work with new indicators.
21763         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
21764         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
21765         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
21766         * lib/getdelim.h: Delete.
21767         * lib/getline.h: Delete.
21768         * lib/stdio_.h (getdelim, getline): Declare.
21769         * modules/getdelim-tests: New module.
21770         * modules/getline-tests: Likewise.
21771         * tests/test-getdelim.c: New file.
21772         * tests/test-getline.c: Likewise.
21773         * NEWS: Document the change.
21774         * lib/getline.c: Update choice of header.
21775         * lib/csharpcomp.c: Likewise.
21776         * lib/getpass.c: Likewise.
21777         * lib/javacomp.c: Likewise.
21778         * lib/javaversion.c: Likewise.
21779         * lib/yesno.c: Likewise.
21780         * lib/getdelim.c: Likewise.
21781         (getdelim): Set errno on failure, and avoid memory leak.
21782
21783 2007-08-19  Bruno Haible  <bruno@clisp.org>
21784
21785         * modules/closein (Depends-on): Add freadahead.
21786         * lib/closein.c: Include freadahead.h.
21787         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
21788         is zero.
21789
21790 2007-08-19  Bruno Haible  <bruno@clisp.org>
21791
21792         * modules/freadahead-tests: New file.
21793         * tests/test-freadahead.sh: New file.
21794         * tests/test-freadahead.c: New file.
21795
21796         * modules/freadahead: New file.
21797         * lib/freadahead.h: New file.
21798         * lib/freadahead.c: New file.
21799         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
21800         fbufmode, fpurge, freadable, fwritable.
21801
21802 2007-08-19  Eric Blake  <ebb9@byu.net>
21803
21804         Test yesno in combination with closein.
21805         * lib/yesno.c (yesno): Document use of stdin.
21806         * modules/yesno-tests (Files): New module.
21807         * tests/test-yesno.c (main): New file.
21808         * tests/test-yesno.sh: Likewise.
21809
21810 2007-08-19  Bruno Haible  <bruno@clisp.org>
21811
21812         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
21813         * lib/fseeko.c (rpl_fseeko): Likewise.
21814         * lib/fseterr.c (fseterr): Likewise.
21815
21816 2007-08-19  Bruno Haible  <bruno@clisp.org>
21817
21818         * tests/test-lseek.c (main): Disable a test for BeOS.
21819         * doc/functions/lseek.texi: Document the BeOS bug.
21820
21821 2007-08-19  Bruno Haible  <bruno@clisp.org>
21822             Eric Blake  <ebb9@byu.net>
21823
21824         * lib/lseek.c: Include <sys/stat.h>.
21825         (rpl_lseek): Add workaround code also for Unix platforms.
21826         Needed for BeOS.
21827         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
21828         * doc/functions/lseek.texi: Document BeOS definiency.
21829
21830 2007-08-18  Bruno Haible  <bruno@clisp.org>
21831
21832         * modules/fstrcmp-tests: New file.
21833         * tests/test-fstrcmp.c: New file.
21834
21835 2007-08-18  Bruno Haible  <bruno@clisp.org>
21836
21837         * modules/fstrcmp: New file, from GNU gettext with modifications.
21838         * lib/fstrcmp.h: New file, from GNU gettext.
21839         * lib/fstrcmp.c: New file, from GNU gettext.
21840         * MODULES.html.sh (String handling): Add fstrcmp.
21841
21842 2007-08-18  Bruno Haible  <bruno@clisp.org>
21843
21844         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
21845         'bool'.
21846         (diag, compareseq): Remove const from the ctxt argument.
21847         (USE_HEURISTIC): Undefine at the end.
21848
21849 2007-08-18  Jim Meyering  <jim@meyering.net>
21850
21851         New file: lib/idcache.h
21852         * NEWS: Mention the addition.
21853         * modules/idcache (Files): Add lib/idcache.h
21854         * lib/idcache.c: Include "idcache.h".
21855         Don't include <sys/types.h>.
21856         Add a FIXME comment.
21857         Move file-scoped "static" declarations to the top.
21858         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
21859
21860 2007-08-17  Bruno Haible  <bruno@clisp.org>
21861         and Paul Eggert  <eggert@cs.ucla.edu>
21862
21863         * MODULES.html.sh: Add diffseq.
21864         * modules/diffseq: New file.
21865         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
21866         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
21867
21868 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21869
21870         Import changes from coreutils for bootstrap script.
21871
21872         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
21873
21874         * build-aux/bootstrap (slurp): Work even in environments where
21875         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
21876         current code does not slurp files whose names start with ".", and
21877         this looks like it might be a troublesome area.
21878
21879         2007-07-11  Jim Meyering  <jim@meyering.net>
21880
21881         If there's a GPL vN copyright comment, require that N == 3.
21882
21883         2007-07-08  Jim Meyering  <jim@meyering.net>
21884
21885         Run the coreutils-specific code only if tests/Makefile.am.in exists.
21886         * build-aux/bootstrap (mam_template): Move definition out of loop.
21887
21888         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
21889
21890         * build-aux/bootstrap (symlink_to_dir): Rename function from
21891         symlink_to_gnulib.  Add a directory parameter.  Update all
21892         callers.
21893         (cp_mark_as_generated): Also check for -- and link to -- files in
21894         gl/.
21895
21896         2007-07-08  Jim Meyering  <jim@meyering.net>
21897
21898         Adapt to deeper hierarchy in gnulib.
21899         * build-aux/bootstrap (symlink_to_dir): If the destination
21900         directory doesn't exist, create it. This is required at least for
21901         "lib/uniwidth/cjk.h".
21902
21903         2007-05-15  Jim Meyering  <jim@meyering.net>
21904
21905         * build-aux/bootstrap: Now that generated Makefile.am files
21906         are no longer under version control, they must be created at
21907         bootstrap time.
21908
21909 2007-08-14  Ben Pfaff  <blp@gnu.org>
21910
21911         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
21912
21913 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
21914
21915         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
21916         given the changes below.
21917         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
21918         even on hosts that have padding bits beyond the supported 64.
21919
21920 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
21921
21922         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
21923         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
21924         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
21925         depends on it.
21926         (xstrtol_error): Remove.
21927         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
21928         but with a different signature.
21929         (ATTRIBUTE_NORETURN, __attribute__): New macros.
21930         * lib/xstrtol-error.c: Include exitfail.h.
21931         (xstrtol_fatal): New function, with a different signature from the
21932         old xstrtol_error, so that the caller need not worry about passing
21933         in an exit status, or about storage management of the option argument.
21934         (xstrtol_error): Now a static function.  Redo signature to
21935         implement xstrtol_fatal.  Output the correct number of hyphens in
21936         front of the option so that the caller need not worry about
21937         storage management.
21938         (N_): New macro.
21939         (_): Remove; not used now.
21940         * modules/xstrtol: Depend on getopt.
21941         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
21942         of old STRTOL_FATAL_ERROR macro.
21943         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
21944         of test program.
21945         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
21946         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
21947
21948 2007-08-08  Eric Blake  <ebb9@byu.net>
21949
21950         * lib/xstrtol-error.c: Add missing include.
21951
21952         Move xstrtol messages into gnulib domain, when --pobase is used.
21953         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
21954         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
21955         * modules/xstrtol (Files): Distribute new file.
21956         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
21957         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
21958         * tests/test-xstrtol.c: ...into new file.
21959         * tests/test-xstrtoul.c: Also test xstrtoul.
21960         * tests/test-xstrtoimax.c: Also test xstrtoimax.
21961         * tests/test-xstrtoumax.c: Also test xstrtoumax.
21962         * tests/test-xstrtol.sh: Drive the tests.
21963         * tests/test-xstrtoimax.sh: Likewise.
21964         * tests/test-xstrtoumax.sh: Likewise.
21965         * modules/xstrtol-tests: New module.
21966         * modules/xstrtoimax-tests: Likewise.
21967         * modules/xstrtoumax-tests: Likewise.
21968
21969 2007-08-08  Jim Meyering  <jim@meyering.net>
21970
21971         New function: mfile_name_concat.
21972         * lib/filenamecat.c (mfile_name_concat): New function, just like
21973         file_name_concat, but return NULL upon failure rather than exiting
21974         with a diagnostic.
21975         * lib/filenamecat.h: Declare it.
21976
21977 2007-08-07  Bruno Haible  <bruno@clisp.org>
21978
21979         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
21980         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
21981         warning from gcc.
21982         Reported by Eric Blake.
21983
21984 2007-08-07  Simon Josefsson  <simon@josefsson.org>
21985
21986         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
21987         * modules/crypto/arcfour (License): Likewise.
21988         * modules/crypto/des-tests (License): Likewise.
21989         * modules/crypto/gc-arctwo-tests (License): Likewise.
21990         * modules/crypto/gc-des-tests (License): Likewise.
21991         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
21992         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
21993         * modules/crypto/gc-md2-tests (License): Likewise.
21994         * modules/crypto/gc-md4-tests (License): Likewise.
21995         * modules/crypto/gc-md5-tests (License): Likewise.
21996         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
21997         * modules/crypto/gc-rijndael-tests (License): Likewise.
21998         * modules/crypto/gc-sha1-tests (License): Likewise.
21999         * modules/crypto/gc-tests (License): Likewise.
22000         * modules/crypto/hmac-md5 (License): Likewise.
22001         * modules/crypto/hmac-sha1 (License): Likewise.
22002         * modules/crypto/md2-tests (License): Likewise.
22003         * modules/crypto/md4-tests (License): Likewise.
22004         * modules/crypto/md5 (License): Likewise.
22005         * modules/crypto/rijndael (License): Likewise.
22006         * modules/crypto/sha1 (License): Likewise.
22007         * modules/memxor (License): Likewise.
22008
22009 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
22010         and Bruno Haible  <bruno@clisp.org>
22011
22012         * NEWS: Describe interface changes to human, xstrtol.
22013         * lib/human.h: Include <xstrtol.h>.
22014         (human_options): Return enum strtol_error, not int.  Remove
22015         bool arg; take int * instead.
22016         * lib/human.c: Don't include "gettext.h".
22017         (_): Remove; no longer used.
22018         Don't include <xstrtol.h>, since human.h does it.
22019         (human_options): Adjust to abovementioned interface changes.
22020         Do not report error to stderr; that's now the caller's
22021         responsibility.
22022         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
22023         interface change.
22024         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
22025         Str, Argument_type_string.  All uses changed.  Put " argument"
22026         in diagnostics to make them clearer.  Change wording of suffix
22027         message for clarity.
22028         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
22029         Argument_type_string.
22030         (STRTOL_FATAL_WARN): Remove; no longer used.
22031         * modules/human (Depends-on): Remove gettext-h.
22032
22033 2007-08-06  Simon Josefsson  <simon@josefsson.org>
22034
22035         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
22036
22037 2007-07-31  Bruno Haible  <bruno@clisp.org>
22038
22039         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
22040         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
22041         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
22042
22043 2007-07-31  Bruno Haible  <bruno@clisp.org>
22044
22045         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
22046         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
22047
22048 2007-07-30  Bruno Haible  <bruno@clisp.org>
22049
22050         * modules/base64 (License): Use the synonymous term "LGPLv2+".
22051         * modules/c-ctype (License): Likewise.
22052         * modules/c-strcase (License): Likewise.
22053         * modules/check-version (License): Likewise.
22054         * modules/iconv (License): Likewise.
22055         * modules/iconv_open (License): Likewise.
22056         * modules/read-file (License): Likewise.
22057         * modules/striconv (License): Likewise.
22058         * modules/strverscmp (License): Likewise.
22059         * modules/vasprintf (License): Likewise.
22060         * modules/crypto/des (License): Likewise.
22061         * modules/crypto/gc (License): Likewise.
22062         * modules/crypto/gc-arcfour (License): Likewise.
22063         * modules/crypto/gc-arctwo (License): Likewise.
22064         * modules/crypto/gc-des (License): Likewise.
22065         * modules/crypto/gc-hmac-md5 (License): Likewise.
22066         * modules/crypto/gc-hmac-sha1 (License): Likewise.
22067         * modules/crypto/gc-md2 (License): Likewise.
22068         * modules/crypto/gc-md4 (License): Likewise.
22069         * modules/crypto/gc-md5 (License): Likewise.
22070         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
22071         * modules/crypto/gc-random (License): Likewise.
22072         * modules/crypto/gc-rijndael (License): Likewise.
22073         * modules/crypto/gc-sha1 (License): Likewise.
22074         * modules/crypto/md2 (License): Likewise.
22075         * modules/crypto/md4 (License): Likewise.
22076
22077 2007-07-30  Jim Meyering  <jim@meyering.net>
22078
22079         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
22080         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
22081         it has valid stat data.  This bug would cause du not to count the
22082         sizes of inaccessible directories.
22083         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
22084         in <http://bugzilla.redhat.com/250077>.
22085
22086 2007-07-25  Peter O'Gorman  <peter@pogma.com>
22087             Bruno Haible  <bruno@clisp.org>
22088
22089         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
22090         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
22091         #include_next, gives a diagnostic about it, but reports no error in
22092         the exit code.
22093         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
22094
22095 2007-07-24  Ben Pfaff  <blp@gnu.org>
22096
22097         Improve name: "count-one-bits" is better than "popcount".
22098         * MODULES.html.sh: Update name.
22099         * lib/popcount.h: Renamed lib/count-one-bits.h.
22100         (popcount): Renamed count_one_bits.
22101         (popcountl): Renamed count_one_bits_l.
22102         (popcountll): Renamed count_one_bits_ll.
22103         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
22104         * modules/popcount: Renamed module/count-one-bits.
22105         * modules/popcount-tests: Renamed module/count-one-bits-tests.
22106         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
22107
22108 2007-07-23  Ben Pfaff  <blp@gnu.org>
22109
22110         * lib/popcount.h (popcount32): Reduce size of constants, to allow
22111         better code generation, and add U to large constants to avoid
22112         warnings, in non-GCC case.
22113         Suggested by Bruno Haible.
22114
22115 2007-07-23  Ben Pfaff  <blp@gnu.org>
22116
22117         * lib/popcount.h: Use verify_true instead of if...abort.
22118         * modules/popcount: Depend on verify module.
22119         Suggested by Jim Meyering.
22120
22121 2007-07-23  Bruno Haible  <bruno@clisp.org>
22122
22123         * gnulib-tool (func_import): Create a .cvsignore file also when the
22124         directory is not yet in CVS but the toplevel directory is. When
22125         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
22126         Reported by Karl Berry.
22127
22128 2007-07-22  Ben Pfaff  <blp@gnu.org>
22129
22130         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
22131         case.
22132         Suggested by Eric Blake.
22133
22134 2007-07-22  Ben Pfaff  <blp@gnu.org>
22135
22136         New module: popcount.
22137         * MODULES.html.sh: Add popcount.
22138         * modules/popcount: New file.
22139         * modules/popcount-tests: New file.
22140         * tests/test-popcount.c: New file.
22141         * lib/popcount.h: New file.
22142         * m4/popcount.m4: New file.
22143
22144 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
22145
22146         * build-aux/announce-gen: Update to GPLv3.
22147
22148         * build-aux/config.guess: Update from config.
22149
22150 2007-07-21  Bruno Haible  <bruno@clisp.org>
22151
22152         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
22153         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
22154
22155 2007-07-20  Jim Meyering  <jim@meyering.net>
22156
22157         * check-module: Diagnose a self-dependency.
22158
22159 2007-07-19  Bruno Haible  <bruno@clisp.org>
22160
22161         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
22162         empty.
22163         Reported by Eric Blake.
22164
22165 2007-07-18  Bruno Haible  <bruno@clisp.org>
22166
22167         * gnulib-tool: New options --po-base, --po-domain.
22168         (func_usage): Document them.
22169         (pobase, po_domain): New variables.
22170         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
22171         DEFAULT_TEXT_DOMAIN.
22172         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
22173         (func_import): Consider pobase and po_domain. Create a po/ directory.
22174         (func_create_testdir): Set pobase and po_domain to empty.
22175         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
22176         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
22177
22178 2007-07-18  Bruno Haible  <bruno@clisp.org>
22179
22180         * gnulib-tool (func_get_automake_snippet): Synthesize also an
22181         EXTRA_DIST augmentation for files in build-aux/.
22182
22183 2007-07-16  Bruno Haible  <bruno@clisp.org>
22184
22185         * modules/lseek (License): Use the synonymous term "LGPLv2+".
22186         * modules/getdelim (License): Likewise.
22187
22188 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22189
22190         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
22191         * modules/d-type (License): Likewise.
22192         * modules/extensions (License): Likewise.
22193         * modules/fnmatch (License): Likewise.
22194         * modules/fseeko (License): Likewise.
22195         * modules/getaddrinfo (License): Likewise.
22196         * modules/getline (License): Likewise.
22197         * modules/getlogin_r (License): Likewise.
22198         * modules/getpass (License): Likewise.
22199         * modules/gettimeofday (License): Likewise.
22200         * modules/glob (License): Likewise.
22201         * modules/inet_ntop (License): Likewise.
22202         * modules/malloc (License): Likewise.
22203         * modules/malloca (License): Likewise.
22204         * modules/memmem (License): Likewise.
22205         * modules/mempcpy (License): Likewise.
22206         * modules/memset (License): Likewise.
22207         * modules/minmax (License): Likewise.
22208         * modules/mktime (License): Likewise.
22209         * modules/netinet_in (License): Likewise.
22210         * modules/pathmax (License): Likewise.
22211         * modules/poll (License): Likewise.
22212         * modules/regex (License): Likewise.
22213         * modules/snprintf (License): Likewise.
22214         * modules/stdbool (License): Likewise.
22215         * modules/stdint (License): Likewise.
22216         * modules/stdio (License): Likewise.
22217         * modules/strcase (License): Likewise.
22218         * modules/strcasestr (License): Likewise.
22219         * modules/strdup (License): Likewise.
22220         * modules/string (License): Likewise.
22221         * modules/strndup (License): Likewise.
22222         * modules/strnlen (License): Likewise.
22223         * modules/strpbrk (License): Likewise.
22224         * modules/strptime (License): Likewise.
22225         * modules/strsep (License): Likewise.
22226         * modules/sys_select (License): Likewise.
22227         * modules/sys_socket (License): Likewise.
22228         * modules/sys_stat (License): Likewise.
22229         * modules/sys_time (License): Likewise.
22230         * modules/time (License): Likewise.
22231         * modules/time_r (License): Likewise.
22232         * modules/timegm (License): Likewise.
22233         * modules/unistd (License): Likewise.
22234         * modules/vsnprintf (License): Likewise.
22235         * modules/wctype (License): Likewise.
22236
22237 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22238
22239         * modules/argz (License): LGPLv2+.
22240
22241 2007-07-15  Karl Berry  <karl@gnu.org>
22242
22243         * doc/gnulib.texi: revise node structure per new fdl.texi.
22244
22245 2007-07-14  Bruno Haible  <bruno@clisp.org>
22246
22247         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
22248         the output file.
22249         * lib/uniname/uninames.h: Regenerated.
22250
22251 2007-07-14  Karl Berry  <karl@gnu.org>
22252
22253         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
22254         omitting sectioning and index commands.
22255
22256 2007-07-13  Bruno Haible  <bruno@clisp.org>
22257
22258         New gnulib-tool option --more-symlinks.
22259         * gnulib-tool (func_usage): Document --more-symlinks.
22260         (do_copyrights): New variable.
22261         Recognize option --more-symlinks.
22262         (func_import): Don't add a copyright notice transform to
22263         sed_transform_lib_file if do_copyrights is empty.
22264
22265 2007-07-13  Bruno Haible  <bruno@clisp.org>
22266
22267         * lib/vasnprintf.c (decimal_point_char): Define also if
22268         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
22269         && !NEED_PRINTF_DIRECTIVE_A.
22270         Reported by Clemens Koller <clemens.koller@anagramm.de> via
22271         Gary V. Vaughan <gary@gnu.org>.
22272
22273 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
22274
22275         * lib/inttypes_.h: Undo previous change, since it was fixed
22276         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
22277
22278 2007-07-13  Bruno Haible  <bruno@clisp.org>
22279
22280         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
22281         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
22282
22283 2007-07-13  Jim Meyering  <jim@meyering.net>
22284
22285         df: Don't fail for Tru64's "file-on-file mount".
22286         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
22287         so we fall through and use statfs instead.  Details here:
22288         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
22289         Reported by Albert Chin.
22290
22291 2007-07-13  Bruno Haible  <bruno@clisp.org>
22292
22293         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
22294         * modules/configmake (License): Likewise.
22295         * modules/gettext (License): Likewise.
22296         * modules/gettext-h (License): Likewise.
22297         * modules/include_next (License): Likewise.
22298         * modules/link-warning (License): Likewise.
22299         * modules/localcharset (License): Likewise.
22300         * modules/localename (License): Likewise.
22301         * modules/lock (License): Likewise.
22302         * modules/relocatable-lib-lgpl (License): Likewise.
22303         * modules/size_max (License): Likewise.
22304         * modules/vasnprintf (License): Likewise.
22305         * modules/wchar (License): Likewise.
22306         * modules/xsize (License): Likewise.
22307
22308 2007-07-13  Bruno Haible  <bruno@clisp.org>
22309
22310         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
22311         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
22312
22313 2007-07-12  Bruno Haible  <bruno@clisp.org>
22314
22315         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
22316         in the modules files.
22317
22318 2007-07-11  Karl Berry  <karl@gnu.org>
22319
22320         * MODULES.html.sh (func_module): use
22321          sed -e '\|^'"${includefile}"'$|d'
22322          instead of /.../d, to avoid errors on $includefile's containing /.
22323
22324 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
22325
22326         * gnulib-tool (func_import): Avoid duplication of --avoid
22327         statements
22328         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
22329         names to `_' in variable names.
22330
22331 2007-07-10  Eric Blake  <ebb9@byu.net>
22332
22333         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
22334         * NEWS: Document this change.
22335
22336 2007-07-08  Bruno Haible  <bruno@clisp.org>
22337
22338         Update to Unicode 5.0.
22339         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
22340         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
22341         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
22342         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
22343         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
22344         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
22345         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
22346         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
22347         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
22348         U+10A3F, U+1D242..U+1D244.
22349         (nonspacing_table_ind): Update.
22350         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
22351         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
22352
22353 2007-07-08  Bruno Haible  <bruno@clisp.org>
22354
22355         Update to Unicode 5.0.
22356         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
22357         code transform. Extend the name index field of unicode_name_to_code and
22358         unicode_code_to_name from 16 to 24 bits.
22359         * lib/uniname/uniname.c (unicode_character_name,
22360         unicode_name_character): Add the range 0x12xxx to the code transform.
22361         * lib/uniname/uninames.h: Regenerated.
22362         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
22363
22364 2007-07-07  Bruno Haible  <bruno@clisp.org>
22365
22366         * modules/wcwidth-tests: New file.
22367         * tests/test-wcwidth.c: New file.
22368
22369         Work around MacOS X wcwidth() bug.
22370         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
22371         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
22372         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
22373         original wcwidth in non-UTF-8 locales.
22374         * modules/wcwidth (Depends-on): Add localcharset, streq,
22375         uniwidth/width.
22376         * doc/functions/wcwidth.texi: Update.
22377
22378 2007-07-07  Bruno Haible  <bruno@clisp.org>
22379
22380         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
22381         (wcwidth): New declaration.
22382         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
22383         macros.
22384         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
22385         here. Prepare for creating <wchar.h> unconditionally.
22386         * modules/wchar (Depends-on): Add link-warning.
22387         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
22388         REPLACE_WCWIDTH, and GL_LINK_WARNING.
22389         * lib/wcwidth.h: Remove file.
22390         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
22391         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
22392         * modules/wcwidth (Files): Remove lib/wcwidth.h.
22393         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
22394         (Include): Replace wcwidth.h with <wchar.h>.
22395         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
22396         * lib/mbchar.h: Don't include wcwidth.h.
22397         * lib/mbswidth.c: Likewise.
22398         * NEWS: Mention the change.
22399
22400 2007-07-07  Bruno Haible  <bruno@clisp.org>
22401
22402         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
22403         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
22404         definition with an external declaration.
22405         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
22406         defined as a function. Remove AC_C_INLINE requirement.
22407         * modules/wcwidth (Files): Add lib/wcwidth.c.
22408         (Makefile.am): Remove redundant statement.
22409
22410 2007-07-07  Bruno Haible  <bruno@clisp.org>
22411
22412         * MODULES.html.sh (Unicode string functions): Add the new modules.
22413
22414         * tests/uniwidth/test-u32-strwidth.c: New file.
22415         * modules/uniwidth/u32-strwidth-tests: New file.
22416
22417         * lib/uniwidth/u32-strwidth.c: New file.
22418         * modules/uniwidth/u32-strwidth: New file.
22419
22420         * tests/uniwidth/test-u16-strwidth.c: New file.
22421         * modules/uniwidth/u16-strwidth-tests: New file.
22422
22423         * lib/uniwidth/u16-strwidth.c: New file.
22424         * modules/uniwidth/u16-strwidth: New file.
22425
22426         * tests/uniwidth/test-u8-strwidth.c: New file.
22427         * modules/uniwidth/u8-strwidth-tests: New file.
22428
22429         * lib/uniwidth/u8-strwidth.c: New file.
22430         * modules/uniwidth/u8-strwidth: New file.
22431
22432         * tests/uniwidth/test-u32-width.c: New file.
22433         * modules/uniwidth/u32-width-tests: New file.
22434
22435         * lib/uniwidth/u32-width.c: New file.
22436         * modules/uniwidth/u32-width: New file.
22437
22438         * tests/uniwidth/test-u16-width.c: New file.
22439         * modules/uniwidth/u16-width-tests: New file.
22440
22441         * lib/uniwidth/u16-width.c: New file.
22442         * modules/uniwidth/u16-width: New file.
22443
22444         * tests/uniwidth/test-u8-width.c: New file.
22445         * modules/uniwidth/u8-width-tests: New file.
22446
22447         * lib/uniwidth/u8-width.c: New file.
22448         * modules/uniwidth/u8-width: New file.
22449
22450         * tests/uniwidth/test-uc_width.c: New file.
22451         * modules/uniwidth/width-tests: New file.
22452
22453         * lib/uniwidth/width.c: New file, from GNU libiconv.
22454         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
22455         * modules/uniwidth/width: New file.
22456
22457         * lib/uniwidth.h: New file, from GNU libiconv.
22458         * modules/uniwidth/base: New file.
22459
22460 2007-07-07  Bruno Haible  <bruno@clisp.org>
22461
22462         * lib/uniname.h: New file, from GNU gettext.
22463         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
22464         * lib/uniname/uninames.h: New file, from GNU gettext.
22465         * lib/uniname/uniname.c: New file, from GNU gettext.
22466         * tests/uniname/test-uninames.sh: New file.
22467         * tests/uniname/test-uninames.c: New file, from GNU gettext.
22468         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
22469         * modules/uniname/base: New file.
22470         * modules/uniname/uniname: New file.
22471         * modules/uniname/uniname-tests: New file.
22472         * MODULES.html.sh (Unicode string functions): Add the new modules.
22473
22474 2007-07-06  Bruno Haible  <bruno@clisp.org>
22475
22476         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
22477
22478 2007-07-06  Bruno Haible  <bruno@clisp.org>
22479
22480         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
22481         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
22482         includes <cygwin/sys_time.h> which includes <sys/select.h> which
22483         include <sys/time.h>.
22484         Reported by Eric Blake.
22485
22486 2007-07-06  Eric Blake  <ebb9@byu.net>
22487
22488         Fix testing canonicalize on cygwin.
22489         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
22490         Revert patch from 2007-06-19.
22491         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
22492         canonicalize module is also in use.
22493         * tests/test-canonicalize.c: New file.
22494         * tests/test-canonicalize.sh: Likewise.
22495         * modules/canonicalize-tests: Likewise.
22496
22497 2007-07-06  Jim Meyering  <jim@meyering.net>
22498
22499         * lib/getugroups.c (getugroups): Detect getgrent failure.
22500         Adjust comment to reflect reality: this function may return -1.
22501
22502 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
22503
22504         * build-aux/bootstrap (TP_URL,get_translations): Update to use
22505         the new TP address.
22506         (usage): Fix typo
22507         (gnulib_mk): New variable.
22508
22509 2007-07-05  Jim Meyering  <jim@meyering.net>
22510
22511         Don't let endgrent clobber errno, no matter how improbable.
22512         * lib/getugroups.c (getugroups): Save and restore errno around
22513         endgrent call.
22514
22515         Close the group DB even when failing with 2^31 or more members.
22516         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
22517
22518 2007-07-04  Jim Meyering  <jim@meyering.net>
22519
22520         * lib/getugroups.h: New file.
22521         * lib/getugroups.c: Include "getugroups.h".
22522         Remove uses of "register" keyword.
22523         Move local variable, "cp", down into scope where used.
22524         Give "username" parameter the "const" attribute.
22525         * modules/getugroups (Files): Add lib/getugroups.h
22526
22527 2007-07-04  Karl Berry  <karl@gnu.org>
22528
22529         * MODULES.html.sh (func_all_modules): Complete rename of
22530         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
22531
22532 2007-07-02  Bruno Haible  <bruno@clisp.org>
22533
22534         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
22535         mode, when inttypes.h comes from gnulib.
22536         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
22537
22538 2007-07-02  Simon Josefsson  <simon@josefsson.org>
22539
22540         * NEWS: Mention lgpl module name change.
22541
22542         * modules/lgpl-2.1: Renamed from lgpl.
22543
22544         * NEWS: Mention gpl module name change.
22545
22546         * modules/gpl-3.0: New file, based on gpl-2.0.
22547
22548         * modules/gpl-2.0: Renamed from gpl.
22549
22550         * modules/gpl: Fix filename, doc/gpl.texi is now found at
22551         doc/gpl-2.0.texi.
22552
22553 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
22554
22555         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
22556         #define __STDC_LIMIT_MACROS temporarily while including
22557         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
22558         Problem reported by Joel E. Denny in
22559         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
22560
22561 2007-07-01  Bruno Haible  <bruno@clisp.org>
22562
22563         * lib/unistdio.h: New file.
22564         * lib/unistdio/u-asnprintf.h: New file.
22565         * lib/unistdio/u-asprintf.h: New file.
22566         * lib/unistdio/u-printf-args.c: New file.
22567         * lib/unistdio/u-printf-args.h: New file.
22568         * lib/unistdio/u-printf-parse.h: New file.
22569         * lib/unistdio/u-snprintf.h: New file.
22570         * lib/unistdio/u-sprintf.h: New file.
22571         * lib/unistdio/u-vasprintf.h: New file.
22572         * lib/unistdio/u-vsnprintf.h: New file.
22573         * lib/unistdio/u-vsprintf.h: New file.
22574         * lib/unistdio/ulc-asnprintf.c: New file.
22575         * lib/unistdio/ulc-asprintf.c: New file.
22576         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
22577         * lib/unistdio/ulc-printf-parse.c: New file.
22578         * lib/unistdio/ulc-snprintf.c: New file.
22579         * lib/unistdio/ulc-sprintf.c: New file.
22580         * lib/unistdio/ulc-vasnprintf.c: New file.
22581         * lib/unistdio/ulc-vasprintf.c: New file.
22582         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
22583         * lib/unistdio/ulc-vsnprintf.c: New file.
22584         * lib/unistdio/ulc-vsprintf.c: New file.
22585         * lib/unistdio/u8-asnprintf.c: New file.
22586         * lib/unistdio/u8-asprintf.c: New file.
22587         * lib/unistdio/u8-printf-parse.c: New file.
22588         * lib/unistdio/u8-snprintf.c: New file.
22589         * lib/unistdio/u8-sprintf.c: New file.
22590         * lib/unistdio/u8-vasnprintf.c: New file.
22591         * lib/unistdio/u8-vasprintf.c: New file.
22592         * lib/unistdio/u8-vsnprintf.c: New file.
22593         * lib/unistdio/u8-vsprintf.c: New file.
22594         * lib/unistdio/u8-u8-asnprintf.c: New file.
22595         * lib/unistdio/u8-u8-asprintf.c: New file.
22596         * lib/unistdio/u8-u8-snprintf.c: New file.
22597         * lib/unistdio/u8-u8-sprintf.c: New file.
22598         * lib/unistdio/u8-u8-vasnprintf.c: New file.
22599         * lib/unistdio/u8-u8-vasprintf.c: New file.
22600         * lib/unistdio/u8-u8-vsnprintf.c: New file.
22601         * lib/unistdio/u8-u8-vsprintf.c: New file.
22602         * lib/unistdio/u16-asnprintf.c: New file.
22603         * lib/unistdio/u16-asprintf.c: New file.
22604         * lib/unistdio/u16-printf-parse.c: New file.
22605         * lib/unistdio/u16-snprintf.c: New file.
22606         * lib/unistdio/u16-sprintf.c: New file.
22607         * lib/unistdio/u16-vasnprintf.c: New file.
22608         * lib/unistdio/u16-vasprintf.c: New file.
22609         * lib/unistdio/u16-vsnprintf.c: New file.
22610         * lib/unistdio/u16-vsprintf.c: New file.
22611         * lib/unistdio/u16-u16-asnprintf.c: New file.
22612         * lib/unistdio/u16-u16-asprintf.c: New file.
22613         * lib/unistdio/u16-u16-snprintf.c: New file.
22614         * lib/unistdio/u16-u16-sprintf.c: New file.
22615         * lib/unistdio/u16-u16-vasnprintf.c: New file.
22616         * lib/unistdio/u16-u16-vasprintf.c: New file.
22617         * lib/unistdio/u16-u16-vsnprintf.c: New file.
22618         * lib/unistdio/u16-u16-vsprintf.c: New file.
22619         * lib/unistdio/u32-asnprintf.c: New file.
22620         * lib/unistdio/u32-asprintf.c: New file.
22621         * lib/unistdio/u32-printf-parse.c: New file.
22622         * lib/unistdio/u32-snprintf.c: New file.
22623         * lib/unistdio/u32-sprintf.c: New file.
22624         * lib/unistdio/u32-vasnprintf.c: New file.
22625         * lib/unistdio/u32-vasprintf.c: New file.
22626         * lib/unistdio/u32-vsnprintf.c: New file.
22627         * lib/unistdio/u32-vsprintf.c: New file.
22628         * lib/unistdio/u32-u32-asnprintf.c: New file.
22629         * lib/unistdio/u32-u32-asprintf.c: New file.
22630         * lib/unistdio/u32-u32-snprintf.c: New file.
22631         * lib/unistdio/u32-u32-sprintf.c: New file.
22632         * lib/unistdio/u32-u32-vasnprintf.c: New file.
22633         * lib/unistdio/u32-u32-vasprintf.c: New file.
22634         * lib/unistdio/u32-u32-vsnprintf.c: New file.
22635         * lib/unistdio/u32-u32-vsprintf.c: New file.
22636         * tests/unistdio/test-ulc-asnprintf1.c: New file.
22637         * tests/unistdio/test-ulc-asnprintf1.h: New file.
22638         * tests/unistdio/test-ulc-printf1.h: New file.
22639         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
22640         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
22641         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
22642         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
22643         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
22644         * tests/unistdio/test-ulc-vasprintf1.c: New file.
22645         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
22646         * tests/unistdio/test-ulc-vsprintf1.c: New file.
22647         * tests/unistdio/test-u8-asnprintf1.c: New file.
22648         * tests/unistdio/test-u8-asnprintf1.h: New file.
22649         * tests/unistdio/test-u8-printf1.h: New file.
22650         * tests/unistdio/test-u8-vasnprintf1.c: New file.
22651         * tests/unistdio/test-u8-vasnprintf2.c: New file.
22652         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
22653         * tests/unistdio/test-u8-vasnprintf3.c: New file.
22654         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
22655         * tests/unistdio/test-u8-vasprintf1.c: New file.
22656         * tests/unistdio/test-u8-vsnprintf1.c: New file.
22657         * tests/unistdio/test-u8-vsprintf1.c: New file.
22658         * tests/unistdio/test-u16-asnprintf1.c: New file.
22659         * tests/unistdio/test-u16-asnprintf1.h: New file.
22660         * tests/unistdio/test-u16-printf1.h: New file.
22661         * tests/unistdio/test-u16-vasnprintf1.c: New file.
22662         * tests/unistdio/test-u16-vasnprintf2.c: New file.
22663         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
22664         * tests/unistdio/test-u16-vasnprintf3.c: New file.
22665         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
22666         * tests/unistdio/test-u16-vasprintf1.c: New file.
22667         * tests/unistdio/test-u16-vsnprintf1.c: New file.
22668         * tests/unistdio/test-u16-vsprintf1.c: New file.
22669         * tests/unistdio/test-u32-asnprintf1.c: New file.
22670         * tests/unistdio/test-u32-asnprintf1.h: New file.
22671         * tests/unistdio/test-u32-printf1.h: New file.
22672         * tests/unistdio/test-u32-vasnprintf1.c: New file.
22673         * tests/unistdio/test-u32-vasnprintf2.c: New file.
22674         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
22675         * tests/unistdio/test-u32-vasnprintf3.c: New file.
22676         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
22677         * tests/unistdio/test-u32-vasprintf1.c: New file.
22678         * tests/unistdio/test-u32-vsnprintf1.c: New file.
22679         * tests/unistdio/test-u32-vsprintf1.c: New file.
22680         * modules/unistdio/base: New file.
22681         * modules/unistdio/u-printf-args: New file.
22682         * modules/unistdio/ulc-asnprintf: New file.
22683         * modules/unistdio/ulc-asprintf: New file.
22684         * modules/unistdio/ulc-fprintf: New file.
22685         * modules/unistdio/ulc-printf-parse: New file.
22686         * modules/unistdio/ulc-snprintf: New file.
22687         * modules/unistdio/ulc-sprintf: New file.
22688         * modules/unistdio/ulc-vasnprintf: New file.
22689         * modules/unistdio/ulc-vasprintf: New file.
22690         * modules/unistdio/ulc-vfprintf: New file.
22691         * modules/unistdio/ulc-vsnprintf: New file.
22692         * modules/unistdio/ulc-vsprintf: New file.
22693         * modules/unistdio/u8-asnprintf: New file.
22694         * modules/unistdio/u8-asprintf: New file.
22695         * modules/unistdio/u8-printf-parse: New file.
22696         * modules/unistdio/u8-snprintf: New file.
22697         * modules/unistdio/u8-sprintf: New file.
22698         * modules/unistdio/u8-vasnprintf: New file.
22699         * modules/unistdio/u8-vasprintf: New file.
22700         * modules/unistdio/u8-vsnprintf: New file.
22701         * modules/unistdio/u8-vsprintf: New file.
22702         * modules/unistdio/u8-u8-asnprintf: New file.
22703         * modules/unistdio/u8-u8-asprintf: New file.
22704         * modules/unistdio/u8-u8-snprintf: New file.
22705         * modules/unistdio/u8-u8-sprintf: New file.
22706         * modules/unistdio/u8-u8-vasnprintf: New file.
22707         * modules/unistdio/u8-u8-vasprintf: New file.
22708         * modules/unistdio/u8-u8-vsnprintf: New file.
22709         * modules/unistdio/u8-u8-vsprintf: New file.
22710         * modules/unistdio/u16-asnprintf: New file.
22711         * modules/unistdio/u16-asprintf: New file.
22712         * modules/unistdio/u16-printf-parse: New file.
22713         * modules/unistdio/u16-snprintf: New file.
22714         * modules/unistdio/u16-sprintf: New file.
22715         * modules/unistdio/u16-vasnprintf: New file.
22716         * modules/unistdio/u16-vasprintf: New file.
22717         * modules/unistdio/u16-vsnprintf: New file.
22718         * modules/unistdio/u16-vsprintf: New file.
22719         * modules/unistdio/u16-u16-asnprintf: New file.
22720         * modules/unistdio/u16-u16-asprintf: New file.
22721         * modules/unistdio/u16-u16-snprintf: New file.
22722         * modules/unistdio/u16-u16-sprintf: New file.
22723         * modules/unistdio/u16-u16-vasnprintf: New file.
22724         * modules/unistdio/u16-u16-vasprintf: New file.
22725         * modules/unistdio/u16-u16-vsnprintf: New file.
22726         * modules/unistdio/u16-u16-vsprintf: New file.
22727         * modules/unistdio/u32-asnprintf: New file.
22728         * modules/unistdio/u32-asprintf: New file.
22729         * modules/unistdio/u32-printf-parse: New file.
22730         * modules/unistdio/u32-snprintf: New file.
22731         * modules/unistdio/u32-sprintf: New file.
22732         * modules/unistdio/u32-vasnprintf: New file.
22733         * modules/unistdio/u32-vasprintf: New file.
22734         * modules/unistdio/u32-vsnprintf: New file.
22735         * modules/unistdio/u32-vsprintf: New file.
22736         * modules/unistdio/u32-u32-asnprintf: New file.
22737         * modules/unistdio/u32-u32-asprintf: New file.
22738         * modules/unistdio/u32-u32-snprintf: New file.
22739         * modules/unistdio/u32-u32-sprintf: New file.
22740         * modules/unistdio/u32-u32-vasnprintf: New file.
22741         * modules/unistdio/u32-u32-vasprintf: New file.
22742         * modules/unistdio/u32-u32-vsnprintf: New file.
22743         * modules/unistdio/u32-u32-vsprintf: New file.
22744         * modules/unistdio/ulc-asnprintf-tests: New file.
22745         * modules/unistdio/ulc-vasnprintf-tests: New file.
22746         * modules/unistdio/ulc-vasprintf-tests: New file.
22747         * modules/unistdio/ulc-vsnprintf-tests: New file.
22748         * modules/unistdio/ulc-vsprintf-tests: New file.
22749         * modules/unistdio/u8-asnprintf-tests: New file.
22750         * modules/unistdio/u8-vasnprintf-tests: New file.
22751         * modules/unistdio/u8-vasprintf-tests: New file.
22752         * modules/unistdio/u8-vsnprintf-tests: New file.
22753         * modules/unistdio/u8-vsprintf-tests: New file.
22754         * modules/unistdio/u16-asnprintf-tests: New file.
22755         * modules/unistdio/u16-vasnprintf-tests: New file.
22756         * modules/unistdio/u16-vasprintf-tests: New file.
22757         * modules/unistdio/u16-vsnprintf-tests: New file.
22758         * modules/unistdio/u16-vsprintf-tests: New file.
22759         * modules/unistdio/u32-asnprintf-tests: New file.
22760         * modules/unistdio/u32-vasnprintf-tests: New file.
22761         * modules/unistdio/u32-vasprintf-tests: New file.
22762         * modules/unistdio/u32-vsnprintf-tests: New file.
22763         * modules/unistdio/u32-vsprintf-tests: New file.
22764         * MODULES.html.sh (Unicode string functions): Add the new modules.
22765
22766 2007-07-01  Bruno Haible  <bruno@clisp.org>
22767
22768         * lib/sprintf.c (sprintf): Limit the available length estimation,
22769         to avoid address wraparound.
22770         * lib/vsprintf.c (vsprintf): Likewise.
22771         * modules/sprintf-posix (Dependencies): Add stdint.
22772         * modules/vsprintf-posix (Dependencies): Likewise.
22773
22774 2007-07-01  Bruno Haible  <bruno@clisp.org>
22775
22776         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
22777         Windows PATH as well. Conservative double-quoting. Comments.
22778
22779 2007-07-01  Bruno Haible  <bruno@clisp.org>
22780             Eric Blake  <ebb9@byu.net>
22781             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22782
22783         * gnulib-tool (self_abspathname): Fix algorithm to cope with
22784         empty components in $PATH, denoting '.'.
22785
22786 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22787
22788         * gnulib-tool: Fix indentation.
22789         (func_create_megatestdir): Likewise.
22790         Report by Bruno Haible.
22791
22792 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22793
22794         Sync from Automake.
22795         * build-aux/gnupload: Fix shell portability issues with for loops.
22796         Report by Karl Berry.
22797
22798 2007-06-29  Simon Josefsson  <simon@josefsson.org>
22799
22800         * build-aux/maint.mk (POURL): Use translationproject.org.
22801
22802 2007-06-27  Simon Josefsson  <simon@josefsson.org>
22803             Bruno Haible  <bruno@clisp.org>
22804
22805         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
22806         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
22807         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
22808         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
22809         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
22810
22811 2007-06-27  Bruno Haible  <bruno@clisp.org>
22812
22813         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
22814         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
22815
22816 2007-06-26  Karl Berry  <karl@gnu.org>
22817
22818         * MODULES.html.sh: remove xreadlink-with-size.
22819
22820 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
22821
22822         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
22823         method that I hope also handles the double-include problem noted
22824         by Bruno Haible in
22825         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
22826
22827 2007-06-23  Bruno Haible  <bruno@clisp.org>
22828
22829         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
22830         Don't let the 'mostlyclean' target fail if the last subdirectory could
22831         not be removed.
22832         Reported by Karl Berry.
22833
22834 2007-06-23  Bruno Haible  <bruno@clisp.org>
22835
22836         * gnulib-tool (echo): Add a speedier workaround for ksh.
22837         * tests/test-echo.sh: Likewise.
22838
22839 2007-06-23  Bruno Haible  <bruno@clisp.org>
22840
22841         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
22842         * tests/test-echo.sh: Likewise.
22843
22844 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22845
22846         * gnulib-tool (IFS): Initialize early, so we don't set it to
22847         empty later.
22848         (self_abspathname): Rewrite algorithm to set it, reindent.
22849         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
22850         (func_create_megatestdir): Merge some sed scripts.
22851
22852 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
22853
22854         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
22855         exposed by Sun Studio 11 cc on Solaris 8.
22856
22857 2007-06-22  Bruno Haible  <bruno@clisp.org>
22858
22859         * gnulib-tool (echo): Ensure the echo primitive does not interpret
22860         backslashes.
22861         * tests/test-echo.sh: New file.
22862
22863 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22864
22865         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
22866         simplify `sed_replace_build_aux' scripts, they are portable but
22867         echoing them with `echo' is not.
22868         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
22869
22870 2007-06-21  Karl Berry  <karl@gnu.org>
22871
22872         * config/srclist.txt: guess we can't handle the licenses via
22873         srclist at the moment.
22874
22875 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
22876
22877         * MODULES.html.sh: Add include_next.
22878         * modules/include_next: New file.
22879
22880 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
22881
22882         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
22883         INCLUDE_NEXT.
22884         (gl_CHECK_NEXT_HEADERS): New macro.
22885         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
22886         the obsolescent gl_ABSOLUTE_HEADER.
22887         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
22888         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
22889         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
22890         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
22891         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
22892         * m4/math_h.m4 (gl_MATH_H): Likewise.
22893         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
22894         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
22895         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
22896         * m4/stdint.m4 (gl_STDINT_H): Likewise.
22897         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
22898         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
22899         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
22900         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
22901         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
22902         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
22903         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
22904         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
22905         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
22906         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
22907         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
22908         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
22909         * m4/inttypes.m4 (gl_INTTYPES_H): Define
22910         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
22911         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
22912         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
22913         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
22914         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
22915         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
22916         * lib/float_.h: Likewise.
22917         * lib/inttypes_.h: Likewise.
22918         * lib/math_.h: Likewise.
22919         * lib/search_.h: Likewise.
22920         * lib/signal_.h: Likewise.
22921         * lib/stdint_.h: Likewise.
22922         * lib/stdio_.h: Likewise.
22923         * lib/stdlib_.h: Likewise.
22924         * lib/string_.h: Likewise.
22925         * lib/sys_stat_.h: Likewise.
22926         * lib/sys_time_.h: Likewise.
22927         * lib/time_.h: Likewise.
22928         * lib/unistd_.h: Likewise.
22929         * lib/wchar_.h: Likewise.
22930         * lib/wctype_.h: Likewise.
22931         * lib/dirent_.h: Likewise.
22932         * lib/iconv_.h: Likewise.
22933         * lib/locale_.h: Likewise.
22934         * lib/netinet_in_.h: Likewise.
22935         * lib/sys_select_.h: Likewise.
22936         * lib/sys_socket_.h: Likewise.
22937         * lib/sysexits_.h: Likewise.
22938         * modules/fcntl (Depends-on): Depend on include_next, not
22939         absolute_header.
22940         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
22941         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
22942         * modules/fchdir: Likewise.
22943         * modules/float: Likewise.
22944         * modules/iconv_open: Likewise.
22945         * modules/inttypes: Likewise.
22946         * modules/locale: Likewise.
22947         * modules/math: Likewise.
22948         * modules/netinet_in: Likewise.
22949         * modules/search: Likewise.
22950         * modules/signal: Likewise.
22951         * modules/stdint: Likewise.
22952         * modules/stdio: Likewise.
22953         * modules/stdlib: Likewise.
22954         * modules/string: Likewise.
22955         * modules/sys_select: Likewise.
22956         * modules/sys_socket: Likewise.
22957         * modules/sys_stat: Likewise.
22958         * modules/sys_time: Likewise.
22959         * modules/sysexits: Likewise.
22960         * modules/time: Likewise.
22961         * modules/unistd: Likewise.
22962         * modules/wchar: Likewise.
22963         * modules/wctype: Likewise.
22964         * modules/sys_stat: Change maintainer to "all".
22965         * modules/unistd: Likewise.
22966
22967 2007-06-20  Karl Berry  <karl@gnu.org>
22968
22969         * config/srclist.txt: track www changes in license files.
22970
22971 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
22972
22973         * build-aux/bootstrap: Remove stray dot.
22974         Make sure build_aux settings are honored when linking
22975         gnulib_extra_files.
22976
22977 2007-06-19  Eric Blake  <ebb9@byu.net>
22978
22979         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
22980         Allow compilation on cygwin.
22981
22982 2007-06-19  Jim Meyering  <jim@meyering.net>
22983
22984         xreadlink-with-size: Remove module.  No longer used.
22985         Ex-callers now use xreadlink or mreadlink-with-size.
22986         * modules/xreadlink-with-size: Remove module.
22987         * lib/xreadlink-with-size.c: Remove file.
22988         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
22989         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
22990         just before the function definition *is* accurate.
22991
22992         Eliminate one way canonicalize_filename_mode could exit.
22993         * lib/canonicalize.c (canonicalize_filename_mode):
22994         Use mreadlink_with_size, not xreadlink_with_size.
22995
22996 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
22997
22998         Detect porting problems to FreeBSD/arm, which has time_t wider than
22999         long int.  Original problem reported for GNU diff by Xin Li in
23000         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
23001         * modules/getdate (Depends-on): Add intprops, verify.
23002         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
23003         is an integer type no wider than long int.
23004
23005 2007-06-18  Jim Meyering  <jim@meyering.net>
23006
23007         New module: mreadlink-with-size.
23008         * MODULES.html.sh: Add mreadlink-with-size.
23009         * modules/mreadlink-with-size: New module
23010         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
23011         not xreadlink-with-size.
23012         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
23013
23014 2007-06-16  Bruno Haible  <bruno@clisp.org>
23015
23016         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
23017         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
23018         Reported by Gary V. Vaughan <gary@gnu.org>.
23019
23020 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
23021
23022         Revamp lchown so that it lives in unistd.h where it belongs.
23023         * lib/lchown.h: Remove.
23024         * lib/dirchownmod.c: Don't include lib/lchown.h.
23025         * lib/fchownat.c: Likewise.
23026         * lib/openat.c: Likewise.
23027         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
23028         does not follow symlinks.
23029         (EOPNOTSUPP): Define if not defined.
23030         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
23031         is defined to 0.
23032         (lchown): New decl.
23033         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
23034         Do not check for lchown decl.
23035         Set REPLACE_LCHOWN.
23036         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
23037         REPLACE_LCHOWN.
23038         * modules/chown: Make it clear it follows symlinks.
23039         * modules/lchown: Make it clear it doesn't follow symlinks.
23040         (Files): Remove lib/lchown.h
23041         (Depends-on): Add unistd.
23042         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
23043         (Include): Include <unistd.h>, not "lchown.h".
23044         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
23045         REPLACE_LCHOWN.
23046
23047 2007-06-15  Jim Meyering  <jim@meyering.net>
23048
23049         Change license (GPL to LGPL) of fsusage and dependents.
23050         * modules/fsusage (License): Change to LGPL.
23051         * modules/full-read (License): Likewise.
23052         * modules/full-write (License): Likewise.
23053         * modules/safe-read (License): Likewise.
23054         * modules/safe-write (License): Likewise.
23055
23056 2007-06-14  Ben Pfaff  <blp@gnu.org>
23057
23058         Missing part of allocsa -> malloca transition.
23059         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
23060         gl_MALLOCA.
23061
23062 2007-06-12  Bruno Haible  <bruno@clisp.org>
23063
23064         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
23065         to ia64, x86_64, i386.
23066         Reported by Eric Blake.
23067
23068 2007-06-12  Bruno Haible  <bruno@clisp.org>
23069
23070         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
23071         cross-compiling to x86_64.
23072
23073 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
23074
23075         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
23076         glitch reported by Ralf Wildenhues in
23077         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
23078
23079         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
23080         Vin Shelton.
23081
23082 2007-06-11  Bruno Haible  <bruno@clisp.org>
23083
23084         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
23085         replacement string.
23086         Reported by Eric Blake.
23087
23088 2007-06-10  Bruno Haible  <bruno@clisp.org>
23089
23090         Prepare vasnprintf code for use with Unicode strings.
23091         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
23092         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
23093         TYPE_U32_STRING.
23094         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
23095         a_u32_string variants.
23096         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
23097         * lib/printf-args.c: Don't include config.h and the specification
23098         header if PRINTF_FETCHARGS is already defined.
23099         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
23100         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
23101         TYPE_U16_STRING, TYPE_U32_STRING.
23102         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
23103         u16_directive, u16_directives, u32_directive, u32_directives): New
23104         types.
23105         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
23106         New declarations.
23107         * lib/printf-parse.c: Don't include config.h and the specification
23108         header if PRINTF_PARSE is already defined. Eliminate the set of
23109         parameters for WIDE_CHAR_VERSION; the user of this file must provide
23110         them now. Include c-ctype.h.
23111         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
23112         directive and CHAR_T_ONLY_ASCII.
23113         * lib/vasnprintf.c: Don't include config.h and the specification header
23114         if VASNPRINTF is already defined.
23115         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
23116         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
23117         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
23118         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
23119         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
23120         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
23121         code accordingly.
23122         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
23123         pad_ourselves also in this case, with the 'c' and 's' directives, and
23124         with a different notion of "width".
23125         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
23126
23127 2007-06-10  Bruno Haible  <bruno@clisp.org>
23128
23129         * modules/unistr/u32-mbsnlen: New file.
23130         * lib/unistr/u32-mbsnlen.c: New file.
23131
23132         * modules/unistr/u16-mbsnlen: New file.
23133         * lib/unistr/u16-mbsnlen.c: New file.
23134
23135         * modules/unistr/u8-mbsnlen: New file.
23136         * lib/unistr/u8-mbsnlen.c: New file.
23137
23138         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
23139         declarations.
23140
23141 2007-06-10  Bruno Haible  <bruno@clisp.org>
23142
23143         * lib/string_.h (mbsnlen): New declaration.
23144         * lib/mbsnlen.c: New file.
23145         * m4/mbsnlen.m4: New file.
23146         * modules/mbsnlen: New file.
23147         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
23148         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
23149         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
23150
23151 2007-06-10  Bruno Haible  <bruno@clisp.org>
23152
23153         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
23154
23155 2007-06-10  Bruno Haible  <bruno@clisp.org>
23156
23157         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
23158         * lib/mbuiter.h: Likewise.
23159
23160 2007-06-10  Bruno Haible  <bruno@clisp.org>
23161
23162         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
23163         declaration.
23164
23165 2007-06-10  Karl Berry  <karl@gnu.org>
23166
23167         * config/srclist.txt: remove gettext entries, Bruno prefers
23168         to update individually.
23169
23170 2007-06-10  Bruno Haible  <bruno@clisp.org>
23171
23172         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
23173         'maxlen'. Ensure only length + width bytes are allocated, not
23174         length + 1 + width.
23175
23176 2007-06-09  Bruno Haible  <bruno@clisp.org>
23177
23178         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
23179         (CHAR_T): Remove macro.
23180         (VASNPRINTF): Update.
23181
23182 2007-06-09  Bruno Haible  <bruno@clisp.org>
23183
23184         * MODULES.html.sh (Unicode string functions): Add the new modules.
23185
23186         * modules/uniconv/u32-conv-to-enc: New file.
23187         * lib/uniconv/u32-conv-to-enc.c: New file.
23188         * modules/uniconv/u32-conv-to-enc-tests: New file.
23189         * tests/uniconv/test-u32-conv-to-enc.c: New file.
23190
23191         * modules/uniconv/u16-conv-to-enc: New file.
23192         * lib/uniconv/u16-conv-to-enc.c: New file.
23193         * lib/uniconv/u-conv-to-enc.h: New file.
23194         * modules/uniconv/u16-conv-to-enc-tests: New file.
23195         * tests/uniconv/test-u16-conv-to-enc.c: New file.
23196
23197         * modules/uniconv/u8-conv-to-enc: New file.
23198         * lib/uniconv/u8-conv-to-enc.c: New file.
23199         * modules/uniconv/u8-conv-to-enc-tests: New file.
23200         * tests/uniconv/test-u8-conv-to-enc.c: New file.
23201
23202         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
23203         u32_conv_to_encoding): New declarations.
23204
23205 2007-06-09  Bruno Haible  <bruno@clisp.org>
23206
23207         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
23208
23209 2007-06-09  Bruno Haible  <bruno@clisp.org>
23210
23211         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
23212         * modules/malloca: Renamed from modules/allocsa, updated.
23213         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
23214         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
23215         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
23216         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
23217         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
23218         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
23219         * modules/xmalloca: Renamed from modules/xallocsa, updated.
23220         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
23221         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
23222         * modules/c-strcasestr (Depends-on): Update.
23223         * lib/c-strcasestr.c: Update.
23224         * modules/c-strstr (Depends-on): Update.
23225         * lib/c-strstr.c: Update.
23226         * modules/canonicalize-lgpl (Depends-on): Update.
23227         * lib/canonicalize-lgpl.c: Update.
23228         * modules/clean-temp (Depends-on): Update.
23229         * lib/clean-temp.c: Update.
23230         * modules/csharpcomp (Depends-on): Update.
23231         * lib/csharpcomp.c: Update.
23232         * modules/csharpexec (Depends-on): Update.
23233         * lib/csharpexec.c: Update.
23234         * modules/javacomp (Depends-on): Update.
23235         * lib/javacomp.c: Update.
23236         * modules/javaexec (Depends-on): Update.
23237         * lib/javaexec.c: Update.
23238         * modules/mbscasestr (Depends-on): Update.
23239         * lib/mbscasestr.c: Update.
23240         * modules/mbsstr (Depends-on): Update.
23241         * lib/mbsstr.c: Update.
23242         * modules/setenv (Depends-on): Update.
23243         * lib/setenv.c: Update.
23244         * modules/strcasestr (Depends-on): Update.
23245         * lib/strcasestr.c: Update.
23246         * modules/striconveha (Depends-on): Update.
23247         * lib/striconveha.c: Update.
23248         * modules/relocatable-prog-wrapper (Files): Update.
23249         * lib/relocwrapper.c: Update.
23250         * build-aux/install-reloc: Update.
23251         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
23252
23253 2007-06-08  Bruno Haible  <bruno@clisp.org>
23254
23255         Port to uClibc.
23256         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
23257         * lib/fpurge.c (fpurge): Likewise.
23258         * lib/freading.c (freading): Likewise.
23259         * lib/fseeko.c (rpl_fseeko): Likewise.
23260         * lib/fseterr.c (fseterr): Likewise.
23261         * lib/fwriting.c (fwriting): Likewise.
23262         * tests/test-fflush.c (main): Avoid a failure on uClibc.
23263
23264 2007-06-08  Bruno Haible  <bruno@clisp.org>
23265
23266         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
23267         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
23268         * modules/gettext (Files): Add m4/intlmacosx.m4.
23269
23270 2007-06-07  Bruno Haible  <bruno@clisp.org>
23271
23272         * modules/localename-tests: New file.
23273         * tests/test-localename.c: New file.
23274
23275         New module 'localename'.
23276         * lib/localename.h: New file.
23277         * lib/localename.c: New file, from GNU gettext.
23278         * m4/localename.m4: New file.
23279         * modules/localename: New file.
23280
23281 2007-06-07  Bruno Haible  <bruno@clisp.org>
23282
23283         Work around the lack of <wchar.h> on some builds of uClibc.
23284         * doc/headers/wchar.texi: Update.
23285         * lib/wchar_.h: Include <wchar.h> only if it exists.
23286         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
23287         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
23288         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
23289         doesn't exist.
23290         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
23291         * modules/mbfile (Depends-on): Add wchar.
23292         * modules/mbiter (Depends-on): Likewise.
23293         * modules/mbuiter (Depends-on): Likewise.
23294         Reported by Simon Josefsson.
23295
23296 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
23297
23298         Work around problem reported by Steven M. Schweda in
23299         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
23300         Tru64 5.1B with the Compaq compiler environment installed declares
23301         an 'isblank' function but does not define it in the C library.
23302         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
23303         * lib/regex_internal.h (isblank): Likewise.
23304         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
23305         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
23306
23307 2007-06-05  Bruno Haible  <bruno@clisp.org>
23308
23309         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
23310         ia64.
23311         * modules/printf-safe: New file.
23312         * modules/fprintf-posix (Depends-on): Add printf-safe.
23313         * modules/printf-posix (Depends-on): Likewise.
23314         * modules/snprintf-posix (Depends-on): Likewise.
23315         * modules/sprintf-posix (Depends-on): Likewise.
23316         * modules/vasnprintf-posix (Depends-on): Likewise.
23317         * modules/vasprintf-posix (Depends-on): Likewise.
23318         * modules/vfprintf-posix (Depends-on): Likewise.
23319         * modules/vprintf-posix (Depends-on): Likewise.
23320         * modules/vsnprintf-posix (Depends-on): Likewise.
23321         * modules/vsprintf-posix (Depends-on): Likewise.
23322         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
23323         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
23324         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
23325         "no" on i386, x86_64, ia64.
23326         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
23327         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
23328         on i386, x86_64, ia64.
23329         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
23330         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
23331         on i386, x86_64, ia64.
23332         * tests/test-vasnprintf-posix.c: Include float.h.
23333         (LDBL80_WORDS): New macro.
23334         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
23335         on i386, x86_64, ia64.
23336         * tests/test-vasprintf-posix.c: Include float.h.
23337         (LDBL80_WORDS): New macro.
23338         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
23339         on i386, x86_64, ia64.
23340         * tests/test-snprintf-posix.c: Include float.h.
23341         * tests/test-sprintf-posix.c: Likewise.
23342         * tests/test-vsnprintf-posix.c: Likewise.
23343         * tests/test-vsprintf-posix.c: Likewise.
23344
23345 2007-06-05  Bruno Haible  <bruno@clisp.org>
23346
23347         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
23348         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
23349         non-IEEE numbers on i386, x86_64, ia64.
23350         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
23351         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
23352         * tests/test-isnanl.h: Include float.h.
23353         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
23354
23355 2007-06-05  Bruno Haible  <bruno@clisp.org>
23356
23357         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
23358         also the %a / %A. Handle the %a / %A code before this extra handling.
23359
23360 2007-06-05  Bruno Haible  <bruno@clisp.org>
23361
23362         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
23363         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
23364
23365 2007-06-05  Bruno Haible  <bruno@clisp.org>
23366
23367         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
23368         typo in variable name.
23369
23370 2007-06-05  Eric Blake  <ebb9@byu.net>
23371
23372         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
23373         Reported by Simon Josefsson.
23374
23375 2007-06-04  Bruno Haible  <bruno@clisp.org>
23376
23377         Avoid test failures on some PowerPC platforms.
23378         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
23379         Define differently for PowerPC.
23380         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
23381         Reported by Gary V. Vaughan <gary@gnu.org>.
23382
23383 2007-06-02  Bruno Haible  <bruno@clisp.org>
23384
23385         Fix test-stdint failure on FreeBSD/ia64.
23386         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
23387         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
23388         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
23389         * doc/headers/stdint.texi: Update.
23390
23391 2007-06-01  Bruno Haible  <bruno@clisp.org>
23392
23393         * tests/test-binary-io.c (main): Pass a third argument to open().
23394         Reported by Gary V. Vaughan <gary@gnu.org>.
23395
23396 2007-06-01  Bruno Haible  <bruno@clisp.org>
23397
23398         * doc/functions/frexpl.texi: Update for mingw.
23399
23400 2007-06-01  Bruno Haible  <bruno@clisp.org>
23401
23402         * tests/test-lseek.c (main): Disable test of errno for invalid third
23403         argument.
23404         * doc/functions/lseek.texi: Update.
23405         Reported by Gary V. Vaughan <gary@gnu.org>.
23406
23407 2007-05-28  Bruno Haible  <bruno@clisp.org>
23408
23409         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
23410
23411 2007-05-31  Eric Blake  <ebb9@byu.net>
23412
23413         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
23414         cross compiling.
23415
23416 2007-05-30  Eric Blake  <ebb9@byu.net>
23417         and Bruno Haible  <bruno@clisp.org>
23418
23419         Work around mingw test failures exposed by m4-1.4.9b.
23420         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
23421         * tests/test-unistd.c: Disable uid_t and git_t tests for the
23422         moment.
23423
23424 2007-05-30  Bruno Haible  <bruno@clisp.org>
23425
23426         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
23427         assuming that they are closed. Needed on HP-UX 11.
23428
23429 2007-05-29  Bruno Haible  <bruno@clisp.org>
23430
23431         Fix a problem with #include_next.
23432         * lib/dirent_.h: Split the double-inclusion guard.
23433         * lib/fcntl_.h: Likewise.
23434         * lib/float_.h: Likewise.
23435         * lib/iconv_.h: Likewise.
23436         * lib/inttypes_.h: Likewise.
23437         * lib/locale_.h: Likewise.
23438         * lib/math_.h: Likewise.
23439         * lib/netinet_in_.h: Likewise.
23440         * lib/search_.h: Likewise.
23441         * lib/signal_.h: Likewise.
23442         * lib/stdint_.h: Likewise.
23443         * lib/stdio_.h: Likewise.
23444         * lib/stdlib_.h: Likewise.
23445         * lib/string_.h: Likewise.
23446         * lib/sys_select_.h: Likewise.
23447         * lib/sys_socket_.h: Likewise.
23448         * lib/sys_stat_.h: Likewise.
23449         * lib/sys_time_.h: Likewise.
23450         * lib/sysexits_.h: Likewise.
23451         * lib/time_.h: Likewise.
23452         * lib/unistd_.h: Likewise.
23453         * lib/wchar_.h: Likewise.
23454         * lib/wctype_.h: Likewise.
23455
23456 2007-05-29  Bruno Haible  <bruno@clisp.org>
23457
23458         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
23459         for the moment.
23460
23461 2007-05-29  Bruno Haible  <bruno@clisp.org>
23462
23463         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
23464         invocation.
23465         Reported by Eric Blake.
23466
23467 2007-05-29  Bruno Haible  <bruno@clisp.org>
23468
23469         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
23470         compiling case.
23471
23472 2007-05-29  Eric Blake  <ebb9@byu.net>
23473             Bruno Haible  <bruno@clisp.org>
23474
23475         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
23476         cross compiles.
23477
23478 2007-05-28  Eric Blake  <ebb9@byu.net>
23479
23480         * modules/closein-tests (test_closein_LDADD): Support test on
23481         cygwin with libtool.
23482
23483 2007-05-28  Bruno Haible  <bruno@clisp.org>
23484
23485         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
23486         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
23487         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
23488         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
23489         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
23490         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
23491         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
23492         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
23493         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
23494
23495 2007-05-28  Eric Blake  <ebb9@byu.net>
23496
23497         Unconditionally include <config.h> in unit tests.
23498         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
23499         * tests/test-allocsa.c, tests/test-arcfour.c,
23500         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
23501         tests/test-array_list.c, tests/test-array_oset.c,
23502         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
23503         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
23504         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
23505         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
23506         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
23507         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
23508         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
23509         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
23510         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
23511         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
23512         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
23513         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
23514         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
23515         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
23516         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
23517         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
23518         test-md5.c, test-memmem.c, test-printf-posix.c,
23519         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
23520         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
23521         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
23522         test-strcasestr.c, test-striconv.c, test-striconveh.c,
23523         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
23524         test-vasnprintf-posix2.c, test-vasnprintf.c,
23525         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
23526         test-vfprintf-posix.c, test-vprintf-posix.c,
23527         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
23528         test-xvasprintf.c: Likewise.
23529
23530 2007-05-28  Bruno Haible  <bruno@clisp.org>
23531
23532         * gnulib-tool (func_import): Remember the --with-tests command-line
23533         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
23534         Reported by Eric Blake.
23535
23536 2007-05-28  Bruno Haible  <bruno@clisp.org>
23537
23538         * modules/ftell-tests: New file.
23539         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
23540         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
23541
23542         * lib/ftell.c: New file.
23543         * modules/ftell: New file.
23544         * m4/ftell.m4: New file.
23545         * doc/functions/ftell.texi: Update.
23546         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
23547         REPLACE_FTELL.
23548         * lib/stdio_.h (rpl_ftell): New declaration.
23549         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
23550         REPLACE_FTELL.
23551
23552 2007-05-28  Eric Blake  <ebb9@byu.net>
23553
23554         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
23555
23556 2007-05-28  Bruno Haible  <bruno@clisp.org>
23557
23558         * modules/fseek-tests: New file.
23559         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
23560         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
23561
23562         * lib/fseek.c: New file.
23563         * modules/fseek: New file.
23564         * m4/fseek.m4: New file.
23565         * doc/functions/fseek.texi: Update.
23566         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
23567         REPLACE_FSEEK.
23568         * lib/stdio_.h (rpl_fseek): New declaration.
23569         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
23570         REPLACE_FSEEK.
23571
23572 2007-05-28  Bruno Haible  <bruno@clisp.org>
23573
23574         * lib/stdio_.h (fflush): More comments.
23575
23576 2007-05-28  Bruno Haible  <bruno@clisp.org>
23577
23578         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
23579         runtime test.
23580
23581 2007-05-28  Eric Blake  <ebb9@byu.net>
23582
23583         Improve lseek module.
23584         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
23585         * lib/unistd_.h (lseek): Scale back link warning message.
23586         * tests/test-lseek.c: Beef up test.
23587         * tests/test-lseek.sh: Exercise more facets of lseek.
23588         Reported by Bruno Haible.
23589
23590 2007-05-28  Bruno Haible  <bruno@clisp.org>
23591
23592         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
23593         to define.
23594
23595 2007-05-27  Bruno Haible  <bruno@clisp.org>
23596
23597         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
23598
23599 2007-05-27  Bruno Haible  <bruno@clisp.org>
23600
23601         * modules/openmp: New file.
23602         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
23603         Noah Misch.
23604
23605 2007-05-26  Bruno Haible  <bruno@clisp.org>
23606
23607         * modules/chdir-long (Depends-on): Add fchdir.
23608         * modules/chdir-safer (Depends-on): Likewise.
23609         * modules/fts (Depends-on): Likewise.
23610         * modules/fts-lgpl (Depends-on): Likewise.
23611         * modules/openat (Depends-on): Likewise.
23612         * modules/savewd (Depends-on): Likewise.
23613
23614 2007-05-24  Eric Blake  <ebb9@byu.net>
23615
23616         Fix lseek on mingw.
23617         * modules/lseek: New module.
23618         * m4/lseek.m4: New file.
23619         * lib/lseek.c: New file.
23620         * modules/lseek-tests: New file.
23621         * tests/test-lseek.c: New file.
23622         * tests/test-lseek.sh: New file.
23623         * MODULES.html.sh: Document lseek module.
23624         * modules/fflush (Depends-on): Add lseek, fseeko.
23625         * modules/fseeko (Depends-on): Likewise.
23626         * modules/ftello (Depends-on): Likewise.
23627         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
23628         broken.
23629         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
23630         broken.
23631         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
23632         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
23633         * lib/ftello.c (rpl_ftello): Likewise.
23634         * tests/test-fseeko.c (main): Test this.
23635         * tests/test-fseeko.sh: Likewise.
23636         * tests/test-ftello.c (main): Likewise.
23637         * tests/test-ftello.sh: Likewise.
23638         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
23639         implies replacing fseek.
23640         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
23641         HAVE_FTELLO.
23642         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
23643         * modules/unistd (Makefile.am): Likewise.
23644         * lib/unistd_.h (lseek): Declare a replacement.
23645         * doc/functions/lseek.texi (lseek): Document this fix.
23646         * doc/functions/fseek.texi (fseek): Likewise.
23647         * doc/functions/ftell.texi (ftell): Likewise.
23648
23649 2007-05-24  Bruno Haible  <bruno@clisp.org>
23650
23651         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
23652         in the printed representation of a NaN.
23653         * tests/test-vasprintf-posix.c (test_function): Likewise.
23654         * tests/test-snprintf-posix.h (test_function): Likewise.
23655         * tests/test-sprintf-posix.h (test_function): Likewise.
23656         Reported by Eric Blake.
23657
23658 2007-05-23  Eric Blake  <ebb9@byu.net>
23659
23660         Fix fseeko/ftello on cygwin 1.5.24.
23661         * doc/functions/fseeko.texi (fseeko): Document the fix.
23662         * doc/functions/ftello.texi (ftello): Document the fix.
23663         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
23664         * doc/functions/stdout.text (stdout): New file.
23665         * doc/functions/stderr.text (stderr): New file.
23666         * doc/gnulib.texi (Function Substitutes): Use new files.
23667         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
23668         prior to 1.7.0.
23669         * tests/test-ftello.c (main): Likewise for ftello.
23670         * tests/test-fseeko.sh: New file.
23671         * tests/test-ftello.sh: New file.
23672         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
23673         with seekable stdin.
23674         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
23675         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
23676         (gl_REPLACE_FSEEKO): New macro.
23677         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
23678         * modules/fseeko (Files): Distribute fseeko.c.
23679         * modules/ftello (Files): Distribute ftello.c.
23680         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
23681         mode.
23682         * lib/ftello.c (rpl_ftello): New file.
23683         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
23684         fseeko, ftello.
23685         (gl_STDIN_LARGE_OFFSET): New macro.
23686         * modules/stdio (Makefile.am): Perform the replacement.
23687         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
23688
23689 2007-05-23  Bruno Haible  <bruno@clisp.org>
23690
23691         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
23692         GNULIB_POSIXCHECK is defined.
23693
23694 2007-05-21  Bruno Haible  <bruno@clisp.org>
23695
23696         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
23697         Check also the output for NaN arguments. When cross-compiling, guess
23698         no on IRIX.
23699         * lib/vasnprintf.c: Update comments.
23700         * tests/test-vasnprintf-posix.c (strisnan): New function.
23701         (test_function): Use it.
23702         * tests/test-vasprintf-posix.c (strisnan): New function.
23703         (test_function): Use it.
23704         * tests/test-snprintf-posix.h (strisnan): New function.
23705         (test_function): Use it.
23706         * tests/test-sprintf-posix.h (strisnan): New function.
23707         (test_function): Use it.
23708         Reported by Eric Blake.
23709
23710 2007-05-20  Bruno Haible  <bruno@clisp.org>
23711
23712         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
23713         numbers that fails on BeOS.
23714         * doc/functions/frexpl.texi: Update.
23715
23716 2007-05-20  Jim Meyering  <jim@meyering.net>
23717
23718         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
23719         forced upon us by glibc-2.6.
23720
23721 2007-05-20  Bruno Haible  <bruno@clisp.org>
23722
23723         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
23724         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
23725         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
23726         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
23727         NEED_PRINTF_INFINITE.
23728         (is_infinitel): New function.
23729         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
23730         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
23731         gl_PREREQ_VASNPRINTF_INFINITE.
23732         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
23733         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
23734         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
23735         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
23736         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
23737         gl_PREREQ_VASNPRINTF_INFINITE.
23738         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
23739         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23740         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23741         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23742         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23743         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23744         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23745         * doc/functions/fprintf.texi: Update.
23746         * doc/functions/printf.texi: Update.
23747         * doc/functions/snprintf.texi: Update.
23748         * doc/functions/sprintf.texi: Update.
23749         * doc/functions/vfprintf.texi: Update.
23750         * doc/functions/vprintf.texi: Update.
23751         * doc/functions/vsnprintf.texi: Update.
23752         * doc/functions/vsprintf.texi: Update.
23753
23754 2007-05-20  Bruno Haible  <bruno@clisp.org>
23755
23756         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
23757         was not found in libc.
23758         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
23759
23760 2007-05-20  Bruno Haible  <bruno@clisp.org>
23761
23762         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
23763         printed as "-nan" instead of "nan".
23764         * tests/test-vasprintf-posix.c (test_function): Likewise.
23765         * tests/test-snprintf-posix.h (test_function): Likewise.
23766         * tests/test-sprintf-posix.h (test_function): Likewise.
23767         Needed for HP-UX 11.
23768
23769 2007-05-20  Jim Meyering  <jim@meyering.net>
23770
23771         Fix buggy test for the fchownat-deref bug.
23772         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
23773         symlink required for the run-test.  Without it, this test would
23774         always declare that fchownat doesn't work, and client code would
23775         unnecessarily use the replacement function with fixed libc.
23776         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
23777         Reported by Greg Schafer.
23778
23779 2007-05-19  Bruno Haible  <bruno@clisp.org>
23780
23781         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
23782         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
23783         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
23784         Needed for IRIX 6.5 and Solaris 2.5.1.
23785
23786 2007-05-19  Bruno Haible  <bruno@clisp.org>
23787
23788         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
23789         (test_function): Skip tests involving -0.0 on platforms where
23790         -0.0 = 0.0.
23791         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
23792         (test_function): Skip tests involving -0.0 on platforms where
23793         -0.0 = 0.0.
23794         * tests/test-snprintf-posix.h (have_minus_zero): New function.
23795         (test_function): Skip tests involving -0.0 on platforms where
23796         -0.0 = 0.0.
23797         * tests/test-sprintf-posix.h (have_minus_zero): New function.
23798         (test_function): Skip tests involving -0.0 on platforms where
23799         -0.0 = 0.0.
23800         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
23801         tests.
23802         * tests/test-printf-posix.h (test_function): Likewise.
23803         * tests/test-printf-posix.output: Remove all -0.0 related results.
23804         Needed for IRIX 6.5.
23805
23806 2007-05-19  Bruno Haible  <bruno@clisp.org>
23807
23808         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
23809         printed as "nan0x7fffffff" instead of "nan".
23810         * tests/test-vasprintf-posix.c (test_function): Likewise.
23811         * tests/test-snprintf-posix.h (test_function): Likewise.
23812         * tests/test-sprintf-posix.h (test_function): Likewise.
23813         * tests/test-fprintf-posix.h (NaN): Remove macro.
23814         (test_function): Remove all NaN related tests.
23815         * tests/test-printf-posix.h (NaN): Remove macro.
23816         (test_function): Remove all NaN related tests.
23817         * tests/test-printf-posix.output: Remove all NaN related results.
23818         Needed for IRIX 6.5.
23819
23820 2007-05-19  Bruno Haible  <bruno@clisp.org>
23821
23822         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
23823         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
23824
23825 2007-05-19  Bruno Haible  <bruno@clisp.org>
23826
23827         * lib/float_.h: New file.
23828         * m4/float_h.m4: New file.
23829         * modules/float: New file.
23830         * modules/isnanl (Dependencies): Add float.
23831         * modules/isnanl-nolibm (Dependencies): Likewise.
23832         * modules/mathl (Dependencies): Likewise.
23833         * modules/printf-frexpl (Dependencies): Likewise.
23834         * modules/signbit (Dependencies): Likewise.
23835         * modules/vasnprintf (Dependencies): Likewise.
23836         * doc/headers/float.texi: Update.
23837
23838 2007-05-19  Jim Meyering  <jim@meyering.net>
23839
23840         * lib/utimens.c (gl_futimens): Rename from futimens,
23841         now that glibc-2.6 declares futimens.
23842         * lib/utimens.h: Likewise.
23843
23844 2007-05-19  Bruno Haible  <bruno@clisp.org>
23845
23846         Avoid test failures on mingw.
23847         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
23848         * tests/test-printf-posix.sh: Likewise.
23849         * tests/test-vfprintf-posix.sh: Likewise.
23850         * tests/test-vprintf-posix.sh: Likewise.
23851
23852 2007-05-19  Bruno Haible  <bruno@clisp.org>
23853
23854         Fix *printf result for NaN, Inf, -0.0 on mingw.
23855         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
23856         * lib/vasnprintf.c: Include math.h and isnan.h.
23857         (is_infinite_or_zero): New function.
23858         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
23859         values in the %f, %F, %e, %E, %g, %G directives.
23860         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
23861         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
23862         gl_PRINTF_INFINITE and test its result. Invoke
23863         gl_PREREQ_VASNPRINTF_INFINITE.
23864         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
23865         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23866         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23867         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23868         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23869         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23870         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23871         * doc/functions/fprintf.texi: Update.
23872         * doc/functions/printf.texi: Update.
23873         * doc/functions/snprintf.texi: Update.
23874         * doc/functions/sprintf.texi: Update.
23875         * doc/functions/vfprintf.texi: Update.
23876         * doc/functions/vprintf.texi: Update.
23877         * doc/functions/vsnprintf.texi: Update.
23878         * doc/functions/vsprintf.texi: Update.
23879
23880 2007-05-19  Bruno Haible  <bruno@clisp.org>
23881
23882         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
23883         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
23884         Instead of multiplying with 10^k, set extra_zeroes to k.
23885         (scale10_round_long_double): Remove function.
23886
23887 2007-05-18  Bruno Haible  <bruno@clisp.org>
23888
23889         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
23890         introduced on 2007-05-06.
23891
23892 2007-05-18  Bruno Haible  <bruno@clisp.org>
23893
23894         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
23895         %g directives.
23896         * tests/test-vasprintf-posix.c (test_function): Likewise.
23897         * tests/test-snprintf-posix.h (test_function): Likewise.
23898         * tests/test-sprintf-posix.h (test_function): Likewise.
23899
23900 2007-05-18  Bruno Haible  <bruno@clisp.org>
23901
23902         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
23903         (strmatch): New function.
23904         (test_function): Test the %f directive on numbers of various exponents.
23905         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
23906         (strmatch): New function.
23907         (test_function): Test the %f directive on numbers of various exponents.
23908         * tests/test-snprintf-posix.h (strmatch): New function.
23909         (test_function): Test the %f directive on numbers of various exponents.
23910         * tests/test-sprintf-posix.h (strmatch): New function.
23911         (test_function): Test the %f directive on numbers of various exponents.
23912         * tests/test-snprintf-posix.c (SIZEOF): New macro.
23913         * tests/test-sprintf-posix.c (SIZEOF): New macro.
23914         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
23915         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
23916
23917 2007-05-18  Bruno Haible  <bruno@clisp.org>
23918
23919         Add support for 'long double' number output.
23920         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
23921         * lib/vasnprintf.c: Include math.h and float+.h.
23922         (mp_limb_t): New type.
23923         (GMP_LIMB_BITS): New macro.
23924         (mp_twolimb_t): New type.
23925         (GMP_TWOLIMB_BITS): New macro.
23926         (mpn_t): New type.
23927         (multiply, divide, convert_to_decimal, decode_long_double,
23928         scale10_round_long_double, scale10_round_decimal_long_double,
23929         floorlog10l): New functions.
23930         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
23931         for the %f, %F, %e, %E, %g, %G directives.
23932         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
23933         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
23934         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
23935         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
23936         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
23937         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23938         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23939         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23940         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23941         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23942         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23943         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
23944         * modules/snprintf-posix (Depends-on): Likewise.
23945         * modules/sprintf-posix (Depends-on): Likewise.
23946         * modules/vasnprintf-posix (Depends-on): Likewise.
23947         * modules/vasprintf-posix (Depends-on): Likewise.
23948         * modules/vfprintf-posix (Depends-on): Likewise.
23949         * modules/vsnprintf-posix (Depends-on): Likewise.
23950         * modules/vsprintf-posix (Depends-on): Likewise.
23951         * modules/vasnprintf (Files): Add lib/float+.h.
23952         * doc/functions/fprintf.texi: Update.
23953         * doc/functions/printf.texi: Update.
23954         * doc/functions/snprintf.texi: Update.
23955         * doc/functions/sprintf.texi: Update.
23956         * doc/functions/vfprintf.texi: Update.
23957         * doc/functions/vprintf.texi: Update.
23958         * doc/functions/vsnprintf.texi: Update.
23959         * doc/functions/vsprintf.texi: Update.
23960
23961 2007-05-18  Bruno Haible  <bruno@clisp.org>
23962
23963         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
23964
23965 2007-05-18  Bruno Haible  <bruno@clisp.org>
23966
23967         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
23968         for printing 64-bit integers. Needed for mingw.
23969
23970 2007-05-18  Bruno Haible  <bruno@clisp.org>
23971
23972         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
23973         gl_FUNC_FREXPL_WORKS.
23974         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
23975
23976 2007-05-18  Bruno Haible  <bruno@clisp.org>
23977
23978         * modules/frexpl-nolibm-tests: New file.
23979
23980         * modules/frexpl-nolibm: New file.
23981         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
23982
23983 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
23984
23985         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
23986         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
23987         GCC 4.2, which otherwise issues a lot of warnings.
23988         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
23989         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
23990         Likewise.
23991         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
23992         * modules/iconv_open (iconv.h): Likewise.
23993         * modules/locale (locale.h): Likewise.
23994         * modules/netinet_in (netinet/in.h): Likewise.
23995         * modules/sys_select (sys_select.h): Likewise.
23996         * modules/sys_socket (sys/socket.h): Likewise.
23997         * modules/sys_stat (sys/stat.h): Likewise.
23998         * modules/sysexits (sysexits.h): Likewise.
23999         * modules/unistd (unistd.h): Likewise.
24000
24001 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24002
24003         * modules/closein-tests (Makefile.am): Distribute
24004         `test-closein.sh'.
24005
24006 2007-05-17  Bruno Haible  <bruno@clisp.org>
24007
24008         * tests/test-printf-posix.output: Renamed from
24009         tests/test-fprintf-posix.out.
24010         * modules/fprintf-posix-tests: Update.
24011         * modules/printf-posix-tests: Update.
24012         * modules/vfprintf-posix-tests: Update.
24013         * modules/vprintf-posix-tests: Update.
24014         * tests/test-fprintf-posix.sh: Update.
24015         * tests/test-printf-posix.sh: Update.
24016         * tests/test-vfprintf-posix.sh: Update.
24017         * tests/test-vprintf-posix.sh: Update.
24018         Reported by Ralf Wildenhues.
24019
24020 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
24021
24022         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
24023         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
24024         GCC 4.2, which otherwise issues a lot of warnings.
24025         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
24026         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
24027         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
24028         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
24029         it should no longer be needed.
24030         * lib/string_.h: Likewise.
24031         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
24032         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
24033         * modules/inttypes (inttypes.h): Likewise.
24034         * modules/math (math.h): Likewise.
24035         * modules/search (search.h): Likewise.
24036         * modules/signal (signal.h): Likewise.
24037         * modules/stdint (stdint.h): Likewise.
24038         * modules/stdio (stdio.h): Likewise.
24039         * modules/stdlib (stdlib.h): Likewise.
24040         * modules/string (string.h): Likewise.
24041         * modules/sys_time (sys/time.h): Likewise.
24042         * modules/time (time.h): Likewise.
24043         * modules/wchar (wchar.h): Likewise.
24044         * modules/wctype (wtype.h): Likewise.
24045
24046 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
24047
24048         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
24049
24050 2007-05-13  Bruno Haible  <bruno@clisp.org>
24051
24052         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
24053         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
24054         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
24055         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
24056         (gl_PREREQ_STRTOK_R): Don't require it here.
24057
24058 2007-05-13  Bruno Haible  <bruno@clisp.org>
24059
24060         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
24061         when used in C++ mode.
24062
24063 2007-05-12  Bruno Haible  <bruno@clisp.org>
24064
24065         * lib/linebuffer.h: Tweak doc.
24066         * lib/linebuffer.c: Likewise.
24067
24068 2007-05-12  James Youngman  <jay@gnu.org>
24069
24070         * lib/linebuffer.c (readlinebuffer_delim): New function,
24071         like readlinebuffer, but use a caller-specified delimiter.
24072         (readlinebuffer): Just call readlinebuffer_delim with '\n'
24073         as the delimiter.
24074         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
24075
24076 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
24077
24078         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
24079         * modules/openat (Files): Remove openat-die.c.
24080         (Depends-on): Add openat-die.
24081         * modules/openat-die: New module.
24082
24083 2007-05-06  Bruno Haible  <bruno@clisp.org>
24084
24085         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
24086         Update with info about Cygwin.
24087         * doc/functions/fprintf.texi: Update.
24088         * doc/functions/printf.texi: Update.
24089         * doc/functions/snprintf.texi: Update.
24090         * doc/functions/sprintf.texi: Update.
24091         * doc/functions/vfprintf.texi: Update.
24092         * doc/functions/vprintf.texi: Update.
24093         * doc/functions/vsnprintf.texi: Update.
24094         * doc/functions/vsprintf.texi: Update.
24095         Reported by Eric Blake.
24096
24097 2007-05-06  Bruno Haible  <bruno@clisp.org>
24098
24099         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
24100         padding ourselves for the floating-point directives.
24101         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
24102         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
24103         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
24104         gl_PRINTF_FLAG_ZERO and test its result. Invoke
24105         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
24106         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
24107         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
24108         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
24109         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
24110         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
24111         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
24112         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
24113         * tests/test-snprintf-posix.h (test_function): Also check the width
24114         and some flags in the %f directive.
24115         * tests/test-sprintf-posix.h (test_function): Likewise.
24116         * tests/test-vasnprintf-posix.c (test_function): Likewise.
24117         * tests/test-vasprintf-posix.c (test_function): Likewise.
24118         * doc/functions/fprintf.texi: Update.
24119         * doc/functions/printf.texi: Update.
24120         * doc/functions/snprintf.texi: Update.
24121         * doc/functions/sprintf.texi: Update.
24122         * doc/functions/vfprintf.texi: Update.
24123         * doc/functions/vprintf.texi: Update.
24124         * doc/functions/vsnprintf.texi: Update.
24125         * doc/functions/vsprintf.texi: Update.
24126
24127 2007-05-06  Bruno Haible  <bruno@clisp.org>
24128
24129         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
24130         pass the ' flag character to sprintf or snprintf.
24131         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
24132         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
24133         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
24134         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
24135         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
24136         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
24137         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
24138         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
24139         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
24140         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
24141         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
24142         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
24143         * tests/test-snprintf-posix.h (test_function): Also check the grouping
24144         flag.
24145         * tests/test-sprintf-posix.h (test_function): Likewise.
24146         * tests/test-vasnprintf-posix.c (test_function): Likewise.
24147         * tests/test-vasprintf-posix.c (test_function): Likewise.
24148         * doc/functions/fprintf.texi: Update.
24149         * doc/functions/printf.texi: Update.
24150         * doc/functions/snprintf.texi: Update.
24151         * doc/functions/sprintf.texi: Update.
24152         * doc/functions/vfprintf.texi: Update.
24153         * doc/functions/vprintf.texi: Update.
24154         * doc/functions/vsnprintf.texi: Update.
24155         * doc/functions/vsprintf.texi: Update.
24156
24157 2007-05-01  Bruno Haible  <bruno@clisp.org>
24158
24159         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
24160
24161 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
24162
24163         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
24164         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
24165
24166 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
24167
24168         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
24169         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
24170         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
24171
24172 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
24173
24174         * lib/argp-help.c (struct hol_entry): New member `ord'.
24175         (HOL_ENTRY_PTRCMP): Use ord for comparison
24176         (hol_sort): Initialize ord.
24177
24178 2007-05-01  Bruno Haible  <bruno@clisp.org>
24179
24180         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
24181         Reported by Eric Blake.
24182         * doc/gnulib.texi (Function Substitutes): Update.
24183
24184 2007-05-01  Bruno Haible  <bruno@clisp.org>
24185
24186         * doc/functions.texi: Remove file, now redundant through
24187         doc/functions/*.texi.
24188
24189 2007-05-01  Bruno Haible  <bruno@clisp.org>
24190
24191         * modules/argp (Depends-on): Add sleep.
24192
24193 2007-05-01  Bruno Haible  <bruno@clisp.org>
24194
24195         * modules/sleep-tests: New file.
24196         * tests/test-sleep.c: New file.
24197
24198         * modules/sleep: New file.
24199         * lib/sleep.c: New file.
24200         * m4/sleep.m4: New file.
24201         * lib/unistd_.h (sleep): New declaration.
24202         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
24203         HAVE_SLEEP.
24204         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
24205         * doc/functions/sleep.texi: Document the sleep module.
24206
24207 2007-05-01  Bruno Haible  <bruno@clisp.org>
24208
24209         * lib/sigprocmask.h: Remove file.
24210         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
24211         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
24212         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
24213         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
24214         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
24215         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
24216         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
24217         HAVE_SIGSET_T as a shell variable.
24218         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
24219         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
24220         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
24221         (Depends-on): Add signal. Remove verify.
24222         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
24223         (Include): Mention <signal.h> instead of sigprocmask.h.
24224         * NEWS: Mention the change.
24225         * lib/fatal-signal.c: Don't include sigprocmask.h.
24226
24227 2007-05-01  Bruno Haible  <bruno@clisp.org>
24228
24229         * modules/signal: New file.
24230         * lib/signal_.h: New file.
24231         * m4/signal_h.m4: New file.
24232
24233 2007-05-01  Bruno Haible  <bruno@clisp.org>
24234
24235         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
24236         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
24237         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
24238         HAVE_WCTYPE_CTMP_BUG into wctype.h.
24239
24240 2007-05-01  Bruno Haible  <bruno@clisp.org>
24241
24242         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
24243         configure time.
24244         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
24245         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
24246         * modules/sys_stat (Makefile.am): Substitute their values into
24247         sys/stat.h.
24248
24249 2007-05-01  Bruno Haible  <bruno@clisp.org>
24250
24251         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
24252         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
24253         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
24254
24255 2007-05-01  Bruno Haible  <bruno@clisp.org>
24256
24257         * doc/header/assert.texi: Undo last change: don't mention the gnulib
24258         'assert' module here.
24259
24260 2007-05-01  Bruno Haible  <bruno@clisp.org>
24261
24262         * doc/functions/*.texi: New files.
24263         * doc/functions/google-ranking.txt: New file.
24264         * doc/gnulib.texi (Function Substitutes): New chapter.
24265         (ctime, inet_ntoa): Remove sections.
24266         * doc/ctime.texi: Remove file.
24267         * doc/inet_ntoa.texi: Remove file.
24268         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
24269         dependencies.
24270         (%.info): New rule, specifying a --reference-limit.
24271
24272 2007-05-01  Bruno Haible  <bruno@clisp.org>
24273
24274         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
24275
24276 2007-05-01  Bruno Haible  <bruno@clisp.org>
24277
24278         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
24279         the portability of 'mkdir' to mingw systems.
24280
24281 2007-05-01  Bruno Haible  <bruno@clisp.org>
24282
24283         * doc/headers/google-ranking.txt: New file.
24284
24285 2007-04-30  Eric Blake  <ebb9@byu.net>
24286
24287         Prefer fseeko to fseek.
24288         * modules/getpass (Depends-on): Add fseeko.
24289         * lib/getpass.c (getpass): Use fseeko, not fseek.
24290
24291 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
24292
24293         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
24294         assumes the sorting is stable, while most qsort implementations
24295         are not.  Use argument addresses to ensure they never compare as
24296         equal.
24297
24298         * tests/test-argp-2.sh (usage-indent test): Fix output
24299         (func_compare): Restore diff options
24300         * tests/test-argp.c: Restore #include "progname.h"
24301
24302 2007-04-29  Bruno Haible  <bruno@clisp.org>
24303
24304         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
24305         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
24306         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
24307         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
24308         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
24309         (configure.ac): Define CHECK_SNPRINTF_POSIX.
24310         (TESTS, check_PROGRAMS): Add test-snprintf.
24311         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
24312         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
24313         (TESTS, check_PROGRAMS): Add test-vsnprintf.
24314         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
24315         assertions that fail on HP-UX, OSF/1, or IRIX.
24316         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
24317
24318 2007-04-29  Bruno Haible  <bruno@clisp.org>
24319
24320         * MODULES.html.sh (posix_functions): Remove 'contents'.
24321
24322 2007-04-29  Karl Berry  <karl@gnu.org>
24323
24324         * config/srclist.txt (gendocs_template_min): new entry.
24325
24326 2007-04-29  Bruno Haible  <bruno@clisp.org>
24327
24328         Work around fpurge bug on BSD systems.
24329         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
24330         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
24331         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
24332         fpurge to rpl_fpurge if the system already has this function.
24333         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
24334         the case where the system already has this function. Correct invariants
24335         on BSD systems.
24336         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
24337         BSD systems.
24338
24339 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
24340
24341         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
24342         proposed by Sven Verdoolaege.
24343
24344         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
24345         options.
24346         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
24347         (usage and help tests): Update
24348
24349 2007-04-29  Bruno Haible  <bruno@clisp.org>
24350
24351         * tests/test-fflush.c (main): Use a file of size 17, not 10.
24352         Print more information in case of failure. Disable a test on BeOS.
24353
24354 2007-04-29  Bruno Haible  <bruno@clisp.org>
24355
24356         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
24357         This helps debugging on systems on which no gdb is available.
24358
24359 2007-04-29  Bruno Haible  <bruno@clisp.org>
24360
24361         * lib/freading.h: Improve comments.
24362         * lib/fwriting.h: Likewise.
24363         * tests/test-freading.c (main): Don't check freading immediately after
24364         repositioning. Needed for glibc.
24365
24366 2007-04-29  Bruno Haible  <bruno@clisp.org>
24367
24368         * lib/freading.c (freading): Trivial simplification.
24369
24370 2007-04-28  Bruno Haible  <bruno@clisp.org>
24371
24372         * tests/test-fwriting.c (main): Also test the interaction between
24373         fflush and fwriting.
24374         * modules/fwriting-tests (Depends-on): Add fflush.
24375
24376         * tests/test-freading.c (main): Also test the interaction between
24377         fflush and freading.
24378         * modules/freading-tests (Depends-on): Add fflush.
24379
24380 2007-04-28  Bruno Haible  <bruno@clisp.org>
24381
24382         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
24383         fseeko and ftello.
24384         Suggested by Eric Blake.
24385
24386 2007-04-28  Jim Meyering  <jim@meyering.net>
24387
24388         Avoid false-negative in gl_STDINT_H's C99 conformance test.
24389         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
24390         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
24391
24392 2007-04-27  Eric Blake  <ebb9@byu.net>
24393
24394         * doc/headers/assert.texi (assert.h): Document assert module use.
24395
24396 2007-04-27  Bruno Haible  <bruno@clisp.org>
24397
24398         * doc/headers/*.texi: New files.
24399         * doc/gnulib.texi (Header File Substitutes): New chapter.
24400         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
24401         dependencies.
24402         (standards.info ,standards.html, standards.dvi): Update dependencies.
24403         (mostlyclean, clean): New targets.
24404
24405 2007-04-27  Bruno Haible  <bruno@clisp.org>
24406
24407         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
24408         * modules/sysexits (Files, Makefile.am): Update.
24409
24410         * lib/sys_socket_.h: Renamed from lib/socket_.h.
24411         * modules/sys_socket (Files, Makefile.am): Update.
24412
24413         * lib/sys_stat_.h: Renamed from lib/stat_.h.
24414         * modules/sys_stat (Files, Makefile.am): Update.
24415
24416 2007-04-27  Eric Blake  <ebb9@byu.net>
24417
24418         * lib/freading.h: Improve comments.
24419         * lib/fwriting.h: Likewise.
24420         * lib/fflush.c: Likewise.
24421
24422         Fix closein for mingw.
24423         * modules/closein-tests: Add tests for closein.
24424         * tests/test-closein.c: New file.
24425         * tests/test-closein.sh: Likewise.
24426         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
24427         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
24428
24429 2007-04-27  Bruno Haible  <bruno@clisp.org>
24430
24431         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
24432         version is < 6.
24433         * lib/math_.h [__DECC]: Likewise.
24434         * lib/stdio_.h [__DECC]: Likewise.
24435         * lib/stdlib_.h [__DECC]: Likewise.
24436         * lib/string_.h [__DECC]: Likewise.
24437         * lib/time_.h [__DECC]: Likewise.
24438         * lib/wchar_.h [__DECC]: Likewise.
24439         * lib/wctype_.h [__DECC]: Likewise.
24440
24441 2007-04-27  Bruno Haible  <bruno@clisp.org>
24442
24443         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
24444
24445 2007-04-27  Bruno Haible  <bruno@clisp.org>
24446
24447         * lib/fflush.c: Add comments.
24448         * modules/fpurge-tests (Depends-on): Add fflush.
24449         * modules/freadable-tests (Depends-on): Likewise.
24450         * modules/fwritable-tests (Depends-on): Likewise.
24451
24452 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
24453
24454         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
24455         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
24456         Report by Bruno Haible <bruno@clisp.org>.
24457
24458 2007-04-26  Eric Blake  <ebb9@byu.net>
24459
24460         Fix fflush on mingw.
24461         * modules/fflush (Depends-on): Add freading.
24462         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
24463         but unread data.
24464
24465 2007-04-26  Eric Blake  <ebb9@byu.net>
24466         and Bruno Haible  <bruno@clisp.org>
24467
24468         Implement freading and fwriting.
24469         * lib/freading.c: New file.
24470         * lib/freading.h: Likewise.
24471         * m4/freading.m4: Likewise.
24472         * modules/freading: Likewise.
24473         * modules/freading-tests: Likewise.
24474         * tests/test-freading.c: Likewise.
24475         * lib/fwriting.c: New file.
24476         * lib/fwriting.h: Likewise.
24477         * m4/fwriting.m4: Likewise.
24478         * modules/fwriting: Likewise.
24479         * modules/fwriting-tests: Likewise.
24480         * tests/test-fwriting.c: Likewise.
24481         * MODULES.html.sh (File stream based Input/Output): Mention them.
24482
24483 2007-04-26  Bruno Haible  <bruno@clisp.org>
24484
24485         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
24486         'long' when we assume it.
24487         Suggested by Eric Blake.
24488
24489 2007-04-26  Bruno Haible  <bruno@clisp.org>
24490
24491         Ensure fseeko, ftello are declared on glibc systems.
24492         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
24493         * modules/fseeko (configure.ac-early): Likewise.
24494         * modules/ftello (configure.ac-early): Likewise.
24495         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
24496         AC_FUNC_FSEEKO for this.
24497         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
24498         (gl_CHECK_FSEEKO): Remove macro.
24499
24500 2007-04-26  Bruno Haible  <bruno@clisp.org>
24501
24502         * tests/test-fflush.c (main): Also check the ftell result after
24503         fflush and fseek/fseeko.
24504         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
24505         file descriptor position cache in the stream.
24506         * lib/fseeko.c (rpl_fseeko): Likewise.
24507
24508 2007-04-26  Bruno Haible  <bruno@clisp.org>
24509
24510         * modules/fflush-tests (Depends-on): Add fseeko.
24511
24512 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
24513             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24514
24515         * lib/argz_.h: ensure error_t definition is obtained in same
24516         mechanism system argz.h would have.
24517         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
24518         argz facilities are known bad.  Err on the side of caution if
24519         cross-compiling.
24520
24521 2007-04-25  Eric Blake  <ebb9@byu.net>
24522
24523         * lib/fpurge.c (includes): Use stdlib.h for free.
24524         * tests/test-fflush.c (main): Also test fflush-fseeko.
24525
24526 2007-04-25  Bruno Haible  <bruno@clisp.org>
24527
24528         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
24529         * lib/fseeko.c: New file.
24530         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
24531         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
24532         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
24533         gl_FUNC_FSEEKO.
24534         (gl_FUNC_FSEEKO): Invoke it.
24535         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
24536         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
24537         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
24538
24539 2007-04-25  Bruno Haible  <bruno@clisp.org>
24540
24541         * modules/fflush (Depends-on): Add ftello.
24542
24543 2007-04-25  Bruno Haible  <bruno@clisp.org>
24544
24545         * modules/ftello-tests: New file.
24546         * tests/test-ftello.c: New file.
24547
24548         * modules/ftello: New file.
24549         * m4/ftello.m4: New file.
24550         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
24551         HAVE_FTELLO.
24552         * lib/stdio_.h (ftello): New declaration.
24553         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
24554         HAVE_FTELLO.
24555
24556 2007-04-25  Bruno Haible  <bruno@clisp.org>
24557
24558         * modules/fseeko-tests: New file.
24559         * tests/test-fseeko.c: New file.
24560
24561         * modules/fseeko: New file.
24562         * m4/fseeko.m4: New file.
24563         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
24564         HAVE_FSEEKO.
24565         * lib/stdio_.h (fseeko): New declaration.
24566         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
24567         HAVE_FSEEKO.
24568
24569 2007-04-25  Bruno Haible  <bruno@clisp.org>
24570
24571         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
24572
24573 2007-04-25  Bruno Haible  <bruno@clisp.org>
24574
24575         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
24576         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
24577         * tests/test-unistd.c: Likewise.
24578         * tests/test-fcntl.c: Likewise.
24579
24580 2007-04-23  Eric Blake  <ebb9@byu.net>
24581
24582         * lib/fflush.c: Fix missing include.
24583         Reported by Bruno Haible.
24584
24585 2007-04-23  Bruno Haible  <bruno@clisp.org>
24586
24587         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
24588         Reported by Eric Blake.
24589
24590 2007-04-23  Bruno Haible  <bruno@clisp.org>
24591
24592         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
24593
24594 2007-04-23  Bruno Haible  <bruno@clisp.org>
24595
24596         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
24597
24598 2007-04-23  Bruno Haible  <bruno@clisp.org>
24599
24600         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
24601         Needed on HP-UX 11.
24602
24603 2007-04-16  Eric Blake  <ebb9@byu.net>
24604
24605         Make fflush rely on fpurge.
24606         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
24607         open coding all variants.
24608         * modules/fflush (Depends-on): Add fpurge and unistd.
24609         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
24610         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
24611
24612         Fix --with-tests compilation on cygwin.
24613         * modules/argmatch-tests (Makefile.am): List gnulib library first
24614         in LDADD.
24615         * modules/argp-tests (Makefile.am): Likewise.
24616         * modules/array-list-tests (Makefile.am): Likewise.
24617         * modules/array-oset-tests (Makefile.am): Likewise.
24618         * modules/avltree-list-tests (Makefile.am): Likewise.
24619         * modules/avltree-oset-tests (Makefile.am): Likewise.
24620         * modules/avltreehash-list-tests (Makefile.am): Likewise.
24621         * modules/carray-list-tests (Makefile.am): Likewise.
24622         * modules/dirname-tests (Makefile.am): Likewise.
24623         * modules/frexp-tests (Makefile.am): Likewise.
24624         * modules/isnanl-tests (Makefile.am): Likewise.
24625         * modules/linked-list-tests (Makefile.am): Likewise.
24626         * modules/linkedhash-list-tests (Makefile.am): Likewise.
24627         * modules/lock-tests (Makefile.am): Likewise.
24628         * modules/rbtree-list-tests (Makefile.am): Likewise.
24629         * modules/rbtree-oset-tests (Makefile.am): Likewise.
24630         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
24631         * modules/tls-tests (Makefile.am): Likewise.
24632         * modules/tsearch-tests (Makefile.am): Likewise.
24633         * modules/xvasprintf-tests (Makefile.am): Likewise.
24634
24635         Fix fpurge for cygwin.
24636         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
24637         value.
24638         * modules/fpurge-tests (Depends-on): Clean up trash.
24639
24640 2007-04-16  Simon Josefsson  <simon@josefsson.org>
24641
24642         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
24643
24644         * m4/autobuild.m4: Re-indent.
24645
24646 2007-04-13  Bruno Haible  <bruno@clisp.org>
24647
24648         * modules/fpurge-tests: New file.
24649         * tests/test-fpurge.c: New file.
24650
24651         * modules/fpurge: New file.
24652         * lib/fpurge.h: New file.
24653         * lib/fpurge.c: New file.
24654         * m4/fpurge.m4: New file.
24655
24656 2007-04-13  Bruno Haible  <bruno@clisp.org>
24657
24658         * modules/fbufmode-tests: New file.
24659         * tests/test-fbufmode.c: New file.
24660
24661         * modules/fbufmode: New file.
24662         * lib/fbufmode.h: New file.
24663         * lib/fbufmode.c: New file.
24664         * m4/fbufmode.m4: New file.
24665
24666 2007-04-13  Bruno Haible  <bruno@clisp.org>
24667
24668         * modules/fwritable-tests: New file.
24669         * tests/test-fwritable.c: New file.
24670
24671         * modules/fwritable: New file.
24672         * lib/fwritable.h: New file.
24673         * lib/fwritable.c: New file.
24674         * m4/fwritable.m4: New file.
24675
24676 2007-04-13  Bruno Haible  <bruno@clisp.org>
24677
24678         * modules/freadable-tests: New file.
24679         * tests/test-freadable.c: New file.
24680
24681         * modules/freadable: New file.
24682         * lib/freadable.h: New file.
24683         * lib/freadable.c: New file.
24684         * m4/freadable.m4: New file.
24685
24686 2007-04-13  Bruno Haible  <bruno@clisp.org>
24687
24688         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
24689         MOSTLYCLEANFILES.
24690
24691 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
24692
24693         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
24694         gzip bootstrap.conf to avoid dragging in i18n machinery.
24695         (gnulib_tool_option): Use it.
24696
24697 2007-04-13  Bruno Haible  <bruno@clisp.org>
24698
24699         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
24700         %F directives.
24701         * tests/test-vasprintf-posix.c (test_function): Likewise.
24702         * tests/test-snprintf-posix.h (test_function): Likewise.
24703         * tests/test-sprintf-posix.h (test_function): Likewise.
24704         * tests/test-fprintf-posix.h (test_function): Likewise.
24705         * tests/test-printf-posix.h (test_function): Likewise.
24706         * tests/test-fprintf-posix.out: Likewise.
24707
24708 2007-04-13  Bruno Haible  <bruno@clisp.org>
24709
24710         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
24711         * modules/tls-tests (configure.ac): Likewise.
24712         Reported by Arto C. Nirkko <anirkko@insel.ch>.
24713
24714 2007-04-13  Bruno Haible  <bruno@clisp.org>
24715
24716         * lib/tls.c (glthread_tls_get): Fix return type.
24717         Patch by Arto C. Nirkko <anirkko@insel.ch>.
24718
24719 2007-04-12  Eric Blake  <ebb9@byu.net>
24720
24721         * modules/gettime (Depends-on): Remove gettime.
24722         Reported by Dmitry V. Levin.
24723
24724 2007-04-12  Bruno Haible  <bruno@clisp.org>
24725
24726         * modules/fflush (Include): Mention <stdio.h>.
24727         * modules/strtoimax (Include): Mention <inttypes.h>.
24728         * modules/strtoumax (Include): Likewise.
24729
24730 2007-04-12  Eric Blake  <ebb9@byu.net>
24731
24732         * .cvsignore: New file.
24733         * .gitignore: Likewise.
24734
24735 2007-04-12  Bruno Haible  <bruno@clisp.org>
24736
24737         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
24738         not before, since $(LDADD) often contains libgnu.a.
24739         * modules/striconv-tests (test_striconv_LDADD): Likewise.
24740         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
24741         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
24742         Needed on Cygwin.
24743
24744 2007-04-12  Eric Blake  <ebb9@byu.net>
24745
24746         Work around glibc's failure to flush stdin on fclose.
24747         * lib/closein.c (close_stdin): Flush stdin before closing.
24748
24749         Work around glibc's failure to reset seekable stdin on exit.
24750         * modules/closein: New module.
24751         * lib/closein.c: New file.
24752         * lib/closein.h: Likewise.
24753         * m4/closein.m4: Likewise.
24754         * MODULES.html.sh (File stream based Input/Output): Document it.
24755
24756 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24757
24758         * gnulib-tool: Rename generated 'autobuild' script to
24759         'do-autobuild' in --create-megatestdir output.
24760
24761         * doc/gnulib.texi (Build robot for gnulib): Fix.
24762
24763 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24764
24765         * modules/sysexits (Depends-on): Add absolute-header.
24766
24767 2007-04-12  Eric Blake  <ebb9@byu.net>
24768
24769         No need to preserve errno on success.
24770         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
24771         Reported by Bruno Haible.
24772
24773 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24774
24775         * MODULES.html.sh (Support for maintaining and releasing
24776         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
24777
24778 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24779
24780         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
24781
24782 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24783
24784         * modules/autobuild: New module.
24785
24786         * m4/autobuild.m4: New file.
24787
24788 2007-04-11  Bruno Haible  <bruno@clisp.org>
24789
24790         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
24791         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
24792         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
24793         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
24794         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
24795         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24796         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24797         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
24798         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24799         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24800         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
24801         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24802         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24803         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
24804         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24805         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24806         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
24807         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24808         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24809         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
24810         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24811         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24812         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
24813         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24814         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24815         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
24816         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24817         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24818         Reported by Eric Blake.
24819
24820 2007-04-11  Bruno Haible  <bruno@clisp.org>
24821
24822         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
24823
24824 2007-04-10  Bruno Haible  <bruno@clisp.org>
24825
24826         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
24827         for NaN and Infinity. Needed on FreeBSD 6.1.
24828         * tests/test-vasnprintf-posix.c (test_function): Undo last change
24829         regarding results for "%010a" of Infinity and NaN.
24830         * tests/test-vasprintf-posix.c (test_function): Likewise.
24831         * tests/test-snprintf-posix.h (test_function): Likewise.
24832         * tests/test-sprintf-posix.h (test_function): Likewise.
24833         * tests/test-fprintf-posix.h (test_function): Likewise.
24834         * tests/test-printf-posix.h (test_function): Likewise.
24835         * tests/test-fprintf-posix.out: Likewise.
24836
24837 2007-04-10  Bruno Haible  <bruno@clisp.org>
24838
24839         * modules/locale-tests: New file.
24840         * tests/test-locale.c: New file.
24841
24842         * modules/locale: New file.
24843         * lib/locale_.h: New file.
24844         * m4/locale_h.m4: New file.
24845
24846 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
24847             Bruno Haible  <bruno@clisp.org>
24848
24849         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
24850         be determined, test for availability of the copysignf, copysign,
24851         copysignl functions.
24852         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
24853         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
24854         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
24855
24856 2007-04-09  Eric Blake  <ebb9@byu.net>
24857
24858         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
24859         * modules/stdio (Makefile.am): Support fflush.
24860         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
24861         * modules/fflush: New file.
24862         * lib/fflush.c: Likewise.
24863         * m4/fflush.m4: Likewise.
24864         * modules/fflush-tests: New test.
24865         * tests/test-fflush.c: Likewise.
24866         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
24867
24868 2007-04-06  Bruno Haible  <bruno@clisp.org>
24869
24870         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
24871         (VASNPRINTF): Use signbit for faster determination whether to print a
24872         minus sign.
24873         * modules/vasnprintf (Files): Remove lib/float+.h.
24874         * modules/fprintf-posix (Depends-on): Add signbit.
24875         * modules/snprintf-posix (Depends-on): Likewise.
24876         * modules/sprintf-posix (Depends-on): Likewise.
24877         * modules/vasnprintf-posix (Depends-on): Likewise.
24878         * modules/vasprintf-posix (Depends-on): Likewise.
24879         * modules/vfprintf-posix (Depends-on): Likewise.
24880         * modules/vsnprintf-posix (Depends-on): Likewise.
24881         * modules/vsprintf-posix (Depends-on): Likewise.
24882
24883 2007-04-06  Bruno Haible  <bruno@clisp.org>
24884
24885         * tests/test-frexp.c (main): Test also the sign bit of zero results.
24886         * tests/test-frexpl.c (main): Likewise.
24887         * tests/test-ldexpl.c (main): Likewise.
24888         * modules/frexp-tests (Depends-on): Add signbit.
24889         * modules/frexpl-tests (Depdends-on): Likewise.
24890         * modules/ldexpl-tests (Depdends-on): Likewise.
24891
24892 2007-04-06  Bruno Haible  <bruno@clisp.org>
24893
24894         * modules/signbit-tests: New file.
24895         * tests/test-signbit.c: New file.
24896
24897         * modules/signbit: New file.
24898         * lib/signbitf.c: New file.
24899         * lib/signbitd.c: New file.
24900         * lib/signbitl.c: New file.
24901         * m4/signbit.m4: New file.
24902         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
24903         (signbit): New macro.
24904         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
24905         REPLACE_SIGNBIT.
24906         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
24907         REPLACE_FREXPL into math.h.
24908
24909 2007-04-06  Bruno Haible  <bruno@clisp.org>
24910
24911         * modules/isnanf-nolibm-tests: New file.
24912         * tests/test-isnanf.c: New file.
24913
24914         * modules/isnanf-nolibm: New file.
24915         * lib/isnanf.h: New file.
24916         * lib/isnanf.c: New file.
24917         * lib/isnan.c: Consider the USE_FLOAT macro.
24918         * m4/isnanf.m4: New file.
24919
24920 2007-04-06  Bruno Haible  <bruno@clisp.org>
24921
24922         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
24923         (Link): New section.
24924
24925         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
24926
24927 2007-04-06  Bruno Haible  <bruno@clisp.org>
24928
24929         Assume the 'long double' type.
24930         * m4/longdouble.m4: Remove file.
24931         * config/srclist.txt: Don't mention longdouble.m4.
24932         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
24933         * lib/float+.h: Likewise.
24934         * lib/frexp.c: Likewise.
24935         * lib/printf-args.h: Likewise.
24936         * lib/printf-args.c: Likewise.
24937         * lib/printf-frexp.c: Likewise.
24938         * lib/printf-parse.c: Likewise.
24939         * lib/vasnprintf.c: Likewise.
24940         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
24941         * m4/intl.m4: Likewise.
24942         * m4/isnanl.m4: Likewise.
24943         * m4/printf.m4: Likewise.
24944         * m4/printf-frexpl.m4: Likewise.
24945         * m4/vasnprintf.m4: Likewise.
24946         * modules/allocsa (Files): Remove m4/longdouble.m4.
24947         * modules/gettext (Files): Likewise.
24948         * modules/relocatable-prog-wrapper (Files): Likewise.
24949         * modules/vasnprintf (Files): Likewise.
24950         * modules/isnanl (Files): Likewise.
24951         (Include): Simplify.
24952         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
24953         (Include): Simplify.
24954         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
24955         (Include): Simplify.
24956         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
24957         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24958         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
24959         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24960         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
24961         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24962         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
24963         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24964         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
24965         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24966         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
24967         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24968         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
24969         * tests/test-isnanl.c: Likewise.
24970         * tests/test-snprintf-posix.h: Likewise.
24971         * tests/test-sprintf-posix.h: Likewise.
24972         * tests/test-vasnprintf-posix.c: Likewise.
24973         * tests/test-vasnprintf-posix2.c: Likewise.
24974         * tests/test-vasprintf-posix.c: Likewise.
24975
24976 2007-04-06  Bruno Haible  <bruno@clisp.org>
24977
24978         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
24979         * lib/math_.h [__DECC]: Include the overridden include file through
24980         #include_next, outside the double-inclusion guard.
24981         * lib/stdio_.h [__DECC]: Likewise.
24982         * lib/stdlib_.h [__DECC]: Likewise.
24983         * lib/string_.h [__DECC]: Likewise.
24984         * lib/time_.h [__DECC]: Likewise.
24985         * lib/wchar_.h [__DECC]: Likewise.
24986         * lib/wctype_.h [__DECC]: Likewise.
24987         * lib/inttypes_.h [__DECC]: Likewise.
24988         Reported by Albert Chin <china@thewrittenword.com> in
24989         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
24990
24991 2007-04-04  Eric Blake  <ebb9@byu.net>
24992
24993         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
24994         1.5.x.
24995
24996 2007-04-04  Bruno Haible  <bruno@clisp.org>
24997
24998         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
24999         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
25000
25001 2007-04-04  Bruno Haible  <bruno@clisp.org>
25002
25003         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
25004         results for "%010a" of Infinity and NaN.
25005         * tests/test-vasprintf-posix.c (test_function): Likewise.
25006         * tests/test-snprintf-posix.h (test_function): Likewise.
25007         * tests/test-sprintf-posix.h (test_function): Likewise.
25008         * tests/test-fprintf-posix.h (test_function): Remove these tests.
25009         * tests/test-printf-posix.h (test_function): Likewise.
25010         * tests/test-fprintf-posix.out: Update.
25011         Needed for FreeBSD 6.1.
25012
25013 2007-04-04  Bruno Haible  <bruno@clisp.org>
25014
25015         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
25016         directly used by the gnulib modules nor by gnulib-tool.
25017
25018 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
25019
25020         * DEPENDENCIES: Give overall description of version dependency
25021         desirability.  Use more-typical names for apps.
25022         Add shell, coreutils, diffutils, grep, tar, gzip.
25023
25024 2007-04-04  Simon Josefsson  <simon@josefsson.org>
25025
25026         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
25027
25028 2007-04-04  Karl Berry  <karl@gnu.org>
25029
25030         * MODULES.html.sh (func_module): missing '.
25031
25032 2007-04-03  Bruno Haible  <bruno@clisp.org>
25033
25034         * modules/argmatch-tests (Makefile.am): New variable
25035         test_argmatch_LDADD.
25036         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
25037         * modules/array-list-tests (Makefile.am): New variable
25038         test_array_list_LDADD.
25039         * modules/array-oset-tests (Makefile.am): New variable
25040         test_array_oset_LDADD.
25041         * modules/avltree-list-tests (Makefile.am): New variable
25042         test_avltree_list_LDADD.
25043         * modules/avltree-oset-tests (Makefile.am): New variable
25044         test_avltree_oset_LDADD.
25045         * modules/avltreehash-list-tests (Makefile.am): New variable
25046         test_avltreehash_list_LDADD.
25047         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
25048         test_canonicalize_lgpl_LDADD.
25049         * modules/carray-list-tests (Makefile.am): New variable
25050         test_carray_list_LDADD.
25051         * modules/dirname-tests (Makefile.am): New variable
25052         test_dirname_LDADD.
25053         * modules/linked-list-tests (Makefile.am): New variable
25054         test_linked_list_LDADD.
25055         * modules/linkedhash-list-tests (Makefile.am): New variable
25056         test_linkedhash_list_LDADD.
25057         * modules/rbtree-list-tests (Makefile.am): New variable
25058         test_rbtree_list_LDADD.
25059         * modules/rbtree-oset-tests (Makefile.am): New variable
25060         test_rbtree_oset_LDADD.
25061         * modules/rbtreehash-list-tests (Makefile.am): New variable
25062         test_rbtreehash_list_LDADD.
25063         * modules/xvasprintf-tests (Makefile.am): New variable
25064         test_xvasprintf_LDADD.
25065         Reported by Eric Blake.
25066
25067 2007-04-03  Eric Blake  <ebb9@byu.net>
25068
25069         * DEPENDENCIES: Weaken m4 requirements.
25070
25071 2007-04-03  Bruno Haible  <bruno@clisp.org>
25072
25073         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
25074         * modules/isnanl-tests (configure.ac): Likewise.
25075
25076 2007-04-03  Ben Pfaff  <blp@gnu.org>
25077
25078         * modules/iconv_open: Add $(srcdir)/ to source directory
25079         references in Makefile fragments that call gperf, to fix VPATH
25080         builds.
25081
25082 2007-04-03  Bruno Haible  <bruno@clisp.org>
25083
25084         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
25085         * lib/ldexpl.c: Undo last change.
25086
25087 2007-04-03  Bruno Haible  <bruno@clisp.org>
25088
25089         * modules/printf-frexpl (Depends-on): Undo last change.
25090         (Files): Add m4/ldexpl.m4.
25091
25092 2007-04-03  Bruno Haible  <bruno@clisp.org>
25093
25094         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
25095         * modules/isnanl (Link): New section.
25096
25097         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
25098         * modules/frexp (Link): New section.
25099
25100         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
25101         * modules/frexpl (Link): New section.
25102
25103         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
25104         * modules/ldexpl (Link): New section.
25105
25106 2007-04-03  Bruno Haible  <bruno@clisp.org>
25107
25108         * modules/TEMPLATE-EXTENDED: New file.
25109         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
25110
25111 2007-04-03  Bruno Haible  <bruno@clisp.org>
25112
25113         * DEPENDENCIES: New file.
25114         Suggested by Simon Josefsson.
25115
25116 2007-04-03  Bruno Haible  <bruno@clisp.org>
25117
25118         * doc/gnulib.texi: Escape @.
25119
25120 2007-04-03  James Youngman  <jay@gnu.org>
25121         and Paul Eggert  <eggert@cs.ucla.edu>
25122
25123         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
25124         birthtime on all systems that have birthtime, not just those which
25125         use st_birthtimensec rather than st_birthtim.  Putting zero in
25126         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
25127         that the birth time is not available for files on an NFS mount.
25128
25129 2007-04-03  Simon Josefsson  <simon@josefsson.org>
25130
25131         * modules/memxor: Move back from crypto/, suggested by Bruno.
25132         * modules/crypto/hmac-sha1: Fix memxor dependency.
25133
25134         * modules/crypto/gc: Moved from ../.
25135
25136 2007-04-02  Eric Blake  <ebb9@byu.net>
25137
25138         * lib/ldexpl.c (includes): Avoid libm.
25139
25140         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
25141
25142 2007-04-02  Bruno Haible  <bruno@clisp.org>
25143
25144         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
25145         on IRIX.
25146
25147 2007-04-02  Bruno Haible  <bruno@clisp.org>
25148
25149         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
25150         x86 or x86_64 platforms running MacOS X.
25151         Reported by Ryan Schmidt <@ryandesign.com>.
25152
25153 2007-04-02  Bruno Haible  <bruno@clisp.org>
25154
25155         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
25156         i386.
25157
25158 2007-04-01  Simon Josefsson  <simon@josefsson.org>
25159
25160         * modules/crypto/arcfour: Moved from ../.
25161         * modules/crypto/arcfour-tests: Moved from ../.
25162         * modules/crypto/arctwo: Moved from ../.
25163         * modules/crypto/arctwo-tests: Moved from ../.
25164         * modules/crypto/des: Moved from ../.
25165         * modules/crypto/des-tests: Moved from ../.
25166         * modules/crypto/gc-arcfour: Moved from ../.
25167         * modules/crypto/gc-arcfour-tests: Moved from ../.
25168         * modules/crypto/gc-arctwo: Moved from ../.
25169         * modules/crypto/gc-arctwo-tests: Moved from ../.
25170         * modules/crypto/gc-des: Moved from ../.
25171         * modules/crypto/gc-des-tests: Moved from ../.
25172         * modules/crypto/gc-hmac-md5: Moved from ../.
25173         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
25174         * modules/crypto/gc-hmac-sha1: Moved from ../.
25175         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
25176         * modules/crypto/gc-md2: Moved from ../.
25177         * modules/crypto/gc-md2-tests: Moved from ../.
25178         * modules/crypto/gc-md4: Moved from ../.
25179         * modules/crypto/gc-md4-tests: Moved from ../.
25180         * modules/crypto/gc-md5: Moved from ../.
25181         * modules/crypto/gc-md5-tests: Moved from ../.
25182         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
25183         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
25184         * modules/crypto/gc-random: Moved from ../.
25185         * modules/crypto/gc-rijndael: Moved from ../.
25186         * modules/crypto/gc-rijndael-tests: Moved from ../.
25187         * modules/crypto/gc-sha1: Moved from ../.
25188         * modules/crypto/gc-sha1-tests: Moved from ../.
25189         * modules/crypto/gc-tests: Moved from ../.
25190         * modules/crypto/hmac-md5: Moved from ../.
25191         * modules/crypto/hmac-md5-tests: Moved from ../.
25192         * modules/crypto/hmac-sha1: Moved from ../.
25193         * modules/crypto/hmac-sha1-tests: Moved from ../.
25194         * modules/crypto/md2: Moved from ../.
25195         * modules/crypto/md2-tests: Moved from ../.
25196         * modules/crypto/md4: Moved from ../.
25197         * modules/crypto/md4-tests: Moved from ../.
25198         * modules/crypto/md5: Moved from ../.
25199         * modules/crypto/md5-tests: Moved from ../.
25200         * modules/crypto/memxor: Moved from ../.
25201         * modules/crypto/rijndael: Moved from ../.
25202         * modules/crypto/rijndael-tests: Moved from ../.
25203         * modules/crypto/sha1: Moved from ../.
25204
25205 2007-03-30  James Youngman  <jay@gnu.org>
25206
25207         * tests/test-stat-time.c (prepare_test): use chmod() rather than
25208         rename() to change the ctime of a file (because ctime is unaffected
25209         by rename on jfs2 on AIX 5.1).
25210         (main): Start by doing cleanup, in case a previous run failed leaving
25211         test files behind.
25212
25213 2007-03-31  Bruno Haible  <bruno@clisp.org>
25214
25215         Support old proprietary implementations of iconv.
25216         * modules/iconv_open: New file.
25217         * lib/iconv_.h: New file.
25218         * m4/iconv_h.m4: New file.
25219         * lib/iconv_open.c: New file.
25220         * lib/iconv_open-aix.gperf: New file.
25221         * lib/iconv_open-hpux.gperf: New file.
25222         * lib/iconv_open-irix.gperf: New file.
25223         * lib/iconv_open-osf.gperf: New file.
25224         * m4/iconv_open.m4: New file.
25225         * modules/linebreak (Depends-on): Add iconv_open.
25226         * modules/striconv (Depends-on): Likewise.
25227         * modules/striconveh (Depends-on): Likewise.
25228         * modules/unicodeio (Depends-on): Likewise.
25229         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
25230         (iconv_t)(-1).
25231         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
25232         conversion if cd is (iconv_t)(-1).
25233         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
25234         is not possible.
25235
25236 2007-03-31  Bruno Haible  <bruno@clisp.org>
25237
25238         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
25239         work on Solaris either. Protect also second use of "autodetect_jp".
25240
25241 2007-03-31  Bruno Haible  <bruno@clisp.org>
25242
25243         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
25244         the function is not present.
25245
25246 2007-03-31  Bruno Haible  <bruno@clisp.org>
25247
25248         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
25249         the function is not present.
25250
25251 2007-03-31  Bruno Haible  <bruno@clisp.org>
25252
25253         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
25254         a bug in HP-UX iconv_open().
25255
25256 2007-03-31  Bruno Haible  <bruno@clisp.org>
25257
25258         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
25259         (Mathematics <math.h>): New section, add fpieee.
25260         (Input/output <stdio.h>): Add fseterr.
25261         (Mathematics <math.h>): New section, add printf-frexp.
25262         (Container data structures): Add sublist.
25263         (Core language properties): Add fpucw, inline.
25264         (Functions for greatest-width integer types <inttypes.h>): Add
25265         imaxabs, imaxdiv, inttypes.
25266         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
25267         isnanl-nolibm, ldexp.
25268         (Mathematics <math.h>): New section, add printf-frexpl.
25269         (Support for systems lacking POSIX:2001): Add fprintf-posix,
25270         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
25271         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
25272         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
25273         (Unicode string functions): Add unistr/u*-mbtoucr.
25274         (Java): Add javacomp-script, javaexec-script.
25275         (C#): Add csharpcomp-script, csharpexec-script.
25276         (Support for building libraries and executables): Add havelib,
25277         relocatable-*.
25278         (Support for maintaining and releasing projects): Renamed from
25279         'Support for maintaining and release projects'. Add announce-gen.
25280
25281 2007-03-31  Bruno Haible  <bruno@clisp.org>
25282
25283         * README: Talk primarily about git.
25284         (git and CVS): Renamed from CVS.
25285         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
25286         gnulib is available through git.
25287         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
25288
25289 2007-03-30  Bruno Haible  <bruno@clisp.org>
25290
25291         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
25292         * lib/poll_.h: Likewise.
25293         * lib/stat_.h: Likewise.
25294         * lib/sys_time_.h: Likewise.
25295         * lib/sysexit_.h: Likewise.
25296         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
25297         * lib/stdbool_.h: Likewise.
25298         * lib/byteswap_.h: Add double-inclusion guard.
25299
25300 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
25301
25302         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
25303
25304 2007-03-30  Karl Berry  <karl@gnu.org>
25305
25306         * config/srclist-update: double space after USA in the license
25307         substitution, since that's how it's usually (?) written.
25308
25309 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
25310
25311         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
25312         reported by Bruno Haible.
25313
25314 2007-03-29  Bruno Haible  <bruno@clisp.org>
25315
25316         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
25317         a bug in AIX iconv().
25318
25319 2007-03-29  Bruno Haible  <bruno@clisp.org>
25320
25321         * modules/ldexpl-tests: New file.
25322         * tests/test-ldexpl.c: New file.
25323
25324 2007-03-29  Bruno Haible  <bruno@clisp.org>
25325
25326         * lib/ldexpl.c: Include fpucw.h.
25327         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
25328         multiplication.
25329         * modules/ldexpl (Depends-on): Add fpucw.
25330
25331 2007-03-29  Bruno Haible  <bruno@clisp.org>
25332
25333         * modules/ldexpl: New file.
25334         * m4/ldexpl.m4: New file.
25335         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
25336         set.
25337         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
25338         REPLACE_LDEXPL.
25339         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
25340         REPLACE_LDEXPL.
25341         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
25342         gl_FUNC_LDEXPL_WORKS.
25343         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
25344         * modules/mathl (Files): Remove lib/ldexpl.c.
25345         (Depends-on): Add ldexpl.
25346
25347 2007-03-29  Bruno Haible  <bruno@clisp.org>
25348
25349         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
25350
25351 2007-03-29  Bruno Haible  <bruno@clisp.org>
25352
25353         * tests/test-striconveh.c (main): Don't assume that a direct conversion
25354         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
25355         and possibly also HP-UX.
25356         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
25357         work on AIX, IRIX, HP-UX, OSF/1.
25358         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
25359         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
25360         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
25361         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
25362         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
25363         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
25364
25365 2007-03-29  Bruno Haible  <bruno@clisp.org>
25366
25367         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
25368
25369 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
25370
25371         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
25372         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
25373
25374 2007-03-29  Eric Blake  <ebb9@byu.net>
25375
25376         * lib/acl-internal.h: Remove redundant include.
25377         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
25378         Cygwin when a file is locked.
25379
25380 2007-03-29  Bruno Haible  <bruno@clisp.org>
25381
25382         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
25383         file.
25384         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
25385
25386 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
25387
25388         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
25389         try to remove a parent directory if the child couldn't be removed
25390         (except for the first rmdir, which could fail because the child
25391         doesn't exist).  Problem reported by Jeff Blaine in
25392         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
25393
25394 2007-03-28  Bruno Haible  <bruno@clisp.org>
25395
25396         * lib/striconveh.c (utf8conv_carefully): New function.
25397         (mem_cd_iconveh_internal): Invoke it.
25398
25399 2007-03-28  Bruno Haible  <bruno@clisp.org>
25400
25401         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
25402         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
25403         input.
25404         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
25405         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
25406         unistr/u8-uctomb.
25407
25408 2007-03-28  Bruno Haible  <bruno@clisp.org>
25409
25410         * modules/unistr/u8-mbtoucr: New file.
25411         * lib/unistr/u8-mbtoucr.c: New file.
25412         * modules/unistr/u16-mbtoucr: New file.
25413         * lib/unistr/u16-mbtoucr.c: New file.
25414         * modules/unistr/u16-mbtoucr: New file.
25415         * lib/unistr/u16-mbtoucr.c: New file.
25416         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
25417
25418 2007-03-27  Simon Josefsson  <simon@josefsson.org>
25419             Bruno Haible  <bruno@clisp.org>
25420
25421         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
25422         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
25423         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
25424
25425         * m4/stdio_h.m4: Add stubs for vasprintf too.
25426
25427         * modules/stdio: Support vasprintf in sed command.
25428
25429         * modules/vasprintf: Depend on stdio for prototypes.  Remove
25430         vasprintf.h.  Add stdio module indicator.
25431
25432         * lib/stdio_.h: Declare asprintf and vasprintf, based on
25433         vasprintf.h.
25434
25435         * lib/vasprintf.h: File removed.
25436
25437         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
25438         * lib/vasprintf.c: Ditto.
25439         * lib/xvasprintf.c: Ditto.
25440         * tests/test-vasprintf-posix.c: Ditto.
25441         * tests/test-vasprintf.c: Ditto.
25442
25443 2007-03-27  Bruno Haible  <bruno@clisp.org>
25444
25445         Make vasnprintf multithread-safe.
25446         * lib/vasnprintf.c (decimal_point_char): New function.
25447         (VASNPRINTF): Use it.
25448         Suggested by Simon Josefsson.
25449
25450 2007-03-27  Eric Blake  <ebb9@byu.net>
25451
25452         Support sub-second birthtime on cygwin.
25453         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
25454         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
25455         (get_stat_birthtime): Also work with st_birthtim.
25456
25457 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
25458
25459         * lib/stat-time.h (USE_BIRTHTIME): Remove.
25460         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
25461         (get_stat_birthtime_ns): Do not try to use "spare" fields.
25462         (get_stat_birthtime_ns): Simplify compile-time tests.
25463         (get_stat_birthtime): Change the API to look like
25464         get_stat_mtime etc., except return a negative tv_nsec on error.
25465         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
25466         Don't check for "spare" fields.
25467         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
25468         or for struct stat.st_birthtime, as these tests aren't used.
25469         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
25470
25471 2007-03-27  Bruno Haible  <bruno@clisp.org>
25472
25473         * lib/stat-time.h: Include <sys/stat.h>.
25474
25475 2007-03-27  James Youngman  <jay@gnu.org>
25476
25477         * lib/stat-time.h (get_stat_birthtime): New function for
25478           retrieving st_birthtime as provided by UFS2 (hence *BSD).
25479         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
25480           and its variants.
25481         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
25482         * modules/stat-time-test: New file.
25483         * tests/test-stat-time.c: New test, devised by Bruno Haible.
25484
25485 2007-03-26  Bruno Haible  <bruno@clisp.org>
25486
25487         Better support of signalling NaNs.
25488         * lib/atanl.c: Include isnanl.h.
25489         (atanl): Perform test for NaN at the beginning of the function and
25490         through a call to isnanl.
25491         * lib/cosl.c: Include isnanl.h.
25492         (cosl): Perform test for NaN at the beginning of the function and
25493         through a call to isnanl.
25494         * lib/ldexpl.c: Include isnanl.h.
25495         (ldexpl): Perform test for NaN through a call to isnanl.
25496         * lib/logl.c: Include isnanl.h.
25497         (logl): Perform test for NaN at the beginning of the function and
25498         through a call to isnanl.
25499         * lib/sinl.c: Include isnanl.h.
25500         (sinl): Perform test for NaN at the beginning of the function and
25501         through a call to isnanl.
25502         * lib/sqrtl.c: Include isnanl.h.
25503         (sqrtl): Perform test for NaN at the beginning of the function and
25504         through a call to isnanl.
25505         * lib/tanl.c: Include isnanl.h.
25506         (tanl): Perform test for NaN at the beginning of the function and
25507         through a call to isnanl.
25508         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
25509         * modules/mathl (Depends-on): Add isnanl.
25510
25511 2007-03-26  Eric Blake  <ebb9@byu.net>
25512
25513         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
25514         regression in logic sense of previous patch.
25515
25516 2007-03-26  Bruno Haible  <bruno@clisp.org>
25517
25518         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
25519         unportable shell command "if ! ...".
25520         Reported by Ralf Wildenhues.
25521
25522 2007-03-25  Bruno Haible  <bruno@clisp.org>
25523
25524         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
25525         <sysexits.h> file, and only add EX_CONFIG.
25526         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
25527         absolute file name and whether it is sufficient. Substitute also
25528         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
25529         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
25530         ABSOLUTE_SYSEXITS_H into sysexits.h.
25531
25532 2007-03-25  Bruno Haible  <bruno@clisp.org>
25533
25534         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
25535         hints is NULL.
25536
25537 2007-03-25  Bruno Haible  <bruno@clisp.org>
25538
25539         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
25540         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
25541
25542 2007-03-25  Bruno Haible  <bruno@clisp.org>
25543
25544         * lib/vasnprintf.c: Include langinfo.h.
25545         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
25546         multithread-safe.
25547         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
25548         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
25549         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
25550         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
25551         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
25552         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
25553         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
25554         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
25555         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
25556         Reported by Simon Josefsson.
25557
25558 2007-03-25  Bruno Haible  <bruno@clisp.org>
25559
25560         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
25561         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
25562         * modules/vasnprintf (Depends-on): Add stdint.
25563
25564 2007-03-25  Bruno Haible  <bruno@clisp.org>
25565
25566         * modules/fpieee: New file.
25567         * m4/fpieee.m4: New file.
25568         * modules/isnan-nolibm (Depends-on): Add fpieee.
25569         * modules/isnanl-nolibm (Depends-on): Add fpieee.
25570         * modules/isnanl (Depends-on): Add fpieee.
25571
25572 2007-03-25  Bruno Haible  <bruno@clisp.org>
25573
25574         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
25575
25576 2007-03-25  Bruno Haible  <bruno@clisp.org>
25577
25578         Avoid test failures on IRIX 6.5.
25579         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
25580         (main): Use it.
25581         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
25582         macros.
25583         (main): Use them.
25584
25585 2007-03-25  Bruno Haible  <bruno@clisp.org>
25586
25587         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
25588         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
25589         exists but doesn't work.
25590         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
25591         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
25592         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
25593         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
25594
25595 2007-03-25  Bruno Haible  <bruno@clisp.org>
25596
25597         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
25598         returns inf. Needed on IRIX 6.5.
25599
25600 2007-03-25  Bruno Haible  <bruno@clisp.org>
25601
25602         * tests/test-frexpl.c: Include isnanl-nolibm.h.
25603         (main): Use isnanl instead of x != x idiom.
25604         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
25605
25606         * tests/test-frexp.c: Include isnan.h.
25607         (main): Use isnan instead of x != x idiom.
25608         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
25609
25610 2007-03-25  Bruno Haible  <bruno@clisp.org>
25611
25612         * tests/test-frexp.c (NaN): New function/macro.
25613         (main): Use it instead of 0.0 / 0.0.
25614         * tests/test-isnan.c (NaN): New function/macro.
25615         (main): Use it instead of 0.0 / 0.0.
25616         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
25617         (test_function): Use it instead of 0.0 / 0.0.
25618         * tests/test-vasprintf-posix.c (NaN): New function/macro.
25619         (test_function): Use it instead of 0.0 / 0.0.
25620         * tests/test-snprintf-posix.h (NaN): New function/macro.
25621         (test_function): Use it instead of 0.0 / 0.0.
25622         * tests/test-sprintf-posix.h (NaN): New function/macro.
25623         (test_function): Use it instead of 0.0 / 0.0.
25624         * tests/test-fprintf-posix.h (NaN): New function/macro.
25625         (test_function): Use it instead of 0.0 / 0.0.
25626         * tests/test-printf-posix.h (NaN): New function/macro.
25627         (test_function): Use it instead of 0.0 / 0.0.
25628
25629         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
25630
25631 2007-03-25  Bruno Haible  <bruno@clisp.org>
25632
25633         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
25634
25635 2007-03-25  Bruno Haible  <bruno@clisp.org>
25636
25637         * lib/regexec.c (merge_state_with_log): Make static.
25638
25639 2007-03-25  Bruno Haible  <bruno@clisp.org>
25640
25641         * lib/trigl.c (kernel_rem_pio2): Make static.
25642
25643 2007-03-25  Bruno Haible  <bruno@clisp.org>
25644
25645         * lib/sincosl.c (sincosl_table): Make static.
25646
25647 2007-03-25  Bruno Haible  <bruno@clisp.org>
25648
25649         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
25650         if the compiler does not support C99.
25651
25652 2007-03-25  Bruno Haible  <bruno@clisp.org>
25653
25654         * modules/time (Makefile.am): Ensure all rule action lines start with a
25655         tab.
25656
25657 2007-03-24  Bruno Haible  <bruno@clisp.org>
25658
25659         * modules/tsearch-tests: New file.
25660         * tests/test-tsearch.sh: New file.
25661         * tests/test-tsearch.c: New file, mostly copied from glibc.
25662
25663         * modules/search-tests: New file.
25664         * tests/test-search.c: New file.
25665
25666         * modules/search: New file.
25667         * lib/search_.h: New file, incorporating lib/tsearch.h.
25668         * m4/search_h.m4: New file.
25669         * lib/tsearch.h: Remove file.
25670         * lib/tsearch.c: Include search.h instead of tsearch.h.
25671         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
25672         HAVE_TSEARCH.
25673         * modules/tsearch (Files): Remove lib/tsearch.h.
25674         (Depends-on): Add search.
25675         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
25676         (Include): Change tsearch.h into search.h.
25677
25678 2007-03-24  Bruno Haible  <bruno@clisp.org>
25679
25680         * modules/fpucw: New file.
25681         * lib/fpucw.h: New file.
25682         * lib/frexp.c: Include fpucw.h.
25683         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
25684         (FUNC): Use them.
25685         * lib/printf-frexp.c: Include fpucw.h.
25686         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
25687         (FUNC): Use them.
25688         * lib/vasnprintf.c: Include fpucw.h.
25689         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
25690         'long double' calculations.
25691         * tests/test-frexpl.c: Include fpucw.h.
25692         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
25693         * tests/test-printf-frexpl.c: Include fpucw.h.
25694         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
25695         * modules/frexpl (Depends-on): Add fpucw.
25696         * modules/printf-frexpl (Depends-on): Likewise.
25697         * modules/fprintf-posix (Depends-on): Likewise.
25698         * modules/snprintf-posix (Depends-on): Likewise.
25699         * modules/sprintf-posix (Depends-on): Likewise.
25700         * modules/vasnprintf-posix (Depends-on): Likewise.
25701         * modules/vasprintf-posix (Depends-on): Likewise.
25702         * modules/vfprintf-posix (Depends-on): Likewise.
25703         * modules/vsnprintf-posix (Depends-on): Likewise.
25704         * modules/vsprintf-posix (Depends-on): Likewise.
25705         * modules/frexpl-tests (Depends-on): Likewise.
25706         * modules/printf-frexpl-tests (Depends-on): Likewise.
25707
25708 2007-03-24  Bruno Haible  <bruno@clisp.org>
25709
25710         * lib/float+.h: New file.
25711         * lib/isnan.c: Include float+.h.
25712         (SIZE): New macro.
25713         (FUNC): Compare only SIZE bytes of the value.
25714         * lib/vasnprintf.c: Include float+.h.
25715         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
25716         SIZEOF_LDBL or SIZEOF_DBL bytes.
25717         * modules/isnan-nolibm (Files): Add lib/float+.h.
25718         * modules/isnanl-nolibm (Files): Add lib/float+.h.
25719         * modules/isnanl (Files): Add lib/float+.h.
25720         * modules/vasnprintf (Files): Add lib/float+.h.
25721
25722 2007-03-24  Bruno Haible  <bruno@clisp.org>
25723
25724         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
25725         include isnanl-nolibm.h.
25726
25727 2007-03-24  Bruno Haible  <bruno@clisp.org>
25728
25729         * tests/test-read-file.c (main): Don't produce spurious output for
25730         expected situations. Make the test fail if it encountered unexpected
25731         results.
25732
25733 2007-03-24  Bruno Haible  <bruno@clisp.org>
25734
25735         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
25736         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
25737
25738 2007-03-24  Bruno Haible  <bruno@clisp.org>
25739
25740         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
25741
25742 2007-03-24  Bruno Haible  <bruno@clisp.org>
25743
25744         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
25745         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
25746
25747         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
25748         * modules/utf8-ucs4: Turn into a symbolic link to module
25749         unistr/u8-mbtouc.
25750
25751         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
25752         utf8-ucs4-unsafe.
25753         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
25754         unistr/u8-mbtouc-unsafe.
25755
25756         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
25757         * modules/utf16-ucs4: Turn into a symbolic link to module
25758         unistr/u16-mbtouc.
25759
25760         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
25761         utf16-ucs4-unsafe.
25762         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
25763         unistr/u16-mbtouc-unsafe.
25764
25765         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
25766         * modules/ucs4-utf8: Turn into a symbolic link to module
25767         unistr/u8-ubtomb.
25768
25769         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
25770         * modules/ucs4-utf16: Turn into a symbolic link to module
25771         unistr/u16-ubtomb.
25772
25773 2007-03-24  Bruno Haible  <bruno@clisp.org>
25774
25775         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
25776         Enable the function only if HAVE_INLINE.
25777         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
25778         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
25779         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
25780         Enable the function only if HAVE_INLINE.
25781         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
25782         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
25783         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
25784         Enable the function only if HAVE_INLINE.
25785         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
25786         Enable the function only if HAVE_INLINE.
25787         * modules/utf8-ucs4: Update.
25788         * modules/utf8-ucs4-unsafe: Update.
25789         * modules/utf16-ucs4: Update.
25790         * modules/utf16-ucs4-unsafe: Update.
25791         * modules/ucs4-utf8: Update.
25792         * modules/ucs4-utf16: Update.
25793
25794 2007-03-24  Bruno Haible  <bruno@clisp.org>
25795
25796         * lib/utf8-ucs4.h: Remove file.
25797         * lib/utf8-ucs4-unsafe.h: Remove file.
25798         * lib/utf16-ucs4.h: Remove file.
25799         * lib/utf16-ucs4-unsafe.h: Remove file.
25800         * lib/ucs4-utf8.h: Remove file.
25801         * lib/ucs4-utf16.h: Remove file.
25802         * lib/unistr.h: Include their previous contents.
25803         * m4/utf-ucs4.m4: Remove file.
25804         * m4/ucs4-utf.m4: Remove file.
25805         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
25806         (Depends-on): Add unistr/base.
25807         (configure.ac): Remove gl_UTF_UCS4.
25808         (Makefile.am): Update.
25809         (Include): Change to unistr.h.
25810         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
25811         (Depends-on): Add unistr/base.
25812         (configure.ac): Remove gl_UTF_UCS4.
25813         (Makefile.am): Update.
25814         (Include): Change to unistr.h.
25815         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
25816         (Depends-on): Add unistr/base.
25817         (configure.ac): Remove gl_UTF_UCS4.
25818         (Makefile.am): Update.
25819         (Include): Change to unistr.h.
25820         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
25821         (Depends-on): Add unistr/base.
25822         (configure.ac): Remove gl_UTF_UCS4.
25823         (Makefile.am): Update.
25824         (Include): Change to unistr.h.
25825         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
25826         (Depends-on): Add unistr/base.
25827         (configure.ac): Remove gl_UCS4_UTF.
25828         (Makefile.am): Update.
25829         (Include): Change to unistr.h.
25830         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
25831         (Depends-on): Add unistr/base.
25832         (configure.ac): Remove gl_UCS4_UTF.
25833         (Makefile.am): Update.
25834         (Include): Change to unistr.h.
25835         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
25836         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
25837         utf8-ucs4-unsafe.h.
25838         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
25839         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
25840         utf16-ucs4-unsafe.h.
25841         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
25842         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
25843         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
25844         * lib/unistr/u8-strchr.c: Likewise.
25845         * lib/unistr/u8-strrchr.c: Likewise.
25846         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
25847         * lib/unistr/u16-strchr.c: Likewise.
25848         * lib/unistr/u16-strrchr.c: Likewise.
25849         * lib/striconveh.c: Update.
25850         * lib/linebreak.c: Update.
25851
25852 2007-03-24  Bruno Haible  <bruno@clisp.org>
25853
25854         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
25855         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
25856
25857 2007-03-22  Bruno Haible  <bruno@clisp.org>
25858
25859         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
25860
25861 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
25862
25863         * MODULES.html.sh (File system functions): New module write-any-file.
25864         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
25865         * m4/write-any-file.m4: New files.
25866
25867 2007-03-23  Eric Blake  <ebb9@byu.net>
25868
25869         * gnulib-tool: Rearrange space-tab sequences, since some editors
25870         like to eat them.
25871
25872 2007-03-23  Eric Blake  <ebb9@byu.net>
25873
25874         * lib/version-etc.c (version_etc_va): Update license wording to
25875         be more concise.  Recommended by Richard Stallman.
25876
25877 2007-03-22  Bruno Haible  <bruno@clisp.org>
25878
25879         * lib/poll.c (MSG_PEEK): New fallback definition.
25880
25881 2007-03-22  Bruno Haible  <bruno@clisp.org>
25882
25883         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
25884         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
25885         (main): Update.
25886         Fixes a compilation error on BeOS.
25887
25888 2007-03-22  Bruno Haible  <bruno@clisp.org>
25889
25890         * modules/frexpl-tests: New file.
25891         * tests/test-frexpl.c: New file.
25892
25893         * modules/frexpl: New file.
25894         * m4/frexpl.m4: New file.
25895         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
25896         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
25897         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
25898         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
25899         (Depends-on): Add frexpl. Remove isnanl-nolibm.
25900         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
25901
25902 2007-03-22  Bruno Haible  <bruno@clisp.org>
25903
25904         * lib/frexpl.c: Share code with lib/frexp.c.
25905         * modules/mathl (Files): Add lib/frexp.c.
25906         (Depends-on): Add isnanl-nolibm.
25907
25908 2007-03-22  Bruno Haible  <bruno@clisp.org>
25909
25910         * modules/printf-frexp (Files): Add m4/frexp.m4.
25911         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
25912         only if the found frexp function actually works.
25913
25914 2007-03-22  Bruno Haible  <bruno@clisp.org>
25915
25916         * lib/frexp.c: Remove older implementation that uses divisions.
25917
25918 2007-03-21  Bruno Haible  <bruno@clisp.org>
25919
25920         * modules/frexp-tests: New file.
25921         * tests/test-frexp.c: New file.
25922
25923         * modules/frexp: New file.
25924         * lib/frexp.c: New file.
25925         * m4/frexp.m4: New file.
25926         * lib/math_.h (frexp): New declaration.
25927         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
25928         REPLACE_FREXP.
25929         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
25930
25931 2007-03-21  Bruno Haible  <bruno@clisp.org>
25932
25933         * modules/isnanl-tests: New file.
25934         * tests/test-isnanl.c: New file.
25935
25936         * modules/isnanl: New file.
25937         * lib/isnanl.h: New file.
25938         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
25939         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
25940         gl_FUNC_ISNANL_WORKS.
25941         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
25942         New macros.
25943
25944 2007-03-21  Bruno Haible  <bruno@clisp.org>
25945
25946         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
25947         lib/isnanl.h.
25948         (Include): Update.
25949         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
25950         * lib/vasnprintf.c: Update.
25951         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
25952         tests/test-isnanl.h, remove tests/test-isnanl.c.
25953         (Makefile.am): Update.
25954         * tests/test-isnanl-nolibm.c: New file.
25955         * tests/test-isnanl.h: New file.
25956         * tests/test-isnanl.c: Remove file.
25957
25958 2007-03-21  Jim Meyering  <jim@meyering.net>
25959
25960         When trying to open ".", treat ESTALE like EACCES.
25961         * lib/savewd.c (savewd_save): Resort to forking not just upon
25962         failure with EACCES, but also when errno is ESTALE.
25963
25964 2007-03-20  Bruno Haible  <bruno@clisp.org>
25965
25966         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
25967         Needed on AIX 5.1. Reported by Matthew Woehlke.
25968
25969 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
25970
25971         Suggestions by Bruno Haible:
25972         * lib/acl-internal.h: Include "gettext.h" rather than rolling
25973         our own.
25974         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
25975         * modules/acl (Depends-on): Add gettext.
25976
25977 2007-03-19  Bruno Haible  <bruno@clisp.org>
25978
25979         * modules/iconvme: Remove file.
25980         * lib/iconvme.h: Remove file.
25981         * lib/iconvme.c: Remove file.
25982         * m4/iconvme.m4: Remove file.
25983
25984 2007-03-19  Bruno Haible  <bruno@clisp.org>
25985
25986         * doc/relocatable-maint.texi: Break long shell script line.
25987         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
25988
25989 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
25990
25991         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
25992         handle file_has_acl.
25993         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
25994         * lib/acl.c: Move header inclusions and related macro defns into
25995         lib/acl-internal.h.
25996         (S_ISLNK): Remove defn, since that's now done for us.
25997         (file_has_acl): Move to lib/file-has-acl.c.
25998         Call acl_trivial if available.  This is the crucial part of the fix.
25999         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
26000         shared within the library.  Rewrite a bit, partly to make it compatible
26001         with the GNU coding style.
26002         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
26003         Remove unnecessary double-quotes.
26004         Don't test for acl_to_text; the build will catch that.
26005         Replace acl_entries if it doesn't exist and it is needed.
26006         Check for -lsec and acl_trivial (as used on Solaris 10).
26007         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
26008         lib/file-has-acl.c.
26009         (Depends-on): Add sys_stat, for S_ISLNK.
26010
26011 2007-03-19  Ben Pfaff  <blp@gnu.org>
26012
26013         * doc/gnulib.texi: Fix typos.
26014         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
26015
26016 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
26017
26018         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
26019         If size is zero here, buf must be zero.
26020
26021 2007-03-19  Simon Josefsson  <simon@josefsson.org>
26022
26023         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
26024         <bruno@clisp.org>.
26025
26026 2007-03-18  Bruno Haible  <bruno@clisp.org>
26027
26028         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
26029         Suggested by Eric Blake.
26030
26031 2007-03-18  Ben Pfaff  <blp@gnu.org>
26032
26033         * doc/relocatable.texi: Recommend using as prefix a directory
26034         that does not exist and will never be created.  Based on
26035         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
26036         and others.
26037
26038 2007-03-17  Bruno Haible  <bruno@clisp.org>
26039
26040         * lib/fchownat.c: Include lchown.h.
26041
26042 2007-03-17  Bruno Haible  <bruno@clisp.org>
26043
26044         Fix endless loop when the given allocated size was > INT_MAX.
26045         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
26046         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
26047         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
26048         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
26049         * lib/sprintf.c (sprintf): Likewise.
26050
26051 2007-03-17  Bruno Haible  <bruno@clisp.org>
26052
26053         * tests/test-argp-2.sh (func_compare): Output a context diff.
26054
26055 2007-03-17  Bruno Haible  <bruno@clisp.org>
26056
26057         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
26058         locale's decimal-point character.
26059
26060 2007-03-17  Bruno Haible  <bruno@clisp.org>
26061
26062         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
26063         before comparing it. Needed because on some platforms (e.g. x86) a
26064         'long double' occupies less bytes than sizeof (long double).
26065
26066 2007-03-17  Bruno Haible  <bruno@clisp.org>
26067
26068         * tests/test-crc.c (main): Make printf statements 64-bit clean.
26069         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
26070         * tests/test-getaddrinfo.c (simple): Likewise.
26071         * tests/test-read-file.c (main): Likewise.
26072
26073 2007-03-17  Bruno Haible  <bruno@clisp.org>
26074
26075         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
26076
26077 2007-03-17  Bruno Haible  <bruno@clisp.org>
26078
26079         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
26080         unused variable.
26081
26082 2007-03-17  Bruno Haible  <bruno@clisp.org>
26083
26084         * tests/test-c-strcasecmp.c: Include c-strcase.h.
26085         * tests/test-c-strncasecmp.c: Likewise.
26086
26087 2007-03-17  Bruno Haible  <bruno@clisp.org>
26088
26089         * modules/stdlib (Depends-on): Add unistd.
26090         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
26091         Needed for MacOS X 10.3.
26092
26093 2007-03-17  Bruno Haible  <bruno@clisp.org>
26094
26095         * lib/unistr/u-strdup.h: Include <stdlib.h>.
26096
26097 2007-03-17  Bruno Haible  <bruno@clisp.org>
26098
26099         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
26100
26101 2007-03-17  Bruno Haible  <bruno@clisp.org>
26102
26103         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
26104         to reflect files copied from gnulib (with or without modifications).
26105         Suggested by Jim Meyering.
26106
26107 2007-03-17  Eric Blake  <ebb9@byu.net>
26108
26109         * NEWS: Document stdlib change from 2007-02-18.
26110
26111 2007-03-17  Jim Meyering  <jim@meyering.net>
26112
26113         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
26114         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
26115         someone uses a name containing shell meta-characters.
26116         Reported by Alfred M. Szmidt.
26117
26118         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
26119
26120 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
26121
26122         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
26123         and copy gettext configuration files only if configure.ac contains
26124         a use of AM_GNU_GETTEXT_VERSION.
26125
26126 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
26127
26128         * build-aux/bootstrap (gnulib_name): New variable.
26129         (gnulib_tool_options): Use it.
26130
26131 2007-03-13  Simon Josefsson  <simon@josefsson.org>
26132
26133         * tests/test-des.c: Use new namespace.
26134
26135 2007-03-15  Bruno Haible  <bruno@clisp.org>
26136
26137         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
26138         Reported by James Youngman <jay@gnu.org>.
26139
26140 2007-03-15  Bruno Haible  <bruno@clisp.org>
26141
26142         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
26143         declared prototype. Needed with cc on OSF/1 5.1.
26144
26145 2007-03-15  Bruno Haible  <bruno@clisp.org>
26146
26147         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
26148         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
26149         (struct gl_list_implementation): Add dispose_fn argument to the
26150         'create_empty', 'create' methods.
26151         (struct gl_list_impl_base): Add field 'dispose_fn'.
26152         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
26153         argument.
26154         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
26155         dispose_fn argument.
26156         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
26157         dispose_fn on the dropped values.
26158         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
26159         dispose_fn argument.
26160         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
26161         dropped values.
26162         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
26163         (gl_tree_remove_node): Call dispose_fn on the dropped value.
26164         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
26165         (gl_tree_remove_node): Call dispose_fn on the dropped value.
26166         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
26167         argument.
26168         (gl_tree_list_free): Call dispose_fn on the dropped values.
26169         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
26170         the dropped values.
26171         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
26172         Add dispose_fn argument.
26173         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
26174         Call dispose_fn on the dropped values.
26175         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
26176         Add dispose_fn argument.
26177         (gl_sublist_create): Initialize the 'dispose_fn' field.
26178         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
26179         * tests/test-array_list.c (main): Update.
26180         * tests/test-carray_list.c (main): Update.
26181         * tests/test-avltree_list.c (main): Update.
26182         * tests/test-rbtree_list.c (main): Update.
26183         * tests/test-avltreehash_list.c (main): Update.
26184         * tests/test-rbtreehash_list.c (main): Update.
26185         * tests/test-linked_list.c (main): Update.
26186         * tests/test-linkedhash_list.c (main): Update.
26187         * tests/test-array_oset.c (main): Update.
26188
26189 2007-03-15  Bruno Haible  <bruno@clisp.org>
26190
26191         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
26192         (gl_oset_create_empty): Add dispose_fn argument.
26193         (struct gl_oset_implementation): Add dispose_fn argument to
26194         'create_empty' method.
26195         (struct gl_oset_impl_base): Add dispose_fn field.
26196         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
26197         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
26198         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
26199         values.
26200         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
26201         (gl_tree_oset_free): Call dispose_fn on the dropped values.
26202         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
26203         dropped value.
26204         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
26205         dropped value.
26206         * tests/test-array_oset.c (main): Update.
26207         * tests/test-avltree_oset.c (main): Update.
26208         * tests/test-rbtree_oset.c (main): Update.
26209         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
26210
26211 2007-03-13  Bruno Haible  <bruno@clisp.org>
26212
26213         * tests/test-stdbool.c (i): Update after last patch.
26214
26215 2007-03-12  Bruno Haible  <bruno@clisp.org>
26216
26217         * lib/quotearg.c: Include <wctype.h> early, before the definition of
26218         the iswprint macro. Needed on Solaris 2.5.1.
26219
26220 2007-03-12  Bruno Haible  <bruno@clisp.org>
26221
26222         * tests/test-printf-frexp.c (main): Declare x as volatile.
26223
26224 2007-03-12  Simon Josefsson  <simon@josefsson.org>
26225
26226         * doc/gnulib.texi (Build robot for gnulib): New section.
26227
26228 2007-03-12  Jim Meyering  <jim@meyering.net>
26229
26230         * build-aux/bootstrap: New file.
26231         * build-aux/bootstrap.conf: New file, from coreutils.
26232
26233 2007-03-11  Bruno Haible  <bruno@clisp.org>
26234
26235         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
26236
26237 2007-03-12  Simon Josefsson  <simon@josefsson.org>
26238
26239         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
26240         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
26241         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
26242
26243 2007-03-11  Bruno Haible  <bruno@clisp.org>
26244
26245         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
26246         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
26247
26248 2007-03-11  Bruno Haible  <bruno@clisp.org>
26249
26250         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
26251         formula. Needed for SunPRO C 5.0.
26252
26253 2007-03-11  Bruno Haible  <bruno@clisp.org>
26254
26255         * modules/long-options (Depends-on): Add getopt.
26256
26257 2007-03-11  Bruno Haible  <bruno@clisp.org>
26258
26259         * modules/modechange (Depends-on): Add stdbool.
26260
26261 2007-03-11  Bruno Haible  <bruno@clisp.org>
26262
26263         * modules/i-ring (Depends-on): Add stdbool.
26264
26265 2007-03-11  Bruno Haible  <bruno@clisp.org>
26266
26267         * modules/gc-des (Depends-on): Add stdbool.
26268
26269 2007-03-11  Bruno Haible  <bruno@clisp.org>
26270
26271         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
26272
26273 2007-03-11  Bruno Haible  <bruno@clisp.org>
26274
26275         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
26276
26277 2007-03-11  Bruno Haible  <bruno@clisp.org>
26278
26279         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
26280
26281 2007-03-11  Bruno Haible  <bruno@clisp.org>
26282
26283         * lib/vasnprintf.c (sprintf): Undefine.
26284
26285 2007-03-11  Bruno Haible  <bruno@clisp.org>
26286
26287         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
26288         initializers in SunPRO C and Compaq C compilers.
26289
26290 2007-03-11  Bruno Haible  <bruno@clisp.org>
26291
26292         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
26293         decrementing code ANSI C compliant.
26294
26295 2007-03-11  Bruno Haible  <bruno@clisp.org>
26296
26297         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
26298         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
26299
26300 2007-03-11  Bruno Haible  <bruno@clisp.org>
26301
26302         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
26303         <stdbool.h> substitute doesn't pass.
26304
26305 2007-03-11  Bruno Haible  <bruno@clisp.org>
26306
26307         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
26308
26309 2007-03-11  Bruno Haible  <bruno@clisp.org>
26310
26311         * gnulib-tool (func_create_megatestdir): Create also an autobuild
26312         script, for submission to autobuild.josefsson.org.
26313
26314 2007-03-10  Bruno Haible  <bruno@clisp.org>
26315
26316         * modules/canonicalize-lgpl-tests: New file.
26317         * tests/test-canonicalize-lgpl.sh: New file.
26318         * tests/test-canonicalize-lgpl.c: New file.
26319
26320         * modules/c-strcase-tests: New file.
26321         * tests/test-c-strcase.sh: New file.
26322         * tests/test-c-strcasecmp.c: New file.
26323         * tests/test-c-strncasecmp.c: New file.
26324
26325         * modules/atexit-tests: New file.
26326         * tests/test-atexit.sh: New file.
26327         * tests/test-atexit.c: New file.
26328
26329 2007-03-10  Bruno Haible  <bruno@clisp.org>
26330
26331         * tests/test-binary-io.sh: Use temporary filenames that are not so
26332         likely to clash with those of other tests (in a parallel make).
26333         * tests/test-binary-io.c: Likewise.
26334
26335 2007-03-10  Bruno Haible  <bruno@clisp.org>
26336
26337         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
26338         fallback; use #error instead.
26339         Suggested by Simon Josefsson.
26340
26341 2007-03-10  Bruno Haible  <bruno@clisp.org>
26342
26343         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
26344         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
26345         first and the last.
26346
26347 2007-03-10  Bruno Haible  <bruno@clisp.org>
26348
26349         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
26350
26351 2007-03-10  Bruno Haible  <bruno@clisp.org>
26352
26353         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
26354         "make distcheck".
26355         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
26356         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
26357         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
26358
26359 2007-03-10  Bruno Haible  <bruno@clisp.org>
26360
26361         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
26362         variable.
26363         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
26364         variable.
26365
26366 2007-03-09  Eric Blake  <ebb9@byu.net>
26367         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
26368
26369         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
26370         types are not being provided by gnulib.
26371         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
26372         types are supported.
26373
26374 2007-03-10  Bruno Haible  <bruno@clisp.org>
26375
26376         * lib/stdio_.h (__attribute__): New macro.
26377         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
26378         vsprintf): Specify __attribute__ __format__ for GCC.
26379         Suggested by Eric Blake.
26380
26381 2007-03-09  Bruno Haible  <bruno@clisp.org>
26382
26383         * modules/printf-posix-tests: New file.
26384         * tests/test-printf-posix.sh: New file.
26385         * tests/test-printf-posix.c: New file.
26386
26387         * modules/printf-posix: New file.
26388         * lib/printf.c: New file.
26389         * m4/printf-posix-rpl.m4: New file.
26390         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
26391         REPLACE_PRINTF.
26392         * lib/stdio_.h (printf): New declaration.
26393         (format, __format__, ____printf____, ____scanf____, ____strftime____,
26394         ____strfmon____): New macros.
26395         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
26396         REPLACE_PRINTF.
26397
26398 2007-03-09  Bruno Haible  <bruno@clisp.org>
26399
26400         * tests/test-vasnprintf-posix2.sh: New file.
26401         * tests/test-vasnprintf-posix2.c: New file.
26402         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
26403         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
26404         (Makefile.am): Activate test-vasnprintf-posix2.sh.
26405
26406         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
26407         a locale dependent decimal point, rather than always '.'.
26408
26409 2007-03-09  Eric Blake  <ebb9@byu.net>
26410
26411         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
26412         spite of platforms like Tandem/NSK that define it to -1.
26413
26414 2007-03-08  Bruno Haible  <bruno@clisp.org>
26415
26416         * modules/vprintf-posix-tests: New file.
26417         * tests/test-vprintf-posix.sh: New file.
26418         * tests/test-vprintf-posix.c: New file.
26419         * tests/test-printf-posix.h: New file.
26420
26421         * modules/vprintf-posix: New file.
26422         * lib/vprintf.c: New file.
26423         * m4/vprintf-posix.m4: New file.
26424         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
26425         REPLACE_VPRINTF.
26426         * lib/stdio_.h (vprintf): New declaration.
26427         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
26428         REPLACE_VPRINTF.
26429
26430 2007-03-08  Bruno Haible  <bruno@clisp.org>
26431
26432         * modules/fprintf-posix-tests: New file.
26433         * tests/test-fprintf-posix.sh: New file.
26434         * tests/test-fprintf-posix.c: New file.
26435
26436         * modules/fprintf-posix: New file.
26437         * lib/fprintf.c: New file.
26438         * m4/fprintf-posix.m4: New file.
26439         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
26440         REPLACE_FPRINTF.
26441         * lib/stdio_.h (fprintf): New declaration.
26442         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
26443         REPLACE_FPRINTF.
26444
26445 2007-03-08  Bruno Haible  <bruno@clisp.org>
26446
26447         * modules/vfprintf-posix-tests: New file.
26448         * tests/test-vfprintf-posix.sh: New file.
26449         * tests/test-vfprintf-posix.c: New file.
26450         * tests/test-fprintf-posix.h: New file.
26451         * tests/test-fprintf-posix.out: New file.
26452
26453         * modules/vfprintf-posix: New file.
26454         * lib/vfprintf.c: New file.
26455         * m4/vfprintf-posix.m4: New file.
26456         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
26457         REPLACE_VFPRINTF.
26458         * lib/stdio_.h (vfprintf): New declaration.
26459         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
26460         REPLACE_VFPRINTF.
26461
26462 2007-03-08  Bruno Haible  <bruno@clisp.org>
26463
26464         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
26465
26466 2007-03-08  Bruno Haible  <bruno@clisp.org>
26467
26468         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
26469         instead of 'expr' invocations.
26470         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
26471         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
26472         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
26473         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
26474         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
26475         Suggested by Paul Eggert.
26476
26477 2007-03-08  Bruno Haible  <bruno@clisp.org>
26478
26479         * modules/fseterr-tests: New file.
26480         * tests/test-fseterr.c: New file.
26481
26482         * modules/fseterr: New file.
26483         * lib/fseterr.h: New file.
26484         * lib/fseterr.c: New file.
26485
26486 2007-03-08  Bruno Haible  <bruno@clisp.org>
26487
26488         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
26489         * lib/getopt_.h: Likewise.
26490         * lib/mbswidth.h: Likewise.
26491         * lib/setenv.h: Likewise.
26492         * lib/vasnprintf.h: Likewise.
26493         * lib/vasprintf.h: Likewise.
26494         * lib/verror.h: Likewise.
26495         * lib/xsetenv.h: Likewise.
26496         * lib/xvasprintf.h: Likewise.
26497
26498 2007-03-08  Jim Meyering  <jim@meyering.net>
26499
26500         * users.txt: Add parted.
26501
26502         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
26503
26504 2007-03-07  Bruno Haible  <bruno@clisp.org>
26505
26506         * m4/printf.m4: Make the shell script snippets copy&pastable.
26507
26508 2007-03-02  Bruno Haible  <bruno@clisp.org>
26509
26510         * lib/netinet_in_.h: New file.
26511         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
26512         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
26513         * modules/netinet_in (Files): Add lib/netinet_in_.h.
26514         (Depends-on): Add absolute-header.
26515         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
26516         into netinet/in.h.
26517
26518 2007-03-03  Bruno Haible  <bruno@clisp.org>
26519
26520         * lib/sys_select_.h: New file.
26521         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
26522         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
26523         * modules/sys_select (Files): Add lib/sys_select_.h.
26524         (Depends-on): Add absolute-header.
26525         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
26526         into sys/select.h.
26527
26528 2007-03-02  Bruno Haible  <bruno@clisp.org>
26529
26530         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
26531         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
26532         values.
26533         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
26534         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
26535         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
26536         * modules/sys_socket (Depends-on): Add absolute-header.
26537         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
26538         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
26539         (Include): Remove requirement of inclusion of <sys/types.h>.
26540
26541 2007-03-02  Bruno Haible  <bruno@clisp.org>
26542
26543         * lib/byteswap_.h (bswap_32): Fix formula.
26544
26545 2007-03-06  Bruno Haible  <bruno@clisp.org>
26546
26547         * modules/sprintf-posix-tests: New file.
26548         * tests/test-sprintf-posix.c: New file.
26549
26550         * modules/sprintf-posix: New file.
26551         * lib/sprintf.c: New file.
26552         * m4/sprintf-posix.m4: New file.
26553         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
26554         REPLACE_SPRINTF.
26555         * lib/stdio_.h (sprintf): New declaration.
26556         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
26557         REPLACE_SPRINTF.
26558
26559 2007-03-06  Bruno Haible  <bruno@clisp.org>
26560
26561         * modules/vsprintf-posix-tests: New file.
26562         * tests/test-vsprintf-posix.c: New file.
26563         * tests/test-sprintf-posix.h: New file.
26564
26565         * modules/vsprintf-posix: New file.
26566         * lib/vsprintf.c: New file.
26567         * m4/vsprintf-posix.m4: New file.
26568         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
26569         REPLACE_VSPRINTF.
26570         * lib/stdio_.h (vsprintf): New declaration.
26571         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
26572         REPLACE_VSPRINTF.
26573
26574 2007-03-06  Bruno Haible  <bruno@clisp.org>
26575
26576         * modules/vsnprintf (Depend-on): Remove minmax.
26577
26578 2007-03-06  Bruno Haible  <bruno@clisp.org>
26579
26580         * modules/snprintf-posix-tests: New file.
26581         * tests/test-snprintf-posix.c: New file.
26582
26583         * modules/snprintf-posix: New file.
26584         * m4/snprintf-posix.m4: New file.
26585         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
26586         gl_FUNC_SNPRINTF.
26587         (gl_FUNC_SNPRINTF): Invoke it.
26588         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
26589         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
26590         is set.
26591         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
26592
26593 2007-03-06  Bruno Haible  <bruno@clisp.org>
26594
26595         * modules/vsnprintf-posix-tests: New file.
26596         * tests/test-vsnprintf-posix.c: New file.
26597         * tests/test-snprintf-posix.h: New file.
26598
26599         * modules/vsnprintf-posix: New file.
26600         * m4/vsnprintf-posix.m4: New file.
26601         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
26602         gl_FUNC_VSNPRINTF.
26603         (gl_FUNC_VSNPRINTF): Invoke it.
26604         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
26605         * lib/stdio_.h (vsnprintf): Define as a replacement if
26606         REPLACE_VSNPRINTF is set.
26607         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
26608
26609 2007-03-06  Bruno Haible  <bruno@clisp.org>
26610
26611         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
26612         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
26613
26614 2007-03-06  Bruno Haible  <bruno@clisp.org>
26615
26616         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
26617         (asinl): Declare also if HAVE_DECL_ASINL is set.
26618         (atanl): Declare also if HAVE_DECL_ATANL is set.
26619         (ceill): Declare also if HAVE_DECL_CEILL is set.
26620         (cosl): Declare also if HAVE_DECL_COSL is set.
26621         (expl): Declare also if HAVE_DECL_EXPL is set.
26622         (floorl): Declare also if HAVE_DECL_FLOORL is set.
26623         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
26624         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
26625         (logl): Declare also if HAVE_DECL_LOGL is set.
26626         (sinl): Declare also if HAVE_DECL_SINL is set.
26627         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
26628         (tanl): Declare also if HAVE_DECL_TANL is set.
26629         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
26630         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
26631         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
26632         declaration of frexpl, ldexpl.
26633         * modules/printf-frexpl (Depends-on): Add math.
26634         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
26635
26636 2007-03-05  Bruno Haible  <bruno@clisp.org>
26637
26638         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
26639         frexpl and ldexpl are declared.
26640         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
26641
26642 2007-03-05  Bruno Haible  <bruno@clisp.org>
26643
26644         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
26645         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
26646
26647 2007-03-05  Bruno Haible  <bruno@clisp.org>
26648
26649         * lib/stdio_.h: Include <stddef.h>.
26650
26651 2007-03-05  Bruno Haible  <bruno@clisp.org>
26652
26653         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
26654
26655 2007-03-05  Bruno Haible  <bruno@clisp.org>
26656
26657         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
26658         NetBSD 4, from Ralf Wildenhues.
26659
26660 2007-03-04  Bruno Haible  <bruno@clisp.org>
26661
26662         * lib/vasprintf.h: Update #if logic for the case when the functions
26663         exist but are overridden.
26664
26665 2007-03-04  Bruno Haible  <bruno@clisp.org>
26666
26667         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
26668         implementations: glibc-2.4 and MacOS X 10.3.
26669         * tests/test-vasnprintf-posix.c (test_function): Test also the case
26670         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
26671         * tests/test-vasprintf-posix.c (test_function): Likewise.
26672
26673 2007-03-04  Bruno Haible  <bruno@clisp.org>
26674
26675         * modules/vasprintf-posix-tests: New file.
26676         * tests/test-vasprintf-posix.c: New file.
26677
26678         * modules/vasprintf-posix: New file.
26679         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
26680         defined.
26681         * m4/vasprintf-posix.m4: New file.
26682         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
26683         gl_FUNC_VASPRINTF.
26684         (gl_FUNC_VASPRINTF): Invoke it.
26685         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
26686         here.
26687         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
26688
26689 2007-03-04  Bruno Haible  <bruno@clisp.org>
26690
26691         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
26692         REPLACE_GETTIMEOFDAY.
26693         * modules/sys_time (Makefile.am): Likewise.
26694         * m4/sys_time_h.m4: Likewise.
26695         * m4/gettimeofday.m4: Likewise.
26696
26697 2007-03-04  Bruno Haible  <bruno@clisp.org>
26698
26699         * modules/vasnprintf-posix-tests: New file.
26700         * tests/test-vasnprintf-posix.c: New file.
26701
26702         * modules/vasnprintf-posix: New file.
26703         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
26704         printf-frexpl.h.
26705         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
26706         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
26707         REPLACE_VASNPRINTF is defined.
26708         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
26709         gl_FUNC_VASNPRINTF.
26710         (gl_FUNC_VASNPRINTF): Invoke it.
26711         * m4/vasnprintf-posix.m4: New file.
26712         * m4/printf.m4: New file.
26713
26714 2007-03-04  Bruno Haible  <bruno@clisp.org>
26715
26716         Compile progreloc.c only if --enable-relocatable is specified.
26717         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
26718         if --enable-relocatable was specified.
26719         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
26720         lib_SOURCES.
26721
26722 2007-03-04  Jim Meyering  <jim@meyering.net>
26723
26724         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
26725         Use it consistently, rather than enumerating errno constants.
26726
26727 2007-03-04  Bruno Haible  <bruno@clisp.org>
26728
26729         * modules/xvasprintf-tests: New file.
26730         * tests/test-xvasprintf.c: New file.
26731
26732         * modules/vasprintf-tests: New file.
26733         * tests/test-vasprintf.c: New file.
26734
26735         * modules/vasnprintf-tests: New file.
26736         * tests/test-vasnprintf.c: New file.
26737
26738         * modules/vsnprintf-tests: New file.
26739         * tests/test-vsnprintf.c: New file.
26740
26741         * modules/snprintf-tests: New file.
26742         * tests/test-snprintf.c: New file.
26743
26744 2007-03-04  Bruno Haible  <bruno@clisp.org>
26745
26746         Compile relocatable.c only if --enable-relocatable is specified.
26747         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
26748         gl_RELOCATABLE_LIBRARY.
26749         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
26750         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
26751         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
26752         gl_RELOCATABLE_LIBRARY.
26753         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
26754         (Makefile.am): Remove lib_SOURCES.
26755         * modules/relocatable-lib-lgpl (configure.ac): Invoke
26756         gl_RELOCATABLE_LIBRARY.
26757         (Makefile.am): Remove lib_SOURCES.
26758         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
26759         always.
26760         * modules/relocatable-prog-wrapper (configure.ac): Invoke
26761         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
26762
26763 2007-03-04  Bruno Haible  <bruno@clisp.org>
26764
26765         * modules/argmatch-tests: New file.
26766         * tests/test-argmatch.c: New file.
26767
26768         * tests/test-allocsa.c (main): Halve the number of loop runs.
26769
26770         * modules/alloca-opt-tests: New file.
26771         * tests/test-alloca-opt.c: New file.
26772
26773 2007-03-04  Jim Meyering  <jim@meyering.net>
26774
26775         Work around difference between Linux ACLs and Solaris 10 ZFS.
26776         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
26777         for EINVAL.
26778
26779 2007-03-03  Bruno Haible  <bruno@clisp.org>
26780
26781         * modules/relocatable-prog (Depends-on): Add back progreloc's
26782         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
26783
26784 2007-03-03  Bruno Haible  <bruno@clisp.org>
26785
26786         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
26787         * modules/relocatable-lib: New file.
26788
26789 2007-03-03  Bruno Haible  <bruno@clisp.org>
26790
26791         * modules/relocatable-prog: Renamed from modules/relocatable.
26792         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
26793
26794 2007-03-03  Bruno Haible  <bruno@clisp.org>
26795
26796         * modules/relocatable-script (Files): Add doc/relocatable.texi,
26797         m4/relocatable-lib.m4.
26798         (Depends-on): Remove 'relocatable'.
26799         (configure.ac): Add gl_RELOCATABLE_NOP.
26800
26801 2007-03-03  Bruno Haible  <bruno@clisp.org>
26802
26803         * modules/relocatable-prog-wrapper: New file.
26804         * modules/relocatable (Depends-on): Add it. Remove all other
26805         dependencies except progname.
26806         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
26807
26808         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
26809         (gl_FUNC_STRERROR): Nop.
26810         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
26811
26812         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
26813         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
26814
26815         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
26816         (gl_FUNC_READLINK): Update.
26817
26818         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
26819
26820 2007-03-03  Bruno Haible  <bruno@clisp.org>
26821
26822         * lib/xreadlink.c: Include <unistd.h> unconditionally.
26823         * modules/xreadlink (Depends-on): Add unistd.
26824         * modules/xreadlink-with-size (Depends-on): Likewise.
26825
26826 2007-03-03  Bruno Haible  <bruno@clisp.org>
26827
26828         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
26829         extracted from gt_FUNC_SETENV.
26830         (gt_FUNC_SETENV): Remove macro.
26831         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
26832         remove gt_FUNC_SETENV.
26833
26834 2007-03-03  Bruno Haible  <bruno@clisp.org>
26835
26836         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
26837         ENABLE_RELOCATABLE here.
26838         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
26839
26840 2007-03-03  Bruno Haible  <bruno@clisp.org>
26841
26842         * modules/rbtreehash-list-tests (Depends-on): Add progname.
26843         * tests/test-rbtreehash_list.c: Include progname.h.
26844         (main): Call set_program_name.
26845
26846         * modules/rbtree-oset-tests (Depends-on): Add progname.
26847         * tests/test-rbtree_oset.c: Include progname.h.
26848         (main): Call set_program_name.
26849
26850         * modules/rbtree-list-tests (Depends-on): Add progname.
26851         * tests/test-rbtree_list.c: Include progname.h.
26852         (main): Call set_program_name.
26853
26854         * modules/linked-list-tests (Depends-on): Add progname.
26855         * tests/test-linked_list.c: Include progname.h.
26856         (main): Call set_program_name.
26857
26858 2007-03-03  Bruno Haible  <bruno@clisp.org>
26859
26860         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
26861         All uses of __restrict changed to _Restrict_.
26862         * lib/glob_.h (__restrict): Remove macro.
26863
26864 2007-03-02  Bruno Haible  <bruno@clisp.org>
26865
26866         * modules/gettext (configure.ac): Require gettext infrastructure
26867         from version 0.16.1.
26868
26869 2007-03-02  Bruno Haible  <bruno@clisp.org>
26870
26871         * modules/linkedhash-list-tests (Depends-on): Add progname.
26872         * tests/test-linkedhash_list.c: Include progname.h.
26873         (main): Call set_program_name.
26874
26875         * modules/carray-list-tests (Depends-on): Add progname.
26876         * tests/test-carray_list.c: Include progname.h.
26877         (main): Call set_program_name.
26878
26879         * modules/avltreehash-list-tests (Depends-on): Add progname.
26880         * tests/test-avltreehash_list.c: Include progname.h.
26881         (main): Call set_program_name.
26882
26883         * modules/avltree-oset-tests (Depends-on): Add progname.
26884         * tests/test-avltree_oset.c: Include progname.h.
26885         (main): Call set_program_name.
26886
26887         * modules/avltree-list-tests (Depends-on): Add progname.
26888         * tests/test-avltree_list.c: Include progname.h.
26889         (main): Call set_program_name.
26890
26891         * modules/array-oset-tests (Depends-on): Add progname.
26892         * tests/test-array_oset.c: Include progname.h.
26893         (main): Call set_program_name.
26894
26895         * modules/array-list-tests (Depends-on): Add progname.
26896         * tests/test-array_list.c: Include progname.h.
26897         (main): Call set_program_name.
26898
26899         * modules/argp-tests (Depends-on): Add progname.
26900         * tests/test-argp.c: Include argp.h first. Include progname.h.
26901         (main): Call set_program_name.
26902
26903 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
26904
26905         * doc/gnulib-tool.texi (Initial import): Reword description of
26906         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
26907         limited effect even if defined after the first system include.
26908
26909 2007-03-01  Bruno Haible  <bruno@clisp.org>
26910
26911         * build-aux/config.libpath: Update to libtool-1.5.22.
26912         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
26913
26914 2007-03-01  Bruno Haible  <bruno@clisp.org>
26915
26916         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
26917         foo_CFLAGS.
26918         Reported by Ralf Wildenhues.
26919
26920 2007-03-01  Bruno Haible  <bruno@clisp.org>
26921
26922         * build-aux/install-reloc: Remove object files left over by some
26923         compilers.
26924         Reported by Ralf Wildenhues.
26925
26926 2007-03-01  Bruno Haible  <bruno@clisp.org>
26927
26928         * build-aux/install-reloc: Break long lines.
26929
26930 2007-03-01  Bruno Haible  <bruno@clisp.org>
26931
26932         * doc/relocatable.texi: Document that it may not work on OpenBSD.
26933         Reported by Ralf Wildenhues.
26934
26935 2007-03-01  Bruno Haible  <bruno@clisp.org>
26936
26937         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
26938         include ordering constraints.
26939
26940 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
26941
26942         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
26943         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
26944         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
26945         as another example.
26946         * lib/time_.h: Fix misspelling.
26947         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
26948         Require gl_HEADER_TIME_H_DEFAULTS.
26949         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
26950         * m4/time_r.m4 (gl_TIME_R): Likewise.
26951         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
26952
26953 2007-03-01  Bruno Haible  <bruno@clisp.org>
26954
26955         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
26956         * m4/utimens.m4 (gl_UTIMENS): Likewise.
26957
26958 2007-03-01  Jim Meyering  <jim@meyering.net>
26959
26960         * modules/xreadlink (Maintainer): Add my name.
26961         * modules/xreadlink-with-size (Depends-on): Alphabetize.
26962
26963 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
26964             Bruno Haible  <bruno@clisp.org>
26965
26966         * build-aux/install-reloc: Compile also c-ctype.c.
26967         * build-aux/relocatable.sh.in: New file.
26968         * doc/relocatable.texi: New file.
26969         * doc/relocatable-maint.texi: New file.
26970         * doc/gnulib.texi: Include relocatable-maint.texi.
26971         * lib/progreloc.c: Include unistd.h unconditionally.
26972         * lib/relocwrapper.c: Include unistd.h unconditionally.
26973         Include c-ctype.h.
26974         (add_dotbin): Use c_tolower.
26975         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
26976         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
26977         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
26978         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
26979         to m4/relocatable-lib.m4.
26980         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
26981         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
26982         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
26983         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
26984         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
26985         * modules/relocatable: New file.
26986         * modules/relocatable-lib: New file.
26987         * modules/relocatable-script: New file.
26988
26989 2007-02-28  Bruno Haible  <bruno@clisp.org>
26990
26991         Import --enable-relocatable infrastructure.
26992         * build-aux/config.libpath: New file, from GNU gettext.
26993         * build-aux/install-reloc: New file, from GNU gettext.
26994         * build-aux/reloc-ldflags: New file, from GNU gettext.
26995         * lib/relocatable.h: New file, from GNU gettext.
26996         * lib/relocatable.c: New file, from GNU gettext.
26997         * lib/relocwrapper.c: New file, from GNU gettext.
26998         * m4/relocatable.m4: New file, from GNU gettext.
26999
27000 2007-02-28  Bruno Haible  <bruno@clisp.org>
27001
27002         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
27003
27004         * modules/xreadlink: New file, from GNU gettext with modifications.
27005         * lib/xreadlink.c: New file, from GNU gettext.
27006         * lib/xreadlink.h: Add comments.
27007         (xreadlink): New declaration.
27008
27009         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
27010         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
27011         lib/xreadlink-with-size.c.
27012         (configure.ac): Remove gl_XREADLINK invocation.
27013         (Makefile.am): Augment lib_SOURCES.
27014         * m4/xreadlink.m4: Remove file.
27015         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
27016         (xreadlink_with_size): Renamed from xreadink.
27017         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
27018         * modules/canonicalize (Depends-on): Replace xreadlink with
27019         xreadlink-with-size.
27020         * lib/canonicalize.c (canonicalize_filename_mode): Update.
27021
27022 2007-02-25  Jim Meyering  <jim@meyering.net>
27023
27024         * build-aux/announce-gen: When complaining about excess arguments,
27025         list them.
27026
27027 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
27028
27029         * README: Document signed integer overflow situation more
27030         accurately.
27031
27032 2007-02-25  Bruno Haible  <bruno@clisp.org>
27033
27034         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
27035         'a' or 'A' conversion.
27036
27037 2007-02-25  Bruno Haible  <bruno@clisp.org>
27038
27039         * modules/filename: Renamed from modules/pathname.
27040         (Files): Replace lib/pathname.h with lib/filename.h. Replace
27041         lib/concatpath.c with lib/concat-filename.c.
27042         (Makefile.am): Update.
27043         (Include): Replace pathname.h with filename.h.
27044         * lib/filename.h: Renamed from lib/pathname.h.
27045         (concatenated_filename): Renamed from concatenated_pathname.
27046         * lib/concat-filename.c: Renamed from lib/concatpath.c.
27047         (concatenated_filename): Renamed from concatenated_pathname.
27048         * lib/findprog.c: Include filename.h instead of pathname.h.
27049         (find_in_path): Update.
27050         * lib/javacomp.c: Include filename.h instead of pathname.h.
27051         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
27052         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
27053         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
27054         is_oldgcj_14_13_usable, is_javac_usable): Update.
27055         * lib/javaexec.c: Include filename.h instead of pathname.h.
27056         (execute_java_class): Update.
27057         * modules/findprog: Update.
27058         * modules/javacomp: Update.
27059         * modules/javaexec: Update.
27060         * MODULES.html.sh (File system functions): Add 'filename', remove
27061         'pathname'.
27062
27063 2007-02-25  Bruno Haible  <bruno@clisp.org>
27064
27065         * modules/printf-frexpl-tests: New file.
27066         * tests/test-printf-frexpl.c: New file.
27067
27068         * modules/printf-frexpl: New file.
27069         * lib/printf-frexpl.h: New file.
27070         * lib/printf-frexpl.c: New file.
27071         * m4/printf-frexpl.m4: New file.
27072
27073 2007-02-25  Bruno Haible  <bruno@clisp.org>
27074
27075         * modules/printf-frexp-tests: New file.
27076         * tests/test-printf-frexp.c: New file.
27077
27078         * modules/printf-frexp: New file.
27079         * lib/printf-frexp.h: New file.
27080         * lib/printf-frexp.c: New file.
27081         * m4/printf-frexp.m4: New file.
27082
27083 2007-02-25  Bruno Haible  <bruno@clisp.org>
27084
27085         Assume automake >= 1.10 for the tests.
27086         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
27087         * modules/arctwo-tests: Likewise.
27088         * modules/argp-tests: Likewise.
27089         * modules/avltree-list-tests: Likewise.
27090         * modules/avltree-oset-tests: Likewise.
27091         * modules/avltreehash-list-tests: Likewise.
27092         * modules/carray-list-tests: Likewise.
27093         * modules/crc-tests: Likewise.
27094         * modules/des-tests: Likewise.
27095         * modules/gc-arcfour-tests: Likewise.
27096         * modules/gc-arctwo-tests: Likewise.
27097         * modules/gc-des-tests: Likewise.
27098         * modules/gc-hmac-md5-tests: Likewise.
27099         * modules/gc-hmac-sha1-tests: Likewise.
27100         * modules/gc-md2-tests: Likewise.
27101         * modules/gc-md4-tests: Likewise.
27102         * modules/gc-md5-tests: Likewise.
27103         * modules/gc-pbkdf2-sha1-tests: Likewise.
27104         * modules/gc-rijndael-tests: Likewise.
27105         * modules/gc-sha1-tests: Likewise.
27106         * modules/gc-tests: Likewise.
27107         * modules/getaddrinfo-tests: Likewise.
27108         * modules/hmac-md5-tests: Likewise.
27109         * modules/hmac-sha1-tests: Likewise.
27110         * modules/linked-list-tests: Likewise.
27111         * modules/linkedhash-list-tests: Likewise.
27112         * modules/lock-tests: Likewise.
27113         * modules/md2-tests: Likewise.
27114         * modules/md4-tests: Likewise.
27115         * modules/md5-tests: Likewise.
27116         * modules/rbtree-list-tests: Likewise.
27117         * modules/rbtree-oset-tests: Likewise.
27118         * modules/rbtreehash-list-tests: Likewise.
27119         * modules/read-file-tests: Likewise.
27120         * modules/rijndael-tests: Likewise.
27121         * modules/stdint-tests: Likewise.
27122         * modules/tls-tests: Likewise.
27123
27124 2007-02-24  Bruno Haible  <bruno@clisp.org>
27125
27126         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
27127         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
27128         function; instead check whether isnan with a double argument links.
27129         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
27130         function; instead check whether isnan with a 'long double' argument
27131         links.
27132         Reported by Eric Blake <ebb9@byu.net>.
27133
27134 2007-02-24  Bruno Haible  <bruno@clisp.org>
27135
27136         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
27137         defined.
27138         * lib/isnanl.c: Remove all code. Just include isnan.c.
27139         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
27140
27141 2007-02-25  Jim Meyering  <jim@meyering.net>
27142
27143         Avoid conflicting types for 'unsetenv' on FreeBSD.
27144         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
27145         conflicting with FreeBSD's (5.0 and 6.1) function declaration
27146         in stdlib.h.
27147
27148 2007-02-24  Bruno Haible  <bruno@clisp.org>
27149
27150         * modules/isnanl-nolibm-tests: New file.
27151         * tests/test-isnanl.c: New file.
27152
27153         * modules/isnanl-nolibm: New file.
27154         * lib/isnanl.h: New file.
27155         * lib/isnanl.c: New file.
27156         * m4/isnanl.m4: New file.
27157
27158 2007-02-24  Bruno Haible  <bruno@clisp.org>
27159
27160         * modules/isnan-nolibm-tests: New file.
27161         * tests/test-isnan.c: New file.
27162
27163         * modules/isnan-nolibm: New file.
27164         * lib/isnan.h: New file.
27165         * lib/isnan.c: New file.
27166         * m4/isnan.m4: New file.
27167
27168 2007-02-24  Bruno Haible  <bruno@clisp.org>
27169
27170         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
27171         assume that an exponent fits in 20 bits.
27172
27173 2007-02-24  Jim Meyering  <jim@meyering.net>
27174
27175         * m4/regex.m4: Update the description of the configure-time option,
27176         --without-included-regex, to state accurately what the defaults are,
27177         and perhaps to give people an idea why using this option is risky.
27178
27179 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
27180
27181         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
27182         loops on small arguments.  This attempts to avoid the problem
27183         Bruno Haible reported for AIX 4.3.2 in
27184         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
27185
27186 2007-02-23  Bruno Haible  <bruno@clisp.org>
27187
27188         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
27189         Needed for help2man.
27190
27191 2007-02-23  Karl Berry  <karl@gnu.org>
27192
27193         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
27194         exists, foo.h should be cvs-ignored, not committed.
27195
27196 2007-02-23  Eric Blake  <ebb9@byu.net>
27197
27198         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
27199         * lib/stat-time.h (includes): Likewise.
27200         * lib/utimecmp.c (includes): Likewise.
27201         * lib/utimens.h (includes): Likewise.
27202         * lib/getdate.y (includes): Also include "timespec.h" for use
27203         internal to the module.
27204         * modules/utimens (Depends-on): Revert yesterday's patch.
27205         * modules/nanosleep (Depends-on): Add missing dependency.
27206
27207 2007-02-22  Bruno Haible  <bruno@clisp.org>
27208
27209         * lib/glob.c: Don't include getlogin_r.h.
27210
27211 2007-02-22  Jim Meyering  <jim@meyering.net>
27212
27213         * modules/utimens (Depends-on): Add timespec, required for
27214         utimens.h's inclusion of timespec.h.
27215
27216 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
27217
27218         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
27219         long unreadable paths in GNU/Linux.  Problem reported by Andreas
27220         Schwab in
27221         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
27222         I'll try to think of a better way to fix the Solaris problem.
27223
27224         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
27225         like glibc; on Solaris 10, it fails with errno == EINVAL.
27226         POSIX says the behavior is unspecified if the first argument is NULL,
27227         so play it safe and never pass NULL to the system getcwd.
27228
27229 2007-02-21  Jim Meyering  <jim@meyering.net>
27230
27231         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
27232         of gettimeofday.  It would conflict with the one now always
27233         provided via sys_time_.h.  Reported by Matthew Woehlke, as
27234         an IRIX 6.5 build failure.
27235
27236 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
27237
27238         Minor fixups to port to Solaris 10 with Sun C 5.8.
27239         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
27240         * modules/getcwd (Depends-on): Add dirfd.
27241         * lib/putenv.c (putenv): #undef it.
27242         (rpl_putenv): New decl.
27243         (malloc, free): Include <stdlib.h> rather than prototyping separately.
27244
27245 2007-02-20  Bruno Haible  <bruno@clisp.org>
27246
27247         * modules/stdio-tests: New file.
27248         * tests/test-stdio.c: New file.
27249
27250         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
27251         (Depends-on): Add stdio.
27252         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
27253         (Include): Use <stdio.h> instead of vsnprintf.h.
27254         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
27255         HAVE_DECL_VSNPRINTF.
27256         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
27257
27258         * modules/snprintf (Files): Remove lib/snprintf.h.
27259         (Depends-on): Add stdio.
27260         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
27261         (Include): Use <stdio.h> instead of snprintf.h.
27262         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
27263         HAVE_DECL_SNPRINTF.
27264         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
27265         * lib/getaddrinfo.c: Likewise.
27266
27267         * modules/stdio: New file.
27268         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
27269         * lib/snprintf.h: Remove file.
27270         * lib/vsnprintf.h: Remove file.
27271         * lib/.cppi-disable: Remove snprintf.h.
27272         * m4/stdio_h.m4: New file.
27273         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
27274
27275 2007-02-20  Jim Meyering  <jim@meyering.net>
27276
27277         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
27278         used by e.g., mingw.  From Bruno Haible.
27279
27280 2007-02-19  Bruno Haible  <bruno@clisp.org>
27281
27282         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
27283         warnings.
27284         Reported by Ben Pfaff <blp@cs.stanford.edu>.
27285
27286 2007-02-19  Bruno Haible  <bruno@clisp.org>
27287
27288         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
27289         from mingw users.
27290
27291 2007-02-19  Bruno Haible  <bruno@clisp.org>
27292
27293         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
27294         warnings.
27295         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
27296
27297 2007-02-19  Jim Meyering  <jim@meyering.net>
27298
27299         Don't use FD after a successful "fdopendir (fd)".
27300         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
27301         Reset it by calling dirfd on the just-obtained DIR*.
27302
27303         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
27304         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
27305
27306 2007-02-18  Bruno Haible  <bruno@clisp.org>
27307
27308         * lib/readlink.c: Include <unistd.h>.
27309         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
27310         HAVE_READLINK.
27311         * modules/readlink (Depends-on): Add unistd.
27312         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27313         (Include): Add <unistd.h>.
27314
27315         * lib/getlogin_r.h: Remove file.
27316         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
27317         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
27318         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
27319         HAVE_DECL_GETLOGIN_R.
27320         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
27321         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27322         (Include): Use <unistd.h> instead of getlogin_r.h.
27323
27324         * lib/getcwd.h: Remove file.
27325         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
27326         * lib/xgetcwd.c: Likewise.
27327         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
27328         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
27329         * modules/getcwd (Files): Remove lib/getcwd.h.
27330         (Depends-on): Add unistd.
27331         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27332         (Include): Use <unistd.h> instad of getcwd.h.
27333
27334         * lib/ftruncate.c: Include <unistd.h> first.
27335         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
27336         Set HAVE_FTRUNCATE.
27337         * modules/ftruncate (Depends-on): Add unistd.
27338         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27339
27340         * lib/fchdir.c: Include <unistd.h> first.
27341         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
27342         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
27343         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
27344         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27345         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
27346
27347         * lib/dup2.c: Include <unistd.h> first.
27348         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
27349         HAVE_DUP2.
27350         * modules/dup2 (Depends-on): Add unistd.
27351         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27352
27353         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
27354         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
27355         REPLACE_CHOWN. Don't define chown as a macro here.
27356         * modules/chown (Depends-on): Add unistd.
27357         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27358
27359         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
27360         Add definition for GL_LINK_WARNING.
27361         (chown, dup2): New declarations.
27362         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
27363         link warning.
27364         (ftruncate): New declaration.
27365         (getcwd): New declaration, taken from old getcwd.h.
27366         (getlogin_r): New declaration, taken from old getlogin_r.h.
27367         (readlink): New declaration.
27368         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
27369         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
27370         (gl_PREREQ_UNISTD): Remove macro.
27371         (gl_UNISTD_MODULE_INDICATOR): New macro.
27372         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
27373         many new variables. Don't set UNISTD_H.
27374         * modules/unistd (Description): Change.
27375         (Depends-on): Add link-warning.
27376         (configure.ac): Update.
27377         (Makefile.am): Create unistd.h always. Substitute many new variables
27378         into it.
27379
27380 2007-02-18  Bruno Haible  <bruno@clisp.org>
27381
27382         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
27383         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
27384         HAVE_GETSUBOPT.
27385         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
27386         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
27387         * lib/getsubopt.h: Remove file.
27388         * modules/getsubopt (Files): Remove lib/getsubopt.h.
27389         (Depends-on): Add stdlib.
27390         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
27391         (Includes): Use <stdlib.h> instead of getsubopt.h.
27392         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
27393         Set HAVE_GETSUBOPT.
27394         * lib/getsubopt.c: Don't include getsubopt.h.
27395
27396 2007-02-18  Bruno Haible  <bruno@clisp.org>
27397
27398         * modules/fchdir (Depends-on): Add dup2.
27399
27400 2007-02-18  Bruno Haible  <bruno@clisp.org>
27401
27402         * lib/stdlib_.h: Handle glibc's special invocation convention
27403         specially.
27404
27405 2007-02-18  Bruno Haible  <bruno@clisp.org>
27406
27407         * modules/stdlib-tests: New file.
27408         * tests/test-stdlib.c: New file.
27409
27410         * modules/mkstemp (Files): Remove lib/mkstemp.h.
27411         (Depends-on): Add stdlib.
27412         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
27413         (Includes): Use <stdlib.h> instead of mkstemp.h.
27414         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
27415         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
27416         * lib/mkstemp.c: Don't include mkstemp.h.
27417         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
27418         * lib/stdlib--.h: Don't include mkstemp.h.
27419
27420         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
27421         (Depends-on): Add stdlib.
27422         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
27423         (Includes): Use <stdlib.h> instead of mkdtemp.h.
27424         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
27425         HAVE_MKDTEMP.
27426         * lib/mkdtemp.c: Don't include mkdtemp.h.
27427         * lib/clean-temp.c: Don't include mkdtemp.h.
27428
27429         * modules/exit (Files): Remove lib/exit.h.
27430         (Depends-on): Add stdlib.
27431         (Makefile.am): Remove lib_SOURCES.
27432         (Include): Use <stdlib.h> instead of exit.h.
27433         * lib/argmatch.c: Don't include exit.h.
27434         * lib/execute.c: Likewise.
27435         * lib/pagealign_alloc.c: Likewise.
27436         * lib/pipe.c: Likewise.
27437         * lib/wait-process.c: Likewise.
27438         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
27439         * lib/exitfail.c: Likewise.
27440         * lib/savewd.c: Likewise.
27441         * lib/xsetenv.c: Likewise.
27442
27443         * modules/stdlib: New file.
27444         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
27445         and extra comments about mkstemp().
27446         * lib/exit.h: Remove file.
27447         * lib/mkdtemp.h: Remove file.
27448         * lib/mkstemp.h: Remove file.
27449         * m4/stdlib_h.m4: New file.
27450         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
27451
27452 2007-02-18  Bruno Haible  <bruno@clisp.org>
27453
27454         * modules/math-tests: New file.
27455         * tests/test-math.c: New file.
27456
27457         * modules/math: New file.
27458         * modules/mathl (Files): Remove lib/mathl.h.
27459         (Depends-on): Add math.
27460         (Makefile.am): Don't mention mathl.h.
27461         (Include): Use <math.h> instead of mathl.h.
27462         * lib/math_.h: New file.
27463         * lib/mathl.h: Remove file.
27464         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
27465         mathl.h.
27466         * lib/asinl.c: Likewise.
27467         * lib/atanl.c: Likewise.
27468         * lib/ceill.c: Likewise.
27469         * lib/cosl.c: Likewise.
27470         * lib/expl.c: Likewise.
27471         * lib/floorl.c: Likewise.
27472         * lib/frexpl.c: Likewise.
27473         * lib/ldexpl.c: Likewise.
27474         * lib/logl.c: Likewise.
27475         * lib/sincosl.c: Likewise.
27476         * lib/sinl.c: Likewise.
27477         * lib/sqrtl.c: Likewise.
27478         * lib/tanl.c: Likewise.
27479         * lib/trigl.c: Likewise.
27480         * m4/math_h.m4: New file.
27481         * MODULES.html.sh (Mathematics): Add math.
27482
27483 2007-02-17  Bruno Haible  <bruno@clisp.org>
27484
27485         * modules/wctype-tests: New file.
27486         * tests/test-wctype.c: New file.
27487
27488         * modules/wchar-tests: New file.
27489         * tests/test-wchar.c: New file.
27490
27491         * modules/unistd-tests: New file.
27492         * tests/test-unistd.c: New file.
27493
27494         * modules/time-tests: New file.
27495         * tests/test-time.c: New file.
27496
27497         * modules/sysexits-tests: New file.
27498         * tests/test-sysexits.c: New file.
27499
27500         * modules/sys_time-tests: New file.
27501         * tests/test-sys_time.c: New file.
27502
27503         * modules/sys_stat-tests: New file.
27504         * tests/test-sys_stat.c: New file.
27505
27506         * modules/sys_socket-tests: New file.
27507         * tests/test-sys_socket.c: New file.
27508
27509         * modules/sys_select-tests: New file.
27510         * tests/test-sys_select.c: New file.
27511
27512         * modules/string-tests: New file.
27513         * tests/test-string.c: New file.
27514
27515         * modules/stdbool-tests: New file.
27516         * tests/test-stdbool.c: New file.
27517
27518         * modules/netinet_in-tests: New file.
27519         * tests/test-netinet_in.c: New file.
27520
27521         * modules/inttypes-tests: New file.
27522         * tests/test-inttypes.c: New file.
27523
27524         * modules/fcntl-tests: New file.
27525         * tests/test-fcntl.c: New file.
27526
27527         * modules/byteswap-tests: New file.
27528         * tests/test-byteswap.c: New file.
27529
27530         * modules/arpa_inet-tests: New file.
27531         * tests/test-arpa_inet.c: New file.
27532
27533 2007-02-17  Bruno Haible  <bruno@clisp.org>
27534
27535         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
27536         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
27537         if the corresponding module is not enabled. Emit link warnings if
27538         the function is used nevertheless.
27539         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
27540         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
27541         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
27542         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
27543         * modules/inttypes (Depends-on): Add link-warning.
27544         (Makefile.am): Copy the contents of build-aux/link-warning.h into
27545         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
27546         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
27547         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
27548         * modules/imaxdiv (configure.ac): Likewise.
27549         * modules/strtoimax (configure.ac): Likewise.
27550         * modules/strtoumax (configure.ac): Likewise.
27551
27552 2007-02-17  Bruno Haible  <bruno@clisp.org>
27553
27554         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
27555         gl_STRING_MODULE_INDICATOR_DEFAULTS.
27556         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
27557         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
27558
27559 2007-02-17  Bruno Haible  <bruno@clisp.org>
27560
27561         * modules/link-warning: New file.
27562         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
27563         * lib/string_.h (GL_LINK_WARNING): Remove definition.
27564         * modules/string (Depends-on): Add link-warning.
27565         (Makefile.am): Copy the contents of build-aux/link-warning.h into
27566         string.h.
27567         * MODULES.html.sh (Support for building libraries and executables): Add
27568         link-warning.
27569
27570 2007-02-17  Bruno Haible  <bruno@clisp.org>
27571
27572         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
27573         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
27574         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
27575         long lines.
27576
27577 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
27578             Bruno Haible  <bruno@clisp.org>
27579
27580         * modules/tmpfile: New file.
27581         * lib/tmpfile.c: New file.
27582         * m4/tmpfile.m4: New file.
27583         * MODULES.html.sh (func_all_modules): New section "Input/output".
27584
27585 2007-02-15  Bruno Haible  <bruno@clisp.org>
27586
27587         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
27588         (supports_delete_on_close): New function.
27589         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
27590
27591 2007-02-14  Bruno Haible  <bruno@clisp.org>
27592
27593         * modules/mbspcasecmp-tests: New file.
27594         * tests/test-mbspcasecmp.sh: New file.
27595         * tests/test-mbspcasecmp.c: New file.
27596
27597         New module mbspcasecmp.
27598         * modules/mbspcasecmp: New file.
27599         * lib/mbspcasecmp.c: New file.
27600         * lib/string_.h (strncasecmp): Change warning message.
27601         (mbspcasecmp): New declaration.
27602         * m4/mbspcasecmp.m4: New file.
27603         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27604         GNULIB_MBSPCASECMP.
27605         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
27606         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
27607
27608 2007-02-14  Bruno Haible  <bruno@clisp.org>
27609
27610         * modules/mbsncasecmp-tests: New file.
27611         * tests/test-mbsncasecmp.sh: New file.
27612         * tests/test-mbsncasecmp.c: New file.
27613
27614         New module mbsncasecmp.
27615         * modules/mbsncasecmp: New file.
27616         * lib/mbsncasecmp.c: New file.
27617         * lib/string_.h (mbsncasecmp): New declaration.
27618         * m4/mbsncasecmp.m4: New file.
27619         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27620         GNULIB_MBSNCASECMP.
27621         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
27622         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
27623
27624 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
27625
27626         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
27627         Verify that it doesn't overlap with our flags.
27628         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
27629         do not have the desired effect in multibyte locales; instead, use
27630         mbscasecmp.
27631         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
27632         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
27633         we don't require GNU fnmatch ourselves (if our users require it, they
27634         should do so explicitly).
27635
27636         Fix regex code so it doesn't rely on strcasecmp.
27637         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
27638         Otherwise, include gnulib's langinfo.h.
27639         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
27640         undesirable behavior in non-C locales.  Instead, rely on localecharset.
27641         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
27642         * modules/regex (FILES): Remove m4/codeset.m4.
27643         (Depends-on): Add localcharset.  Remove strcase.
27644
27645 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27646
27647         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
27648         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
27649
27650 2007-02-13  Bruno Haible  <bruno@clisp.org>
27651
27652         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
27653         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27654
27655 2007-02-12  Bruno Haible  <bruno@clisp.org>
27656
27657         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
27658         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
27659         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
27660         time warning rather than a link error.
27661
27662 2007-02-12  Bruno Haible  <bruno@clisp.org>
27663
27664         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
27665         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
27666         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27667
27668 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
27669
27670         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
27671         args, not 2.
27672
27673 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
27674
27675         New module 'time', so that apps can include <time.h> as per
27676         POSIX and GNU instead of separate include files like time_r.h
27677         and timegm.h.  This implementation tries out a simpler approach
27678         for replacing decls in standard include files (as compared to
27679         the string module), somewhat as an experiment.
27680
27681         * config/srclist.txt: Comment out mktime.c for now.
27682         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
27683         since it doesn't apply any more.  Use generic wording instead.
27684         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
27685         'time'.
27686         * lib/time_.h, m4/time_h.m4, modules/time: New files.
27687         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
27688         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
27689         Don't include <sys/types.h>; no longer needed since we assume C89.
27690         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
27691         * lib/strftime.c: Likewise.
27692         * lib/time_r.c: Likewise.
27693         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
27694         * lib/nanosleep.c: Include <time.h> first, to check interface.
27695         * lib/strptime.c: Likewise.
27696         * lib/time_r.c: Likewise.
27697         * lib/timegm.c: Likewise.
27698         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
27699         needed.
27700         * lib/timegm.c: Don't include timegm.h; no longer needed.
27701         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
27702         time.h now handles any problems in that area.
27703         (struct timespec, nanosleep): Remove; time.h now arranges for these.
27704         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
27705         that time.h defines struct timespec.
27706         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
27707         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
27708         handles that.
27709         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
27710         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
27711         needed.  Set REPLACE_LOCALTIME.
27712         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
27713         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
27714         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
27715         nanosleep; time_h.m4 now does that.  Don't require
27716         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
27717         module handles this now.
27718         * modules/getdate (Depends-on): Remove timespec.  Add time.
27719         * modules/nanosleep (Depends-on): Likewise.
27720         * modules/stat-time (Depends-on): Likewise.
27721         * modules/nanosleep (Include): Include time.h, not timespec.h.
27722         * modules/strptime (Files): Remove lib/strptime.h.
27723         (Depends-on): Add extensions, time.
27724         (Include): Include time.h, not strptime.h.
27725         * modules/time_r (Files): Remove lib/time_r.h.
27726         (Depends-on): Add time.
27727         (Include): Include time.h, not time_r.h.
27728         * modules/timegm: Likewise.
27729         * modules/timespec (Description): Now does timespec-related decls
27730         of our own, instead of struct timespec itself.
27731         (Depends-on): Add time; remove extensions.
27732         (Maintainer): Add self.
27733         * modules/utimecmp (Depends-on): Add time; remove timespec.
27734         * modules/utimens (Depends-on): Likewise.
27735         * modules/xnanosleep (Depends-on): Likewise.
27736
27737 2007-02-11  Bruno Haible  <bruno@clisp.org>
27738
27739         * lib/c-strstr.c: Include allocsa.h.
27740         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
27741         * lib/c-strcasestr.c: Include allocsa.h.
27742         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
27743         * lib/strcasestr.c: Include allocsa.h.
27744         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
27745         * lib/mbsstr.c: Include allocsa.h.
27746         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
27747         allocsa/freesa instead of malloc/free.
27748         * lib/mbscasestr.c: Include allocsa.h.
27749         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
27750         allocsa/freesa instead of malloc/free.
27751         * modules/c-strstr (Depends-on): Add allocsa.
27752         * modules/c-strcasestr (Depends-on): Likewise.
27753         * modules/strcasestr (Depends-on): Likewise.
27754         * modules/mbsstr (Depends-on): Likewise.
27755         * modules/mbscasestr (Depends-on): Likewise.
27756
27757 2007-02-11  Bruno Haible  <bruno@clisp.org>
27758
27759         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
27760
27761         * modules/mbsspn-tests: New file.
27762         * tests/test-mbsspn.sh: New file.
27763         * tests/test-mbsspn.c: New file.
27764
27765 2007-02-11  Bruno Haible  <bruno@clisp.org>
27766
27767         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
27768
27769         * modules/mbspbrk-tests: New file.
27770         * tests/test-mbspbrk.sh: New file.
27771         * tests/test-mbspbrk.c: New file.
27772
27773 2007-02-11  Bruno Haible  <bruno@clisp.org>
27774
27775         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
27776         unneeded cast.
27777
27778         * modules/mbscspn-tests: New file.
27779         * tests/test-mbscspn.sh: New file.
27780         * tests/test-mbscspn.c: New file.
27781
27782 2007-02-11  Bruno Haible  <bruno@clisp.org>
27783
27784         * modules/mbscasecmp-tests: New file.
27785         * tests/test-mbscasecmp.sh: New file.
27786         * tests/test-mbscasecmp.c: New file.
27787
27788 2007-02-11  Bruno Haible  <bruno@clisp.org>
27789
27790         Ensure O(n) worst-case complexity of mbscasestr.
27791         * lib/mbscasestr.c: Include stdbool.h.
27792         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
27793         functions.
27794         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
27795         the bookkeeping indicates that it's worth it.
27796         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
27797
27798         * modules/mbscasestr-tests: New file.
27799         * tests/test-mbscasestr1.c: New file.
27800         * tests/test-mbscasestr2.sh: New file.
27801         * tests/test-mbscasestr2.c: New file.
27802         * tests/test-mbscasestr3.sh: New file.
27803         * tests/test-mbscasestr3.c: New file.
27804         * tests/test-mbscasestr4.sh: New file.
27805         * tests/test-mbscasestr4.c: New file.
27806         * m4/locale-tr.m4: New file.
27807
27808 2007-02-11  Bruno Haible  <bruno@clisp.org>
27809
27810         Ensure O(n) worst-case complexity of mbsstr.
27811         * lib/mbsstr.c: Include stdbool.h.
27812         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
27813         functions.
27814         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
27815         bookkeeping indicates that it's worth it.
27816         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
27817
27818         * modules/mbsstr-tests: New file.
27819         * tests/test-mbsstr1.c: New file.
27820         * tests/test-mbsstr2.sh: New file.
27821         * tests/test-mbsstr2.c: New file.
27822         * tests/test-mbsstr3.sh: New file.
27823         * tests/test-mbsstr3.c: New file.
27824         * m4/locale-fr.m4: New file.
27825
27826 2007-02-11  Bruno Haible  <bruno@clisp.org>
27827
27828         * lib/mbsrchr.c (mbsrchr): Fix bug.
27829
27830         * modules/mbsrchr-tests: New file.
27831         * tests/test-mbsrchr.sh: New file.
27832         * tests/test-mbsrchr.c: New file.
27833
27834 2007-02-11  Bruno Haible  <bruno@clisp.org>
27835
27836         * lib/mbschr.c (mbschr): Fix bug.
27837
27838         * modules/mbschr-tests: New file.
27839         * tests/test-mbschr.sh: New file.
27840         * tests/test-mbschr.c: New file.
27841         * m4/locale-zh.m4: New file.
27842
27843 2007-02-11  Bruno Haible  <bruno@clisp.org>
27844
27845         Support for copying multibyte string iterators.
27846         * lib/mbiter.h: Include <string.h>.
27847         (mbiter_multi_copy): New function.
27848         (mbi_copy): New macro.
27849         * lib/mbuiter.h: Include <string.h>.
27850         (mbuiter_multi_copy): New function.
27851         (mbui_copy): New macro.
27852
27853 2007-02-11  Bruno Haible  <bruno@clisp.org>
27854
27855         New module mbslen.
27856         * modules/mbslen: New file.
27857         * lib/mbslen.c: New file.
27858         * lib/string_.h (mbslen): New declaration.
27859         * m4/mbslen.m4: New file.
27860         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27861         GNULIB_MBSLEN.
27862         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
27863         * MODULES.html.sh (Internationalization functions): Add mbslen.
27864
27865 2007-02-11  Bruno Haible  <bruno@clisp.org>
27866
27867         Ensure O(n) worst-case complexity of strcasestr substitute.
27868         * lib/strcasestr.c: Include stdbool.h.
27869         (knuth_morris_pratt): New function.
27870         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
27871         bookkeeping indicates that it's worth it.
27872         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
27873
27874         * modules/strcasestr-tests: New file.
27875         * tests/test-strcasestr.c: New file.
27876
27877 2007-02-11  Bruno Haible  <bruno@clisp.org>
27878
27879         Ensure O(n) worst-case complexity of c_strcasestr.
27880         * lib/c-strcasestr.c: Include stdbool.h, string.h.
27881         (knuth_morris_pratt): New function.
27882         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
27883         the bookkeeping indicates that it's worth it.
27884         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
27885
27886         * modules/c-strcasestr-tests: New file.
27887         * tests/test-c-strcasestr.c: New file.
27888
27889 2007-02-11  Bruno Haible  <bruno@clisp.org>
27890
27891         Ensure O(n) worst-case complexity of c_strstr.
27892         * lib/c-strstr.c: Include stdbool.h, string.h.
27893         (knuth_morris_pratt): New function.
27894         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
27895         bookkeeping indicates that it's worth it.
27896         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
27897
27898         * lib/c-strstr.c: Complete rewrite for maintainability.
27899
27900         * modules/c-strstr-tests: New file.
27901         * tests/test-c-strstr.c: New file.
27902
27903 2007-02-11  Bruno Haible  <bruno@clisp.org>
27904
27905         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
27906         5.2.1 and earlier, whereby \055 was treated just like the range
27907         delimiter '-'.
27908         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
27909
27910 2007-02-08  Bruno Haible  <bruno@clisp.org>
27911
27912         * modules/regex (Depends-on): Add stdbool.
27913         Reported by Dalibor Topic <robilad@kaffe.org>.
27914
27915 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
27916
27917         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
27918         Prefer returning from main to exiting from it.
27919         Remove unnecessary parens after sizeof.
27920
27921 2007-02-05  Bruno Haible  <bruno@clisp.org>
27922
27923         New module mbssep.
27924         * modules/mbssep: New file.
27925         * lib/mbssep.c: New file.
27926         * lib/string_.h (strsep): Add a conditional link warning.
27927         (mbssep): New declaration.
27928         * m4/mbssep.m4: New file.
27929         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27930         GNULIB_MBSSEP.
27931         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
27932         * MODULES.html.sh (Internationalization functions): Add mbssep.
27933
27934 2007-02-05  Bruno Haible  <bruno@clisp.org>
27935
27936         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
27937         Optimize search in case of 1 delimiter.
27938
27939 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
27940
27941         * lib/acl.h: Include sys/types.h before sys/acl.h.
27942
27943 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
27944
27945         Merge upstream fix for glibc bugzilla #3957:
27946
27947         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
27948
27949         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
27950         bit for RE_HAT_LISTS_NOT_NEWLINE.
27951         (build_charclass_op): Remove bogus comment.
27952
27953 2007-02-05  Simon Josefsson  <simon@josefsson.org>
27954
27955         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
27956
27957 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
27958
27959         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
27960         * lib/memmem.c [!defined _LIBC]: Include config.h.
27961
27962 2007-02-04  Bruno Haible  <bruno@clisp.org>
27963
27964         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
27965         warning message.
27966
27967 2007-02-04  Bruno Haible  <bruno@clisp.org>
27968
27969         New module mbstok_r.
27970         * modules/mbstok_r: New file.
27971         * lib/mbstok_r.c: New file.
27972         * lib/string_.h (strtok_r): Change argument names to match the
27973         comments. Add a conditional link warning.
27974         (mbstok_r): New declaration.
27975         * m4/mbstok_r.m4: New file.
27976         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27977         GNULIB_MBSTOK_R.
27978         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
27979         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
27980
27981 2007-02-04  Bruno Haible  <bruno@clisp.org>
27982
27983         New module mbsspn.
27984         * modules/mbsspn: New file.
27985         * lib/mbsspn.c: New file.
27986         * lib/string_.h (strspn): Add a conditional link warning.
27987         (mbsspn): New declaration.
27988         * m4/mbsspn.m4: New file.
27989         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27990         GNULIB_MBSSPN.
27991         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
27992         * MODULES.html.sh (Internationalization functions): Add mbsspn.
27993
27994 2007-02-04  Bruno Haible  <bruno@clisp.org>
27995
27996         New module mbspbrk.
27997         * modules/mbspbrk: New file.
27998         * lib/mbspbrk.c: New file.
27999         * lib/string_.h (strpbrk): Add a conditional link warning.
28000         (mbspbrk): New declaration.
28001         * m4/mbspbrk.m4: New file.
28002         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
28003         GNULIB_MBSPBRK.
28004         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
28005         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
28006
28007 2007-02-04  Bruno Haible  <bruno@clisp.org>
28008
28009         New module mbscspn.
28010         * modules/mbscspn: New file.
28011         * lib/mbscspn.c: New file.
28012         * lib/string_.h (strcspn): Add a conditional link warning.
28013         (mbscspn): New declaration.
28014         * m4/mbscspn.m4: New file.
28015         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
28016         GNULIB_MBSCSPN.
28017         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
28018         * MODULES.html.sh (Internationalization functions): Add mbscspn.
28019
28020 2007-02-04  Bruno Haible  <bruno@clisp.org>
28021
28022         New module mbscasestr, reduced goal of strcasestr.
28023         * modules/mbscasestr: New file.
28024         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
28025         (mbscasestr): Renamed from strcasestr.
28026         * lib/strcasestr.c: Don't include mbuiter.h.
28027         (strcasestr): Remove support for multibyte locales.
28028         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
28029         Change the conditional link warning.
28030         (mbscasestr): New declaration.
28031         * m4/mbscasestr.m4: New file.
28032         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
28033         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
28034         REPLACE_STRCASESTR.
28035         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
28036         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
28037         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
28038         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
28039         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
28040         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
28041         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
28042         (Depends-on): Remove mbuiter.
28043         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
28044
28045 2007-02-04  Bruno Haible  <bruno@clisp.org>
28046
28047         Simplify handling of strncasecmp.
28048         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
28049         the conditional link warning.
28050         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
28051         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
28052         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
28053         * modules/strcase (configure.ac): Don't invoke
28054         gl_STRING_MODULE_INDICATOR.
28055         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
28056
28057 2007-02-04  Bruno Haible  <bruno@clisp.org>
28058
28059         New module mbscasecmp, reduced goal of strcasecmp.
28060         * modules/mbscasecmp: New file.
28061         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
28062         (mbscasecmp): Renamed from strcasecmp.
28063         * lib/strcasecmp.c: Don't include mbuiter.h.
28064         (strcasecmp): Remove support for multibyte locales.
28065         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
28066         Change the conditional link warning.
28067         (mbscasecmp): New declaration.
28068         * m4/mbscasecmp.m4: New file.
28069         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
28070         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
28071         REPLACE_STRCASECMP.
28072         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
28073         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
28074         GNULIB_MBSCASECMP.
28075         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
28076         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
28077         * modules/strcase (Files): Remove m4/mbrtowc.m4.
28078         (Depends-on): Remove mbuiter.
28079         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
28080
28081 2007-02-04  Bruno Haible  <bruno@clisp.org>
28082
28083         New module mbsstr. Remove module strstr.
28084         * modules/mbsstr: New file.
28085         * modules/strstr: Remove file.
28086         * lib/mbsstr.c: Renamed from lib/strstr.c.
28087         (mbsstr): Renamed from strstr.
28088         * lib/string_.h (strstr): Remove declaration. Change the conditional
28089         link warning.
28090         (mbsstr): New declaration.
28091         * m4/mbsstr.m4: New file.
28092         * m4/strstr.m4: Remove file.
28093         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
28094         REPLACE_STRSTR.
28095         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
28096         Don't initialize GNULIB_STRSTR.
28097         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
28098         substitute GNULIB_STRSTR and REPLACE_STRSTR.
28099         * MODULES.html.sh (Internationalization functions): Add mbsstr.
28100         (Support for systems lacking ANSI C 89): Remove strstr.
28101
28102 2007-02-04  Bruno Haible  <bruno@clisp.org>
28103
28104         New module mbsrchr.
28105         * modules/mbsrchr: New file.
28106         * lib/mbsrchr.c: New file.
28107         * lib/string_.h (strrchr): Add a conditional link warning.
28108         (mbsrchr): New declaration.
28109         * m4/mbsrchr.m4: New file.
28110         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
28111         GNULIB_MBSRCHR.
28112         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
28113         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
28114
28115 2007-02-04  Bruno Haible  <bruno@clisp.org>
28116
28117         New module mbschr.
28118         * modules/mbschr: New file.
28119         * lib/mbschr.c: New file.
28120         * lib/string_.h (strchr): Add a conditional link warning.
28121         (mbschr): New declaration.
28122         * m4/mbschr.m4: New file.
28123         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
28124         GNULIB_MBSCHR.
28125         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
28126         * MODULES.html.sh (Internationalization functions): Add mbschr.
28127
28128 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
28129
28130         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
28131
28132         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
28133
28134 2007-02-04  Bruno Haible  <bruno@clisp.org>
28135
28136         New module description section 'configure.ac-early'.
28137         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
28138         (func_get_autoconf_early_snippet): New function.
28139         (func_import, func_create_testdir): Use it. Remove special cases for
28140         modules 'extensions' and 'lock'.
28141         * modules/extensions (configure.ac-early): Require
28142         gl_USE_SYSTEM_EXTENSIONS.
28143         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
28144
28145 2007-02-04  Bruno Haible  <bruno@clisp.org>
28146
28147         Make use of gcj-4.3's -fsource and -ftarget option.
28148         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
28149         and if so try the options -fsource and -ftarget.
28150         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
28151         source_version, ftarget_option, target_version arguments.
28152         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
28153         (is_envjavac_oldgcj_14_14_usable): Renamed from
28154         is_envjavac_gcj_14_14_usable.
28155         (is_envjavac_oldgcj_14_13_usable): Renamed from
28156         is_envjavac_gcj_14_13_usable.
28157         (is_gcj_present): Update.
28158         (is_gcj_43, is_gcj43_usable): New functions.
28159         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
28160         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
28161         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
28162         try the options -fsource and -ftarget.
28163
28164 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
28165
28166         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
28167         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
28168         larger value.
28169
28170 2007-02-03  Jim Meyering  <jim@meyering.net>
28171
28172         Give tools a better chance to allocate space for very large buffers.
28173         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
28174
28175         Make pwd and readlink work also when run with an unreadable parent dir
28176         on systems with openat support.
28177         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
28178         provided getcwd function, even when we have openat support.
28179         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
28180
28181 2007-02-02  Bruno Haible  <bruno@clisp.org>
28182
28183         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
28184         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
28185         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
28186         portability problems if one of these functions is only used on specific
28187         platforms.
28188         Reported by Paul Eggert.
28189
28190 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
28191
28192         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
28193         is causing more trouble than it's curing.
28194         * lib/regex_internal.h (__mempcpy): Remove.
28195         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
28196         (and make the code a tad smaller to boot).
28197         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
28198
28199 2007-02-02  Jim Meyering  <jim@meyering.net>
28200
28201         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
28202         section, not in the Makefile.am: one.
28203
28204 2007-02-02  Eric Blake  <ebb9@byu.net>
28205
28206         * lib/strchrnul.c: Always include config.h first.
28207
28208         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
28209         gnulib strstr is not necessary here.
28210
28211 2007-02-02  Simon Josefsson  <simon@josefsson.org>
28212
28213         * m4/socklen.m4: Fix typo.
28214
28215 2007-02-02  Eric Blake  <ebb9@byu.net>
28216
28217         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
28218         * modules/netinet_in (Makefile.am): Likewise.
28219
28220 2007-02-01  Bruno Haible  <bruno@clisp.org>
28221
28222         * lib/string_.h (GL_LINK_WARNING): New macro.
28223         (strcasecmp, strstr, strcasestr): If provided by the system,
28224         conditionally define as a macro that leads to a warning instead of to
28225         an error.
28226         (strncasecmp): Conditionally define as a macro that leads to a warning.
28227
28228 2007-02-01  Karl Berry  <karl@gnu.org>
28229
28230         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
28231
28232 2007-02-01  Bruno Haible  <bruno@clisp.org>
28233
28234         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
28235         renamings.
28236
28237 2007-02-01  Eric Blake  <ebb9@byu.net>
28238
28239         * modules/regex (Depends-on): Revert dependence on mempcpy.
28240         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
28241         module's definition of mempcpy.
28242         Reported by Paul Eggert.
28243
28244 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
28245
28246         * lib/string_.h: If the gnulib module XYZ is not present, undefine
28247         the symbol XYZ before redefining it.  This fixes a problem with
28248         programs that don't use XYZ, when compiled on systems that define
28249         XYZ to something else.
28250
28251 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
28252
28253         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
28254         occurs when "mkdir -m foo" creates a setgid directory that is (1)
28255         writeable to group or other and (2) is intended to have a special
28256         mode bit that is set or cleared.  In such a case, the directory
28257         should be neither group- nor other-writeable until the special
28258         mode bits are right.
28259
28260 2007-01-31  Eric Blake  <ebb9@byu.net>
28261
28262         * modules/mountlist (Depends-on): Add strstr.
28263
28264         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
28265         bug.
28266         * modules/string (Makefile.am): Remove redundant replacement.
28267         * modules/regex (Depends-on): Add mempcpy.
28268
28269 2007-01-31  Bruno Haible  <bruno@clisp.org>
28270
28271         New module description field 'Link'.
28272         * gnulib-tool (func_usage): Document --extract-link-directive.
28273         (sed_extract_prog): Recognize 'Link' directive.
28274         (func_get_link_directive): New function.
28275         (func_import): Show summary of link directives.
28276         Handle --extract-link-directive option.
28277         * modules/acl (Link): New section.
28278         * modules/clock-time (Link): New section.
28279         * modules/euidaccess (Link): New section.
28280         * modules/gettext (Link): New section.
28281         * modules/iconv (Link): New section.
28282         * modules/lock (Link): New section.
28283         * modules/nanosleep (Link): New section.
28284         * modules/readline (Link): New section.
28285
28286 2007-01-27  Bruno Haible  <bruno@clisp.org>
28287
28288         Enforce the use of gnulib modules for unportable <string.h> functions.
28289         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
28290         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
28291         (gl_HEADER_STRING_H_BODY): Require it.
28292         * lib/string_.h: If the gnulib module XYZ is not present, redefine
28293         the symbol XYZ to one that gives a link error.
28294         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
28295         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
28296         * modules/mempcpy (configure.ac): Likewise.
28297         * modules/memrchr (configure.ac): Likewise.
28298         * modules/stpcpy (configure.ac): Likewise.
28299         * modules/stpncpy (configure.ac): Likewise.
28300         * modules/strcase (configure.ac): Likewise.
28301         * modules/strcasestr (configure.ac): Likewise.
28302         * modules/strchrnul (configure.ac): Likewise.
28303         * modules/strdup (configure.ac): Likewise.
28304         * modules/strndup (configure.ac): Likewise.
28305         * modules/strnlen (configure.ac): Likewise.
28306         * modules/strpbrk (configure.ac): Likewise.
28307         * modules/strsep (configure.ac): Likewise.
28308         * modules/strstr (configure.ac): Likewise.
28309         * modules/strtok_r (configure.ac): Likewise.
28310
28311 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
28312
28313         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
28314
28315 2007-01-30  Jim Meyering  <jim@meyering.net>
28316
28317         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
28318
28319 2007-01-29  Bruno Haible  <bruno@clisp.org>
28320
28321         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
28322         * lib/execute.c: Likewise.
28323         * lib/pipe.c: Likewise.
28324         * lib/printf-args.h: Likewise.
28325         * lib/printf-args.c: Likewise.
28326         * lib/printf-parse.c: Likewise.
28327         * lib/vasnprintf.c: Likewise.
28328
28329 2007-01-29  Eric Blake  <ebb9@byu.net>
28330
28331         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
28332         declaration.
28333
28334 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
28335
28336         * lib/strptime.h (strptime): Use 'restrict' for args where
28337         POSIX requires this.
28338         * lib/strptime.c (strptime): Likewise.
28339         Change license notice from LGPL to GPL, since gnulib-tool will
28340         change this as needed.
28341         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
28342         defined.
28343         Include "strptime.h" first, to check interface.
28344         Do not #undef _LIBC and _NL_CURRENT.
28345         Do not include <stdlib.h>; no longer needed.
28346         Include "time_r.h" and declare ptime_locale_status
28347         only if _LIBC is not defined.
28348         (__P): Remove unused macro.
28349         (match_string): Bring back glibc version, but use it only if _LIBC
28350         is defined.
28351         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
28352         Remove unnecessary assertion and abort() call.
28353         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
28354         * m4/strptime.m4: Fix serial number comment.
28355         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
28356         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
28357         (Depends-on): Add time_r.
28358
28359 2007-01-29  Bruno Haible  <bruno@clisp.org>
28360
28361         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
28362         strptime.
28363         * modules/strptime (Depends-on): Add stdbool.
28364         * lib/strptime.h: Include <time.h> always. Add comments.
28365
28366 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
28367
28368         * modules/strptime: New file.
28369         * lib/strptime.h: New file.
28370         * lib/strptime.c: New file.
28371         * m4/strptime.m4: New file.
28372
28373 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
28374
28375         * MODULES.html.sh: New module mpsort.
28376         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
28377
28378         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
28379         a circularity problem with HP-UX ia64 reported by Bob Proulx in
28380         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
28381         All uses changed.
28382         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
28383         All uses changed.
28384         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
28385         to _Restrict_.
28386         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
28387         the parameter matches the prototype.
28388
28389 2007-01-28  Jim Meyering  <jim@meyering.net>
28390
28391         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
28392         sys/time.h here, reverting that part of the previous patch:
28393         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
28394
28395 2007-01-28  Bruno Haible  <bruno@clisp.org>
28396
28397         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
28398         value of $(SYS_TIME_H).
28399         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
28400         remove it conditionally, too. [added by Jim Meyering]
28401         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
28402         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
28403         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
28404         GETTIMEOFDAY_REPLACEMENT to 1.
28405
28406 2007-01-28  Bruno Haible  <bruno@clisp.org>
28407
28408         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
28409         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
28410         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
28411         Set UNISTD_H instead of UNISTD_H2.
28412         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
28413
28414 2007-01-28  Bruno Haible  <bruno@clisp.org>
28415
28416         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
28417         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
28418
28419 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28420
28421         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
28422         (func_create_testdir): Ensure C locale for `grep' and `tr'
28423         character ranges.
28424         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
28425         ACLOCAL_AMFLAGS parsing state machine.
28426
28427 2007-01-27  Bruno Haible  <bruno@clisp.org>
28428
28429         * modules/unistr/base: Update.
28430
28431 2007-01-27  Bruno Haible  <bruno@clisp.org>
28432
28433         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
28434         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
28435         * modules/unistr/u32-mbtouc-unsafe: Renamed from
28436         modules/unistr/u32-mbtouc.
28437         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
28438         * lib/unistr.h: Update.
28439         * lib/linebreak.c: Update.
28440         * modules/unistr/u32-mbtouc: Renamed from
28441         modules/unistr/u32-mbtouc-safe.
28442         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
28443         * lib/unistr.h: Update.
28444         * lib/unistr/u32-to-u8.c: Update.
28445         * lib/unistr/u32-to-u16.c: Update.
28446
28447 2007-01-27  Bruno Haible  <bruno@clisp.org>
28448
28449         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
28450         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
28451         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
28452         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
28453         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
28454         * modules/unistr/u16-mbtouc-unsafe: Renamed from
28455         modules/unistr/u16-mbtouc.
28456         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
28457         * lib/unistr.h: Update.
28458         * lib/linebreak.c: Update.
28459         * modules/linebreak: Update.
28460         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
28461         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
28462         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
28463         * modules/unistr/u16-mbtouc: Renamed from
28464         modules/unistr/u16-mbtouc-safe.
28465         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
28466         * lib/unistr.h: Update.
28467         * lib/unistr/u16-to-u8.c: Update.
28468         * modules/unistr/u16-to-u8: Update.
28469         * lib/unistr/u16-to-u32.c: Update.
28470         * modules/unistr/u16-to-u32: Update.
28471
28472 2007-01-27  Bruno Haible  <bruno@clisp.org>
28473
28474         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
28475         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
28476         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
28477         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
28478         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
28479         * modules/unistr/u8-mbtouc-unsafe: Renamed from
28480         modules/unistr/u8-mbtouc.
28481         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
28482         * lib/unistr.h: Update.
28483         * lib/striconveh.c: Update.
28484         * modules/striconveh: Update.
28485         * lib/linebreak.c: Update.
28486         * modules/linebreak: Update.
28487         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
28488         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
28489         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
28490         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
28491         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
28492         * lib/unistr.h: Update.
28493         * lib/striconveh.c: Update.
28494         * modules/striconveh: Update.
28495         * lib/unistr/u8-to-u16.c: Update.
28496         * modules/unistr/u8-to-u16: Update.
28497         * lib/unistr/u8-to-u32.c: Update.
28498         * modules/unistr/u8-to-u32: Update.
28499
28500 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28501
28502         Sync from Libtool.
28503         * lib/argz.c: Do not include strings.h nor memory.h, include
28504         string.h unconditionally.  Patch by Simon Josefsson.
28505
28506 2007-01-27  Bruno Haible  <bruno@clisp.org>
28507
28508         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
28509         from gl_HEADER_STRING_H_BODY.
28510         (gl_HEADER_STRING_H_BODY): Require it.
28511         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
28512         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
28513         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
28514         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
28515         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
28516         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
28517         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
28518         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
28519         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
28520         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
28521         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
28522         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
28523         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
28524         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
28525         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
28526
28527 2007-01-27  Bruno Haible  <bruno@clisp.org>
28528
28529         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
28530         check_PROGRAMS into noinst_PROGRAMS.
28531         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
28532         check_PROGRAMS in this case.
28533         (func_import): Set for_test to false.
28534         (func_create_testdir): Set for_test to true.
28535
28536 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
28537             Bruno Haible  <bruno@clisp.org>
28538
28539         * modules/strcasestr (Files): Remove lib/strcasestr.h.
28540         (Depends-on): Add string.
28541         (Includes): Use <string.h> instead of strcasestr.h.
28542         * modules/string (Makefile.am): Also substitute the value of
28543         REPLACE_STRCASESTR.
28544         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
28545         assume strcasestr is declared in <string.h> not <strings.h>. Also
28546         set REPLACE_STRCASESTR.
28547         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
28548         REPLACE_STRCASESTR.
28549         * lib/strcasestr.h: Remove file.
28550         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
28551         * lib/string_.h (strcasestr): New declaration.
28552
28553 2007-01-27  Bruno Haible  <bruno@clisp.org>
28554
28555         * lib/string_.h: Use 'extern'.
28556
28557 2007-01-27  Jim Meyering  <jim@meyering.net>
28558
28559         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
28560         of set-but-not-used local, "q".
28561
28562         * lib/mempcpy.c: Include <config.h> before <string.h>.
28563         This fixes a compilation error on HP-UX, due to the system's
28564         "restrict"-using mempcpy prototype.
28565
28566 2007-01-26  Bruno Haible  <bruno@clisp.org>
28567
28568         Small optimization.
28569         * lib/javacomp.c: Include c-strstr.h.
28570          (is_envjavac_gcj): Use c_strstr instead of strstr.
28571         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
28572
28573 2007-01-26  Bruno Haible  <bruno@clisp.org>
28574
28575         * MODULES.html.sh (Unicode string functions): Add the new modules.
28576
28577         * modules/uniconv/u32-strconv-to-locale: New file.
28578         * lib/uniconv/u32-strconv-to-locale.c: New file.
28579
28580         * modules/uniconv/u16-strconv-to-locale: New file.
28581         * lib/uniconv/u16-strconv-to-locale.c: New file.
28582
28583         * modules/uniconv/u8-strconv-to-locale: New file.
28584         * lib/uniconv/u8-strconv-to-locale.c: New file.
28585
28586         * modules/uniconv/u32-strconv-from-locale: New file.
28587         * lib/uniconv/u32-strconv-from-locale.c: New file.
28588
28589         * modules/uniconv/u16-strconv-from-locale: New file.
28590         * lib/uniconv/u16-strconv-from-locale.c: New file.
28591
28592         * modules/uniconv/u8-strconv-from-locale: New file.
28593         * lib/uniconv/u8-strconv-from-locale.c: New file.
28594
28595         * modules/uniconv/u32-strconv-to-enc: New file.
28596         * lib/uniconv/u32-strconv-to-enc.c: New file.
28597         * modules/uniconv/u32-strconv-to-enc-tests: New file.
28598         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
28599
28600         * modules/uniconv/u16-strconv-to-enc: New file.
28601         * lib/uniconv/u16-strconv-to-enc.c: New file.
28602         * lib/uniconv/u-strconv-to-enc.h: New file.
28603         * modules/uniconv/u16-strconv-to-enc-tests: New file.
28604         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
28605
28606         * modules/uniconv/u8-strconv-to-enc: New file.
28607         * lib/uniconv/u8-strconv-to-enc.c: New file.
28608         * modules/uniconv/u8-strconv-to-enc-tests: New file.
28609         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
28610
28611         * modules/uniconv/u32-strconv-from-enc: New file.
28612         * lib/uniconv/u32-strconv-from-enc.c: New file.
28613         * modules/uniconv/u32-strconv-from-enc-tests: New file.
28614         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
28615
28616         * modules/uniconv/u16-strconv-from-enc: New file.
28617         * lib/uniconv/u16-strconv-from-enc.c: New file.
28618         * modules/uniconv/u16-strconv-from-enc-tests: New file.
28619         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
28620
28621         * modules/uniconv/u8-strconv-from-enc: New file.
28622         * lib/uniconv/u8-strconv-from-enc.c: New file.
28623         * lib/uniconv/u-strconv-from-enc.h: New file.
28624         * modules/uniconv/u8-strconv-from-enc-tests: New file.
28625         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
28626
28627         * modules/uniconv/u32-conv-from-enc: New file.
28628         * lib/uniconv/u32-conv-from-enc.c: New file.
28629         * modules/uniconv/u32-conv-from-enc-tests: New file.
28630         * tests/uniconv/test-u32-conv-from-enc.c: New file.
28631
28632         * modules/uniconv/u16-conv-from-enc: New file.
28633         * lib/uniconv/u16-conv-from-enc.c: New file.
28634         * lib/uniconv/u-conv-from-enc.h: New file.
28635         * modules/uniconv/u16-conv-from-enc-tests: New file.
28636         * tests/uniconv/test-u16-conv-from-enc.c: New file.
28637
28638         * modules/uniconv/u8-conv-from-enc: New file.
28639         * lib/uniconv/u8-conv-from-enc.c: New file.
28640         * modules/uniconv/u8-conv-from-enc-tests: New file.
28641         * tests/uniconv/test-u8-conv-from-enc.c: New file.
28642
28643         * modules/uniconv/base: New file.
28644         * lib/uniconv.h: New file.
28645
28646 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
28647
28648         * doc/gnulib-tool.texi (Initial import): Update to match current
28649         behavior with strdup module.
28650         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
28651         * lib/memmem.h: Remove; all uses removed.  This is now done
28652         by <string.h>.
28653         * lib/mempcpy.h: Likewise.
28654         * lib/memrchr.h: Likewise.
28655         * lib/stpcpy.h: Likewise.
28656         * lib/stpncpy.h: Likewise.
28657         * lib/strcase.h: Likewise.
28658         * lib/strchrnul.h: Likewise.
28659         * lib/strdup.h: Likewise.
28660         * lib/strndup.h: Likewise.
28661         * lib/strnlen.h: Likewise.
28662         * lib/strpbrk.h: Likewise.
28663         * lib/strsep.h: Likewise.
28664         * lib/strstr.h: Likewise.
28665         * lib/strtok_r.h: Likewise.
28666         * lib/string_.h: New file.
28667         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
28668         Rely on <string.h> instead.
28669         * lib/canon-host.c: Likewise.
28670         * lib/chdir-long.c: Likewise.
28671         * lib/concatpath.c: Likewise.
28672         * lib/exclude.c: Likewise.
28673         * lib/fchdir.c: Likewise.
28674         * lib/getaddrinfo.c: Likewise.
28675         * lib/getcwd.c: Likewise.
28676         * lib/getsubopt.c: Likewise.
28677         * lib/glob.c: Likewise.
28678         * lib/hard-locale.c: Likewise.
28679         * lib/iconvme.c: Likewise.
28680         * lib/javacomp.c: Likewise.
28681         * lib/mempcpy.c: Likewise.
28682         * lib/memrchr.c: Likewise.
28683         * lib/regex_internal.h: Likewise.
28684         * lib/stpncpy.c: Likewise.
28685         * lib/strcasecmp.c: Likewise.
28686         * lib/strchrnul.c: Likewise.
28687         * lib/strdup.c: Likewise.
28688         * lib/striconv.c: Likewise.
28689         * lib/striconveh.c: Likewise.
28690         * lib/striconveha.c: Likewise.
28691         * lib/strncasecmp.c: Likewise.
28692         * lib/strndup.c: Likewise.
28693         * lib/strnlen.c: Likewise.
28694         * lib/strsep.c: Likewise.
28695         * lib/strstr.c: Likewise.
28696         * lib/strtok_r.c: Likewise.
28697         * lib/userspec.c: Likewise.
28698         * lib/w32spawn.h: Likewise.
28699         * lib/xstrndup.c: Likewise.
28700         * lib/mountlist.c (strstr): Remove decl.
28701         * m4/string_h.m4: New file.
28702         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
28703         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
28704         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
28705         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
28706         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
28707         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
28708         Set REPLACE_STRCASECMP if necessary.
28709         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
28710         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
28711         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
28712         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
28713         HAVE_DECL_STRDUP if necessary.
28714         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
28715         since gl_FUNC_STRNDUP does that now.
28716         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
28717         Check for decl here...
28718         (gl_PREREQ_STRNLEN): ... not here.
28719         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
28720         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
28721         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
28722         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
28723         necessary.
28724         * modules/string: New file.
28725         * modules/memmem (Files): Remove special-purpose include file.
28726         (Depends-on): Add string.
28727         (Include): Include <string.h>, not the removed file.
28728         * modules/mempcpy: Likewise.
28729         * modules/memrchr: Likewise.
28730         * modules/stpcpy: Likewise.
28731         * modules/stpncpy: Likewise.
28732         * modules/strcase: Likewise.
28733         * modules/strchrnul: Likewise.
28734         * modules/strdup: Likewise.
28735         * modules/strndup: Likewise.
28736         * modules/strnlen: Likewise.
28737         * modules/strpbrk: Likewise.
28738         * modules/strsep: Likewise.
28739         * modules/strstr: Likewise.
28740         * modules/strtok_r: Likewise.
28741         * tests/test-dirname.c: Don't include "strdup.h", since
28742         <string.h> now suffices.
28743         * tests/test-memmem.c: Don't include "memmem.h", since
28744         <string.h> now suffices.
28745
28746 2007-01-25  Bruno Haible  <bruno@clisp.org>
28747
28748         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
28749         *resultp is 0.
28750
28751         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
28752         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
28753         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
28754         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
28755
28756         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
28757         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
28758         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
28759         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
28760         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
28761         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
28762
28763 2007-01-24  Bruno Haible  <bruno@clisp.org>
28764
28765         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
28766         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
28767         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
28768         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
28769         gl_FUNC_FTS_CORE.
28770         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
28771         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
28772         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
28773         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
28774         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
28775         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
28776         gl_FUNC_FCHOWNAT.
28777         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
28778         gl_FUNC_STRFTIME.
28779         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
28780         Reported by Ralf Wildenhues.
28781
28782 2007-01-24  Bruno Haible  <bruno@clisp.org>
28783
28784         Drop AC_REQUIRE calls that are redundant with the module dependencies.
28785         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
28786         gl_GETADDRINFO.
28787         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
28788         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
28789         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
28790
28791 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
28792
28793         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
28794         Don't use 'exit'; just return from 'main'.
28795         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
28796
28797         * lib/fnmatch_.h: Readjust white space and comments to match
28798         glibc, to avoid spurious diffs.
28799
28800 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
28801
28802         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
28803         2004-12-01 change by Jakub Jelinek, since this code won't compile
28804         if !LIBC.  Problem reported by Bob Proulx.
28805
28806 2007-01-23  Bruno Haible  <bruno@clisp.org>
28807
28808         * lib/striconveh.c: Include c-strcaseeq.h.
28809         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
28810         * modules/striconveh (Depends-on): Add c-strcaseeq.
28811
28812 2007-01-23  Bruno Haible  <bruno@clisp.org>
28813
28814         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
28815
28816         * modules/c-strcaseeq: New file.
28817         * lib/c-strcaseeq.h: New file.
28818
28819         * modules/streq: New file.
28820         * lib/streq.h: New file.
28821
28822 2007-01-23  Bruno Haible  <bruno@clisp.org>
28823
28824         * modules/striconveha-tests: New file.
28825         * tests/test-striconveha.c: New file.
28826
28827         * lib/striconveha.h: Include <stdbool.h>.
28828         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
28829         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
28830         (mem_iconveha_notranslit): Renamed from mem_iconveha.
28831         (mem_iconveha): New function.
28832         (str_iconveha_notranslit): Renamed from str_iconveha.
28833         (str_iconveha): New function.
28834         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
28835         c-strcase.
28836
28837 2007-01-23  Bruno Haible  <bruno@clisp.org>
28838
28839         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
28840         encodings without forgiving before trying any encoding with handler.
28841         (str_iconveha): Try all encodings without forgiving before trying any
28842         encoding with handler.
28843
28844 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
28845
28846         Import the following changes from libc.
28847
28848         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
28849
28850         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
28851
28852         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
28853
28854         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
28855         normal_bracket label.
28856
28857         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
28858
28859         [BZ #361]
28860         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
28861         to normal_bracket after fetching the next character.
28862
28863 2007-01-22  Bruno Haible  <bruno@clisp.org>
28864
28865         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
28866         argument.
28867         * lib/striconveh.c (iconv_carefully_1): New function.
28868         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
28869         argument.
28870         (str_cd_iconveh): Update.
28871         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
28872         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
28873         * tests/test-striconveh.c (MAGIC): New macro.
28874         (new_offsets): New function.
28875         (main): Test call with and without offsets.
28876
28877 2007-01-22  Bruno Haible  <bruno@clisp.org>
28878
28879         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
28880         * modules/sys_select (Makefile.am): Likewise.
28881         * modules/sys_socket (Makefile.am): Likewise.
28882         * modules/sys_time (Makefile.am): Likewise.
28883
28884 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
28885
28886         * modules/gettimeofday (License): Change from GPL to LGPL, since
28887         gettimeofday is a library function.
28888
28889 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28890
28891         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
28892
28893 2007-01-21  Bruno Haible  <bruno@clisp.org>
28894
28895         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
28896
28897 2007-01-21  Bruno Haible  <bruno@clisp.org>
28898
28899         * modules/striconveha: New file.
28900         * lib/striconveha.h: New file.
28901         * lib/striconveha.c: New file.
28902         * MODULES.html.sh (Internationalization functions): Add striconveha.
28903         * lib/striconv.c (str_iconv): Optimize the case of an empty input
28904         string.
28905         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
28906
28907 2007-01-21  Bruno Haible  <bruno@clisp.org>
28908
28909         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
28910         * lib/striconveh.c (str_iconveh): Likewise.
28911
28912 2007-01-21  Bruno Haible  <bruno@clisp.org>
28913
28914         * lib/striconveh.h (mem_iconveh): New declaration.
28915         * lib/striconveh.c (mem_iconveh): New function.
28916         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
28917
28918 2007-01-21  Bruno Haible  <bruno@clisp.org>
28919
28920         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
28921
28922         * lib/striconveh.h (mem_cd_iconveh): Change specification.
28923         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
28924         original result buffer.
28925         (str_cd_iconveh): Update.
28926         * tests/test-striconveh.c (main): Update.
28927
28928         * lib/striconv.h (mem_cd_iconv): Change specification.
28929         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
28930         result buffer.
28931         (str_cd_iconv): Update.
28932         * tests/test-striconv.c (main): Update.
28933
28934 2007-01-21  Bruno Haible  <bruno@clisp.org>
28935
28936         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
28937
28938 2007-01-20  Jim Meyering  <jim@meyering.net>
28939
28940         * lib/userspec.c (parse_with_separator): If a user or group string
28941         starts with "+", skip the corresponding name-to-ID look-up, since
28942         such a look-up must fail: user and group names may not include "+".
28943
28944 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
28945
28946         * lib/poll.c: Include sys/time.h and time.h unconditionally,
28947         since we now assume the sys_time module.
28948         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
28949         check for sys/time.h; no longer needed.
28950         * modules/poll (Depends-on): Depend on sys_time.
28951
28952 2007-01-18  Bruno Haible  <bruno@clisp.org>
28953
28954         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
28955         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
28956
28957         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
28958         gettimeofday.
28959
28960         * tests/test-gettimeofday.c: Include <time.h>.
28961         (dummy): Remove variable.
28962
28963         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
28964         gl_HEADER_SYS_TIME_H.
28965         (gl_HEADER_SYS_TIME_H): New macro.
28966
28967         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
28968         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28969         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
28970         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
28971         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28972         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
28973         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
28974         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28975         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
28976         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
28977         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28978
28979         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
28980         last change; it caused a compilation error when cross-compiling to
28981         Cygwin.
28982
28983 2007-01-18  Jim Meyering  <jim@meyering.net>
28984
28985         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
28986         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
28987         than the race-prone "test -d sys || mkdir sys".
28988         (configure.ac): Use AC_PROG_MKDIR_P.
28989         * modules/sys_select: Likewise.
28990         * modules/sys_socket: Likewise.
28991         * modules/sys_time: Likewise.
28992
28993 2007-01-18  Eric Blake  <ebb9@byu.net>
28994
28995         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
28996         replace gettimeofday.
28997         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
28998         name, to avoid infinite recursion.
28999
29000 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
29001
29002         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
29003         module sys_time.
29004         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
29005         assume timespec.h defines struct timeval.
29006         * lib/settime.c: Likewise.
29007         * lib/utimens.c: Likewise.
29008         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
29009         since we now assume the gettimeofday module.
29010         * lib/tempname.c (__gen_tempname): Likewise.
29011         * lib/gettimeofday.h: Remove.
29012         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
29013         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
29014         Include <time.h>, for 'time()'.
29015         (localtime_buffer_addr): Also use this workaround if
29016         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
29017         to simplify the uses.  All uses changed.
29018         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
29019         that #undef is inside {}, and 'const' follows type name consistently.
29020         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
29021         (gettimeofday): Do not use the maximum possible value for
29022         tv->tv_usec, since that might break usages other than ls.c.
29023         Instead, we'll leave ls.c alone.  This undoes today's patch
29024         by Bruno.  Add a compile-time warning for 1s-clock resolution;
29025         we've never observed the problem but might as well keep the
29026         canary.
29027         * lib/nanosleep.c: Include timespec.h first, for interface check.
29028         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
29029         now assume the sys_time module.
29030         * lib/tempname.c: Likewise.
29031         * lib/timespec.h: Likewise.
29032         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
29033         needed.
29034         * lib/strftime.c: Likewise.
29035         * lib/timespec.h: Likewise.
29036         * lib/posixtm.c: Include posixtm.h first, for interface check.
29037         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
29038         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
29039         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
29040         * lib/sys_time_.h: New file.
29041         * lib/timespec.h (struct timespec): Use long int, not long.
29042         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
29043         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
29044         Remove obsolescent call to AC_HEADER_TIME.
29045         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
29046         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
29047         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
29048         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
29049         Likewise.
29050         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
29051         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
29052         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
29053         into the sys_time module.  Check for gettimeofday just once.
29054         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
29055         for gettimeofday signature to just check the signature.  Merely
29056         compile it, since linking doesn't test signature.  Improve test for
29057         whether gettimeofday.o is actually needed.
29058         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
29059         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
29060         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
29061         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
29062         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
29063         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
29064         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
29065         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
29066         than worrying about sys/time.h.
29067         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
29068         Don't bother worrying about TIME_WITH_SYS_TIME.
29069         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
29070         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
29071         * m4/sys_time_h.m4: New file.
29072         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
29073         Don't include sys/time.h.  Return from main rather than exiting.
29074         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
29075         all uses changed.
29076         * modules/gethrxtime (Depends-on): Add sys_time.
29077         * modules/gettime (Depends-on): Likewise.
29078         * modules/gettimeofday (Depends-on): Likewise.
29079         * modules/nanosleep (Depends-on): Likewise.
29080         * modules/settime (Depends-on): Likewise.
29081         * modules/tempname (Depends-on): Likewise.
29082         * modules/utimens (Depends-on): Likewise.
29083         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
29084         (Include:) Change back to <sys/time.h>.
29085         (Maintainer:) Add self.
29086         * modules/sys_time: New file.
29087         * modules/tempname (Depends-on): Add gettimeofday.
29088         * tests/test-gettimeofday.c: Include <sys/time.h>
29089         rather than gettimeofday.h.
29090
29091 2007-01-17  Bruno Haible  <bruno@clisp.org>
29092
29093         * gnulib-tool (func_get_license): Revert last patch. Instead, let
29094         the license default to GPL.
29095         (func_create_testdir): Don't complain if a module is LGPL and its
29096         tests module depends on GPLed modules.
29097
29098 2007-01-17  Bruno Haible  <bruno@clisp.org>
29099
29100         * lib/gettimeofday.c (gettimeofday): Add code for the case
29101         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
29102         maximum possible value for tv->tv_usec, rather than the minimum one.
29103
29104 2005-10-08  Martin Lambers  <marlam@marlam.de>
29105 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
29106 2007-01-16  Bruno Haible  <bruno@clisp.org>
29107
29108         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
29109         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
29110         gl_FUNC_GETTIMEOFDAY.
29111         (Include): Add gettimeofday.h.
29112         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
29113         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
29114         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
29115         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
29116         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
29117         * lib/gettimeofday.h: New file.
29118         * lib/gettimeofday.c: Include <sys/timeb.h>.
29119         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
29120         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
29121         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
29122         fall back on time().
29123
29124         * tests/test-gettimeofday.c: New file.
29125         * modules/gettimeofday-tests: New file.
29126
29127 2007-01-16  Eric Blake  <ebb9@byu.net>
29128
29129         * modules/fnmatch (Depends-on): Depend on wchar.
29130         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
29131         * m4/fnmatch.m4: Likewise.
29132         * modules/mbchar (Makefile.am): Assume <wchar.h>.
29133         * m4/mbchar.m4: Likewise.
29134         * modules/mbswidth (Depends-on): Depend on wchar.
29135         * lib/mbswidth.c: Assume <wchar.h>.
29136         * m4/mbswidth.m4: Likewise.
29137         * modules/quotearg (Depends-on): Depend on wchar.
29138         * lib/quotearg.c: Assume <wchar.h>.
29139         * m4/quotearg.m4: Likewise.
29140         * modules/regex (Depends-on): Depend on wchar.
29141         * lib/regex_internal.h: Assume <wchar.h>.
29142         * m4/regex.m4: Likewise.
29143         * modules/stdint (Depends-on): Depend on wchar.
29144         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
29145         * m4/stdint.m4: Likewise.
29146         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
29147         * modules/strftime (Depends-on): Depend on wchar.
29148         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
29149         * modules/strtol (Depends-on): Depend on wchar.
29150         * lib/strtol.c: Assume <wchar.h>.
29151         * modules/wcwidth (Depends-on): Depend on wchar.
29152         * lib/wcwidth.h: Assume <wchar.h>.
29153         * m4/wcwidth.m4: Likewise.
29154
29155 2007-01-16  Bruno Haible  <bruno@clisp.org>
29156
29157         * modules/csharpexec-script: New, created from...
29158         * modules/csharpexec: ... this.
29159
29160 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
29161
29162         * modules/javaexec-script: New, created from...
29163         * modules/javaexec: ... this.
29164
29165 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29166
29167         * modules/poll (Dependencies): Add sys_select.
29168
29169 2007-01-15  Jim Meyering  <jim@meyering.net>
29170
29171         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
29172         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
29173         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
29174         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
29175
29176 2007-01-15  Bruno Haible  <bruno@clisp.org>
29177
29178         * modules/striconveh: New file.
29179         * lib/striconveh.h: New file.
29180         * lib/striconveh.c: New file.
29181         * MODULES.html.sh (Internationalization functions): Add striconveh.
29182
29183         * modules/striconveh-tests: New file.
29184         * tests/test-striconveh.c: New file.
29185
29186 2007-01-15  Bruno Haible  <bruno@clisp.org>
29187
29188         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
29189         not from GNU libiconv or GNU libc.
29190
29191 2007-01-15  Bruno Haible  <bruno@clisp.org>
29192
29193         * doc/gnulib-intro.texi (Copyright): Explain the different license
29194         terms for module descriptions, autoconf macros, tests, documentation.
29195
29196 2007-01-14  Bruno Haible  <bruno@clisp.org>
29197
29198         * modules/striconv-tests: New file.
29199         * tests/test-striconv.c: New file.
29200
29201 2007-01-14  Bruno Haible  <bruno@clisp.org>
29202
29203         * modules/iconv-tests: New file.
29204         * tests/test-iconv.c: New file.
29205
29206 2007-01-14  Bruno Haible  <bruno@clisp.org>
29207
29208         * gnulib-tool (func_get_license): For test modules, use the license of
29209         the main module.
29210
29211 2007-01-14  Bruno Haible  <bruno@clisp.org>
29212
29213         * modules/iconv (Include): Clarify that <iconv.h> can only be included
29214         if iconv is found to exist.
29215
29216 2007-01-14  Bruno Haible  <bruno@clisp.org>
29217
29218         * modules/c-ctype-tests: New file.
29219         * tests/test-c-ctype.c: New file.
29220
29221 2007-01-14  Bruno Haible  <bruno@clisp.org>
29222
29223         * modules/binary-io-tests: New file.
29224         * tests/test-binary-io.sh: New file.
29225         * tests/test-binary-io.c: New file.
29226
29227 2007-01-14  Bruno Haible  <bruno@clisp.org>
29228
29229         * modules/array-oset-tests: New file.
29230         * tests/test-array_oset.c: New file.
29231
29232 2007-01-14  Bruno Haible  <bruno@clisp.org>
29233
29234         * modules/array-list-tests: New file.
29235         * tests/test-array_list.c: New file.
29236
29237 2007-01-14  Bruno Haible  <bruno@clisp.org>
29238
29239         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
29240         and make.
29241         Reported by Simon Josefsson in
29242         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
29243
29244 2007-01-14  Bruno Haible  <bruno@clisp.org>
29245
29246         * modules/allocsa-tests: New file.
29247         * tests/test-allocsa.c: New file.
29248
29249 2007-01-14  Bruno Haible  <bruno@clisp.org>
29250
29251         * modules/fchdir (Depends-on): Add absolute-header.
29252         * modules/unistd (Depends-on): Likewise.
29253
29254 2006-12-30  Bruno Haible  <bruno@clisp.org>
29255
29256         * modules/fchdir: New file.
29257         * modules/unistd (Files): Add lib/unistd_.h.
29258         (Makefile.am): Generate unistd.h from unistd_.h.
29259         * lib/fchdir.c: New file.
29260         * lib/dirent_.h: New file.
29261         * lib/unistd_.h: New file.
29262         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
29263         * m4/fchdir.m4: New file.
29264         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
29265         (gl_HEADER_UNISTD): Invoke it.
29266         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
29267         function.
29268         * lib/backupfile.c (opendir, closedir): Undefine.
29269         * lib/chown.c (open, close): Undefine.
29270         * lib/clean-temp.c (open, close): Undefine.
29271         * lib/copy-file.c (open, close): Undefine.
29272         * lib/execute.c (open, close): Undefine.
29273         * lib/fsusage.c (open, close): Undefine.
29274         * lib/gc-gnulib.c (open, close): Undefine.
29275         * lib/getcwd.c (opendir, closedir): Undefine.
29276         * lib/glob.c (opendir, closedir): Undefine.
29277         * lib/javacomp.c (open, close): Undefine.
29278         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
29279         * lib/openat-proc.c (open, close): Undefine.
29280         * lib/pagealign_alloc.c (open, close): Undefine.
29281         * lib/pipe.c (open, close): Undefine.
29282         * lib/progreloc.c (open, close): Undefine.
29283         * lib/savedir.c (opendir, closedir): Undefine.
29284         * lib/utime.c (open, close): Undefine.
29285         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
29286
29287 2007-01-10  Bruno Haible  <bruno@clisp.org>
29288
29289         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
29290
29291 2007-01-12  Eric Blake  <ebb9@byu.net>
29292
29293         Provide a robust <wchar.h>.  Further simplifications are now
29294         possible in other modules, but not included here.
29295         * modules/wchar: New module.
29296         * m4/wchar.m4: New file.
29297         * lib/wchar_.h: Likewise.
29298         * modules/mbchar (Depends-on): Depend on wchar, as the first use
29299         of the new module.
29300         * MODULES.html.sh (Extended multibyte and wide character utilities):
29301         New section.
29302
29303 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
29304
29305         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
29306         to a reasonable default for memory allocation.
29307         (xreadlink): Don't allocate a huge buffer, to work around a buggy
29308         file system that reports garbage st_size values for symlinks.
29309         Problem reported by Liyang Hu.
29310
29311 2007-01-11  Simon Josefsson  <simon@josefsson.org>
29312
29313         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
29314         Emacs .#* auto-save files).
29315
29316 2007-01-11  Bruno Haible  <bruno@clisp.org>
29317
29318         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
29319         directory.
29320
29321 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
29322
29323         Use @...@ consistently in lib/wctype_.h.
29324         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
29325         on it being set to 1 or 0.
29326         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
29327         go back to AC_SUBSTing it.
29328         * modules/wctype (Makefile.am): Undo previous change.
29329
29330 2007-01-10  Eric Blake  <ebb9@byu.net>
29331
29332         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
29333         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
29334         * modules/wctype (Makefile.am): Likewise.
29335         Reported by Chris McGuire.
29336
29337 2007-01-10  Jim Meyering  <jim@meyering.net>
29338
29339         fts.c: a small readability/maintainability improvement
29340         * lib/fts.c (fts_read): Make this code slightly more readable and
29341         maintainable by hoisting the "sp->fts_cur = p" assignments to
29342         immediately follow the statements that set P.  Derived from
29343         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
29344
29345 2007-01-10  Eric Blake  <ebb9@byu.net>
29346
29347         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
29348         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
29349         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
29350         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
29351         Reported by Chris McGuire.
29352
29353 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29354
29355         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
29356         in sed script.
29357
29358 2007-01-09  Bruno Haible  <bruno@clisp.org>
29359
29360         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
29361         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
29362         variables.
29363         (func_module): Use them.
29364
29365 2007-01-09  Bruno Haible  <bruno@clisp.org>
29366
29367         * modules/unistr/base: New file.
29368         * lib/unistr.h: New file.
29369
29370         * modules/unistr/u8-to-u16: New file.
29371         * lib/unistr/u8-to-u16.c: New file.
29372
29373         * modules/unistr/u8-to-u32: New file.
29374         * lib/unistr/u8-to-u32.c: New file.
29375
29376         * modules/unistr/u16-to-u8: New file.
29377         * lib/unistr/u16-to-u8.c: New file.
29378
29379         * modules/unistr/u16-to-u32: New file.
29380         * lib/unistr/u16-to-u32.c: New file.
29381
29382         * modules/unistr/u32-to-u8: New file.
29383         * lib/unistr/u32-to-u8.c: New file.
29384
29385         * modules/unistr/u32-to-u16: New file.
29386         * lib/unistr/u32-to-u16.c: New file.
29387
29388         * modules/unistr/u8-check: New file.
29389         * modules/unistr/u16-check: New file.
29390         * modules/unistr/u32-check: New file.
29391         * lib/unistr/u8-check.c: New file.
29392         * lib/unistr/u16-check.c: New file.
29393         * lib/unistr/u32-check.c: New file.
29394
29395         * modules/unistr/u8-chr: New file.
29396         * modules/unistr/u16-chr: New file.
29397         * modules/unistr/u32-chr: New file.
29398         * lib/unistr/u8-chr.c: New file.
29399         * lib/unistr/u16-chr.c: New file.
29400         * lib/unistr/u32-chr.c: New file.
29401
29402         * modules/unistr/u8-cmp: New file.
29403         * modules/unistr/u16-cmp: New file.
29404         * modules/unistr/u32-cmp: New file.
29405         * lib/unistr/u8-cmp.c: New file.
29406         * lib/unistr/u16-cmp.c: New file.
29407         * lib/unistr/u32-cmp.c: New file.
29408
29409         * modules/unistr/u8-cpy: New file.
29410         * modules/unistr/u16-cpy: New file.
29411         * modules/unistr/u32-cpy: New file.
29412         * lib/unistr/u8-cpy.c: New file.
29413         * lib/unistr/u16-cpy.c: New file.
29414         * lib/unistr/u32-cpy.c: New file.
29415         * lib/unistr/u-cpy.h: New file.
29416
29417         * modules/unistr/u8-cpy-alloc: New file.
29418         * modules/unistr/u16-cpy-alloc: New file.
29419         * modules/unistr/u32-cpy-alloc: New file.
29420         * lib/unistr/u8-cpy-alloc.c: New file.
29421         * lib/unistr/u16-cpy-alloc.c: New file.
29422         * lib/unistr/u32-cpy-alloc.c: New file.
29423         * lib/unistr/u-cpy-alloc.h: New file.
29424
29425         * modules/unistr/u8-endswith: New file.
29426         * modules/unistr/u16-endswith: New file.
29427         * modules/unistr/u32-endswith: New file.
29428         * lib/unistr/u8-endswith.c: New file.
29429         * lib/unistr/u16-endswith.c: New file.
29430         * lib/unistr/u32-endswith.c: New file.
29431         * lib/unistr/u-endswith.h: New file.
29432
29433         * modules/unistr/u8-mblen: New file.
29434         * modules/unistr/u16-mblen: New file.
29435         * modules/unistr/u32-mblen: New file.
29436         * lib/unistr/u8-mblen.c: New file.
29437         * lib/unistr/u16-mblen.c: New file.
29438         * lib/unistr/u32-mblen.c: New file.
29439
29440         * modules/unistr/u8-mbtouc: New file.
29441         * modules/unistr/u16-mbtouc: New file.
29442         * modules/unistr/u32-mbtouc: New file.
29443         * lib/unistr/u8-mbtouc.c: New file.
29444         * lib/unistr/u16-mbtouc.c: New file.
29445         * lib/unistr/u32-mbtouc.c: New file.
29446
29447         * modules/unistr/u8-mbtouc-safe: New file.
29448         * modules/unistr/u16-mbtouc-safe: New file.
29449         * modules/unistr/u32-mbtouc-safe: New file.
29450         * lib/unistr/u8-mbtouc-safe.c: New file.
29451         * lib/unistr/u16-mbtouc-safe.c: New file.
29452         * lib/unistr/u32-mbtouc-safe.c: New file.
29453
29454         * modules/unistr/u8-move: New file.
29455         * modules/unistr/u16-move: New file.
29456         * modules/unistr/u32-move: New file.
29457         * lib/unistr/u8-move.c: New file.
29458         * lib/unistr/u16-move.c: New file.
29459         * lib/unistr/u32-move.c: New file.
29460         * lib/unistr/u-move.h: New file.
29461
29462         * modules/unistr/u8-next: New file.
29463         * modules/unistr/u16-next: New file.
29464         * modules/unistr/u32-next: New file.
29465         * lib/unistr/u8-next.c: New file.
29466         * lib/unistr/u16-next.c: New file.
29467         * lib/unistr/u32-next.c: New file.
29468
29469         * modules/unistr/u8-prev: New file.
29470         * modules/unistr/u16-prev: New file.
29471         * modules/unistr/u32-prev: New file.
29472         * lib/unistr/u8-prev.c: New file.
29473         * lib/unistr/u16-prev.c: New file.
29474         * lib/unistr/u32-prev.c: New file.
29475
29476         * modules/unistr/u8-set: New file.
29477         * modules/unistr/u16-set: New file.
29478         * modules/unistr/u32-set: New file.
29479         * lib/unistr/u8-set.c: New file.
29480         * lib/unistr/u16-set.c: New file.
29481         * lib/unistr/u32-set.c: New file.
29482         * lib/unistr/u-set.h: New file.
29483
29484         * modules/unistr/u8-startswith: New file.
29485         * modules/unistr/u16-startswith: New file.
29486         * modules/unistr/u32-startswith: New file.
29487         * lib/unistr/u8-startswith.c: New file.
29488         * lib/unistr/u16-startswith.c: New file.
29489         * lib/unistr/u32-startswith.c: New file.
29490         * lib/unistr/u-startswith.h: New file.
29491
29492         * modules/unistr/u8-stpcpy: New file.
29493         * modules/unistr/u16-stpcpy: New file.
29494         * modules/unistr/u32-stpcpy: New file.
29495         * lib/unistr/u8-stpcpy.c: New file.
29496         * lib/unistr/u16-stpcpy.c: New file.
29497         * lib/unistr/u32-stpcpy.c: New file.
29498         * lib/unistr/u-stpcpy.h: New file.
29499
29500         * modules/unistr/u8-stpncpy: New file.
29501         * modules/unistr/u16-stpncpy: New file.
29502         * modules/unistr/u32-stpncpy: New file.
29503         * lib/unistr/u8-stpncpy.c: New file.
29504         * lib/unistr/u16-stpncpy.c: New file.
29505         * lib/unistr/u32-stpncpy.c: New file.
29506         * lib/unistr/u-stpncpy.h: New file.
29507
29508         * modules/unistr/u8-strcat: New file.
29509         * modules/unistr/u16-strcat: New file.
29510         * modules/unistr/u32-strcat: New file.
29511         * lib/unistr/u8-strcat.c: New file.
29512         * lib/unistr/u16-strcat.c: New file.
29513         * lib/unistr/u32-strcat.c: New file.
29514         * lib/unistr/u-strcat.h: New file.
29515
29516         * modules/unistr/u8-strchr: New file.
29517         * modules/unistr/u16-strchr: New file.
29518         * modules/unistr/u32-strchr: New file.
29519         * lib/unistr/u8-strchr.c: New file.
29520         * lib/unistr/u16-strchr.c: New file.
29521         * lib/unistr/u32-strchr.c: New file.
29522
29523         * modules/unistr/u8-strcmp: New file.
29524         * modules/unistr/u16-strcmp: New file.
29525         * modules/unistr/u32-strcmp: New file.
29526         * lib/unistr/u8-strcmp.c: New file.
29527         * lib/unistr/u16-strcmp.c: New file.
29528         * lib/unistr/u32-strcmp.c: New file.
29529
29530         * modules/unistr/u8-strcpy: New file.
29531         * modules/unistr/u16-strcpy: New file.
29532         * modules/unistr/u32-strcpy: New file.
29533         * lib/unistr/u8-strcpy.c: New file.
29534         * lib/unistr/u16-strcpy.c: New file.
29535         * lib/unistr/u32-strcpy.c: New file.
29536         * lib/unistr/u-strcpy.h: New file.
29537
29538         * modules/unistr/u8-strcspn: New file.
29539         * modules/unistr/u16-strcspn: New file.
29540         * modules/unistr/u32-strcspn: New file.
29541         * lib/unistr/u8-strcspn.c: New file.
29542         * lib/unistr/u16-strcspn.c: New file.
29543         * lib/unistr/u32-strcspn.c: New file.
29544         * lib/unistr/u-strcspn.h: New file.
29545
29546         * modules/unistr/u8-strdup: New file.
29547         * modules/unistr/u16-strdup: New file.
29548         * modules/unistr/u32-strdup: New file.
29549         * lib/unistr/u8-strdup.c: New file.
29550         * lib/unistr/u16-strdup.c: New file.
29551         * lib/unistr/u32-strdup.c: New file.
29552         * lib/unistr/u-strdup.h: New file.
29553
29554         * modules/unistr/u8-strlen: New file.
29555         * modules/unistr/u16-strlen: New file.
29556         * modules/unistr/u32-strlen: New file.
29557         * lib/unistr/u8-strlen.c: New file.
29558         * lib/unistr/u16-strlen.c: New file.
29559         * lib/unistr/u32-strlen.c: New file.
29560         * lib/unistr/u-strlen.h: New file.
29561
29562         * modules/unistr/u8-strmblen: New file.
29563         * modules/unistr/u16-strmblen: New file.
29564         * modules/unistr/u32-strmblen: New file.
29565         * lib/unistr/u8-strmblen.c: New file.
29566         * lib/unistr/u16-strmblen.c: New file.
29567         * lib/unistr/u32-strmblen.c: New file.
29568
29569         * modules/unistr/u8-strmbtouc: New file.
29570         * modules/unistr/u16-strmbtouc: New file.
29571         * modules/unistr/u32-strmbtouc: New file.
29572         * lib/unistr/u8-strmbtouc.c: New file.
29573         * lib/unistr/u16-strmbtouc.c: New file.
29574         * lib/unistr/u32-strmbtouc.c: New file.
29575
29576         * modules/unistr/u8-strncat: New file.
29577         * modules/unistr/u16-strncat: New file.
29578         * modules/unistr/u32-strncat: New file.
29579         * lib/unistr/u8-strncat.c: New file.
29580         * lib/unistr/u16-strncat.c: New file.
29581         * lib/unistr/u32-strncat.c: New file.
29582         * lib/unistr/u-strncat.h: New file.
29583
29584         * modules/unistr/u8-strncmp: New file.
29585         * modules/unistr/u16-strncmp: New file.
29586         * modules/unistr/u32-strncmp: New file.
29587         * lib/unistr/u8-strncmp.c: New file.
29588         * lib/unistr/u16-strncmp.c: New file.
29589         * lib/unistr/u32-strncmp.c: New file.
29590
29591         * modules/unistr/u8-strncpy: New file.
29592         * modules/unistr/u16-strncpy: New file.
29593         * modules/unistr/u32-strncpy: New file.
29594         * lib/unistr/u8-strncpy.c: New file.
29595         * lib/unistr/u16-strncpy.c: New file.
29596         * lib/unistr/u32-strncpy.c: New file.
29597         * lib/unistr/u-strncpy.h: New file.
29598
29599         * modules/unistr/u8-strnlen: New file.
29600         * modules/unistr/u16-strnlen: New file.
29601         * modules/unistr/u32-strnlen: New file.
29602         * lib/unistr/u8-strnlen.c: New file.
29603         * lib/unistr/u16-strnlen.c: New file.
29604         * lib/unistr/u32-strnlen.c: New file.
29605         * lib/unistr/u-strnlen.h: New file.
29606
29607         * modules/unistr/u8-strpbrk: New file.
29608         * modules/unistr/u16-strpbrk: New file.
29609         * modules/unistr/u32-strpbrk: New file.
29610         * lib/unistr/u8-strpbrk.c: New file.
29611         * lib/unistr/u16-strpbrk.c: New file.
29612         * lib/unistr/u32-strpbrk.c: New file.
29613         * lib/unistr/u-strpbrk.h: New file.
29614
29615         * modules/unistr/u8-strrchr: New file.
29616         * modules/unistr/u16-strrchr: New file.
29617         * modules/unistr/u32-strrchr: New file.
29618         * lib/unistr/u8-strrchr.c: New file.
29619         * lib/unistr/u16-strrchr.c: New file.
29620         * lib/unistr/u32-strrchr.c: New file.
29621
29622         * modules/unistr/u8-strspn: New file.
29623         * modules/unistr/u16-strspn: New file.
29624         * modules/unistr/u32-strspn: New file.
29625         * lib/unistr/u8-strspn.c: New file.
29626         * lib/unistr/u16-strspn.c: New file.
29627         * lib/unistr/u32-strspn.c: New file.
29628         * lib/unistr/u-strspn.h: New file.
29629
29630         * modules/unistr/u8-strstr: New file.
29631         * modules/unistr/u16-strstr: New file.
29632         * modules/unistr/u32-strstr: New file.
29633         * lib/unistr/u8-strstr.c: New file.
29634         * lib/unistr/u16-strstr.c: New file.
29635         * lib/unistr/u32-strstr.c: New file.
29636         * lib/unistr/u-strstr.h: New file.
29637
29638         * modules/unistr/u8-strtok: New file.
29639         * modules/unistr/u16-strtok: New file.
29640         * modules/unistr/u32-strtok: New file.
29641         * lib/unistr/u8-strtok.c: New file.
29642         * lib/unistr/u16-strtok.c: New file.
29643         * lib/unistr/u32-strtok.c: New file.
29644         * lib/unistr/u-strtok.h: New file.
29645
29646         * modules/unistr/u8-uctomb: New file.
29647         * modules/unistr/u16-uctomb: New file.
29648         * modules/unistr/u32-uctomb: New file.
29649         * lib/unistr/u8-uctomb.c: New file.
29650         * lib/unistr/u16-uctomb.c: New file.
29651         * lib/unistr/u32-uctomb.c: New file.
29652
29653         * MODULES.html.sh (Unicode string functions): Add the new modules.
29654
29655 2007-01-08  Bruno Haible  <bruno@clisp.org>
29656
29657         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
29658         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
29659         subdirectories.
29660
29661 2007-01-08  Karl Berry  <karl@gnu.org>
29662
29663         * doc/error.texi: mention that main() fns must set program_name
29664         when progname is used.
29665
29666 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
29667
29668         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
29669         WCTYPE_H is empty, for the benefit of builds from non-distclean
29670         directories.  Problem reported by Eric Blake in
29671         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
29672
29673 2007-01-08  Bruno Haible  <bruno@clisp.org>
29674
29675         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
29676         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
29677         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
29678         PROVIDE_CANONICALIZE_FILENAME_MODE.
29679         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
29680
29681 2007-01-08  Bruno Haible  <bruno@clisp.org>
29682
29683         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
29684         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
29685         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
29686         * lib/fts.c: Likewise.
29687         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
29688
29689 2006-12-25  Bruno Haible  <bruno@clisp.org>
29690
29691         * modules/utf8-ucs4-safe: New file.
29692         * lib/utf8-ucs4-safe.h: New file.
29693         * lib/unistr/utf8-ucs4-safe.c: New file.
29694
29695         * modules/utf16-ucs4-safe: New file.
29696         * lib/utf16-ucs4-safe.h: New file.
29697         * lib/unistr/utf16-ucs4-safe.c: New file.
29698
29699         * MODULES.html.sh (Unicode string functions): Add the new modules.
29700
29701 2007-01-08  Bruno Haible  <bruno@clisp.org>
29702
29703         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
29704         (Depends-on): Add unitypes.
29705         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
29706         (u8_mbtouc_aux): Move out to separate file.
29707         (u8_mbtouc): Use ucs4_t, uint8_t types.
29708         * lib/unistr/utf8-ucs4.c: New file.
29709
29710         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
29711         (Depends-on): Add unitypes.
29712         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
29713         (u16_mbtouc_aux): Move out to separate file.
29714         (u16_mbtouc): Use ucs4_t, uint16_t types.
29715         * lib/unistr/utf16-ucs4.c: New file.
29716
29717         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
29718         (Depends-on): Add unitypes.
29719         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
29720         (u8_uctomb_aux): Move out to separate file.
29721         (u8_uctomb): Use ucs4_t, uint8_t types.
29722         * lib/unistr/ucs4-utf8.c: New file.
29723
29724         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
29725         (Depends-on): Add unitypes.
29726         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
29727         (u16_uctomb_aux): Move out to separate file.
29728         (u16_uctomb): Use ucs4_t, uint16_t types.
29729         * lib/unistr/ucs4-utf16.c: New file.
29730
29731 2006-12-25  Bruno Haible  <bruno@clisp.org>
29732
29733         * modules/unitypes: New file.
29734         * lib/unitypes.h: New file.
29735         * MODULES.html.sh (func_all_modules): New section "Unicode string
29736         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
29737         this section. Add unitypes.
29738
29739 2007-01-08  Bruno Haible  <bruno@clisp.org>
29740
29741         Avoid variable names that conflict with those from libtool.
29742         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
29743         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
29744         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
29745         library_names_spec to acl_library_names_spec, hardcode_* to
29746         acl_hardcode_*.
29747         Reported by Ralf Wildenhues.
29748
29749 2007-01-08  Bruno Haible  <bruno@clisp.org>
29750
29751         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
29752         definition.
29753         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
29754         definition.
29755         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
29756         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
29757         definition.
29758         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
29759         definition.
29760         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
29761         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
29762         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
29763         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
29764         definition.
29765         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
29766         definition.
29767         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
29768         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
29769         GC_USE_<algorithm>.
29770         * lib/gc-libgcrypt.c: Likewise.
29771         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
29772         * modules/gc-arctwo (configure.ac): Likewise.
29773         * modules/gc-des (configure.ac): Likewise.
29774         * modules/gc-hmac-md5 (configure.ac): Likewise.
29775         * modules/gc-hmac-sha1 (configure.ac): Likewise.
29776         * modules/gc-md2 (configure.ac): Likewise.
29777         * modules/gc-md4 (configure.ac): Likewise.
29778         * modules/gc-md5 (configure.ac): Likewise.
29779         * modules/gc-random (configure.ac): Likewise.
29780         * modules/gc-rijndael (configure.ac): Likewise.
29781         * modules/gc-sha1 (configure.ac): Likewise.
29782
29783 2007-01-08  Bruno Haible  <bruno@clisp.org>
29784
29785         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
29786         macro definition.
29787         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
29788         definition.
29789         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
29790         definition.
29791         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
29792         * modules/fcntl-safer (configure.ac): Likewise.
29793         * modules/fopen-safer (configure.ac): Likewise.
29794         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
29795         GNULIB_FWRITEERROR macro definition.
29796
29797 2007-01-08  Bruno Haible  <bruno@clisp.org>
29798
29799         * m4/gnulib-common.m4: New file.
29800         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
29801         (func_get_filelist): Add m4/gnulib-common.m4.
29802
29803 2007-01-08  Bruno Haible  <bruno@clisp.org>
29804
29805         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
29806         command.
29807
29808 2007-01-08  Jim Meyering  <jim@meyering.net>
29809
29810         Use a more robust test for a "can't happen" condition.
29811         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
29812         narrowed the st_size value.  Presuming the "can't happen" condition
29813         is true, that narrowing could conceivably convert an invalid st_size
29814         value into a valid one.  Instead, use a change based on Matthew
29815         Woehlke's original patch.
29816
29817         Slight readability improvement: use an assert-like macro
29818         in place of literal "abort ()" uses.
29819         * lib/fts.c (fts_assert): Define.
29820         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
29821         Use this macro instead of a bare 'abort'.
29822
29823 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
29824
29825         Don't worry about using IRIX 5.3's wctype.h broken definitions;
29826         simply work around them.
29827         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
29828         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
29829         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
29830         declaring.
29831         Don't bother to define as macros, since the standard doesn't require it.
29832         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
29833         longer worry about IRIX 5.3.
29834         (HAVE_WCTYPE_CTMP_BUG): Remove.
29835
29836 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
29837
29838         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
29839         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
29840         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
29841         Problems reported by Georg Schwarz for IRIX 5.3.
29842
29843         * gnulib-tool (autoconf_minversion): Take the maximum version number
29844         found, not the minimum.  Problem reported by James Youngman.
29845
29846 2007-01-03  Karl Berry  <karl@gnu.org>
29847
29848         * doc/error.texi: new file, explaining interaction with progname.
29849         * doc/gnulib.texi: include it.  Update copyright.
29850
29851 2007-01-03  Simon Josefsson  <simon@josefsson.org>
29852
29853         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
29854         AC_CANONICAL_HOST, to improve autobuild outputs.
29855
29856 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
29857             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
29858
29859         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
29860         sockets, server sockets, and other file descriptors.  Count errors
29861         to compute the return value.  Reorder the code a bit to be easier
29862         to follow.  Don't set event bits that were not requested (except
29863         POLLERR and POLLHUP).
29864
29865 2007-01-01  Bruno Haible  <bruno@clisp.org>
29866
29867         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
29868
29869 2007-01-03  Jim Meyering  <jim@meyering.net>
29870
29871         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
29872
29873 2007-01-02  Bruno Haible  <bruno@clisp.org>
29874
29875         * modules/settime (Include): Require timespec.h.
29876         * modules/nanosleep (Include): Likewise.
29877
29878 2007-01-01  Bruno Haible  <bruno@clisp.org>
29879
29880         * gnulib-tool (func_emit_copyright_notice): Bump year.
29881         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
29882
29883 2007-01-01  Bruno Haible  <bruno@clisp.org>
29884
29885         Improve support for OpenBSD.
29886         * build-aux/config.rpath (libname_spec): Export.
29887         (library_names_spec): New variable. Export.
29888         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
29889         library_names_spec from the config.rpath output. Locate shared library
29890         through the name pattern in library_names_spec.
29891
29892 2007-01-01  Eric Blake  <ebb9@byu.net>
29893
29894         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
29895
29896 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
29897
29898         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
29899         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
29900         assume the C locale, and avoid an "eval" that could cause trouble.
29901         Problem with SORT reported by Bob Proulx.
29902
29903         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
29904         Define.  Trivial patch from Henning Nielsen Lund, originally
29905         sent to bug-grep@gnu.org today.
29906
29907 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
29908
29909         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
29910         struct stat.  Problem reported by Henning Nielsen Lund.
29911         * lib/acl.c: Include acl.h first, to check interface.  Don't
29912         bother to include sys/types.h and sys/stat.h again.
29913
29914 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
29915
29916         Import the following change from libc; problem reported by
29917         Sven Verdoolaege.
29918
29919         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
29920
29921         [BZ #1373]
29922         * lib/argp.h: Remove __NTH for __argp_usage inline function.
29923
29924 2006-12-28  Jim Meyering  <jim@meyering.net>
29925
29926         * build-aux/announce-gen: Do not assume that the package
29927         builds any of tar.gz, tar.bz2, and .xdelta files.
29928         Suggestion from Simon Josefsson.
29929
29930 2006-12-28  Simon Josefsson  <simon@josefsson.org>
29931
29932         * modules/announce-gen: New file.
29933
29934 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
29935
29936         * lib/mbchar.h: Just include <wctype.h>; the wctype module
29937         handles its gotchas now.
29938         * lib/mbswidth.c: Likewise.
29939         * lib/wcwidth.h: Likewise.
29940         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
29941         and iswcntrl; the wctype module does this stuff now.
29942         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
29943         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
29944         * modules/mbchar (Depends-on): Add wctype.
29945         * modules/mbswidth (Depends-on): Likewise.
29946         * modules/wcwidth (Depends-on): Likewise.
29947
29948 2006-12-27  Eric Blake  <ebb9@byu.net>
29949
29950         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
29951         module uses more than what <wctype.h> is required to provide.
29952
29953 2006-12-26  Eric Blake  <ebb9@byu.net>
29954
29955         * gnulib-tool (sed_extract_prog): Avoid space-tab.
29956
29957 2006-12-26  Eric Blake  <ebb9@byu.net>
29958
29959         * modules/absolute-header: New module.
29960         * modules/fcntl (Depends-on): Depend on it.
29961         * modules/inttypes (Depends-on): Likewise.
29962         * modules/stdint (Depends-on): Likewise.
29963         * modules/sys_stat (Depends-on): Likewise.
29964         * modules/wctype (Depends-on): Likewise.
29965         * MODULES.html.sh (Support for building libraries and
29966         executables): Document it.
29967
29968 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
29969
29970         * gnulib-tool (SED): Remove, undoing previous change.
29971         The problem was that it broke coreutils on Solaris, because
29972         "sed --posix" leaked into a makefile.
29973         (sed): New alias, if 'alias' and GNU sed.
29974
29975 2006-12-24  Jim Meyering  <jim@meyering.net>
29976
29977         Work around an fchownat bug in glibc-2.4:
29978         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
29979         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
29980         in spite of the -P option.
29981         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
29982         New macros.
29983         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
29984         * modules/openat (Files): Add lib/fchownat.c.
29985         * lib/openat.c (fchownat): Don't define here.  Move to...
29986         * lib/fchownat.c: ...this new file.
29987
29988 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
29989
29990         Fix bug reported by Bruno Haible in
29991         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
29992         where quotearg.c didn't compile on Mac OS X 10.2 because it
29993         lacks <wchar.h> and wint_t.
29994         * lib/wctype_.h (__wctype_wint_t): New type.
29995         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
29996         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
29997         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
29998         Arg is now of type __wctype_wint_t, not wint_t.
29999         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
30000         substitute HAVE_WINT_T.
30001         * modules/wctype (Files): Add m4/wint_t.m4.
30002         (wctype.h): Substitute HAVE_WINT_T.
30003
30004 2006-12-23  Bruno Haible  <bruno@clisp.org>
30005
30006         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
30007
30008 2006-12-23  Bruno Haible  <bruno@clisp.org>
30009
30010         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
30011         S_ISLNK.
30012         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
30013         mingw.
30014
30015 2006-12-22  Bruno Haible  <bruno@clisp.org>
30016
30017         * lib/copy-file.c: Include acl.h.
30018         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
30019         Close the file descriptors only after being done with copy_acl.
30020         * modules/copy-file (Depends-on): Add acl.
30021
30022 2006-12-22  Bruno Haible  <bruno@clisp.org>
30023
30024         * gnulib-tool (SED): New variable.
30025         Use $SED instead of sed everywhere.
30026
30027 2006-12-22  Bruno Haible  <bruno@clisp.org>
30028
30029         * modules/no-c++: New file.
30030         * m4/no-c++.m4: New file.
30031         * MODULES.html.sh (Support for building libraries and executables):
30032         Add no-c++.
30033
30034 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
30035
30036         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
30037         Include <limits.h>, and use its INT_MAX to rewrite the
30038         j loop so that it does not overflow 'int'.  Problem reported by
30039         Ralf Wildenhues in
30040         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
30041         Play it safe by shifting left by 1 rather than multiplying by 2,
30042         as GCC is less likely to optimize this away when the value
30043         is signed (when it assumes overflow leads to undefined behavior).
30044         Also, don't assume time_t uses two's complement.
30045
30046 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
30047
30048         * MODULES.html.sh: New module wctype.
30049         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
30050         * lib/fnmatch.c: Don't bother to include <wchar.h> before
30051         <wctype.h>, since the new wctype module should fix this.
30052         * lib/quotearg.c: Include <wctype.h> unconditionally, since
30053         the wctype module should arrange for it.
30054         * lib/regex_internal.h: Likewise.
30055         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
30056         since the wctype module should handle this now.
30057         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
30058         * modules/fnmatch (Depends-on): Add wctype.
30059         * modules/quotearg (Depends-on): Likewise.
30060         * modules/regex (Depends-on): Likewise.
30061
30062 2006-12-19  Bruno Haible  <bruno@clisp.org>
30063
30064         * lib/strdup.h [C++]: Wrap definitions in extern "C".
30065         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
30066
30067 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30068
30069         * modules/savewd (Depends-on): Fix dependency on fcntl.
30070
30071 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
30072
30073         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
30074         conforms to C99, rather than relying on the user's environment
30075         setting of STDINT_H.
30076
30077 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
30078         and Eric Blake  <ebb9@byu.net>
30079
30080         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
30081         This is more consistent with the other defines here.
30082         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
30083         Port to z/OS.  Problem reported by Paul Gilmartin.
30084         Change local vars to use gl_ prefix rather than ac_.
30085         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
30086         with other defines.
30087         * modules/double-slash-root: New module.
30088         * modules/dirname (Files): Remove m4/double-slash-root.m4.
30089         (Depends-on): Add double-slash-root.
30090         * MODULES.html.sh (File system functions): Mention new module.
30091
30092 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
30093
30094         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
30095         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
30096         This is for the benefit of gzip, which doesn't do i18n.
30097
30098 2006-12-12  Jim Meyering  <jim@meyering.net>
30099
30100         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
30101         Reported by Andreas Schwab <schwab@suse.de>.
30102
30103 2006-12-12  Bruno Haible  <bruno@clisp.org>
30104
30105         Merge these changes.
30106         2006-09-05  Bruno Haible  <bruno@clisp.org>
30107         * lib/iconvme.c (iconv_string): No need to save and restore errno when
30108         iconv_alloc succeeded.
30109         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
30110         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
30111         test for " && dest " at the end - dest is always != NULL there. Call
30112         iconv with 4xNULL arguments initially, to reset the state. Call iconv
30113         with 2xNULL arguments, also to flush the state storage. Handle the
30114         IRIX iconv behaviour. Realloc the final result, to throw away unused
30115         memory.
30116
30117 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
30118
30119         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
30120         and fchmodat unconditionally, since glibc 2.4 has them.
30121         Problem reported by Arkadiusz Miskiewicz.
30122
30123 2006-12-10  Bruno Haible  <bruno@clisp.org>
30124
30125         * gnulib-tool (func_import): Show the include files only for those
30126         modules that are copied and specified.
30127         Reported by Karl Berry.
30128
30129 2006-12-08  Jim Meyering  <jim@meyering.net>
30130
30131         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
30132         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
30133
30134         * build-aux/announce-gen: Add two new options, both optional:
30135         --bootstrap-tools=TOOL_LIST
30136               a comma-separated list of tools, e.g.,
30137               autoconf,automake,bison,gnulib
30138         --gnulib-snapshot-date=DATE
30139               if gnulib is in the bootstrap tool list,
30140               then report this as the snapshot date.
30141               If not specified, use the current date/time.
30142               If you specify a date here, be sure it's UTC.
30143
30144 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30145
30146         * tests/test-argp-2.sh: Fix test to match actual output.
30147         (func_compare): Fix sed script to be portable.
30148
30149 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
30150
30151         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
30152         workaround for this case.  It is not autoconfigured now; offhand
30153         it's hard to see how to autoconfigure it.
30154
30155 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
30156
30157         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
30158         a directory that is about to be chowned.  Such a directory's
30159         initial file permissions should permit the owner only and this
30160         should not be changed until after the chown, since the group and
30161         other bits would be incorrect if they granted permission before
30162         the chown.
30163
30164         Fix porting problem for iswctype reported by Georg Schwarz in:
30165         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
30166         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
30167         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
30168         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
30169         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
30170
30171 2006-12-03  Jim Meyering  <jim@meyering.net>
30172
30173         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
30174         p->fts_statp may not yet be defined.
30175         (fts_read): Instead, set it in the caller, once p->fts_statp is
30176         sure to be defined, and corresponds to a top-level directory.
30177         This bug made du -x fail.  Here's the coreutils test case:
30178         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
30179         Reported by Mike Frysinger.
30180
30181 2006-12-01  Jim Meyering  <jim@meyering.net>
30182
30183         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
30184         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
30185         Reported by Simon Josefsson.
30186
30187 2006-11-30  Jim Meyering  <jim@meyering.net>
30188
30189         * m4/warning.m4: Use the all-permissive copyright notice
30190         recommended by RMS (rather than LGPL).
30191         * m4/vararrays.m4: Likewise.
30192         * m4/flexmember.m4: Likewise.
30193
30194 2006-11-29  Bruno Haible  <bruno@clisp.org>
30195
30196         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
30197         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
30198         using +=.
30199         Reported by Simon Josefsson <simon@josefsson.org>.
30200
30201 2006-11-28  James Youngman <jay@gnu.org>
30202
30203         * README: Advise users that they might find the bug-gnulib@gnu.org
30204         and autotools-announce@gnu.org mailing lists useful.
30205
30206 2006-11-28  Bruno Haible  <bruno@clisp.org>
30207
30208         * m4/ptrdiff_max.m4: Remove file.
30209
30210 2006-11-21  Bruno Haible  <bruno@clisp.org>
30211
30212         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
30213         _AC_COMPUTE_INT.
30214         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
30215         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
30216         _AC_COMPUTE_INT.
30217         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
30218         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
30219         _AC_COMPUTE_INT.
30220         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
30221
30222 2006-11-28  Jim Meyering  <jim@meyering.net>
30223
30224         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
30225         warning from "gcc -Wshadow" about shadowing the builtin.
30226
30227 2006-11-27  Bruno Haible  <bruno@clisp.org>
30228
30229         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
30230         _AC_COMPUTE_INT.
30231         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
30232
30233 2006-11-27  Bruno Haible  <bruno@clisp.org>
30234             Paul Eggert  <eggert@cs.ucla.edu>
30235
30236         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
30237
30238 2006-11-26  Bruno Haible  <bruno@clisp.org>
30239
30240         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
30241         noinst_LTLIBRARIES.
30242
30243 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
30244             Bruno Haible  <bruno@clisp.org>
30245
30246         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
30247         if compiling with "gcc -ansi".
30248
30249 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
30250
30251         Fix some incompatibilities with gcc -ansi -pedantic.
30252         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
30253         if compiling pedantically with GCC, unless it's C99 or later.
30254         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
30255         it mishandles gcc -ansi -pedantic as well.
30256         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
30257         if gcc -pedantic.
30258         * lib/regexec.c (check_node_accept_bytes): Don't use auto
30259         initializers for struct if -pedantic, unless it's C99 or later.
30260
30261 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
30262
30263         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
30264         Don't close an fd more than once. Identical atimes indicate
30265         success, not failure.
30266
30267 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
30268
30269         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
30270
30271 2006-11-23  Jim Meyering  <jim@meyering.net>
30272
30273         * build-aux/announce-gen: New file.  From coreutils.
30274
30275 2006-11-22  Jim Meyering  <jim@meyering.net>
30276
30277         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
30278         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
30279         (fts_read): Use a temporary to narrow the overused st_size member
30280         before using it in a switch statement.  Reported by Matthew Woehlke.
30281
30282         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
30283         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
30284
30285 2006-11-20  Bruno Haible  <bruno@clisp.org>
30286
30287         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
30288         changequote instead of pairs of brackets.
30289         Reported by Andreas Schwab <schwab@suse.de>.
30290
30291 2006-11-21  Jim Meyering  <jim@meyering.net>
30292
30293         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
30294         so as to remain compatible with older compilers.
30295         Patch from Michael Deutschmann.
30296
30297 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
30298
30299         * MODULES.html.sh (File system functions): Add openat.
30300
30301         * lib/openat.h (rpl_fstatat): New macro, if
30302         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
30303         (fstatat): Define to rpl_fstatat under the same conditions,
30304         unless COMPILING_FSTATAT.
30305         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
30306         seems to have the bug.
30307         * lib/fstatat.c: New file.
30308         * modules/openat (Files): Add it.
30309
30310 2006-11-20  Bruno Haible  <bruno@clisp.org>
30311
30312         * Makefile: New file.
30313
30314 2006-11-20  Jim Meyering  <jim@meyering.net>
30315
30316         The beginnings of syntax-related checks for gnulib.
30317         * lib/Makefile: New file.
30318         * lib/t-idcache: New script.  Ensure that the two halves of
30319         idcache.c stay in sync.
30320
30321         * lib/idcache.c: Adjust comments in user- and group- portions to
30322         be more accurate, and to be consistent with one another.
30323
30324 2006-11-20  Jim Meyering  <jim@meyering.net>
30325
30326         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
30327         continue using the flexible array member (thus, this module performs
30328         half as many malloc calls), with the addition that...
30329         (getgroup, getuser): Consistently record a non-match via an empty
30330         "name" string, and map an empty string match to a NULL return value.
30331         * modules/idcache (Depends-on): Re-add flexmember.
30332
30333         * lib/idcache.c (getuser): Remove all uses of the register keyword.
30334         (getuidbyname, getgroup, getgidbyname): Likewise.
30335
30336         Use cleaner syntax: NULL rather than 0.
30337         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
30338
30339 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
30340
30341         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
30342         It mishandled the case where the group was missing.
30343         Problem reported by Greg Schafer.
30344         * modules/idcache: Likewise.
30345
30346 2006-11-18  Jim Meyering  <jim@meyering.net>
30347
30348         * check-module (%exempt_header): Add exception for some
30349         conditionally-included headers.
30350
30351         * modules/i-ring (Depends-on): Add verify.
30352         (License): Change to LGPL.
30353
30354 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30355
30356         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
30357         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
30358         and inttostr.h.  Use snprintf rather than uinttostr, so that
30359         LGPLed code doesn't depend on GPLed.
30360
30361 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
30362
30363         * modules/inline (License): Change from GPL to LGPL.
30364
30365 2006-11-17  Jim Meyering  <jim@meyering.net>
30366
30367         * modules/d-type (License): Switch to LGPL.
30368
30369 2006-11-15  Bruno Haible  <bruno@clisp.org>
30370
30371         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
30372
30373 2006-11-15  Eric Blake  <ebb9@byu.net>
30374
30375         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
30376         the module dependency.
30377
30378 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
30379             Bruno Haible  <bruno@clisp.org>
30380
30381         * gnulib-tool (func_create_testdir): Add license consistency check.
30382
30383 2006-11-15  Eric Blake  <ebb9@byu.net>
30384
30385         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
30386         random "(cached)" in configure output.
30387
30388 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30389
30390         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
30391         test for conforming inttypes.h is both announced and cached.
30392
30393         * MODULES.html.sh (seen_modules, seen_files): New variables.
30394         (func_module): Rewrite to use a few less gnulib-tool and sed
30395         invocations.  Avoid a couple of quadratic algorithms for ...
30396         (missed_modules, missed_files): ... these, with ...
30397         (func_append, func_tmpdir): ... these new functions, from
30398         gnulib-tool.  Analogously, install traps for cleanup.
30399
30400         * tests/test-gc.c (main): Remove unused variables.
30401         * tests/test-read-file.c: Include stdlib.h, for 'free'.
30402
30403 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
30404
30405         * modules/inttostr (License): Change to LGPL.
30406
30407 2006-11-14  Eric Blake  <ebb9@byu.net>
30408
30409         * modules/tempname (License): Change to LGPL.
30410
30411 2006-11-14  Eric Blake  <ebb9@byu.net>
30412
30413         * doc/functions.texi (Function Portability): *printf functions on
30414         Cygwin now understand all POSIX size specifiers.
30415
30416 2006-11-14  Bruno Haible  <bruno@clisp.org>
30417
30418         * modules/c-ctype (License): Change to LGPL.
30419
30420 2006-11-12  Bruno Haible  <bruno@clisp.org>
30421
30422         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
30423         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
30424         for GNOME libraries, for which the include files are installed in
30425         subdirectories of $prefix/include.
30426
30427 2006-11-12  Bruno Haible  <bruno@clisp.org>
30428
30429         * m4/lib-link.m4: Require at least autoconf-2.54.
30430         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
30431         name to underscores for the --with option.
30432
30433 2006-11-13  Bruno Haible  <bruno@clisp.org>
30434
30435         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
30436         the tests directory.
30437         Reported by Ralf Wildenhues.
30438
30439 2006-11-13  Bruno Haible  <bruno@clisp.org>
30440
30441         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
30442         (func_emit_initmacro_end): Undo the override here.
30443         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
30444         Works around the famous automake error in coreutils.
30445
30446 2006-11-13  Eric Blake  <ebb9@byu.net>
30447
30448         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
30449         element, not its node.
30450
30451 2006-11-12  Bruno Haible  <bruno@clisp.org>
30452
30453         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
30454         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
30455
30456 2006-11-12  Bruno Haible  <bruno@clisp.org>
30457
30458         * gnulib-tool: New option --local-symlink.
30459         (func_usage): Document it.
30460         (lsymbolic): New variable.
30461         (func_import, func_create_testdir): If --symlink was not specified,
30462         test whether --local-symlink was specified and the file comes from
30463         the local_gnulib_dir.
30464
30465 2006-11-12  Bruno Haible  <bruno@clisp.org>
30466
30467         * gnulib-tool (func_ln): New function.
30468         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
30469
30470 2006-11-12  Bruno Haible  <bruno@clisp.org>
30471
30472         Finish support for source files in subdirectories.
30473         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
30474         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
30475         AUTOMAKE_OPTIONS.
30476         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
30477
30478 2006-11-12  Bruno Haible  <bruno@clisp.org>
30479
30480         * gnulib-tool (func_get_automake_snippet): Synthesize also an
30481         EXTRA_lib_SOURCES augmentation.
30482         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
30483
30484 2006-11-12  Jim Meyering  <jim@meyering.net>
30485
30486         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
30487         file descriptors.  This also averts a failure on systems with
30488         native openat support when a traversed directory lacks "x" access.
30489         * lib/fts_.h: Include "i-ring.h"
30490         (struct FTS) [fts_fd_ring]: New member.
30491         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
30492         (FCHDIR): Add parentheses.
30493         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
30494         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
30495         When descending, rather than simply closing the previous
30496         fts_cwd_fd value, push that file descriptor onto the ring.
30497         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
30498         (fts_open): Initialize the new fd_ring member.
30499         (fts_close): Clear the ring.
30500         (fts_safe_changedir): When possible, use our new fd_ring to skip
30501         the diropen and fstat and dev/ino comparison that would normally
30502         accompany a virtual `chdir ("..")'.
30503
30504         * modules/fts (Depends-on): Add i-ring.
30505         * modules/i-ring: New module.
30506         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
30507         * m4/i-ring.m4: New file.
30508
30509 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30510
30511         * gnulib-tool (func_create_testdir): Fix replacement of
30512         `build-aux' in configure.ac.  Run autotools in gltests
30513         subdirectory.
30514         (func_create_testdir, func_create_megatestdir, test): There is
30515         no need for '--force' in most autotool invocations in a new
30516         tree.  Actually fail the whole test if any of the tools, or the
30517         configure or make stages fail.
30518
30519         Sync from Automake.
30520         * build-aux/gnupload: Revert last change.  Add pointer to upload
30521         instructions of the GNU Maintenance Instructions.
30522         Suggestion by Karl Berry.
30523
30524 2006-11-10  Jim Meyering  <jim@meyering.net>
30525
30526         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
30527
30528 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
30529
30530         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
30531         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
30532         (bind_textdomain_codeset) [! ENABLE_NLS]:
30533         Evaluate all the arguments.  That way, callers get compatible behavior
30534         if the arguments have side effects.  Also, it avoids some GCC
30535         diagnostics in some cases; Joel E. Denny reported problems when Bison
30536         was configured with --enable-gcc-warnigs.
30537
30538 2006-11-10  Jim Meyering  <jim@meyering.net>
30539
30540         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
30541         relevant options in CFLAGS (like -O, -fno-inline) are taken into
30542         account.
30543
30544 2006-11-10  Jim Meyering  <jim@meyering.net>
30545
30546         * modules/inline: New file/module.
30547         * modules/xalloc (Files): Remove m4/inline.m4.
30548         (Depends-on): Add inline, instead.
30549         * modules/oset: Likewise.
30550         * modules/list: Likewise.
30551
30552 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
30553
30554         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
30555         Problem reported by Matthew Woehlke.
30556
30557 2006-11-09  Bruno Haible  <bruno@clisp.org>
30558
30559         * lib/tempname.c (gen_tempname): Remove variant that invokes
30560         __gen_tempname.
30561         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
30562         __gen_tempname.
30563
30564 2006-11-08  Bruno Haible  <bruno@clisp.org>
30565
30566         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
30567         to 'yes' instead of 'cross-compiling'.
30568
30569 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
30570
30571         * lib/quotearg.h (quotearg_free): New decl.
30572         * lib/quotearg.c (quotearg_free): New function.
30573         (slot0, nslots, slotvec0, slotvec):
30574         Now file-scope so that quotearg_free can get at them.
30575
30576 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30577
30578         Sync from Automake.
30579         * build-aux/gnupload: Add missing 'gnu' to example URL.
30580         Report by Karl Berry.
30581
30582 2006-11-08  Bruno Haible  <bruno@clisp.org>
30583
30584         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
30585         Suggested by Paul Eggert.
30586
30587 2006-11-08  Jim Meyering  <jim@meyering.net>
30588
30589         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
30590         It's already included if !_LIBC.
30591         (fts_safe_changedir): Add a comment.
30592
30593 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
30594
30595         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
30596         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
30597         Matthew Woehlke.
30598
30599         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
30600         definitions up, to avoid colliding with change below.
30601         (static_inline) [HAVE_INLINE]: New macro.
30602         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
30603         Provide extern decls when !HAVE_INLINE.  Do not define unless
30604         static_inline is defined, either by us or by xmalloc.c.  Use
30605         static_inline rather than static inline.
30606         (XCALLOC): Optimize sizeof(T) = 1 case.
30607         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
30608
30609 2006-11-07  Bruno Haible  <bruno@clisp.org>
30610
30611         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
30612         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
30613         AC_C_INLINE.
30614         * modules/xalloc (Files): Add m4/inline.m4.
30615
30616 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30617
30618         * README: Fix typo.
30619         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
30620         (Miscellanous Notes): ...from this.
30621
30622 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
30623
30624         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
30625         Mention that offsetof should be used instead of sizeof.
30626         From Bruno Haible.
30627
30628 2006-11-07  Bruno Haible  <bruno@clisp.org>
30629
30630         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
30631
30632 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
30633
30634         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
30635         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
30636         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
30637         (gl_tree_add_before, gl_tree_add_after):
30638         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
30639         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
30640         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
30641         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
30642         (gl_linked_add_after, gl_linked_add_at): Likewise.
30643         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
30644         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
30645         (gl_tree_add_before, gl_tree_add_after): Likewise.
30646         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
30647         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
30648         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
30649
30650 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30651
30652         * lib/gl_oset.h: Use C comment style, not C++ comment style.
30653
30654 2006-11-06  Bruno Haible  <bruno@clisp.org>
30655
30656         * m4/inline.m4: New file.
30657         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
30658         * modules/list (Files): Add m4/inline.m4.
30659         * modules/oset (Files): Likewise.
30660
30661 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
30662
30663         * lib/idcache.c: Include <stddef.h>, for offsetof.
30664         (struct userid.name): Change from char * to a flexible array member.
30665         All uses changed.
30666         * modules/idcache (Depends-on): Add flexmember.
30667
30668         * MODULES.html.sh (Core language properties): New module flexmember.
30669         * modules/flexmember, m4/flexmember.m4: New files.
30670
30671         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
30672         inline functions that are identical with the old xnmalloc_inline,
30673         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
30674         that we can avoid some unnecessary integer multiplications and
30675         divisions in the common case where the element size is known at
30676         compile time.
30677         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
30678         needed.
30679         (xnboundedmalloc): Remove.
30680         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
30681         arguments, for consistency with rest of this header.
30682         (xcharalloc): Rewrite using XNMALLOC.
30683         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
30684         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
30685         versions have been moved to lib/xalloc.h and renamed to be the
30686         non-*_inline versions.
30687         (xmalloc, xrealloc): Implement without reference to the xnmalloc
30688         and xnrealloc functions, since those functions are now inline and
30689         now call us.
30690         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
30691         renaming described above.
30692         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
30693         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
30694         captures the dependency in AC_C_INLINE.
30695
30696         New module canonicalize-lgpl, proposed by Charles Wilson in
30697         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
30698         with a few small changes afterwards.
30699         * MODULES.html.sh (File system functions): New module
30700         canonicalize-lgpl.
30701         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
30702         and canonicalize_file_name.
30703         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
30704         * modules/canonicalize-lgpl: New files.
30705
30706 2006-11-05  Bruno Haible  <bruno@clisp.org>
30707
30708         * gnulib-tool (func_import, func_create_testdir): Create directories
30709         also for files in subdirectories of lib/.
30710
30711 2006-11-05  Bruno Haible  <bruno@clisp.org>
30712
30713         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
30714         ANSI C compliant.
30715
30716 2006-11-03  Bruno Haible  <bruno@clisp.org>
30717
30718         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
30719         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
30720         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
30721         (xnboundedmalloc): New inline function.
30722         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
30723         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
30724         xmalloc.
30725         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
30726         xmalloc.
30727         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
30728         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
30729         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
30730         xmalloc.
30731         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
30732         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
30733         xmalloc.
30734         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
30735         gl_tree_add_after): Use XMALLOC instead of xmalloc.
30736         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
30737         xmalloc.
30738         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
30739         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
30740         gl_tree_add_after): Use XMALLOC instead of xmalloc.
30741         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
30742         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
30743         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
30744         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
30745
30746 2006-11-03  Bruno Haible  <bruno@clisp.org>
30747
30748         * lib/c-ctype.h [C++]: Define functions without name mangling.
30749         * lib/fwriteerror.h [C++]: Likewise.
30750         * lib/gcd.h [C++]: Likewise.
30751         * lib/linebreak.h [C++]: Likewise.
30752
30753 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
30754
30755         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
30756         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
30757         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
30758         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
30759         Check for functions and headers just once.
30760         Check for declaration of canonicalize_file_name.
30761         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
30762
30763 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
30764
30765         * gnulib-tool (func_import): Fix typo in actioncmd.
30766
30767 2006-11-02  Bruno Haible  <bruno@clisp.org>
30768
30769         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
30770         newline sequence in the Makefile.am snippet as a space, like "make"
30771         does.
30772         Reported by Roger Persson <perrog@gmail.com>.
30773
30774 2006-11-01  Bruno Haible  <bruno@clisp.org>
30775
30776         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
30777         already declared in <string.h>.
30778         * lib/strcase.h (strncasecmp): Don't declare it if yes.
30779
30780 2006-11-01  Bruno Haible  <bruno@clisp.org>
30781
30782         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
30783         * lib/strcase.h: Include <string.h>.
30784         (strcasecmp): Define to rpl_strcasecmp here.
30785
30786 2006-11-01  Bruno Haible  <bruno@clisp.org>
30787
30788         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
30789
30790 2006-11-01  Eric Blake  <ebb9@byu.net>
30791
30792         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
30793
30794         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
30795
30796 2006-10-29  Bruno Haible  <bruno@clisp.org>
30797
30798         Make it compile in C++ mode.
30799         * lib/full-write.c (full_rw): Add a cast.
30800
30801 2006-11-01  Bruno Haible  <bruno@clisp.org>
30802
30803         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
30804         be POSIX compliant.
30805         Reported by Roger Persson <perrog@gmail.com>.
30806
30807 2006-11-01  Eric Blake  <ebb9@byu.net>
30808
30809         * lib/getopt_.h: Fix comments.
30810
30811 2006-10-31  Eric Blake  <ebb9@byu.net>
30812
30813         * modules/tmpdir (Depends-on): Add sys_stat.
30814         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
30815         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
30816         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
30817         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
30818         tempname.
30819
30820 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
30821
30822         Avoid some C++ diagnostics reported by Bruno Haible.
30823         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
30824         xmalloc.
30825         (quotearg_alloc): Use xcharalloc rather than xmalloc.
30826         (struct slotvec): Move to top level.
30827         (quotearg_n_options): Rewrite to avoid xmalloc.
30828         * lib/xalloc.h (xcharalloc): New function.
30829         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
30830         [defined __cplusplus]: Add function template that provides result
30831         type propagation.  This part of the change is from Bruno Haible.
30832
30833 2006-10-29  Bruno Haible  <bruno@clisp.org>
30834
30835         Make it compile in C++ mode.
30836         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
30837         * lib/strnlen1.c (strnlen1): Cast memchr result.
30838         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
30839         * lib/clean-temp.c (string_equals, string_hash): Add casts.
30840         (create_temp_dir): Rename local variable 'template'.
30841         (compile_csharp_using_sscli): Add cast.
30842         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
30843         * lib/findprog.c (find_in_path): Likewise.
30844         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
30845         * lib/wait-process.c (register_slave_subprocess): Likewise.
30846
30847 2006-10-22  Bruno Haible  <bruno@clisp.org>
30848
30849         * modules/tsearch: New file.
30850         * lib/tsearch.h: New file.
30851         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
30852         * m4/tsearch.m4: New file.
30853         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
30854
30855 2006-10-29  Eric Blake  <ebb9@byu.net>
30856
30857         * lib/arcfour.c: Assume config.h.
30858         * lib/arctwo.c: Likewise.
30859         * lib/base64.c: Likewise.
30860         * lib/check-version.c: Likewise.
30861         * lib/crc.c: Likewise.
30862         * lib/des.c: Likewise.
30863         * lib/gc-gnulib.c: Likewise.
30864         * lib/gc-libgcrypt.c: Likewise.
30865         * lib/gc-pbkdf2-sha1.c: Likewise.
30866         * lib/getaddrinfo.c: Likewise.
30867         * lib/getdelim.c: Likewise.
30868         * lib/getline.c: Likewise.
30869         * lib/hmac-md5.c: Likewise.
30870         * lib/hmac-sha1.c: Likewise.
30871         * lib/iconvme.c: Likewise.
30872         * lib/md2.c: Likewise.
30873         * lib/md4.c: Likewise.
30874         * lib/memxor.c: Likewise.
30875         * lib/read-file.c: Likewise.
30876         * lib/readline.c: Likewise.
30877         * lib/rijndael-alg-fst.c: Likewise.
30878         * lib/rijndael-api-fst.c: Likewise.
30879         * lib/xgetdomainname.c: Likewise.
30880
30881 2006-10-28  Eric Blake  <ebb9@byu.net>
30882
30883         * lib/xstrndup.c: Assume config.h.
30884
30885 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
30886
30887         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
30888         stat-macros.h is now for our own macros, whereas stat_h is for
30889         macros in the <sys/stat.h> name space.
30890         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
30891         (STAT_MACROS_H): Remove.
30892         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
30893         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
30894         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
30895         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
30896         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
30897         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
30898         Move these macros to ...
30899         * lib/stat_.h: here.  Don't include stat-macros.h.
30900         * lib/canonicalize.c: Don't include stat-macros.h.
30901         * lib/chown.c: Likewise.
30902         * lib/euidaccess.c: Likewise.
30903         * lib/file-type.c: Likewise.
30904         * lib/filemode.c: Likewise.
30905         * lib/glob.c: Likewise.
30906         * lib/isapipe.c: Likewise.
30907         * lib/lchown.c: Likewise.
30908         * lib/lstat.c: Likewise.
30909         * lib/mkdir-p.c: Likewise.
30910         * lib/rmdir.c: Likewise.
30911         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
30912         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
30913         unless mkdir isn't declared, to speed up 'configure'.
30914         Always create sys/stat.h, since it's unlikely any real sys/stat.h
30915         would define all the S_* symbols.
30916         * modules/canonicalize (Depends-on):
30917         Depend on sys_stat, not stat-macros.
30918         * modules/chown: Likewise.
30919         * modules/euidaccess: Likewise.
30920         * modules/filemode: Likewise.
30921         * modules/file-type: Likewise.
30922         * modules/glob: Likewise.
30923         * modules/isapipe: Likewise.
30924         * modules/lchown: Likewise.
30925         * modules/lstat: Likewise.
30926         * modules/mkancesdirs: Likewise.
30927         * modules/rmdir: Likewise.
30928         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
30929         * modules/modechange: Likewise.
30930         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
30931         (configure.ac): Remove gl_STAT_MACROS.
30932         * modules/sys_stat (Depends-on): Remove stat-macros.
30933
30934 2006-10-27  Bruno Haible  <bruno@clisp.org>
30935
30936         * m4/signed.m4: Remove file.
30937         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
30938         invocation.
30939         * modules/vasnprintf (Files): Remove m4/signed.m4.
30940
30941 2006-10-27  Bruno Haible  <bruno@clisp.org>
30942
30943         Update to GNU gettext 0.16.
30944         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
30945         m4/inttypes-h.m4, m4/signed.m4.
30946         * m4/gettext.m4: Update to GNU gettext 0.16.
30947         * m4/intl.m4: New file, from GNU gettext.
30948         * m4/intldir.m4: New file, from GNU gettext.
30949         * config/srclist.txt: Update
30950
30951 2006-10-27  Eric Blake  <ebb9@byu.net>
30952
30953         * MODULES.html.sh: Document tempname.
30954         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
30955         dependencies.
30956         (Files): Move lib/tempname.c...
30957         * modules/tempname: ...to this new module.
30958         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
30959         (gl_PREREQ_TEMPNAME): Move...
30960         * m4/tempname.m4: ...to this new file.
30961         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
30962         * modules/sys_stat (Depends-on): Add stat-macros.
30963         * lib/stat_.h (includes): Pick up stat macros.
30964         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
30965         if stat macros are broken.
30966         * lib/tempname.c (includes): No need to include "stat-macros.h".
30967         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
30968         (direxists, __path_search) [!_LIBC]: Don't compile these in
30969         gnulib; the tmpdir module covers that.
30970         * lib/tempname.h: New file.
30971
30972 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
30973
30974         * COPYING: Explain how gnulib-tool converts licence headers.
30975         Almost all wording by Eric Blake.
30976
30977 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
30978
30979         * lib/mbchar.h (is_basic_table): Make read-only.
30980         * lib/mbchar.c (is_basic_table): Likewise.
30981         Reported by John Darrington.
30982
30983 2006-10-25  Bruno Haible  <bruno@clisp.org>
30984
30985         * lib/progname.h (set_program_name): Undefine before defining.
30986
30987 2006-10-25  Bruno Haible  <bruno@clisp.org>
30988
30989         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
30990         false for non-gcc C++ compilers.
30991         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
30992
30993 2006-10-24  Bruno Haible  <bruno@clisp.org>
30994
30995         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
30996         iconv implementations like Irix iconv.
30997
30998 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30999
31000         * modules/vararrays: New file.
31001         * m4/vararrays.m4: New file, taken from diffutils.
31002         * MODULES.html.sh: New module vararrays.
31003
31004 2006-10-24  Karl Berry  <karl@gnu.org>
31005
31006         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
31007         Don't call GNU Unix.
31008
31009 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31010
31011         * users.txt: Add Libtool.
31012
31013         Sync from Libtool:
31014
31015         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
31016
31017         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
31018         to gnulib's policy of including config.h unconditionally.
31019
31020 2006-10-24  Bruno Haible  <bruno@clisp.org>
31021
31022         * modules/wcwidth (Files): Add m4/wint_t.m4.
31023         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
31024         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
31025
31026 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
31027
31028         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
31029         to pacify GCC with some -W flags enabled.  Problem reported by
31030         Bruno Haible.
31031
31032 2006-10-24  Jim Meyering  <jim@meyering.net>
31033
31034         * MODULES.html.sh: Remove uinttostr.  It's not a module.
31035         Reported by Karl Berry.
31036
31037 2006-10-23  Bruno Haible  <bruno@clisp.org>
31038
31039         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
31040
31041 2006-10-24  Bruno Haible  <bruno@clisp.org>
31042
31043         * lib/gl_list.h: Use C comment style, not C++ comment style.
31044
31045 2006-10-23  Eric Blake  <ebb9@byu.net>
31046
31047         * lib/getaddrinfo.c (includes): Add missing include.
31048
31049 2006-10-23  Bruno Haible  <bruno@clisp.org>
31050             Paul Eggert  <eggert@cs.ucla.edu>
31051
31052         Ability to rename obstack_free.
31053         * lib/obstack.h (__obstack_free): New macro. Declare instead of
31054         obstack_free.
31055         (obstack_free): Invoke the __obstack_free macro.
31056         * lib/obstack.c (obstack_free): Use __obstack_free macro.
31057
31058 2006-10-23  Bruno Haible  <bruno@clisp.org>
31059             Paul Eggert  <eggert@cs.ucla.edu>
31060
31061         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
31062         __argc, __argv from the declaration. (They are defined as macros on
31063         mingw.)
31064
31065 2006-10-22  Bruno Haible  <bruno@clisp.org>
31066
31067         * doc/gnulib-intro.texi: New file.
31068         * doc/gnulib.texi: Include it.
31069
31070 2006-10-21  Bruno Haible  <bruno@clisp.org>
31071
31072         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
31073         "Introduction", "Miscellanous Notes", "Particular Modules".
31074
31075 2006-10-21  Bruno Haible  <bruno@clisp.org>
31076
31077         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
31078         Change mostlyclean-local rule to avoid sh syntax error from bash
31079         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
31080
31081 2006-10-23  Jim Meyering  <jim@meyering.net>
31082
31083         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
31084         in place of snprintf.
31085
31086         * modules/inttostr (Files): Add lib/uinttostr.c.
31087         * lib/uinttostr.c (inttostr): New file/function.
31088         * lib/inttostr.h (uinttostr): Declare.
31089         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
31090         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
31091         Add uinttostr.
31092         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
31093
31094 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
31095
31096         * lib/canonicalize.c (ELOOP): Define if not already defined.
31097         Problem reported by Bruno Haible in
31098         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
31099
31100 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
31101
31102         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
31103         Problem reported by Perry Smith and Ville Laurikari.
31104
31105         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
31106         uses.
31107
31108 2006-10-19  Bruno Haible  <bruno@clisp.org>
31109
31110         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
31111         for mingw.
31112
31113 2006-10-19  Bruno Haible  <bruno@clisp.org>
31114
31115         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
31116         Needed for mingw.
31117
31118 2006-10-19  Bruno Haible  <bruno@clisp.org>
31119
31120         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
31121
31122 2006-10-19  Bruno Haible  <bruno@clisp.org>
31123
31124         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
31125         it.
31126
31127 2006-10-19  Bruno Haible  <bruno@clisp.org>
31128
31129         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
31130         invocation.
31131
31132 2006-10-19  Bruno Haible  <bruno@clisp.org>
31133
31134         * gnulib-tool (func_create_testdir): Don't include ftruncate and
31135         mountlist by default.
31136
31137 2006-10-16  Bruno Haible  <bruno@clisp.org>
31138
31139         * lib/c-strstr.c: Include c-strstr.h.
31140
31141 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
31142
31143         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
31144         in a slash.
31145
31146 2006-10-18  Bruno Haible  <bruno@clisp.org>
31147
31148         * lib/lock.h [C++]: Wrap definitions in extern "C".
31149
31150 2006-10-18  Bruno Haible  <bruno@clisp.org>
31151
31152         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
31153         gl_LIBOBJS list.
31154
31155 2006-10-18  Bruno Haible  <bruno@clisp.org>
31156
31157         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
31158
31159 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
31160
31161         * lib/xstrtol.h: Include gettext.h.
31162         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
31163         Problem reported by Eric Blake.
31164         * modules/xstrtol (Depends-on): Add gettext-h.
31165
31166 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
31167
31168         * lib/strftime.c (advance): New macro.
31169         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
31170         incomplete type, so you can't add 0 to it.  Problem and patch
31171         reported by Eelco Dolstra for dietlibc.
31172
31173 2006-10-18  Jim Meyering  <jim@meyering.net>
31174
31175         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
31176         type for a local, and rename it: s/up/user_proc/.
31177
31178 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
31179
31180         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
31181         READ_UTMP_USER_PROCESS.
31182         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
31183
31184 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
31185
31186         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
31187         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
31188
31189 2006-10-17  Eric Blake  <ebb9@byu.net>
31190
31191         * lib/sigprocmask.c (sigprocmask): Fix typo.
31192
31193         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
31194
31195         * modules/clean-temp (Makefile.am): Don't add to make output...
31196         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
31197         config.h.
31198
31199 2006-10-17  Bruno Haible  <bruno@clisp.org>
31200
31201         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
31202         differently if DEFAULT_TEXT_DOMAIN is set.
31203
31204 2006-10-16  Bruno Haible  <bruno@clisp.org>
31205
31206         * lib/clean-temp.c: Include fwriteerror.h.
31207
31208 2006-10-16  Bruno Haible  <bruno@clisp.org>
31209
31210         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
31211
31212 2006-10-16  Bruno Haible  <bruno@clisp.org>
31213
31214         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
31215         * lib/sigprocmask.h: Include <sys/types.h>.
31216         (sigset_t): Use the system's definition if present.
31217
31218 2006-10-17  Eric Blake  <ebb9@byu.net>
31219
31220         * lib/xvasprintf.c (includes): Assume config.h.
31221         * lib/xasprintf.c (includes): Likewise.
31222
31223 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
31224
31225         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
31226         at least as wide as intmax_t.
31227
31228 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
31229
31230         (Imported from Automake.)
31231         * build-aux/gnupload: Update to version 1.1 of directive file.
31232
31233 2006-10-16  Eric Blake  <ebb9@byu.net>
31234
31235         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
31236         match Automake 1.10a.
31237
31238 2006-10-14  Bruno Haible  <bruno@clisp.org>
31239
31240         * modules/sigprocmask: New file.
31241         * lib/sigprocmask.h: New file.
31242         * lib/sigprocmask.c: New file.
31243         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
31244         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
31245         request sigprocmask.o.
31246         (gl_PREREQ_SIGPROCMASK): New macro.
31247         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
31248         (Depends-on): Add sigprocmask.
31249         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
31250         gt_SIGNALBLOCKING. Test for 'raise' only once.
31251         * lib/fatal-signal.c: Include sigprocmask.h.
31252         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
31253         unblock_fatal_signals): Define always.
31254         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
31255         sigprocmask.
31256
31257 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
31258
31259         Sync from Automake.
31260         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
31261         which incorrectly sets the mode of an existing destination
31262         directory.  In some cases the unpatched install-sh could do the
31263         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
31264         system.  We hope this is rare in practice, but it's clearly worth
31265         fixing.  Problem reported by Alex Unleashed in
31266         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
31267         Also, don't bother to check for -m bugs unless we're using -m;
31268         suggested by Stepan Kasal.
31269
31270 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31271
31272         Sync from Automake.
31273         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
31274         `-c' flag, so they appear at the same position as in %FASTDEP%
31275         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
31276         which ignores unknown options only after the first non-option.
31277         Bug report against M4 by Nelson H. F. Beebe.
31278
31279 2006-10-13  Jim Meyering  <jim@meyering.net>
31280
31281         Fix a bug in yesterday's change.
31282         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
31283         p->fts_statp->st_dev would be used uninitialized.
31284         Ensures that we always call fts_stat on the very first entry.
31285         Miklos Szeredi reported that find -xdev stopped working.
31286
31287 2006-10-12  Bruno Haible  <bruno@clisp.org>
31288
31289         * gnulib-tool (func_get_automake_snippet): Append an automatically
31290         computed EXTRA_DIST augmentation.
31291         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
31292         * modules/alloca-opt (Makefile.am): Likewise.
31293         * modules/allocsa (Makefile.am): Likewise.
31294         * modules/arcfour (Makefile.am): Likewise.
31295         * modules/arctwo (Makefile.am): Likewise.
31296         * modules/argmatch (Makefile.am): Likewise.
31297         * modules/argz (Makefile.am): Likewise.
31298         * modules/atexit (Makefile.am): Likewise.
31299         * modules/backupfile (Makefile.am): Likewise.
31300         * modules/byteswap (Makefile.am): Likewise.
31301         * modules/c-strtod (Makefile.am): Likewise.
31302         * modules/c-strtold (Makefile.am): Likewise.
31303         * modules/calloc (Makefile.am): Likewise.
31304         * modules/canon-host (Makefile.am): Likewise.
31305         * modules/canonicalize (Makefile.am): Likewise.
31306         * modules/chdir-long (Makefile.am): Likewise.
31307         * modules/chdir-safer (Makefile.am): Likewise.
31308         * modules/check-version (Makefile.am): Likewise.
31309         * modules/chown (Makefile.am): Likewise.
31310         * modules/cloexec (Makefile.am): Likewise.
31311         * modules/close-stream (Makefile.am): Likewise.
31312         * modules/closeout (Makefile.am): Likewise.
31313         * modules/crc (Makefile.am): Likewise.
31314         * modules/csharpexec (Makefile.am): Likewise.
31315         * modules/cycle-check (Makefile.am): Likewise.
31316         * modules/des (Makefile.am): Likewise.
31317         * modules/dev-ino (Makefile.am): Likewise.
31318         * modules/dirfd (Makefile.am): Likewise.
31319         * modules/dirname (Makefile.am): Likewise.
31320         * modules/dup2 (Makefile.am): Likewise.
31321         * modules/eealloc (Makefile.am): Likewise.
31322         * modules/error (Makefile.am): Likewise.
31323         * modules/euidaccess (Makefile.am): Likewise.
31324         * modules/exclude (Makefile.am): Likewise.
31325         * modules/exitfail (Makefile.am): Likewise.
31326         * modules/fcntl-safer (Makefile.am): Likewise.
31327         * modules/fcntl (Makefile.am): Likewise.
31328         * modules/file-type (Makefile.am): Likewise.
31329         * modules/fileblocks (Makefile.am): Likewise.
31330         * modules/filemode (Makefile.am): Likewise.
31331         * modules/filenamecat (Makefile.am): Likewise.
31332         * modules/fnmatch (Makefile.am): Likewise.
31333         * modules/fopen-safer (Makefile.am): Likewise.
31334         * modules/fpending (Makefile.am): Likewise.
31335         * modules/fprintftime (Makefile.am): Likewise.
31336         * modules/free (Makefile.am): Likewise.
31337         * modules/fsusage (Makefile.am): Likewise.
31338         * modules/ftruncate (Makefile.am): Likewise.
31339         * modules/fts (Makefile.am): Likewise.
31340         * modules/gc-arcfour (Makefile.am): Likewise.
31341         * modules/gc-des (Makefile.am): Likewise.
31342         * modules/gc-hmac-md5 (Makefile.am): Likewise.
31343         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
31344         * modules/gc-md4 (Makefile.am): Likewise.
31345         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
31346         * modules/gc-sha1 (Makefile.am): Likewise.
31347         * modules/gc (Makefile.am): Likewise.
31348         * modules/getaddrinfo (Makefile.am): Likewise.
31349         * modules/getcwd (Makefile.am): Likewise.
31350         * modules/getdelim (Makefile.am): Likewise.
31351         * modules/getdomainname (Makefile.am): Likewise.
31352         * modules/getgroups (Makefile.am): Likewise.
31353         * modules/gethostname (Makefile.am): Likewise.
31354         * modules/gethrxtime (Makefile.am): Likewise.
31355         * modules/getline (Makefile.am): Likewise.
31356         * modules/getloadavg (Makefile.am): Likewise.
31357         * modules/getlogin_r (Makefile.am): Likewise.
31358         * modules/getndelim2 (Makefile.am): Likewise.
31359         * modules/getopt (Makefile.am): Likewise.
31360         * modules/getpagesize (Makefile.am): Likewise.
31361         * modules/getpass-gnu (Makefile.am): Likewise.
31362         * modules/getpass (Makefile.am): Likewise.
31363         * modules/getsubopt (Makefile.am): Likewise.
31364         * modules/gettime (Makefile.am): Likewise.
31365         * modules/gettimeofday (Makefile.am): Likewise.
31366         * modules/getugroups (Makefile.am): Likewise.
31367         * modules/getusershell (Makefile.am): Likewise.
31368         * modules/glob (Makefile.am): Likewise.
31369         * modules/group-member (Makefile.am): Likewise.
31370         * modules/hard-locale (Makefile.am): Likewise.
31371         * modules/hash (Makefile.am): Likewise.
31372         * modules/hmac-md5 (Makefile.am): Likewise.
31373         * modules/hmac-sha1 (Makefile.am): Likewise.
31374         * modules/human (Makefile.am): Likewise.
31375         * modules/idcache (Makefile.am): Likewise.
31376         * modules/imaxabs (Makefile.am): Likewise.
31377         * modules/imaxdiv (Makefile.am): Likewise.
31378         * modules/inet_ntop (Makefile.am): Likewise.
31379         * modules/inet_pton (Makefile.am): Likewise.
31380         * modules/intprops (Makefile.am): Likewise.
31381         * modules/inttostr (Makefile.am): Likewise.
31382         * modules/inttypes (Makefile.am): Likewise.
31383         * modules/isapipe (Makefile.am): Likewise.
31384         * modules/javaversion (Makefile.am): Likewise.
31385         * modules/lchmod (Makefile.am): Likewise.
31386         * modules/lchown (Makefile.am): Likewise.
31387         * modules/localcharset (Makefile.am): Likewise.
31388         * modules/long-options (Makefile.am): Likewise.
31389         * modules/lstat (Makefile.am): Likewise.
31390         * modules/malloc (Makefile.am): Likewise.
31391         * modules/mathl (Makefile.am): Likewise.
31392         * modules/mbchar (Makefile.am): Likewise.
31393         * modules/md2 (Makefile.am): Likewise.
31394         * modules/md4 (Makefile.am): Likewise.
31395         * modules/md5 (Makefile.am): Likewise.
31396         * modules/memcasecmp (Makefile.am): Likewise.
31397         * modules/memchr (Makefile.am): Likewise.
31398         * modules/memcmp (Makefile.am): Likewise.
31399         * modules/memcoll (Makefile.am): Likewise.
31400         * modules/memcpy (Makefile.am): Likewise.
31401         * modules/memmem (Makefile.am): Likewise.
31402         * modules/memmove (Makefile.am): Likewise.
31403         * modules/mempcpy (Makefile.am): Likewise.
31404         * modules/memrchr (Makefile.am): Likewise.
31405         * modules/memset (Makefile.am): Likewise.
31406         * modules/memxor (Makefile.am): Likewise.
31407         * modules/mkancesdirs (Makefile.am): Likewise.
31408         * modules/mkdir-p (Makefile.am): Likewise.
31409         * modules/mkdir (Makefile.am): Likewise.
31410         * modules/mkdtemp (Makefile.am): Likewise.
31411         * modules/mkstemp (Makefile.am): Likewise.
31412         * modules/mktime (Makefile.am): Likewise.
31413         * modules/modechange (Makefile.am): Likewise.
31414         * modules/mountlist (Makefile.am): Likewise.
31415         * modules/nanosleep (Makefile.am): Likewise.
31416         * modules/obstack (Makefile.am): Likewise.
31417         * modules/openat (Makefile.am): Likewise.
31418         * modules/pagealign_alloc (Makefile.am): Likewise.
31419         * modules/pathmax (Makefile.am): Likewise.
31420         * modules/physmem (Makefile.am): Likewise.
31421         * modules/poll (Makefile.am): Likewise.
31422         * modules/posixtm (Makefile.am): Likewise.
31423         * modules/posixver (Makefile.am): Likewise.
31424         * modules/putenv (Makefile.am): Likewise.
31425         * modules/quote (Makefile.am): Likewise.
31426         * modules/quotearg (Makefile.am): Likewise.
31427         * modules/raise (Makefile.am): Likewise.
31428         * modules/read-file (Makefile.am): Likewise.
31429         * modules/readline (Makefile.am): Likewise.
31430         * modules/readlink (Makefile.am): Likewise.
31431         * modules/readtokens (Makefile.am): Likewise.
31432         * modules/readutmp (Makefile.am): Likewise.
31433         * modules/realloc (Makefile.am): Likewise.
31434         * modules/regex (Makefile.am): Likewise.
31435         * modules/rename-dest-slash (Makefile.am): Likewise.
31436         * modules/rename (Makefile.am): Likewise.
31437         * modules/rijndael (Makefile.am): Likewise.
31438         * modules/rmdir (Makefile.am): Likewise.
31439         * modules/rpmatch (Makefile.am): Likewise.
31440         * modules/safe-read (Makefile.am): Likewise.
31441         * modules/safe-write (Makefile.am): Likewise.
31442         * modules/same-inode (Makefile.am): Likewise.
31443         * modules/same (Makefile.am): Likewise.
31444         * modules/save-cwd (Makefile.am): Likewise.
31445         * modules/savedir (Makefile.am): Likewise.
31446         * modules/setenv (Makefile.am): Likewise.
31447         * modules/settime (Makefile.am): Likewise.
31448         * modules/sha1 (Makefile.am): Likewise.
31449         * modules/sig2str (Makefile.am): Likewise.
31450         * modules/snprintf (Makefile.am): Likewise.
31451         * modules/stat-macros (Makefile.am): Likewise.
31452         * modules/stat-time (Makefile.am): Likewise.
31453         * modules/stdbool (Makefile.am): Likewise.
31454         * modules/stdint (Makefile.am): Likewise.
31455         * modules/stdlib-safer (Makefile.am): Likewise.
31456         * modules/stpcpy (Makefile.am): Likewise.
31457         * modules/stpncpy (Makefile.am): Likewise.
31458         * modules/strcase (Makefile.am): Likewise.
31459         * modules/strcasestr (Makefile.am): Likewise.
31460         * modules/strchrnul (Makefile.am): Likewise.
31461         * modules/strcspn (Makefile.am): Likewise.
31462         * modules/strdup (Makefile.am): Likewise.
31463         * modules/strerror (Makefile.am): Likewise.
31464         * modules/strftime (Makefile.am): Likewise.
31465         * modules/strndup (Makefile.am): Likewise.
31466         * modules/strnlen (Makefile.am): Likewise.
31467         * modules/strpbrk (Makefile.am): Likewise.
31468         * modules/strsep (Makefile.am): Likewise.
31469         * modules/strstr (Makefile.am): Likewise.
31470         * modules/strtod (Makefile.am): Likewise.
31471         * modules/strtoimax (Makefile.am): Likewise.
31472         * modules/strtok_r (Makefile.am): Likewise.
31473         * modules/strtol (Makefile.am): Likewise.
31474         * modules/strtoll (Makefile.am): Likewise.
31475         * modules/strtoul (Makefile.am): Likewise.
31476         * modules/strtoull (Makefile.am): Likewise.
31477         * modules/strtoumax (Makefile.am): Likewise.
31478         * modules/strverscmp (Makefile.am): Likewise.
31479         * modules/sys_socket (Makefile.am): Likewise.
31480         * modules/sys_stat (Makefile.am): Likewise.
31481         * modules/sysexits (Makefile.am): Likewise.
31482         * modules/time_r (Makefile.am): Likewise.
31483         * modules/timegm (Makefile.am): Likewise.
31484         * modules/timespec (Makefile.am): Likewise.
31485         * modules/tmpfile-safer (Makefile.am): Likewise.
31486         * modules/trim (Makefile.am): Likewise.
31487         * modules/unistd-safer (Makefile.am): Likewise.
31488         * modules/unlinkdir (Makefile.am): Likewise.
31489         * modules/unlocked-io (Makefile.am): Likewise.
31490         * modules/userspec (Makefile.am): Likewise.
31491         * modules/utime (Makefile.am): Likewise.
31492         * modules/utimecmp (Makefile.am): Likewise.
31493         * modules/utimens (Makefile.am): Likewise.
31494         * modules/vasnprintf (Makefile.am): Likewise.
31495         * modules/vasprintf (Makefile.am): Likewise.
31496         * modules/vsnprintf (Makefile.am): Likewise.
31497         * modules/xalloc (Makefile.am): Likewise.
31498         * modules/xgetcwd (Makefile.am): Likewise.
31499         * modules/xnanosleep (Makefile.am): Likewise.
31500         * modules/xreadlink (Makefile.am): Likewise.
31501         * modules/xstrtod (Makefile.am): Likewise.
31502         * modules/xstrtol (Makefile.am): Likewise.
31503         * modules/xstrtold (Makefile.am): Likewise.
31504         * modules/yesno (Makefile.am): Likewise.
31505         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
31506
31507 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
31508
31509         * modules/error (Makefile.am): Distribute files through
31510         EXTRA_DIST, not lib_SOURCES.
31511
31512 2006-10-12  Eric Blake  <ebb9@byu.net>
31513
31514         * modules/error (Makefile.am): Distribute files in /lib.
31515         * modules/obstack (Makefile.am): Likewise.
31516
31517 2006-10-12  Bruno Haible  <bruno@clisp.org>
31518
31519         * modules/acl (Makefile.am): Distribute all files in lib/ through
31520         EXTRA_DIST.
31521         * modules/arcfour (Makefile.am): Likewise.
31522         * modules/arctwo (Makefile.am): Likewise.
31523         * modules/argmatch (Makefile.am): Likewise.
31524         * modules/argz (Makefile.am): Likewise.
31525         * modules/atexit (Makefile.am): Likewise.
31526         * modules/backupfile (Makefile.am): Likewise.
31527         * modules/c-strtod (Makefile.am): Likewise.
31528         * modules/c-strtold (Makefile.am): Likewise.
31529         * modules/calloc (Makefile.am): Likewise.
31530         * modules/canon-host (Makefile.am): Likewise.
31531         * modules/canonicalize (Makefile.am): Likewise.
31532         * modules/chdir-long (Makefile.am): Likewise.
31533         * modules/chdir-safer (Makefile.am): Likewise.
31534         * modules/check-version (Makefile.am): Likewise.
31535         * modules/chown (Makefile.am): Likewise.
31536         * modules/cloexec (Makefile.am): Likewise.
31537         * modules/close-stream (Makefile.am): Likewise.
31538         * modules/closeout (Makefile.am): Likewise.
31539         * modules/crc (Makefile.am): Likewise.
31540         * modules/cycle-check (Makefile.am): Likewise.
31541         * modules/des (Makefile.am): Likewise.
31542         * modules/dirfd (Makefile.am): Likewise.
31543         * modules/dirname (Makefile.am): Likewise.
31544         * modules/dup2 (Makefile.am): Likewise.
31545         * modules/euidaccess (Makefile.am): Likewise.
31546         * modules/exclude (Makefile.am): Likewise.
31547         * modules/exitfail (Makefile.am): Likewise.
31548         * modules/fcntl-safer (Makefile.am): Likewise.
31549         * modules/file-type (Makefile.am): Likewise.
31550         * modules/fileblocks (Makefile.am): Likewise.
31551         * modules/filemode (Makefile.am): Likewise.
31552         * modules/filenamecat (Makefile.am): Likewise.
31553         * modules/fnmatch (Makefile.am): Likewise.
31554         * modules/fopen-safer (Makefile.am): Likewise.
31555         * modules/fpending (Makefile.am): Likewise.
31556         * modules/fprintftime (Makefile.am): Likewise.
31557         * modules/free (Makefile.am): Likewise.
31558         * modules/fsusage (Makefile.am): Likewise.
31559         * modules/ftruncate (Makefile.am): Likewise.
31560         * modules/fts (Makefile.am): Likewise.
31561         * modules/gc (Makefile.am): Likewise.
31562         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
31563         * modules/getaddrinfo (Makefile.am): Likewise.
31564         * modules/getcwd (Makefile.am): Likewise.
31565         * modules/getdelim (Makefile.am): Likewise.
31566         * modules/getdomainname (Makefile.am): Likewise.
31567         * modules/getgroups (Makefile.am): Likewise.
31568         * modules/gethostname (Makefile.am): Likewise.
31569         * modules/gethrxtime (Makefile.am): Likewise.
31570         * modules/getline (Makefile.am): Likewise.
31571         * modules/getloadavg (Makefile.am): Likewise.
31572         * modules/getlogin_r (Makefile.am): Likewise.
31573         * modules/getopt (Makefile.am): Likewise.
31574         * modules/getpass (Makefile.am): Likewise.
31575         * modules/getpass-gnu (Makefile.am): Likewise.
31576         * modules/getsubopt (Makefile.am): Likewise.
31577         * modules/gettime (Makefile.am): Likewise.
31578         * modules/gettimeofday (Makefile.am): Likewise.
31579         * modules/getugroups (Makefile.am): Likewise.
31580         * modules/getusershell (Makefile.am): Likewise.
31581         * modules/glob (Makefile.am): Likewise.
31582         * modules/group-member (Makefile.am): Likewise.
31583         * modules/hard-locale (Makefile.am): Likewise.
31584         * modules/hash (Makefile.am): Likewise.
31585         * modules/hmac-md5 (Makefile.am): Likewise.
31586         * modules/hmac-sha1 (Makefile.am): Likewise.
31587         * modules/human (Makefile.am): Likewise.
31588         * modules/idcache (Makefile.am): Likewise.
31589         * modules/imaxabs (Makefile.am): Likewise.
31590         * modules/imaxdiv (Makefile.am): Likewise.
31591         * modules/inet_ntop (Makefile.am): Likewise.
31592         * modules/inet_pton (Makefile.am): Likewise.
31593         * modules/inttostr (Makefile.am): Likewise.
31594         * modules/isapipe (Makefile.am): Likewise.
31595         * modules/lchown (Makefile.am): Likewise.
31596         * modules/long-options (Makefile.am): Likewise.
31597         * modules/lstat (Makefile.am): Likewise.
31598         * modules/malloc (Makefile.am): Likewise.
31599         * modules/mathl (Makefile.am): Likewise.
31600         * modules/mbchar (Makefile.am): Likewise.
31601         * modules/md2 (Makefile.am): Likewise.
31602         * modules/md4 (Makefile.am): Likewise.
31603         * modules/md5 (Makefile.am): Likewise.
31604         * modules/memcasecmp (Makefile.am): Likewise.
31605         * modules/memchr (Makefile.am): Likewise.
31606         * modules/memcmp (Makefile.am): Likewise.
31607         * modules/memcoll (Makefile.am): Likewise.
31608         * modules/memcpy (Makefile.am): Likewise.
31609         * modules/memmem (Makefile.am): Likewise.
31610         * modules/memmove (Makefile.am): Likewise.
31611         * modules/mempcpy (Makefile.am): Likewise.
31612         * modules/memrchr (Makefile.am): Likewise.
31613         * modules/memset (Makefile.am): Likewise.
31614         * modules/memxor (Makefile.am): Likewise.
31615         * modules/mkancesdirs (Makefile.am): Likewise.
31616         * modules/mkdir (Makefile.am): Likewise.
31617         * modules/mkdir-p (Makefile.am): Likewise.
31618         * modules/mkdtemp (Makefile.am): Likewise.
31619         * modules/mkstemp (Makefile.am): Likewise.
31620         * modules/mktime (Makefile.am): Likewise.
31621         * modules/modechange (Makefile.am): Likewise.
31622         * modules/mountlist (Makefile.am): Likewise.
31623         * modules/nanosleep (Makefile.am): Likewise.
31624         * modules/openat (Makefile.am): Likewise.
31625         * modules/pagealign_alloc (Makefile.am): Likewise.
31626         * modules/physmem (Makefile.am): Likewise.
31627         * modules/poll (Makefile.am): Likewise.
31628         * modules/posixtm (Makefile.am): Likewise.
31629         * modules/posixver (Makefile.am): Likewise.
31630         * modules/putenv (Makefile.am): Likewise.
31631         * modules/quote (Makefile.am): Likewise.
31632         * modules/quotearg (Makefile.am): Likewise.
31633         * modules/raise (Makefile.am): Likewise.
31634         * modules/read-file (Makefile.am): Likewise.
31635         * modules/readline (Makefile.am): Likewise.
31636         * modules/readlink (Makefile.am): Likewise.
31637         * modules/readtokens (Makefile.am): Likewise.
31638         * modules/readutmp (Makefile.am): Likewise.
31639         * modules/realloc (Makefile.am): Likewise.
31640         * modules/regex (Makefile.am): Likewise.
31641         * modules/rename (Makefile.am): Likewise.
31642         * modules/rename-dest-slash (Makefile.am): Likewise.
31643         * modules/rijndael (Makefile.am): Likewise.
31644         * modules/rmdir (Makefile.am): Likewise.
31645         * modules/rpmatch (Makefile.am): Likewise.
31646         * modules/safe-read (Makefile.am): Likewise.
31647         * modules/safe-write (Makefile.am): Likewise.
31648         * modules/same (Makefile.am): Likewise.
31649         * modules/save-cwd (Makefile.am): Likewise.
31650         * modules/savedir (Makefile.am): Likewise.
31651         * modules/setenv (Makefile.am): Likewise.
31652         * modules/settime (Makefile.am): Likewise.
31653         * modules/sha1 (Makefile.am): Likewise.
31654         * modules/sig2str (Makefile.am): Likewise.
31655         * modules/snprintf (Makefile.am): Likewise.
31656         * modules/stdlib-safer (Makefile.am): Likewise.
31657         * modules/stpcpy (Makefile.am): Likewise.
31658         * modules/stpncpy (Makefile.am): Likewise.
31659         * modules/strcase (Makefile.am): Likewise.
31660         * modules/strcasestr (Makefile.am): Likewise.
31661         * modules/strchrnul (Makefile.am): Likewise.
31662         * modules/strcspn (Makefile.am): Likewise.
31663         * modules/strdup (Makefile.am): Likewise.
31664         * modules/strerror (Makefile.am): Likewise.
31665         * modules/strftime (Makefile.am): Likewise.
31666         * modules/strndup (Makefile.am): Likewise.
31667         * modules/strnlen (Makefile.am): Likewise.
31668         * modules/strpbrk (Makefile.am): Likewise.
31669         * modules/strsep (Makefile.am): Likewise.
31670         * modules/strstr (Makefile.am): Likewise.
31671         * modules/strtod (Makefile.am): Likewise.
31672         * modules/strtoimax (Makefile.am): Likewise.
31673         * modules/strtok_r (Makefile.am): Likewise.
31674         * modules/strtol (Makefile.am): Likewise.
31675         * modules/strtoll (Makefile.am): Likewise.
31676         * modules/strtoul (Makefile.am): Likewise.
31677         * modules/strtoull (Makefile.am): Likewise.
31678         * modules/strtoumax (Makefile.am): Likewise.
31679         * modules/strverscmp (Makefile.am): Likewise.
31680         * modules/time_r (Makefile.am): Likewise.
31681         * modules/timegm (Makefile.am): Likewise.
31682         * modules/tmpfile-safer (Makefile.am): Likewise.
31683         * modules/unistd-safer (Makefile.am): Likewise.
31684         * modules/unlinkdir (Makefile.am): Likewise.
31685         * modules/userspec (Makefile.am): Likewise.
31686         * modules/utime (Makefile.am): Likewise.
31687         * modules/utimecmp (Makefile.am): Likewise.
31688         * modules/utimens (Makefile.am): Likewise.
31689         * modules/vasnprintf (Makefile.am): Likewise.
31690         * modules/vasprintf (Makefile.am): Likewise.
31691         * modules/vsnprintf (Makefile.am): Likewise.
31692         * modules/xalloc (Makefile.am): Likewise.
31693         * modules/xgetcwd (Makefile.am): Likewise.
31694         * modules/xnanosleep (Makefile.am): Likewise.
31695         * modules/xreadlink (Makefile.am): Likewise.
31696         * modules/xstrtod (Makefile.am): Likewise.
31697         * modules/xstrtol (Makefile.am): Likewise.
31698         * modules/xstrtold (Makefile.am): Likewise.
31699         * modules/yesno (Makefile.am): Likewise.
31700
31701 2006-10-12  Jim Meyering  <jim@meyering.net>
31702
31703         * m4/getloadavg.m4: Revert the change below.
31704
31705         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
31706         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
31707         fail with a symlink, which is what coreutils' ./bootstrap now
31708         creates by default.
31709
31710 2006-10-12  Bruno Haible  <bruno@clisp.org>
31711
31712         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
31713         mingw.
31714         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
31715         MSVC and mingw explicitly.
31716
31717 2006-10-11  Simon Josefsson  <jas@extundo.com>
31718             Bruno Haible  <bruno@clisp.org>
31719
31720         Add support for multiple gnulib-tool invocations in the scope of a
31721         single configure.ac file.
31722         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
31723         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
31724         with the same contents as the _LIBADD variable.
31725         (func_emit_initmacro_start, func_emit_initmacro_end,
31726         func_emit_initmacro_done): New functions.
31727         (func_import, func_create_testdir): Invoke them. Allow the identifiers
31728         gl_LIBOBJS and gl_LTLIBOBJS.
31729
31730 2006-10-11  Bruno Haible  <bruno@clisp.org>
31731
31732         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
31733         (func_create_testdir): Don't create po/Makefile.am, don't invoke
31734         autoreconf. Instead, invoke autopoint explicitly but move back the
31735         *.m4 files from gnulib.
31736
31737 2006-10-11  Bruno Haible  <bruno@clisp.org>
31738
31739         * gnulib-tool (func_usage): Make module names after --create-testdir
31740         optional.
31741         (func_create_testdir): If no module was specified, use nearly all
31742         modules.
31743
31744 2006-10-12  Jim Meyering  <jim@meyering.net>
31745
31746         Big performance improvement for fts-based tools that use FTS_NOSTAT.
31747         Avoid spurious inode-mismatch problems on non-POSIX file systems.
31748         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
31749         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
31750         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
31751         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
31752         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
31753         (fts_set_stat_required): New function.
31754         (fts_open): Defer the calls to fts_stat, if possible or requested.
31755         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
31756         into fts_stat itself.
31757         (fts_read): Perform any required (deferred) fts_stat call.
31758         (fts_build): Likewise, for the directory we're about to open and read.
31759         In the readdir loop, carefully decide whether each entry will require
31760         an eventual call to fts_stat, using dirent.d_type info if available.
31761         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
31762         a command line argument into this function.  Update all callers.
31763         Map a return value of FTS_DOT to FTS_D for a command line argument.
31764         * modules/fts (Depends-on): Add d-type.  Alphabetize.
31765         Thanks to Miklos Szeredi for his tenacity and for the initial
31766         bug report about "find" failing on a FUSE-based file system.
31767
31768         * lib/fts.c (fts_open): Use consistent indentation.
31769
31770 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
31771
31772         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
31773         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
31774         reported by Jim Meyering.  All uses of cache variables renamed
31775         to match Autoconf's.
31776         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
31777         the other one.
31778
31779         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
31780         Fix misspelling in diagnostic.
31781
31782 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
31783
31784         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
31785         defined.  Problem reported by Matthew Woehlke.
31786
31787         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
31788         Add support for Tandem NonStop R series.
31789         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
31790         Use new macro.
31791
31792         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
31793         (has_trailing_slash): Omit size arg; all callers changed.
31794         Omit 'inline', since it doesn't help performance and we'd
31795         need to configure it.
31796         Don't count //, ///, etc. as having a trailing slash.
31797         As a side effect, this removes a C99ism reported by Matthew Woehlke.
31798         (rpl_rename_dest_slash): On failure, use rename's errno rather
31799         than (in some cases) an incorrect or junk errno.
31800         Simplify code by removing need to compute length; this does
31801         cause it to make two passes instead of one over the file name,
31802         but it's worth it.
31803
31804         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
31805         change, since Autoconf's version may no longer be appropriate now
31806         that we are using CVS Autoconf's version.  Add support for Tandem.
31807
31808 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
31809             Bruno Haible  <bruno@clisp.org>
31810
31811         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
31812         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
31813         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
31814         gl_AC_TYPE_LONG_LONG.
31815
31816         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
31817         instead of HAVE_LONG_LONG.
31818         * lib/printf-args.c (printf_fetchargs): Likewise.
31819         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
31820         * lib/vasnprintf.c (VASNPRINTF): Likewise.
31821         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
31822         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
31823         gl_AC_TYPE_LONG_LONG.
31824
31825 2006-10-11  Bruno Haible  <bruno@clisp.org>
31826
31827         * m4/longlong.m4: Add comments.
31828         * m4/ulonglong.m4: Likewise.
31829
31830 2006-10-10  Bruno Haible  <bruno@clisp.org>
31831
31832         Make it possible to #define stpcpy, strdup to aliases.
31833         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
31834         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
31835
31836 2006-10-10  Bruno Haible  <bruno@clisp.org>
31837
31838         Make it possible to #define gcd to an alias.
31839         * lib/gcd.c: Include config.h.
31840
31841 2006-10-10  Bruno Haible  <bruno@clisp.org>
31842
31843         Make it possible to #define c_isascii to an alias.
31844         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
31845         defined. Undefine the macros before defining them, to avoid gcc
31846         warnings.
31847         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
31848         define NO_C_CTYPE_MACROS early.
31849
31850 2006-10-10  Bruno Haible  <bruno@clisp.org>
31851
31852         Make it possible to #define set_program_name to an alias.
31853         * lib/progname.c: Don't undefine set_program_name; instead, undefine
31854         ENABLE_RELOCATABLE early.
31855
31856 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
31857
31858         Port to Tandem NSK OSS, which has 64-bit signed int but at most
31859         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
31860         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
31861         More generally, don't assume that 64-bit signed int is available
31862         if unsigned int is, and vice versa.
31863         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
31864         unsigned symbols, not on their signed counterparts.
31865         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
31866         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
31867         (UINT64_C, UINTMAX_C):
31868         Likewise.
31869         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
31870         unsigned counterparts.
31871         (Have_long_long, Unsigned): New macros.
31872         (Int): Renamed from INT.
31873         (strtoimax): Use the new macros.
31874         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
31875         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
31876         * modules/inttypes (inttypes.h): Substitute
31877         HAVE_UNSIGNED_LONG_LONG_INT.
31878         * modules/stdint (stdint.h): Likewise.
31879         (Files): Add m4/ulonglong.m4.
31880
31881 2006-10-10  Bruno Haible  <bruno@clisp.org>
31882
31883         Fix a gcc -Wshadow warning.
31884         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
31885         to 'bucket'.
31886         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
31887         gl_linked_indexof_from_to): Likewise.
31888         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
31889         Likewise.
31890         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
31891         Likewise.
31892         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
31893         Reported by Eric Blake.
31894
31895 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
31896
31897         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
31898         for NetBSD.  Problem reported by Bruno Haible.
31899
31900 2006-10-09  Jim Meyering  <jim@meyering.net>
31901
31902         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
31903         Patch from Bruno Haible.
31904
31905 2006-10-09  Jim Meyering  <jim@meyering.net>
31906
31907         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
31908         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
31909         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
31910
31911 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
31912
31913         Don't include <config.h> twice; this doesn't work in some cases,
31914         e.g., when config.h has "#define intmax_t long long int" and
31915         we include <config.h>, <inttypes.h>, <config.h> in that order.
31916         Problem reported by Matthew Woehlke in:
31917         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
31918         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
31919         * lib/fts-cycle.c: Don't include config.h.
31920         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
31921         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
31922         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
31923         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
31924         inttypes.h.
31925         * lib/xstrtoumax.c: Likewise.
31926         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
31927         __strtol and the like, so that this module is more like its siblings.
31928         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
31929         Remove; no longer needed now that we assume gnulib inttypes.h.
31930
31931 2006-10-08  Bruno Haible  <bruno@clisp.org>
31932
31933         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
31934         option.
31935
31936 2006-10-07  Jim Meyering  <jim@meyering.net>
31937
31938         * modules/inttypes (inttypes.h): Revert what seems to have been
31939         an inadvertent part of today's change: use "|", not "/" in the
31940         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
31941
31942 2006-10-07  Bruno Haible  <bruno@clisp.org>
31943
31944         * modules/sublist: New file.
31945
31946 2006-10-07  Bruno Haible  <bruno@clisp.org>
31947
31948         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
31949         * modules/argz (argz.h): Likewise.
31950         * modules/arpa_inet (arpa/inet.h): Likewise.
31951         * modules/byteswap (byteswap.h): Likewise.
31952         * modules/configmake (configmake.h): Likewise.
31953         * modules/fcntl (fcntl.h): Likewise.
31954         * modules/fnmatch (fnmatch.h): Likewise.
31955         * modules/getopt (getopt.h): Likewise.
31956         * modules/glob (glob.h): Likewise.
31957         * modules/inttypes (inttypes.h): Likewise.
31958         * modules/netinet_in (netinet/in.h): Likewise.
31959         * modules/poll (poll.h): Likewise.
31960         * modules/stdbool (stdbool.h): Likewise.
31961         * modules/stdint (stdint.h): Likewise.
31962         * modules/sys_select (sys/select.h): Likewise.
31963         * modules/sys_socket (sys/socket.h): Likewise.
31964         * modules/sys_stat (sys/stat.h): Likewise.
31965         * modules/sysexits (sysexits.h): Likewise.
31966         * modules/unistd (unistd.h): Likewise.
31967         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
31968         Add a "DO NOT EDIT" comment to the generated file.
31969         (func_import): Likewise for gnulib-comp.m4.
31970
31971 2006-10-07  Bruno Haible  <bruno@clisp.org>
31972
31973         * lib/gl_sublist.h: New file.
31974         * lib/gl_sublist.c: New file.
31975
31976 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
31977
31978         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
31979         name (relative to the original working directory) and the file
31980         name component (relative to the temporary working directory).  All
31981         callers changed.
31982         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
31983         * lib/mkdir-p.c (make_dir_parents): Likewise.
31984         * lib/mkdir-p.h (make_dir_parents): Likewise.
31985
31986 2006-10-06  Eric Blake  <ebb9@byu.net>
31987
31988         Define several macros for use by the clean-temp module.
31989         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
31990         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
31991         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
31992
31993         * lib/clean-temp.h (close_stream_temp): New declaration.
31994         * lib/clean-temp.c (includes): Pull in headers according to what
31995         other modules are in use.
31996         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
31997
31998 2006-10-06  Bruno Haible  <bruno@clisp.org>
31999
32000         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
32001         instead of fopen, fwriteerror.
32002
32003 2006-10-06  Bruno Haible  <bruno@clisp.org>
32004
32005         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
32006         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
32007         int.
32008         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
32009         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
32010         Return an error indicator.
32011         Suggested by Eric Blake.
32012
32013 2006-10-06  Bruno Haible  <bruno@clisp.org>
32014
32015         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
32016         Reported by Eric Blake.
32017
32018 2006-10-06  Bruno Haible  <bruno@clisp.org>
32019
32020         * modules/closeout (Description): Mention stderr too.
32021
32022 2006-10-06  Bruno Haible  <bruno@clisp.org>
32023         and Paul Eggert  <eggert@cs.ucla.edu>
32024
32025         * lib/closeout.c (close_stdout): Also close stderr.
32026         * lib/closeout.h: Update comment.
32027
32028 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
32029
32030         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
32031         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
32032         * lib/dirchownmod.c: Include lchown.h.
32033         * lib/lchown.c: Don't include files that lchown.h now includes.
32034         Don't declare chown, since lchown.h now does that.
32035         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
32036         (lchown): Define to rpl_chown if lchown is declared but
32037         does not exist.  Declare using a prototype if lchown is not
32038         declared.  Add a copyright notice.
32039         * lib/mkstemp.h: Include <unistd.h>.
32040         * lib/openat.c: Include lchown.h.
32041
32042         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
32043         we now test for that separately.
32044         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
32045         rather than O_NOFOLLOW, when testing whether it's possible to
32046         avoid a race condition reliably.
32047         * lib/savewd.c (savewd_chdir): Likewise.
32048
32049         Remove macros that are no longer needed now that stdint.h is
32050         reliable.
32051         * lib/fsusage.c (UINTMAX_MAX): Remove.
32052         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
32053         * lib/utimecmp.c (SIZE_MAX): Remove.
32054
32055         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
32056
32057         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
32058         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
32059         O_NOATIME works.
32060
32061 2006-10-05  Bruno Haible  <bruno@clisp.org>
32062
32063         * lib/gl_list.h (gl_sortedlist_search_from_to,
32064         gl_sortedlist_indexof_from_to): New declarations.
32065         (gl_list_implementation): New fields sortedlist_search_from_to,
32066         sortedlist_indexof_from_to.
32067         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
32068         inline functions.
32069         * lib/gl_list.c (gl_sortedlist_search_from_to,
32070         gl_sortedlist_indexof_from_to): New functions.
32071         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
32072         function.
32073         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
32074         (gl_array_sortedlist_search_from_to): New function.
32075         (gl_array_list_implementation): Update.
32076         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
32077         function.
32078         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
32079         (gl_carray_sortedlist_search_from_to): New function.
32080         (gl_carray_list_implementation): Update.
32081         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
32082         gl_linked_sortedlist_indexof_from_to): New functions.
32083         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
32084         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
32085         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
32086         gl_tree_sortedlist_indexof_from_to): New functions.
32087         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
32088         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
32089         Update.
32090         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
32091         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
32092         Update.
32093
32094 2006-10-05  Bruno Haible  <bruno@clisp.org>
32095
32096         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
32097         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
32098         (struct gl_list_implementation): Add fields search_from_to,
32099         indexof_from_to. Remove fields search, indexof.
32100         (gl_list_search): Use the search_from_to method.
32101         (gl_list_search_from, gl_list_search_from_to): New functions.
32102         (gl_list_indexof): Use the indexof_from_to method.
32103         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
32104         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
32105         (gl_list_search_from, gl_list_search_from_to): New functions.
32106         (gl_list_indexof): Use the indexof_from_to method.
32107         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
32108         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
32109         gl_array_indexof. Add start_index, end_index arguments.
32110         (gl_array_search_from_to): Renamed from gl_array_search. Add
32111         start_index, end_index arguments.
32112         (gl_array_remove, gl_array_list_implementation): Update.
32113         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
32114         gl_carray_indexof. Add start_index, end_index arguments.
32115         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
32116         start_index, end_index arguments.
32117         (gl_carray_remove, gl_carray_list_implementation): Update.
32118         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
32119         gl_linked_search. Add start_index, end_index arguments.
32120         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
32121         start_index, end_index arguments.
32122         (gl_linked_remove): Update.
32123         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
32124         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
32125         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
32126         field to 'size_t'.
32127         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
32128         gl_tree_search. Add start_index, end_index arguments.
32129         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
32130         start_index, end_index arguments.
32131         (gl_tree_remove): Update.
32132         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
32133         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
32134         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
32135         function.
32136         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
32137         gl_tree_search. Add start_index, end_index arguments.
32138         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
32139         start_index, end_index arguments.
32140         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
32141         Update.
32142         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
32143
32144 2006-10-05  Bruno Haible  <bruno@clisp.org>
32145
32146         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
32147
32148         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
32149         fwriteerror_temp): New declarations.
32150         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
32151         (descriptors): New variable.
32152         (cleanup): First, close the descriptors.
32153         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
32154         fclose_temp, fwriteerror_temp): New functions.
32155
32156 2006-10-04  Jim Meyering  <jim@meyering.net>
32157
32158         * lib/fts.c (fts_open): Tiny comment change.
32159
32160 2006-10-04  Bruno Haible  <bruno@clisp.org>
32161
32162         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
32163         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
32164         gl_LOCK_BODY.
32165         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
32166         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
32167         gl_LOCK_EARLY_BODY.
32168         (gl_LOCK): Require gl_LOCK_BODY.
32169
32170 2006-10-04  Bruno Haible  <bruno@clisp.org>
32171
32172         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
32173         (gl_oset_search_atleast): New declaration.
32174         (struct gl_oset_implementation): Add field 'search_atleast'.
32175         (gl_oset_search_atleast): New inline function.
32176         * lib/gl_oset.c (gl_oset_search_atleast): New function.
32177         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
32178         (gl_array_oset_implementation): Update.
32179         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
32180         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
32181         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
32182
32183 2006-10-04  Bruno Haible  <bruno@clisp.org>
32184
32185         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
32186
32187 2006-10-03  Bruno Haible  <bruno@clisp.org>
32188
32189         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
32190         from gl_avltreehash_list_implementation.
32191
32192 2006-10-03  Bruno Haible  <bruno@clisp.org>
32193
32194         * lib/gl_oset.c (gl_oset_add): Fix return type.
32195
32196 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
32197
32198         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
32199
32200 2006-10-02  Eric Blake  <ebb9@byu.net>
32201
32202         * modules/strnlen (Depends-on): Add extensions.
32203
32204 2006-10-02  Eric Blake  <ebb9@byu.net>
32205
32206         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
32207         definition in 2.60+.
32208
32209 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
32210
32211         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
32212         checks.
32213
32214 2006-10-02  Bruno Haible  <bruno@clisp.org>
32215
32216         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
32217         to the AUTOMAKE_OPTIONS.
32218         Reported by Jim Meyering.
32219
32220 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
32221
32222         Work around bug in Solaris 10 /proc file system:
32223         /proc/self/fd/NNN/.. isn't the parent directory of
32224         the directory whose file descriptor is NNN.  This needs to
32225         be worked around at run time, not compile time, since a
32226         program might be built on Solaris 8, where things work, and
32227         run on Solaris 10.
32228         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
32229         to use the following interface instead:
32230         (OPENAT_BUFFER_SIZE): New macro.
32231         (openat_proc_name): New function.
32232         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
32233         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
32234         Likewise.
32235         * lib/openat-proc.c: New file.
32236         * modules/openat (Files): Add lib/openat-proc.c.
32237         (Depends-on): Add same-inode, stdbool.
32238         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
32239
32240 2006-09-29  Bruno Haible  <bruno@clisp.org>
32241
32242         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
32243         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
32244         argument. Set stdout_closed before testing for ferror, not after.
32245         (fwriteerror, fwriteerror_no_ebadf): New functions.
32246
32247 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32248
32249         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
32250
32251 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
32252
32253         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
32254         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
32255
32256 2006-09-28  Jim Meyering  <jim@meyering.net>
32257
32258         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
32259         Include <unistd.h>.
32260
32261 2006-09-28  Bruno Haible  <bruno@clisp.org>
32262
32263         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
32264         * modules/linkedhash-list (Depends-on): Likewise.
32265         * modules/rbtreehash-list (Depends-on): Likewise.
32266
32267 2006-09-28  Bruno Haible  <bruno@clisp.org>
32268
32269         * lib/strndup.h: Simplify the redefinition of strndup.
32270         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
32271         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
32272
32273 2006-09-28  Bruno Haible  <bruno@clisp.org>
32274
32275         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
32276         * lib/gl_linkedhash_list.c: Likewise.
32277         * lib/gl_rbtreehash_list.c: Likewise.
32278
32279 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
32280
32281         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
32282         getaddrinfo.
32283
32284         * lib/__fpending.h: Don't include <stdio_ext.h> unless
32285         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
32286         it causes <stdio_ext.h> to cause a compile-time error.
32287         Problem reported by Nelson H. F. Beebe.
32288         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
32289         of HAVE_DECL___PENDING.
32290
32291         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
32292         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
32293         declaration.
32294
32295 2006-09-27  Jim Meyering  <jim@meyering.net>
32296
32297         This file could end up with a definition for a function
32298         named __strndup, rather than rpl_strndup on a system with
32299         incomplete weak_alias support.
32300         * lib/strndup.c (strndup): Rename from __strndup.
32301         Remove #defines that used to map __strndup to strndup.
32302         Don't use K&R prototypes.
32303         Remove LIBC-related code, since this file is not sync'd with glibc.
32304         * lib/strndup.h: Revamp, accordingly.
32305         * m4/strndup.m4: Modernize.
32306
32307 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
32308
32309         * modules/savewd (Depends-on): Add 'raise'.
32310         * lib/savewd.c: Include <signal.h>, for 'raise'.
32311
32312 2006-09-26  Jim Meyering  <jim@meyering.net>
32313
32314         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
32315         when we detect Darwin 8.7.0's acl_get_file bug.
32316         Rearrange to perform the new (below) run-test while $LIBS
32317         contains any acl-related library.  Set USE_ACL at the end.
32318         (gl_ACL_GET_FILE): New function.
32319
32320 2006-09-26  Eric Blake  <ebb9@byu.net>
32321
32322         * lib/verror.c: Include <config.h> unconditionally.
32323
32324 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
32325
32326         * modules/clock-time (Maintainer): Add self.
32327         * modules/getlogin_r (Depends-on): Add extensions.
32328
32329 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32330
32331         * modules/clock-time: New module.
32332         * modules/nanosleep (Depends-on): Add clock-time.
32333         * modules/gethrxtime (Depends-on): Likewise.
32334         * modules/gettime (Depends-on): Likewise.
32335         * modules/settime (Depends-on): Likewise.
32336
32337         * modules/fts-lgpl: Depend on openat.
32338         * modules/mkancesdirs: Depend on savewd.
32339         * modules/mkdir-p: Likewise.
32340
32341 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32342
32343         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
32344
32345         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
32346         `gl_have_arbitrary_file_name_length_limit' to
32347         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
32348         actually works between configure runs.
32349
32350 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32351             Bruno Haible  <bruno@clisp.org>
32352
32353         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
32354
32355 2006-09-25  Jim Meyering  <jim@meyering.net>
32356
32357         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
32358         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
32359
32360 2006-09-25  Eric Blake  <ebb9@byu.net>
32361
32362         * gnulib-tool (func_import, func_create_testdir): Fix typos in
32363         exec's in 2006-09-18 patch when shuffling fds.
32364
32365 2006-09-25  Bruno Haible  <bruno@clisp.org>
32366
32367         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
32368         Reported by Jim Meyering.
32369
32370 2006-09-24  Jim Meyering  <jim@meyering.net>
32371
32372         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
32373         compare a pointer against a literal "0".  That caused failures with
32374         at least HP-UX's hpcc.
32375
32376 2006-09-22  Simon Josefsson  <jas@extundo.com>
32377
32378         * modules/gc-sha1:
32379         * modules/gc-md4:
32380         * modules/gc-hmac-sha1:
32381         * modules/gc-hmac-md5:
32382         * modules/gc-des:
32383         * modules/gc-arcfour: Distribute more files.
32384
32385 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32386
32387         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
32388         (gl_linked_iterator_from_to): Initialize struct completely.
32389         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
32390         (gl_tree_iterator_from_to): Likewise
32391         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
32392         * lib/gl_array_list.c [lint] (gl_array_iterator)
32393         (gl_array_iterator_from_to): Likewise.
32394         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
32395         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
32396         (gl_carray_iterator_from_to): Likewise.
32397
32398         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
32399         * lib/md4.c (md4_process_block): Remove unused variable.
32400         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
32401         parentheses for clarity.
32402
32403 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32404
32405         * modules/bison-i18n (Depends-on): Add gettext.
32406
32407 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32408
32409         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
32410         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
32411         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
32412         also add missing comma that caused broken test.
32413         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
32414         stdlib.h, for `abort'.
32415         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
32416         variables.
32417         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
32418         include unistd.h if present, for `rmdir'.
32419         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
32420         variables.
32421         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
32422         in the process include standard headers for prototypes.
32423         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
32424         gets declared on GNU/Linux.
32425         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
32426         unistd.h, for `rmdir'.
32427         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
32428
32429         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
32430         always true.
32431         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
32432
32433         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
32434
32435 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32436
32437         * gnulib-tool (func_version): Create output all at once.  This
32438         may help avoid triggering unnecessary SIGPIPEs, and at any
32439         rate it doesn't hurt.
32440
32441 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32442             Bruno Haible  <bruno@clisp.org>
32443
32444         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
32445         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
32446         * m4/signed.m4 (bh_C_SIGNED): Likewise.
32447
32448         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
32449         (gl_FUNC_VASPRINTF): Invoke it.
32450
32451 2006-09-22  Bruno Haible  <bruno@clisp.org>
32452
32453         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
32454         getloadavg.c as first argument.
32455
32456 2006-09-22  Bruno Haible  <bruno@clisp.org>
32457
32458         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
32459         at the beginning of the gl_INIT macro.
32460         * modules/getloadavg (configure.ac): Pass $gl_source_base to
32461         gl_GETLOADAVG.
32462
32463 2006-09-22  Bruno Haible  <bruno@clisp.org>
32464
32465         * gnulib-tool (func_create_megatestdir): Don't include the config-h
32466         module.
32467         Suggested by Ralf Wildenhues.
32468
32469 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
32470
32471         Import this patch from libc:
32472
32473         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
32474
32475         * lib/regex_internal.c (re_string_reconstruct): Handle
32476         offset < pstr->valid_raw_len && pstr->offsets_needed case.
32477         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
32478         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
32479         re_string_context_at.
32480
32481         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
32482         now requires it.
32483         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
32484         gl_REGEX now does it for us.
32485         (gl_REGEX): Add test taken from
32486         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
32487
32488         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
32489         Check that large offsets work.  Modernize Autoconf usages.
32490         Prefer "yes" to mean a good thing rather than a bad.
32491         Don't put "#define mkstemp" in config.h, as this might interfere
32492         with standard system headers that "#define mkstemp mkstemp64".
32493
32494         * modules/mkstemp (Depends-on): Add extensions, so that
32495         mkstemp is visible on some platforms.
32496         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
32497         (Include): Change to "mkstemp.h" from <stdlib.h>.
32498         (Files): Add mkstemp.h.
32499
32500         * lib/mkstemp.h: New file, since some standard headers
32501         #define mkstemp.
32502         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
32503         Include "mkstemp.h".
32504         Make the _LIBC code resemble glibc original more,
32505         e.g., use K&R style.
32506         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
32507         (mkstemp): Remove, since mkstemp.h does this for us.
32508         * lib/stdlib--.h: Include mkstemp.h.
32509
32510         Import this patch from libc:
32511
32512         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
32513
32514         * lib/tempname.c (__gen_tempname): Change attempts_min
32515         into a macro.  Use preprocessor to decide how to initialize
32516         attempts [Coverity CID 67].
32517
32518 2006-09-20  Bruno Haible  <bruno@clisp.org>
32519
32520         * lib/mkdtemp.c: Import from libc.
32521         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
32522                 * sysdeps/posix/tempname.c (__gen_tempname): Change
32523                 attempts_min into a macro.  Use preprocessor to decide how to
32524                 initialize attempts [Coverity CID 67].
32525         2001-11-27  Paul Eggert  <eggert@twinsun.com>
32526                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
32527                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
32528
32529 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32530
32531         * gnulib-tool (func_exit): New function, to allow to pass the
32532         exit status portably through the trap.  Use everywhere.
32533         (--help, --version): Signal a write error.
32534         (trap): catch SIGPIPE, for write errors.
32535         Exit at the end of the trap, with the correct exit status.
32536
32537 2006-09-19  Karl Berry  <karl@gnu.org>
32538
32539         * doc/gnulib.texi: note about the license texinfo files.
32540
32541 2006-09-19  Eric Blake  <ebb9@byu.net>
32542
32543         * gnulib-tool: Avoid space-tab.
32544
32545 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
32546
32547         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
32548         that prevented coreutils 6.1 from building.  Problem reported
32549         by Petter Reinholdtsen.
32550
32551 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
32552
32553         * gnulib-tool (avoidlist): Fix typo that broke options like
32554         --avoid=lock that are used by coreutils bootstrap.
32555
32556 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
32557
32558         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
32559         more systematically.
32560
32561 2006-09-18  Jim Meyering  <jim@meyering.net>
32562
32563         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
32564
32565 2006-09-18  Bruno Haible  <bruno@clisp.org>
32566
32567         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
32568
32569 2006-09-18  Bruno Haible  <bruno@clisp.org>
32570
32571         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
32572         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
32573         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
32574         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
32575         * m4/gettext.m4: Require autoconf >= 2.52.
32576         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
32577         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
32578         of gl_cv_header_inttypes_h.
32579
32580 2006-09-18  Bruno Haible  <bruno@clisp.org>
32581
32582         * lib/javaversion.c: Include configmake.h.
32583
32584 2006-09-18  Bruno Haible  <bruno@clisp.org>
32585
32586         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
32587         avoid that the while loops be executed in a subshell.
32588
32589 2006-09-18  Bruno Haible  <bruno@clisp.org>
32590
32591         * MODULES.html.sh (func_module): Break long lines.
32592         Suggested by Bruce Korb <bkorb@gnu.org>.
32593
32594 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32595
32596         Speed up by a factor of 1.12.
32597         * gnulib-tool (nl): New variable.
32598         (func_import): Rewrite include directive extraction to only read each
32599         directive once.
32600
32601 2006-09-17  Bruno Haible  <bruno@clisp.org>
32602
32603         * modules/javaversion (Makefile.am): Remove DEFS setting.
32604         (Depends-on): Add configmake, for PKGDATADIR definition.
32605
32606 2006-09-17  Bruno Haible  <bruno@clisp.org>
32607
32608         * gnulib-tool (func_create_testdir): Rewrite all files at once.
32609
32610 2006-09-17  Bruno Haible  <bruno@clisp.org>
32611
32612         * gnulib-tool (func_append): New function, stolen from libtool.m4.
32613         (func_modules_transitive_closure, func_modules_add_dummy,
32614         func_modules_to_filelist, func_import, func_create_testdir,
32615         func_create_megatestdir, ...): Use it wherever possible.
32616         Suggested by Ralf Wildenhues.
32617
32618 2006-09-16  Karl Berry  <karl@gnu.org>
32619
32620         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
32621         to avoid sectioning errors.
32622         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
32623         [ifinfo]: blank line after @center-ed titles.
32624         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
32625         Spell FSF address consistently with others.
32626         (These changes approved by rms.)
32627
32628 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32629
32630         Speed up by a factor of 1.61.
32631         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
32632         already checked module names again.
32633
32634 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32635
32636         Speed up by a factor of 1.13.
32637         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
32638         for new_files, and the input to func_add_or_update.
32639
32640 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32641
32642         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
32643         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
32644
32645 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
32646
32647         * modules/mkancesdirs (Depends-on): Add fcntl.
32648         * modules/savewd: New file.
32649         * MODULES.html.sh (File system functions): Add savewd.
32650
32651         * modules/configmake (Makefile.am): Add support for the
32652         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
32653
32654 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
32655
32656         * m4/savewd.m4: New file.
32657
32658 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
32659
32660         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
32661         (dirchownmod): New arg FD.  All callers changed.
32662         Use FD rather than opening the directory ourself, as opening is
32663         now the caller's responsibility.
32664         * lib/dirchownmod.h: Likewise.
32665         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
32666         hosts that require <sys/types.h> before <sys/stat.h>.  Include
32667         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
32668         (test_dir): Remove.
32669         (mkancesdirs): Return length of prefix of FILE that has already
32670         been made, or -2 if there is a child doing the work.  Redo
32671         algorithm so that it is O(N) rather than O(N**2).  Optimize away
32672         ".", and treat ".." specially since it might stray back into
32673         already-created areas.  Use a subprocess if necessary.  New arg
32674         WD; all users changed.  MAKE_DIR function should now return 1
32675         if it creates a directory that is not readable.  Return -2 if
32676         a child process is spun off.
32677         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
32678         Adjust signature to match code.
32679         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
32680         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
32681         all users changed.
32682         * lib/savewd.c, lib/savewd.h: New files.
32683
32684 2006-09-15  Jim Meyering  <jim@meyering.net>
32685
32686         * modules/rename-dest-slash: New module.
32687         * MODULES.html.sh (posix_compat): Add it here.
32688
32689         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
32690
32691 2006-09-15  Jim Meyering  <jim@meyering.net>
32692
32693         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
32694         file.
32695
32696         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
32697
32698 2006-09-15  Jim Meyering  <jim@meyering.net>
32699
32700         * lib/rename-dest-slash.c (has_trailing_slash): Use
32701         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
32702         (rpl_rename_dest_slash): Perform the cheaper trailing slash
32703         test before testing whether SRC is a directory.
32704         Suggestions from Bruno Haible.
32705
32706         Avoid a warning about an unused variable.
32707         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
32708         into the #ifdef block where it's used.
32709
32710         * lib/rename-dest-slash.c: New file.
32711
32712 2006-09-14  Bruno Haible  <bruno@clisp.org>
32713
32714         * lib/allocsa.c: Include <config.h> unconditionally.
32715         * lib/asnprintf.c: Likewise.
32716         * lib/asprintf.c: Likewise.
32717         * lib/c-strcasecmp.c: Likewise.
32718         * lib/c-strcasestr.c: Likewise.
32719         * lib/c-strncasecmp.c: Likewise.
32720         * lib/c-strstr.c: Likewise.
32721         * lib/classpath.c: Likewise.
32722         * lib/clean-temp.c: Likewise.
32723         * lib/concatpath.c: Likewise.
32724         * lib/copy-file.c: Likewise.
32725         * lib/csharpcomp.c: Likewise.
32726         * lib/csharpexec.c: Likewise.
32727         * lib/execute.c: Likewise.
32728         * lib/fatal-signal.c: Likewise.
32729         * lib/findprog.c: Likewise.
32730         * lib/fwriteerror.c: Likewise.
32731         * lib/gl_array_list.c: Likewise.
32732         * lib/gl_array_oset.c: Likewise.
32733         * lib/gl_avltree_list.c: Likewise.
32734         * lib/gl_avltree_oset.c: Likewise.
32735         * lib/gl_avltreehash_list.c: Likewise.
32736         * lib/gl_carray_list.c: Likewise.
32737         * lib/gl_linked_list.c: Likewise.
32738         * lib/gl_linkedhash_list.c: Likewise.
32739         * lib/gl_list.c: Likewise.
32740         * lib/gl_oset.c: Likewise.
32741         * lib/gl_rbtree_list.c: Likewise.
32742         * lib/gl_rbtree_oset.c: Likewise.
32743         * lib/gl_rbtreehash_list.c: Likewise.
32744         * lib/imaxabs.c: Likewise.
32745         * lib/imaxdiv.c: Likewise.
32746         * lib/javacomp.c: Likewise.
32747         * lib/javaexec.c: Likewise.
32748         * lib/javaversion.c: Likewise.
32749         * lib/linebreak.c: Likewise.
32750         * lib/localcharset.c: Likewise.
32751         * lib/lock.c: Likewise.
32752         * lib/mbchar.c: Likewise.
32753         * lib/mbswidth.c: Likewise.
32754         * lib/mkdtemp.c: Likewise.
32755         * lib/pipe.c: Likewise.
32756         * lib/printf-args.c: Likewise.
32757         * lib/printf-parse.c: Likewise.
32758         * lib/progname.c: Likewise.
32759         * lib/progreloc.c: Likewise.
32760         * lib/readlink.c: Likewise.
32761         * lib/sh-quote.c: Likewise.
32762         * lib/stpcpy.c: Likewise.
32763         * lib/stpncpy.c: Likewise.
32764         * lib/strcasecmp.c: Likewise.
32765         * lib/strcasestr.c: Likewise.
32766         * lib/strcspn.c: Likewise.
32767         * lib/striconv.c: Likewise.
32768         * lib/strncasecmp.c: Likewise.
32769         * lib/strnlen1.c: Likewise.
32770         * lib/strstr.c: Likewise.
32771         * lib/strtok_r.c: Likewise.
32772         * lib/tls.c: Likewise.
32773         * lib/tmpdir.c: Likewise.
32774         * lib/unicodeio.c: Likewise.
32775         * lib/unsetenv.c: Likewise.
32776         * lib/vasnprintf.c: Likewise.
32777         * lib/vasprintf.c: Likewise.
32778         * lib/wait-process.c: Likewise.
32779         * lib/xallocsa.c: Likewise.
32780         * lib/xsetenv.c: Likewise.
32781         * lib/xstriconv.c: Likewise.
32782
32783 2006-09-13  Simon Josefsson  <jas@extundo.com>
32784
32785         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
32786         that internally, suggested by Ralf Wildenhues
32787         <Ralf.Wildenhues@gmx.de>.
32788
32789 2006-09-13  Simon Josefsson  <jas@extundo.com>
32790
32791         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
32792         @LIBOBJS@.
32793         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
32794
32795 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
32796
32797         * lib/_fpending.c: Include <config.h> unconditionally, since we no
32798         longer worry about uses that don't define HAVE_CONFIG_H.
32799         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
32800         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
32801         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
32802         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
32803         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
32804         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
32805         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
32806         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
32807         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
32808         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
32809         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
32810         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
32811         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
32812         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
32813         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
32814         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
32815         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
32816         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
32817         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
32818         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
32819         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
32820         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
32821         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
32822         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
32823         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
32824         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
32825         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
32826         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
32827         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
32828         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
32829         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
32830         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
32831         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
32832         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
32833         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
32834         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
32835         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
32836         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
32837         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
32838         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
32839         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
32840         Likewise.
32841
32842 2006-09-13  Eric Blake  <ebb9@byu.net>
32843
32844         * lib/getopt.c: Fix typo in last commit.
32845
32846 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
32847
32848         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
32849         dgettext.
32850
32851 2006-09-12  Jim Meyering  <jim@meyering.net>
32852
32853         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
32854         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
32855         Reported by Nelson H. F. Beebe.
32856
32857 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
32858
32859         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
32860         program_invocation_name and program_invocation_short_name are
32861         initialized.
32862         * lib/argp-namefrob.h: Move declarations of program_invocation_name
32863         and program_invocation_short_name to argp.h, so they are visible
32864         to user programs.
32865         * lib/argp.h: Likewise
32866
32867 2006-09-10  Bruno Haible  <bruno@clisp.org>
32868
32869         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
32870         m4/inttypes_h.m4, m4/uintmax_t.m4.
32871
32872 2006-09-10  Bruno Haible  <bruno@clisp.org>
32873
32874         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
32875         gl_AC_TYPE_UINTMAX_T.
32876
32877 2006-09-10  Bruno Haible  <bruno@clisp.org>
32878
32879         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
32880
32881 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
32882
32883         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
32884         convention.  Text proposed by Bruno Haible.
32885         (struct argp_option): Document the use of N_() wrappers.
32886
32887         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
32888         '\v', and translate the two parts separately, instead of feeding
32889         the whole string to gettext.  This allows to exclude
32890         '\v' from the strings visible to the translator by writing doc
32891         strings as N_("..") "\v" N_("..").
32892
32893 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
32894
32895         * config/srclist.txt: Undo latest change; the bug was fixed.
32896
32897 2006-09-09  Bruno Haible  <bruno@clisp.org>
32898
32899         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
32900         assignments if building a library without libtool.
32901         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
32902         in func_emit_lib_Makefile_am.
32903         (func_import): When building a static library libfoo.a, arrange to
32904         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
32905         (func_create_testdir): Likewise.
32906         * modules/gc (configure.ac, Makefile.am): If building statically,
32907         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
32908         * modules/iconvme (configure.ac, Makefile.am): Likewise.
32909         * modules/striconv (configure.ac, Makefile.am): Likewise.
32910         Based on a suggestion by Ralf Wildenhues.
32911
32912 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32913
32914         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
32915         Check for unistd.h too, since Autoconf doesn't assume POSIX.
32916         Also:
32917
32918         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32919         Add year_2050_test to catch glibc bug 2821
32920         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
32921
32922         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
32923         Prefer #ifdef to #if.
32924
32925         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
32926         Return from 'main' instead of calling 'exit'.
32927
32928 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32929
32930         * lib/mktime.c (guess_time_tm): Fix bug where mktime
32931         returned the maximum time_t value rather than (time_t) -1.
32932         Problem originally reported by William Bardwell
32933         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
32934
32935         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
32936         Moved to here ...
32937         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
32938         ... from here.
32939
32940 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32941
32942         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
32943         2821 is fixed.
32944
32945 2006-09-08  Jim Meyering  <jim@meyering.net>
32946
32947         Don't make generated files read-only.  That would bother too many
32948         people.  However, do retain the ability to work when targets are
32949         read-only: remove the destination and temporary files before writing
32950         them (when generated via sed or echo), or by using the -f option for
32951         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
32952         * modules/alloca-opt, modules/argz, modules/arpa_inet:
32953         * modules/byteswap, modules/configmake, modules/fcntl:
32954         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
32955         * modules/localcharset, modules/netinet_in, modules/poll:
32956         * modules/stdbool, modules/stdint, modules/sys_select:
32957         * modules/sys_socket, modules/sys_stat, modules/sysexits:
32958
32959 2006-09-08  Jim Meyering  <jim@meyering.net>
32960
32961         Avoid new build failure on FreeBSD 6.0.
32962         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
32963         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
32964         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
32965
32966 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32967
32968         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
32969
32970 2006-09-07  Jim Meyering  <jim@meyering.net>
32971
32972         Fix global typo in last change: use chmod u-w, not chmod u-x.
32973         Spotted by Paul Eggert and Bruce Korb.
32974         * modules/alloca-opt, modules/argz, modules/arpa_inet:
32975         * modules/byteswap, modules/configmake, modules/fcntl:
32976         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
32977         * modules/localcharset, modules/netinet_in, modules/poll:
32978         * modules/stdbool, modules/stdint, modules/sys_select:
32979         * modules/sys_socket, modules/sys_stat, modules/sysexits:
32980
32981 2006-09-06  Jim Meyering  <jim@meyering.net>
32982
32983         Make generated files be read-only.
32984         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
32985         Ensure that each generated file is now read-only.
32986         * modules/argz: Likewise.
32987         * modules/arpa_inet: Likewise.
32988         * modules/byteswap: Likewise.
32989         * modules/configmake: Likewise.
32990         * modules/fcntl: Likewise.
32991         * modules/fnmatch: Likewise.
32992         * modules/getopt: Likewise.
32993         * modules/glob: Likewise.
32994         * modules/inttypes: Likewise.
32995         * modules/netinet_in: Likewise.
32996         * modules/poll: Likewise.
32997         * modules/stdbool: Likewise.
32998         * modules/stdint: Likewise.
32999         * modules/sys_select: Likewise.
33000         * modules/sys_socket: Likewise.
33001         * modules/sys_stat: Likewise.
33002         * modules/sysexits: Likewise.
33003         * modules/localcharset: Same as above, but continue using temporary
33004         file named "t-$@" (why different?) rather than the "$@-t" used
33005         everywhere else.
33006
33007         * modules/sysexits (Makefile.am): Replace literal occurrences
33008         of "sysexit.h" more readable, and more consistent, "$@".
33009
33010 2006-09-06  Bruno Haible  <bruno@clisp.org>
33011
33012         * modules/striconv: New file.
33013         * modules/xstriconv: New file.
33014         * MODULES.html.sh (Internationalization functions): Add striconv,
33015         xstriconv.
33016
33017 2006-09-06  Bruno Haible  <bruno@clisp.org>
33018
33019         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
33020         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
33021         not using libtool correctly.
33022
33023 2006-09-06  Bruno Haible  <bruno@clisp.org>
33024
33025         * lib/striconv.h: New file.
33026         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
33027         iconvstring.c.
33028         * lib/xstriconv.h: New file.
33029         * lib/xstriconv.c: New file.
33030
33031 2006-09-06  Bruno Haible  <bruno@clisp.org>
33032
33033         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
33034         lib_..._LDFLAGS.
33035
33036 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33037
33038         * lib/argz_.h: Sync from Libtool.
33039
33040         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
33041                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
33042
33043         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
33044
33045 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
33046
33047         * modules/trim: New file.
33048
33049 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
33050
33051         * lib/trim.h: New file.
33052         * lib/trim.c: New file.
33053
33054 2006-09-05  Bruno Haible  <bruno@clisp.org>
33055
33056         * MODULES.html.sh (String handling): Add trim.
33057
33058 2006-09-04  Karl Berry  <karl@gnu.org>
33059
33060         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
33061         until next release.
33062
33063 2006-09-03  Bruno Haible  <bruno@clisp.org>
33064
33065         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
33066         correctly.
33067
33068 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
33069
33070         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
33071         not gl_GETLOADAVG.  Omit unneeded semicolons.
33072         Problems reported by Ralf Wildenhues in
33073         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
33074         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
33075         at the end, which is the usual gnulib style.
33076
33077         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
33078         of doing all the work ourselves.
33079         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
33080         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
33081
33082 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
33083
33084         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
33085         Problem reported by Ralf Wildenhues in
33086         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
33087
33088         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
33089         HAVE_STRUCT_STATFS_F_FSTYPENAME.
33090
33091 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
33092
33093         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
33094         yesterday's patch by changing test -n to test -z.
33095
33096 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
33097
33098         * modules/getloadavg (Files): Add m4/getloadavg.m4.
33099         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
33100         the former is now obsolescent.
33101
33102         * modules/chdir-long (Depends-on): Add fcntl.
33103
33104 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
33105
33106         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
33107         obsolescent, and programs should use gnulib instead.
33108         * m4/getloadavg.m4: New file, with contents taken from Autoconf
33109         but with prefixes changed.
33110
33111 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
33112
33113         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
33114         or stdbool.h, because they might not exist while configuring.
33115
33116         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
33117         Don't include unistd.h or limits.h; not needed, since chdir-long.h
33118         does that for us.
33119         (O_DIRECTORY): Remove.
33120
33121 2006-08-31  Eric Blake  <ebb9@byu.net>
33122
33123         * gnulib-tool: Don't let emacs change spaces to TAB.
33124
33125 2006-08-31  Bruno Haible  <bruno@clisp.org>
33126
33127         * gnulib-tool: When calling func_import more than once, do it in a
33128         subshell.
33129         Reported by Eric Blake <ebb9@byu.net>.
33130
33131 2006-08-31  Bruno Haible  <bruno@clisp.org>
33132
33133         * gnulib-tool (nl): Remove variable.
33134         (sed_transform_lib_file): Use more robust test for config-h module.
33135         (func_import): Fix typo in 2006-08-25 patch.
33136
33137 2006-08-31  Bruno Haible  <bruno@clisp.org>
33138
33139         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
33140         specified, augment Makefile.am variables instead of assigning them.
33141
33142 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
33143
33144         Work around a bug in both the Linux and SunOS 64-bit kernels:
33145         nanosleep mishandles sleeps for longer than 2**31 seconds.
33146         Problem reported by Frank v Waveren in
33147         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
33148         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
33149         Check for nanosleep bug.
33150         (LIB_NANOSLEEP): Append clock_gettime library if needed.
33151
33152 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
33153
33154         Work around a bug in both the Linux and SunOS 64-bit kernels:
33155         nanosleep mishandles sleeps for longer than 2**31 seconds.
33156         Problem reported by Frank v Waveren in
33157         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
33158         * lib/nanosleep.c (BILLION): New constant.
33159         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
33160         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
33161         implementation.
33162
33163 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
33164
33165         * modules/nanosleep (Depends-on): Add gettime.
33166
33167 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
33168         and Simon Josefsson  <jas@extundo.com>
33169         and Oskar Liljeblad  <oskar@osk.mine.nu>
33170
33171         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
33172         * gnulib-tool (func_import): New license type 'unmodifiable license
33173         text'.
33174         * modules/fdl: Use it.  Longer description.
33175         * module/gpl, module/lgpl: New files.
33176
33177 2006-08-30  Jim Meyering  <jim@meyering.net>
33178
33179         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
33180         shadowing the parameter.
33181
33182 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33183
33184         Sync from Libtool:
33185
33186         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33187
33188         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
33189         sharing with gnulib.  Report by Eric Blake.
33190
33191 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
33192
33193         * modules/isapipe: New file.
33194         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
33195
33196 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
33197
33198         * modules/configmake (Makefile.am): Add a comment, and omit
33199         the CONFIGMAKE_ prefix from generated macro names.  Suggested
33200         by Bruno Haible.
33201
33202 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
33203
33204         * m4/isapipe.m4: New file.
33205
33206 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
33207
33208         * lib/isapipe.c, lib/isapipe.h: New files.
33209
33210 2006-08-29  Jim Meyering  <jim@meyering.net>
33211
33212         * modules/configmake (Makefile.am): Make configmake.h depend on
33213         Makefile.  Otherwise, a stale configmake.h could hang around.
33214
33215 2006-08-29  Eric Blake  <ebb9@byu.net>
33216
33217         * lib/error.c (error_at_line, print_errno_message): Match libc, after
33218         resolution of upstream bug 3044.
33219
33220 2006-08-29  Bruno Haible  <bruno@clisp.org>
33221
33222         * modules/localcharset (Depends-on): Add configmake.
33223         (Makefile.am): Remove setting of LIBDIR through DEFS.
33224
33225 2006-08-29  Bruno Haible  <bruno@clisp.org>
33226
33227         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
33228         defined.
33229
33230 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
33231
33232         * modules/fcntl: New file.
33233         * modules/chdir-safer (Depends-on): Add fcntl.
33234         * modules/fts: Likewise.
33235         * modules/mkdir-p: Likewise.
33236
33237         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
33238         This undoes the most recent change, since we're now addressing the
33239         problem in a different way.
33240
33241         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
33242         into output, since the output might be called Makefile.am even
33243         if $makefile_name is something different.
33244         (func_import): Use $makefile_am rather than
33245         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
33246         empty.
33247
33248         * modules/inttypes (Files): Add m4/inttypes-h.m4.
33249
33250 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
33251
33252         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
33253         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
33254         recent change to stdint.m4, since we're now addressing the problem in a
33255         different way.
33256
33257 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
33258
33259         * m4/fcntl_h.m4: New file.
33260
33261 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
33262
33263         * lib/fcntl_.h: New file.
33264         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
33265         the fcntl module.
33266         * lib/dirchownmod.c: Likewise.
33267         * lib/fts.c: Likewise.
33268
33269         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
33270         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
33271         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
33272         just before including <inttypes.h>, to avoid circular inclusion.
33273
33274 2006-08-28  Jim Meyering  <jim@meyering.net>
33275
33276         * doc/visibility.texi: Actually read and correct the grammar of the
33277         sentence affected by yesterday's change.
33278
33279 2006-08-28  Eric Blake  <ebb9@byu.net>
33280
33281         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
33282         needs wrapper.
33283
33284 2006-08-28  Eric Blake  <ebb9@byu.net>
33285
33286         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
33287
33288 2006-08-28  Eric Blake  <ebb9@byu.net>
33289
33290         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
33291
33292 2006-08-28  Bruno Haible  <bruno@clisp.org>
33293
33294         * modules/c-strstr: New file, from GNU gettext.
33295         * MODULES.html.sh (String handling): Add c-strstr.
33296
33297 2006-08-28  Bruno Haible  <bruno@clisp.org>
33298
33299         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
33300         macros.
33301         Reported by Eric Blake.
33302
33303 2006-08-28  Bruno Haible  <bruno@clisp.org>
33304
33305         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
33306         (VASNPRINTF): Return a string of length > INT_MAX without failing.
33307         * lib/vasprintf.c: Include errno.h, limits.h.
33308         (EOVERFLOW): New fallback definition.
33309         (vasprintf): Test here whether the string length is > INT_MAX.
33310         * lib/vsnprintf.c: Include errno.h, limits.h.
33311         (EOVERFLOW): New fallback definition.
33312         (vsnprintf): Fix bug when generated string was too long for the buffer.
33313         Test here whether the string length is > INT_MAX.
33314
33315 2006-08-28  Bruno Haible  <bruno@clisp.org>
33316
33317         * lib/inttypes_.h (SCNX*): Remove definitions.
33318         Reported by Eric Blake.
33319
33320 2006-08-28  Bruno Haible  <bruno@clisp.org>
33321
33322         * lib/c-strstr.h: New file, from GNU gettext.
33323         * lib/c-strstr.c: New file, from GNU gettext.
33324
33325 2006-08-28  Bruno Haible  <bruno@clisp.org>
33326
33327         * gnulib-tool: Reorder some statements.
33328
33329 2006-08-28  Bruno Haible  <bruno@clisp.org>
33330
33331         * gnulib-tool: New option --makefile-name.
33332         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
33333         $makefile_name.
33334         (func_import): Write $makefile_name to the cache file, and read it from
33335         there unless explicitly specified. Use $makefile_name as file name
33336         instead of Makefile.am. Adjust the recommendations accordingly.
33337
33338 2006-08-28  Bruno Haible  <bruno@clisp.org>
33339
33340         * gnulib-tool (func_verify_module): Check against misapplying patch.
33341
33342 2006-08-28  Bruno Haible  <bruno@clisp.org>
33343
33344         * gnulib-tool (func_relativize, func_relconcat): New functions.
33345         Give an error if --local-dir is given with --update.
33346         Remove trailing slashes from $local_gnulib_dir.
33347         (func_import): Store the relativized $local_gnulib_dir in
33348         gnulib-cache.m4, and read it from there if not specified explicitly.
33349
33350 2006-08-28  Bruno Haible  <bruno@clisp.org>
33351
33352         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
33353         is the current directory. Respect also $local_gnulib_dir.
33354
33355 2006-08-28  Bruno Haible  <bruno@clisp.org>
33356             Simon Josefsson  <jas@extundo.com>
33357
33358         BeOS portability.
33359         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
33360
33361 2006-08-27  Jim Meyering  <jim@meyering.net>
33362
33363         * doc/visibility.texi: Remove duplicate word: "pointer".
33364
33365 2006-08-26  Bruno Haible  <bruno@clisp.org>
33366
33367         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
33368         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
33369         (Makefile.am): Create inttypes.h from inttypes_.h.
33370         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
33371
33372         * modules/imaxabs: New file.
33373
33374         * modules/imaxdiv: New file.
33375
33376 2006-08-26  Bruno Haible  <bruno@clisp.org>
33377
33378         * m4/inttypes.m4: New file.
33379         * m4/_inttypes_h.m4: Remove file.
33380         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
33381         PRI_MACROS_BROKEN.
33382         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
33383
33384         * m4/imaxabs.m4: New file.
33385
33386         * m4/imaxdiv.m4: New file.
33387
33388 2006-08-26  Bruno Haible  <bruno@clisp.org>
33389
33390         * lib/inttypes_.h: New file.
33391         * lib/inttypes.h: Remove file.
33392         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
33393
33394         * lib/imaxabs.c: New file.
33395
33396         * lib/imaxdiv.c: New file.
33397
33398 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33399
33400         New config-h module, so that "make" output needn't be cluttered
33401         by -DHAVE_CONFIG_H.
33402         * MODULES.html.sh (Support for building libraries and executables):
33403         Add config-h.
33404         * modules/config-h: New file.
33405         * gnulib-tool (nl, sed_transform_lib_file): New vars.
33406         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
33407         the config-h module is used.
33408
33409         New configmake module, so that "make" output needn't be cluttered
33410         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
33411         * MODULES.html.sh (Support for building libraries and executables):
33412         Add configmake.
33413         * modules/configmake: New file.
33414
33415 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33416
33417         * m4/config-h.m4: New file.
33418
33419 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
33420
33421         * config/srclist.txt: Add elisp-comp.
33422
33423 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
33424
33425         * MODULES.html.sh (Support for building libraries and executables):
33426         Add elisp-comp.
33427         * build-aux/elisp-comp: New file.
33428         * modules/elisp-comp: New file.
33429
33430 2006-08-24  Bruno Haible  <bruno@clisp.org>
33431
33432         * gnulib-tool (func_create_testdir): Use non-default values of
33433         sourcebase and m4base.
33434
33435 2006-08-24  Bruno Haible  <bruno@clisp.org>
33436
33437         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
33438         HTML structure.
33439
33440 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
33441
33442         * modules/openat (Depends-on): Add lchown.
33443
33444 2006-08-23  Bruno Haible  <bruno@clisp.org>
33445
33446         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
33447         of gl_LOCK_EARLY instead of gl_LOCK.
33448
33449 2006-08-23  Bruno Haible  <bruno@clisp.org>
33450
33451         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
33452         on OSF/1 to no.
33453         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
33454
33455 2006-08-23  Bruno Haible  <bruno@clisp.org>
33456
33457         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
33458         as unusable.
33459
33460         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
33461         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
33462         (gl_LOCK): New macro.
33463
33464 2006-08-22  Simon Josefsson  <jas@extundo.com>
33465
33466         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
33467         to md5 module.
33468
33469 2006-08-22  Simon Josefsson  <jas@extundo.com>
33470
33471         * MODULES.html.sh: Add "Support for maintaining and release
33472         projects".
33473
33474         * build-aux/gnupload: New file, from coreutils.
33475
33476 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
33477
33478         Avoid the need for AC_LIBSOURCES in m4 macros.
33479         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
33480         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
33481         * modules/check-version (EXTRA_DIST): Add check-version.h.
33482         * modules/crc (EXTRA_DIST): Add crc.h.
33483         * modules/des (EXTRA_DIST): Add des.h.
33484         * modules/gc (EXTRA_DIST): Add gc.h.
33485         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
33486         * modules/getline (EXTRA_DIST): Add getline.h.
33487         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
33488         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
33489         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
33490         * modules/md2 (EXTRA_DIST): Add md2.h.
33491         * modules/md4 (EXTRA_DIST): Add md4.h.
33492         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
33493         * modules/read-file (EXTRA_DIST): Add read-file.h.
33494         * modules/readline (EXTRA_DIST): Add readline.h.
33495         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
33496         rijndael-api-fst.h.
33497
33498 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
33499
33500         * m4/rijndael.m4 (gl_ARCFOUR):
33501         * m4/arctwo.m4 (gl_ARCTWO):
33502         * m4/check-version.m4 (gl_CHECK_VERSION):
33503         * m4/crc.m4 (gl_CRC):
33504         * m4/des.m4 (gl_DES):
33505         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
33506         * m4/gc.m4 (gl_GC):
33507         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
33508         * m4/getline.m4 (gl_FUNC_GETLINE):
33509         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
33510         * m4/hmac-md5.m4 (gl_HMAC_MD5):
33511         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
33512         * m4/md2.m4 (gl_MD2):
33513         * m4/md4.m4 (gl_MD4):
33514         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
33515         * m4/read-file.m4 (gl_FUNC_READ_FILE):
33516         * m4/readline.m4 (gl_FUNC_READLINE):
33517         * m4/rijndael.m4 (gl_RIJNDAEL):
33518         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
33519         to get the necessary .h files and whatnot.
33520
33521 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
33522
33523         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
33524         gnulib rather than the other way around.
33525         * config/srclistvars.sh (COREUTILS): Remove.
33526
33527 2006-08-22  Jim Meyering  <jim@meyering.net>
33528
33529         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
33530
33531         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
33532
33533 2006-08-22  Eric Blake  <ebb9@byu.net>
33534
33535         * modules/regexprops-generic: New file.
33536         * MODULES.html.sh (Support for building documentation): List it.
33537
33538 2006-08-22  Eric Blake  <ebb9@byu.net>
33539
33540         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
33541         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
33542         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
33543         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
33544
33545 2006-08-22  Bruno Haible  <bruno@clisp.org>
33546
33547         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
33548         and lib_LTLIBRARIES like the other lib_* variables.
33549
33550 2006-08-22  Bruno Haible  <bruno@clisp.org>
33551
33552         * build-aux/x-to-1.in: New file, from GNU gettext.
33553
33554 2006-08-22  Bruno Haible  <bruno@clisp.org>
33555
33556         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
33557         <utmpx.h> exists.
33558
33559 2006-08-22  Bruno Haible  <bruno@clisp.org>
33560
33561         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
33562         <utmpx.h> exists.
33563
33564 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
33565
33566         BeOS portability.
33567         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
33568         exist.
33569         Problem reported by Bruno Haible.
33570
33571 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
33572
33573         Avoid the need for AC_LIBSOURCES in m4 macros.
33574         * modules/acl (EXTRA_DIST): Add acl.h.
33575         * modules/argmatch (Files): Add m4/argmatch.m4.
33576         (configure.ac): Add gl_ARGMATCH.
33577         (EXTRA_DIST): Renamed from lib_SOURCES, for
33578         consistency with the other modules.  Remove argmatch.c.
33579         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
33580         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
33581         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
33582         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
33583         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
33584         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
33585         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
33586         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
33587         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
33588         * modules/closeout (EXTRA_DIST): Add closeout.h.
33589         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
33590         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
33591         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
33592         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
33593         dirname.h; remove basename.c and stripslash.c.
33594         * modules/exclude (EXTRA_DIST): Add exclude.h.
33595         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
33596         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
33597         * modules/file-type (EXTRA_DIST): Add file-type.h.
33598         * modules/filemode (EXTRA_DIST): Add filemode.h.
33599         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
33600         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
33601         * modules/fpending (EXTRA_DIST): Add __fpending.h.
33602         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
33603         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
33604         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
33605         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
33606         * modules/getdate (EXTRA_DIST): Add getdate.c.
33607         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
33608         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
33609         * modules/getpass (EXTRA_DIST): Add getpass.h.
33610         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
33611         * modules/group-member (EXTRA_DIST): Add group-member.h.
33612         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
33613         * modules/hash (EXTRA_DIST): Add hash.h.
33614         * modules/human (EXTRA_DIST): Add human.h.
33615         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
33616         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
33617         * modules/lchown (EXTRA_DIST): Add lchown.h.
33618         * modules/long-options (EXTRA_DIST): Add long-options.h.
33619         * modules/lstat (EXTRA_DIST): Add lstat.h.
33620         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
33621         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
33622         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
33623         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
33624         * modules/memxor (EXTRA_DIST): Add memxor.h.
33625         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
33626         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
33627         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
33628         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
33629         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
33630         * modules/physmem (EXTRA_DIST): Add physmem.h.
33631         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
33632         * modules/posixver (EXTRA_DIST): Add posixver.h.
33633         * modules/quote (EXTRA_DIST): Add quote.h.
33634         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
33635         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
33636         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
33637         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
33638         regex_internal.h regexec.c.
33639         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
33640         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
33641         * modules/same (EXTRA_DIST): Add same.h.
33642         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
33643         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
33644         * modules/savedir (EXTRA_DIST): Add savedir.h.
33645         * modules/sha1 (EXTRA_DIST): Add sha1.h.
33646         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
33647         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
33648         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
33649         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
33650         * modules/strdup (EXTRA_DIST): Add strdup.h.
33651         * modules/strftime (EXTRA_DIST): Add strftime.h.
33652         * modules/strndup (EXTRA_DIST): Add strndup.h.
33653         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
33654         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
33655         * modules/time_r (EXTRA_DIST): Add time_r.h.
33656         * modules/timespec (EXTRA_DIST): Add timespec.h.
33657         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
33658         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
33659         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
33660         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
33661         * modules/userspec (EXTRA_DIST): Add userspec.h.
33662         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
33663         * modules/utimens (EXTRA_DIST): Add utimens.h.
33664         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
33665         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
33666         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
33667         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
33668         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
33669         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
33670         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
33671         * modules/yesno (EXTRA_DIST): Add yesno.h.
33672
33673 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
33674
33675         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
33676
33677         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
33678         * m4/dev-ino.m4, same-inode.m4: Remove.
33679
33680         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
33681         * m4/acl.m4 (AC_FUNC_ACL):
33682         * m4/backupfile.m4 (gl_BACKUPFILE):
33683         * m4/c-strtod.m4 (gl_C99_STRTOLD):
33684         * m4/canon-host.m4 (gl_CANON_HOST):
33685         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
33686         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
33687         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
33688         * m4/cloexec.m4 (gl_CLOEXEC):
33689         * m4/close-stream.m4 (gl_CLOSE_STREAM):
33690         * m4/closeout.m4 (gl_CLOSEOUT):
33691         * m4/dirfd.m4 (gl_FUNC_DIRFD):
33692         * m4/dirname.m4 (gl_DIRNAME):
33693         * m4/exclude.m4 (gl_EXCLUDE):
33694         * m4/exitfail.m4 (gl_EXITFAIL):
33695         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
33696         * m4/file-type.m4 (gl_FILE_TYPE):
33697         * m4/filemode.m4 (gl_FILEMODE):
33698         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
33699         * m4/fpending.m4 (gl_FUNC_FPENDING):
33700         * m4/fprintftime.m4 (gl_FPRINTFTIME):
33701         * m4/fts.m4 (gl_FUNC_FTS):
33702         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
33703         * m4/getdate.m4 (gl_GETDATE):
33704         * m4/gethrxtime.m4 (gl_GETHRXTIME):
33705         * m4/getpagesize.m4 (gl_GETPAGESIZE):
33706         * m4/getpass.m4 (gl_FUNC_GETPASS):
33707         * m4/gettime.m4 (gl_GETTIME):
33708         * m4/getugroups.m4 (gl_GETUGROUPS):
33709         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
33710         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
33711         * m4/hard-locale.m4 (gl_HARD_LOCALE):
33712         * m4/hash.m4 (gl_HASH):
33713         * m4/idcache.m4 (gl_IDCACHE):
33714         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
33715         * m4/lchown.m4 (gl_FUNC_LCHOWN):
33716         * m4/long-options.m4 (gl_LONG_OPTIONS):
33717         * m4/lstat.m4 (gl_FUNC_LSTAT):
33718         * m4/md5.m4 (gl_MD5):
33719         * m4/memcasecmp.m4 (gl_MEMCASECMP):
33720         * m4/memcoll.m4 (gl_MEMCOLL):
33721         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
33722         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
33723         * m4/memxor.m4 (gl_MEMXOR):
33724         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
33725         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
33726         * m4/modechange.m4 (gl_MODECHANGE):
33727         * m4/mountlist.m4 (gl_MOUNTLIST):
33728         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
33729         * m4/openat.m4 (gl_FUNC_OPENAT):
33730         * m4/pathmax.m4 (gl_PATHMAX):
33731         * m4/physmem.m4 (gl_PHYSMEM):
33732         * m4/posixtm.m4 (gl_POSIXTM):
33733         * m4/posixver.m4 (gl_POSIXVER):
33734         * m4/quote.m4 (gl_QUOTE):
33735         * m4/quotearg.m4 (gl_QUOTEARG):
33736         * m4/readtokens.m4 (gl_READTOKENS):
33737         * m4/readutmp.m4 (gl_READUTMP):
33738         * m4/regex.m4 (gl_REGEX):
33739         * m4/safe-read.m4 (gl_SAFE_READ):
33740         * m4/safe-write.m4 (gl_SAFE_WRITE):
33741         * m4/same.m4 (gl_SAME):
33742         * m4/save-cwd.m4 (gl_SAVE_CWD):
33743         * m4/savedir.m4 (gl_SAVEDIR):
33744         * m4/settime.m4 (gl_SETTIME):
33745         * m4/sha1.m4 (gl_SHA1):
33746         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
33747         * m4/stat-macros.m4 (gl_STAT_MACROS):
33748         * m4/stat-time.m4 (gl_STAT_TIME):
33749         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
33750         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
33751         * m4/strdup.m4 (gl_FUNC_STRDUP):
33752         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
33753         * m4/strndup.m4 (gl_FUNC_STRNDUP):
33754         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
33755         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
33756         * m4/time_r.m4 (gl_TIME_R):
33757         * m4/timespec.m4 (gl_TIMESPEC):
33758         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
33759         * m4/unlinkdir.m4 (gl_UNLINKDIR):
33760         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
33761         * m4/userspec.m4 (gl_USERSPEC):
33762         * m4/utimecmp.m4 (gl_UTIMECMP):
33763         * m4/utimens.m4 (gl_UTIMENS):
33764         * m4/xalloc.m4 (gl_XALLOC):
33765         * m4/xgetcwd.m4 (gl_XGETCWD):
33766         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
33767         * m4/xreadlink.m4 (gl_XREADLINK):
33768         * m4/xstrtod.m4 (gl_XSTRTOD):
33769         * m4/yesno.m4 (gl_YESNO):
33770         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
33771         to get the necessary .h files and whatnot.
33772
33773 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
33774             Bruno Haible  <bruno@clisp.org>
33775
33776         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
33777         /bin/sh understanding of '!' conditional negation.
33778
33779 2006-08-21  Jim Meyering  <jim@meyering.net>
33780
33781         * modules/openat (Depends-on): Really alphabetize.
33782
33783         * modules/acl (Depends-on): Add error and quote.
33784
33785         * check-module (find_included_lib_files): Add at-func.c to the
33786         ok-to-include-more-than-once white list.
33787
33788         * modules/openat (Depends-on): Add lstat.  Alphabetize.
33789
33790 2006-08-21  Bruno Haible  <bruno@clisp.org>
33791
33792         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
33793         Emit a pkgdata_DATA variable only if some snippets add contents to it.
33794         Reported by Martin Lambers <marlam@marlam.de>.
33795
33796 2006-08-21  Bruno Haible  <bruno@clisp.org>
33797
33798         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
33799         specify an installation location, don't emit a noinst_LIBRARIES or
33800         noinst_LTLIBRARIES assignment.
33801
33802 2006-08-21  Bruno Haible  <bruno@clisp.org>
33803
33804         BeOS portability.
33805         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
33806         BeOS has mbrtowc() but no <wctype.h>.
33807
33808 2006-08-21  Bruno Haible  <bruno@clisp.org>
33809
33810         BeOS portability.
33811         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
33812         exist.
33813
33814 2006-08-21  Bruno Haible  <bruno@clisp.org>
33815
33816         BeOS portability.
33817         * lib/mbchar.h: Include <wctype.h> only if it exists.
33818
33819 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33820
33821         Remove files that are no longer needed by their respective modules.
33822         * m4/obstack.m4: Remove.
33823         * m4/strerror_r.m4: Remove.
33824         * m4/uint32_t.m4: Remove.
33825         * m4/uintptr_t.m4: Remove.
33826         * m4/ullong_max.m4: Remove.
33827         * m4/xstrtoimax.m4: Remove.
33828         * m4/xstrtoumax.m4: Remove.
33829
33830         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
33831         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
33832         dependencies now capture this.
33833
33834         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
33835         Do not use AC_LIBSOURCES, since gnulib modules now do this.
33836         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
33837         * m4/human.m4 (gl_HUMAN): Likewise.
33838         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
33839         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
33840
33841         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
33842
33843         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
33844         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
33845         stdint.
33846         * m4/human.m4 (gl_HUMAN): Likewise.
33847         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
33848         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
33849         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
33850         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
33851         * m4/xstrtol (gl_XSTRTOL): Likewise.
33852
33853         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
33854         AC_TYPE_LONG_LONG_INT.
33855         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
33856         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
33857         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
33858         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
33859
33860         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
33861         on stdbool.
33862
33863         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
33864         (gl_PREREQ_XSTRTOUL): Remove.
33865
33866         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
33867
33868         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
33869         mode.
33870
33871 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33872
33873         Add and change modules to make it easier for coreutils to use
33874         gnulib-tool.
33875         * modules/backupfile (Files): Remove m4/d-ino.m4.
33876         (Depends-on): Add d-ino.
33877         * modules/cycle-check (Depends-on): Add stdint.
33878         (lib_SOURCES): Add cycle-check.h.
33879         * modules/d-ino: New module.
33880         * modules/d-type: New module.
33881         * modules/error (Files): Remove m4/strerror_r.m4.
33882         * modules/filemode (Files): Add m4/st_dm_mode.m4.
33883         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
33884         m4/inttypes_h.m4, m4/uintmax_t.m4.
33885         (Depends-on): Add stdint.
33886         (lib_SOURCES): Add fsusage.h.
33887         * modules/getcwd (Files): Remove d-ino.m4.
33888         (Depends-on): Add d-ino.
33889         * modules/getndelim2 (Depends-on): Add stdint.
33890         * modules/glob (Files): Remove m4/d-type.m4.
33891         (Depends-on): Add d-type.
33892         * modules/host-os: New module.
33893         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
33894         m4/inttypes_h.m4, m4/uintmax_t.m4.
33895         * Depends-on: Add stdint.
33896         (lib_SOURCES): Add human.h.
33897         * modules/inttostr (Files): Remove m4/intmax_t.m4,
33898         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
33899         m4/uintmax_t.m4, m4/ulonglong.m4.
33900         (Depends-on): Add stdint.
33901         (EXTRA_DIST): Add inttostr.h.
33902         * modules/lchmod: New module.
33903         * modules/link-follow: New module.
33904         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
33905         (Depends-on): Add lchmod.
33906         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
33907         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
33908         (Depends-on): Add stdint.
33909         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
33910         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
33911         (Depends-on): Add stdint.
33912         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
33913         * modules/perl: New module.
33914         * modules/regex (Depends-on): Add stdint.
33915         * modules/rmdir-errno: New module.
33916         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
33917         m4/intmax_t.m4.
33918         (Depends-on): Add stdint.
33919         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
33920         m4/uintmax_t.m4.
33921         (Depends-on): Add stdint.
33922         * modules/unlink-busy: New module.
33923         * modules/utimecmp (Depends-on): Add stdint.
33924         * modules/uptime: New module.
33925         * modules/winsz-ioctl: New module.
33926         * modules/winsz-termios: New module.
33927         * modules/xnanosleep (Depends-on): Add nanosleep.
33928         * modules/ullong_max: Remove.
33929         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
33930         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
33931         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
33932         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
33933         (Depends-on): Add inttypes.
33934         (lib_SOURCES): Add xstrtol.h.
33935         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
33936         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
33937         * MODULES.html.sh: Move 'assert' into the assert section.
33938         Move 'dummy' into the linking section.
33939         Remove ullong_max.
33940         Add section for compatibility checks for POSIX:2001 functions,
33941         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
33942         winsz-ioctl, and winsz-termios into it.
33943         Add lchmod.
33944         Add top-level Misc section and put host-os, perl, and uptime
33945         into it.
33946
33947 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33948
33949         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
33950         now assume the stdint module.  Do not include inttypes.h.
33951         * lib/fsusage.h: Likewise.
33952         * lib/getndelim2.c: Likewise.
33953         * lib/human.h: Likewise.
33954         * lib/inttostr.h: Likewise.
33955         * lib/obstack.c: Likewise.
33956         * lib/regex_internal.h: Likewise.
33957         * lib/tempname.c: Likewise.
33958         * lib/utimecmp.c: Likewise.
33959         * lib/xstrtol.h: Likewise.
33960
33961         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
33962
33963         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
33964         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
33965         * lib/xtime.h: Likewise.
33966
33967 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33968
33969         * modules/openat (Files): Add lib/fchmodat.c.
33970         Fixes problem reported by Jay Youngman.
33971
33972 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33973
33974         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
33975         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
33976
33977 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
33978             Bruno Haible  <bruno@clisp.org>
33979
33980         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
33981         and is a script that invokes bison. Tighten the code. Add comments.
33982
33983 2006-08-18  Jim Meyering  <jim@meyering.net>
33984
33985         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
33986         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
33987         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
33988         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
33989
33990 2006-08-18  Bruno Haible  <bruno@clisp.org>
33991
33992         * modules/bison-i18n: New file.
33993         * MODULES.html.sh (Internationalization functions): Add it.
33994
33995 2006-08-18  Bruno Haible  <bruno@clisp.org>
33996
33997         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
33998         sys/statvfs.h. When getmntinfo was found, check its declaration and
33999         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
34000
34001 2006-08-18  Bruno Haible  <bruno@clisp.org>
34002
34003         * m4/bison-i18n.m4: New file, from bison.
34004
34005 2006-08-18  Bruno Haible  <bruno@clisp.org>
34006
34007         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
34008         (ME_DUMMY): Treat "kernfs" as a dummy.
34009         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
34010
34011 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
34012
34013         Update from coreutils.
34014
34015         2006-08-15  Jim Meyering  <jim@meyering.net>
34016
34017         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
34018
34019         2006-01-17  Jim Meyering  <jim@meyering.net>
34020
34021         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
34022
34023         2006-01-11  Jim Meyering  <jim@meyering.net>
34024
34025         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
34026         Check for the lchmod function.
34027
34028 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
34029
34030         Update from coreutils.
34031
34032         * lib/__fpending.h: Add copyright notice.
34033         * lib/fprintftime.h: Likewise.
34034         * lib/savedir.c: Use (C) in copyright notice.
34035         * lib/savedir.h: Likewise.
34036
34037         2006-08-15  Jim Meyering  <jim@meyering.net>
34038
34039         * lib/at-func.c: New file, with the logic of all emulated at-functions.
34040         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
34041         in support of the EXPECTED_ERRNO macro.
34042         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
34043         definitions.  Instead, define the appropriate symbols and include
34044         "at-func.c".
34045         * lib/mkdirat.c (mkdirat): Likewise.
34046         * lib/fchmodat.c (fchmodat): Likewise.
34047         (ENOSYS): Remove definition.
34048         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
34049         it.  Don't include "unistd--.h" -- it wasn't ever used.
34050
34051         2006-01-17  Jim Meyering  <jim@meyering.net>
34052
34053         Rewrite fts.c not to change the current working directory,
34054         by using openat, fstatat, fdopendir, etc..
34055
34056         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
34057         (HAVE_OPENAT_SUPPORT): Define.
34058         [_LIBC] (fchdir): Don't undef or define; no longer used.
34059         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
34060         Now, this `function' always succeeds, and consumes its file descriptor
34061         parameter -- so callers must not close such FDs.  Update callers.
34062         (diropen_fd, opendirat, cwd_advance_fd): New functions.
34063         (diropen): Add parameter, SP.  Adjust all callers.
34064         Implement using diropen_fd, rather than open.
34065         (fts_open): Initialize new member, fts_cwd_fd.
34066         Remove fts_rft-setting code.
34067         (fts_close): Close fts_cwd_fd, if necessary.
34068         (__opendir2): Define in terms of opendir or opendirat,
34069         depending on whether the FST_NOCHDIR flag is set.
34070         (fts_build): Since fts_safe_changedir consumes its FD, and since
34071         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
34072         and close the dup'd file descriptor upon failure.
34073         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
34074         (fts_safe_changedir): Tweak semantics to reflect that this function
34075         now calls cwd_advance_fd and hence consumes its FD argument.
34076         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
34077         [struct FTS] (fts_rft): Remove now-unused member.
34078         [struct FTS] (fts_cycle.state): Improve comment.
34079
34080         * lib/openat.c (openat_needs_fchdir): New function.
34081         * lib/openat.h (openat_needs_fchdir): Declare it.
34082
34083 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
34084
34085         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
34086         Problem and fix reported by Pádraig Brady in
34087         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
34088
34089 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
34090
34091         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
34092
34093 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
34094
34095         * lib/memcoll.c (memcoll): Optimize for the common case where the
34096         arguments are bytewise equal.
34097
34098 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
34099
34100         * doc/regexprops-generic.texi: Add a copyright notice.
34101
34102 2006-08-15  Bruno Haible  <bruno@clisp.org>
34103
34104         * modules/tmpdir (License): Change to LGPL.
34105
34106 2006-08-15  Bruno Haible  <bruno@clisp.org>
34107
34108         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
34109         module.
34110
34111 2006-08-14  Simon Josefsson  <jas@extundo.com>
34112
34113         * config/srclist.txt: Add gnupload.
34114
34115 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
34116
34117         Change copyright notice from LGPL 2 to GPL 2, since that's the
34118         standard form used in the gnulib repository.
34119         * tests/test-lock.c: Likewise.
34120         * tests/test-stdint.c: Likewise.
34121         * tests/test-tls.c: Likewise.
34122
34123         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
34124         prelude-manager.  User shorter URLs for GNU projects, without '?'.
34125         Add copyright notice.
34126
34127         * check-module: Add copyright notice.  Output a copyright
34128         notice if "--version" is specified.
34129         * modules/COPYING: New file.
34130         * tests/test-getaddrinfo.c: Add copyright notice.
34131         * tests/test-verify.c: Likewise.
34132
34133 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
34134
34135         Change copyright notice from LGPL 2 to GPL 2, since that's the
34136         standard form used in the gnulib repository.
34137         * lib/lock.c: LGPL -> GPL.
34138         * lib/lock.h: Likewise.
34139         * lib/strnlen1.c: Likewise.
34140         * lib/strnlen1.h: Likewise.
34141         * lib/tls.c: Likewise.
34142         * lib/tls.h: Likewise.
34143         * lib/tmpdir.c: Likewise.
34144
34145         * lib/TODO: Remove; this belongs only in coreutils.
34146
34147 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
34148
34149         Add copyright notices to long-enough files that lack them, since
34150         otherwise the files aren't clearly free.  Use the same notice that
34151         getdate.texi already uses.
34152         * doc/alloca-opt.texi: Add copyright notice.
34153         * doc/alloca.texi: Likewise.
34154         * doc/ctime.texi: Likewise.
34155         * doc/functions.texi: Likewise.
34156         * doc/gcd.texi: Likewise.
34157         * doc/gnulib-tool.texi: Likewise.
34158         * doc/inet_ntoa.texi: Likewise.
34159         * doc/visibility.texi: Likewise.
34160
34161         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
34162         * doc/quote.texi: Add copyright notice.
34163
34164         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
34165         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
34166         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
34167         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
34168         is now obsolete, and give a pointer to the Sun list.
34169         Add copyright notice.
34170
34171 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
34172
34173         * config/srclistvars.sh: Add copyright notice.
34174
34175 2006-08-14  Eric Blake  <ebb9@byu.net>
34176
34177         Import the following change from libc:
34178
34179         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
34180
34181         Upstream bug 2997.
34182         * lib/misc/error.c: Add space between program name and message if file
34183         name is missing.
34184
34185 2006-08-12  Karl Berry  <karl@gnu.org>
34186
34187         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
34188         remove, these originate in gnulib now.
34189
34190 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34191
34192         * doc/Makefile (standards.info standards.html standards.dvi):
34193         Also depend on make-stds.texi.
34194
34195 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
34196
34197         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
34198         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
34199
34200         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
34201         in wchar_t.  Problem reported by Eric Blake.
34202
34203         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
34204         LEN is smaller than SIZE.  Suggested by Bruno Haible.
34205         Also, help the compiler to keep LEN in a register.
34206
34207 2006-08-11  Eric Blake  <ebb9@byu.net>
34208
34209         * users.txt: Sort.  Add tar.
34210
34211 2006-08-11  Bruno Haible  <bruno@clisp.org>
34212
34213         * users.txt: New file.
34214
34215 2006-08-11  Bruno Haible  <bruno@clisp.org>
34216
34217         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
34218         before <wchar.h>. Needed for OSF/1 and BSD/OS.
34219
34220 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
34221
34222         * modules/snprintf (Depends-on): Remove minmax.
34223         (Maintainer): Add self and Bruno.
34224
34225 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
34226
34227         * lib/.cppi-disable: Add snprintf.h, socket_.h.
34228         * lib/snprintf.c: Include <errno.h> and <limits.h>.
34229         (EOVERFLOW): Define if the system does not.
34230         Do not include "minmax.h"; it wasn't used.
34231         (snprintf): Don't assume size_t promotes to an unsigned type.
34232         Fix bug when generated string was too long for the buffer: the
34233         buffer's contents are supposed to be the initial prefix of the
34234         output.  Don't assume vasnprintf returns EOVERFLOW if the size
34235         exceeds INT_MAX; do the check ourselves.
34236
34237         Import the following changes from libc:
34238
34239         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
34240
34241         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
34242         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
34243         set wc to the byte which couldn't be converted.
34244         (re_string_reconstruct): Don't clear valid_raw_len before calling
34245         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
34246         tip_context using re_string_context_at.
34247
34248         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
34249
34250         * lib/posix/regex.h: g++ still cannot handled [restrict].
34251
34252         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
34253
34254         * lib/posix/regex.h: Remove special handling for VMS.
34255
34256 2006-08-10  Jim Meyering  <jim@meyering.net>
34257
34258         * modules/same-inode: New module.
34259         * modules/dev-ino: New module.
34260         * modules/cycle-check: Depend on these modules, rather than simply
34261         including their .h files.
34262         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
34263         required via m4/cycle-check.m4.
34264         * modules/same: Depend on new same-inode module, rather than
34265         including same-inode.h.
34266         * modules/chdir-safer: New file.
34267
34268         * modules/chown (Depends-on): Add stat-macros.
34269
34270 2006-08-10  Jim Meyering  <jim@meyering.net>
34271
34272         * m4/cycle-check.m4: New file.
34273         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
34274         * m4/dev-ino.m4, m4/same-inode.m4: New files.
34275
34276 2006-08-10  Eric Blake  <ebb9@byu.net>
34277
34278         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
34279         in from original proposal.
34280
34281 2006-08-10  Eric Blake  <ebb9@byu.net>
34282         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
34283
34284         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
34285         namespace.
34286
34287 2006-08-10  Bruno Haible  <bruno@clisp.org>
34288
34289         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
34290         as well.
34291
34292 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
34293
34294         Sync from coreutils.
34295
34296         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
34297
34298         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
34299         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
34300
34301 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
34302
34303         * modules/restrict: Remove; no longer needed now that we assume
34304         Autoconf 2.59 or later.
34305         * MODULES.html.sh: Remove 'restrict'.
34306         * modules/argp (Depends-on): Remove 'restrict'.
34307         * modules/base64 (Depends-on): Likewise.
34308         * modules/gc (Depends-on): Likewise.
34309         * modules/getaddrinfo (Depends-on): Likewise.
34310         * modules/glob (Depends-on): Likewise.
34311         * modules/inet_ntop (Depends-on): Likewise.
34312         * modules/inet_pton (Depends-on): Likewise.
34313         * modules/memxor (Depends-on): Likewise.
34314         * modules/regex (Depends-on): Likewise.
34315         * modules/strtok_r (Depends-on): Likewise.
34316         * modules/time_r (Depends-on): Likewise.
34317
34318 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
34319
34320         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
34321         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
34322         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
34323         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
34324         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
34325         * m4/memxor.m4 (gl_MEMXOR): Likewise.
34326         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
34327         gl_C_RESTRICT replaced by AC_C_RESTRICT.
34328
34329         Merge from coreutils.
34330         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
34331         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
34332         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
34333         * m4/time_r.m4 (gl_TIME_R): Likewise.
34334
34335 2006-08-09  Karl Berry  <karl@gnu.org>
34336
34337         * config/srclist.txt: no more gettext-tools, per Bruno.
34338
34339 2006-08-08  Eric Blake  <ebb9@byu.net>
34340
34341         * modules/verror: New module.
34342         * MODULES.html.sh: Document it.
34343
34344 2006-08-08  Eric Blake  <ebb9@byu.net>
34345
34346         * lib/verror.h, lib/verror.c: New files.
34347
34348 2006-08-08  Eric Blake  <ebb9@byu.net>
34349
34350         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
34351         verror_at_line output complies with GNU Coding Standards even when
34352         file is NULL.
34353
34354 2006-08-07  Bruno Haible  <bruno@clisp.org>
34355
34356         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
34357         versions of AIX.
34358         Reported by Ralf Wildenhues.
34359
34360 2006-08-07  Bruno Haible  <bruno@clisp.org>
34361
34362         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
34363         in an AC_DEFUN. Needed so that the autoconf snippets can use
34364         AC_REQUIRE.
34365
34366 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34367
34368         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
34369         Initialize pkgdata_DATA.
34370         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
34371         overriding it.
34372
34373 2006-08-06  Eric Blake  <ebb9@byu.net>
34374
34375         * lib/error.h: Fold in some upstream changes from glibc.
34376         * lib/error.c: Likewise.
34377
34378 2006-08-04  Bruno Haible  <bruno@clisp.org>
34379
34380         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
34381         Make the mostlyclean-local rule depend on mostlyclean-generic.
34382         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
34383
34384 2006-07-31  Bruno Haible  <bruno@clisp.org>
34385
34386         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
34387         <stdlib.h>, <string.h>.
34388
34389 2006-07-30  Bruno Haible  <bruno@clisp.org>
34390
34391         * modules/readlink (License): Change to LGPL.
34392
34393 2006-07-30  Bruno Haible  <bruno@clisp.org>
34394
34395         * modules/javaversion (Makefile.am): Distribute javaversion.java and
34396         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
34397         set PKGDATADIR to point to it.
34398
34399 2006-07-30  Bruno Haible  <bruno@clisp.org>
34400
34401         * modules/csharpexec (configure.ac): Comment out macro invocation.
34402         * modules/javaexec (configure.ac): Likewise.
34403         * modules/javacomp-script (configure.ac): Likewise.
34404
34405         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
34406
34407 2006-07-30  Bruno Haible  <bruno@clisp.org>
34408
34409         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
34410         linked-list.
34411
34412 2006-07-30  Bruno Haible  <bruno@clisp.org>
34413
34414         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
34415
34416 2006-07-30  Bruno Haible  <bruno@clisp.org>
34417
34418         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
34419         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
34420         get removed.
34421
34422 2006-07-29  Bruno Haible  <bruno@clisp.org>
34423
34424         Make it possible for gnulib-tool to work with locally modified or
34425         augmented gnulib repositories.
34426         * gnulib-tool (func_usage): Document --local-dir option.
34427         (local_gnulib_dir): New variable.
34428         Handle --local-dir option.
34429         (func_lookup_file): New function.
34430         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
34431         (func_get_description, func_get_filelist, func_get_description,
34432         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
34433         func_get_automake_snippet, func_get_include_directive,
34434         func_get_license, func_get_maintainer): Use func_lookup_file.
34435         (func_import, func_create_testdir): Use func_lookup_file.
34436
34437 2006-07-29  Bruno Haible  <bruno@clisp.org>
34438
34439         * modules/setenv (Depends-on): Add unistd.
34440
34441 2006-07-29  Bruno Haible  <bruno@clisp.org>
34442
34443         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
34444
34445 2006-07-29  Bruno Haible  <bruno@clisp.org>
34446
34447         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
34448
34449 2006-07-29  Bruno Haible  <bruno@clisp.org>
34450
34451         * gnulib-tool (import, update): If there is no Makefile.am, look at
34452         aclocal.m4, instead of bailing out.
34453
34454 2006-07-29  Bruno Haible  <bruno@clisp.org>
34455
34456         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
34457         Categorize the options by when they are useful.
34458
34459 2006-07-29  Bruno Haible  <bruno@clisp.org>
34460
34461         * gnulib-tool (func_usage): Document option --no-libtool.
34462         Handle option --no-libtool.
34463         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
34464         for changed semantics of $libtool variable.
34465         (func_import): Likewise. If libtool is not used, show this through
34466         an option --no-libtool.
34467         (func_create_testdir): Update.
34468
34469 2006-07-29  Bruno Haible  <bruno@clisp.org>
34470
34471         * gnulib-tool (func_import): Extend error message about missing
34472         --doc-base.
34473
34474 2006-07-29  Bruno Haible  <bruno@clisp.org>
34475
34476         * gnulib-tool (func_import): Don't create the $docbase directory if
34477         there is no file to store there.
34478
34479 2006-07-29  Bruno Haible  <bruno@clisp.org>
34480
34481         * gnulib-tool (autoconf_minversion): If a --dir option is given and
34482         relevant, look for configure.ac there, not in the current directory.
34483         Also use a simple search for AC_PREREQ, not "autoconf --trace".
34484
34485 2006-07-29  Bruno Haible  <bruno@clisp.org>
34486
34487         * gnulib-tool (SORT): New variable.
34488         (func_usage): Undocument --assume-autoconf option.
34489         Remove --assume-autoconf option handling.
34490         (autoconf_minversion): Determine from the contents of configure.ac.
34491         (func_import): Remove autoconf_minversion handling.
34492         Suggested by Eric Blake.
34493
34494 2006-07-29  Bruno Haible  <bruno@clisp.org>
34495
34496         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
34497
34498 2006-07-29  Bruno Haible  <bruno@clisp.org>
34499
34500         * config/srclist.txt (*setenv.[ch]): Remove rules.
34501
34502 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34503
34504         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
34505
34506 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34507
34508         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
34509         arpa/inet.h.
34510
34511 2006-07-28  Simon Josefsson  <jas@extundo.com>
34512
34513         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
34514         * modules/inet_pton (Depends-on): Likewise.
34515
34516 2006-07-28  Simon Josefsson  <jas@extundo.com>
34517
34518         * m4/netinet_in_h.m4: New file.
34519
34520 2006-07-28  Simon Josefsson  <jas@extundo.com>
34521
34522         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
34523         #include's.
34524
34525 2006-07-28  Simon Josefsson  <jas@extundo.com>
34526
34527         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
34528         #include's.
34529
34530 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
34531
34532         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
34533         setgid on directories only if they set these bits.
34534         * lib/modechange.h: Remove obsolete comment about masks.
34535
34536 2006-07-28  Eric Blake  <ebb9@byu.net>
34537
34538         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
34539         macro expansion.
34540
34541 2006-07-28  Bruno Haible  <bruno@clisp.org>
34542
34543         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
34544
34545 2006-07-28  Bruno Haible  <bruno@clisp.org>
34546
34547         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
34548
34549 2006-07-28  Bruno Haible  <bruno@clisp.org>
34550
34551         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
34552         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
34553         Define fallbacks.
34554         Avoids link error on FreeBSD 4.x.
34555         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
34556
34557         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
34558         encoding.
34559         * lib/mbswidth.c (iswcntrl): Likewise.
34560
34561 2006-07-27  Bruno Haible  <bruno@clisp.org>
34562
34563         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
34564         test.
34565
34566 2006-07-27  Bruno Haible  <bruno@clisp.org>
34567
34568         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
34569         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
34570         defined.
34571
34572 2006-07-26  Eric Blake  <ebb9@byu.net>
34573
34574         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
34575
34576 2006-07-26  Eric Blake  <ebb9@byu.net>
34577
34578         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
34579         like mingw that lack mkstemp.
34580         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
34581         avoid compilation warning on mingw.
34582
34583 2006-07-26  Bruno Haible  <bruno@clisp.org>
34584
34585         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
34586         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
34587         INT_FAST*_MIN, INTPTR_MIN.
34588
34589 2006-07-25  Bruno Haible  <bruno@clisp.org>
34590
34591         * modules/version-etc (Depends-on): Add stdarg.
34592
34593 2006-07-25  Bruno Haible  <bruno@clisp.org>
34594
34595         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
34596         complex commands.
34597
34598 2006-07-25  Bruno Haible  <bruno@clisp.org>
34599
34600         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
34601         defined in <stdarg.h> or config.h.
34602
34603 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
34604
34605         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
34606         (gl_STDIO_SAFER): Remove.
34607
34608 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
34609
34610         * MODULES.html.sh (File stream based Input/Output):
34611         Add fopen-safer, tmpfile-safer; remove stdio-safer.
34612         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
34613         * modules/fopen-safer, modules/tmpfile-safer: New files.
34614         * modules/stdio-safer: Remove.
34615
34616 2006-07-24  Bruno Haible  <bruno@clisp.org>
34617
34618         * modules/tmpdir: New file.
34619         * MODULES.html.sh (File system functions): Add it.
34620
34621 2006-07-24  Bruno Haible  <bruno@clisp.org>
34622
34623         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
34624         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
34625
34626 2006-07-24  Bruno Haible  <bruno@clisp.org>
34627
34628         * modules/clean-temp: New file.
34629
34630 2006-07-24  Bruno Haible  <bruno@clisp.org>
34631
34632         * m4/tmpdir.m4: New file, from GNU gettext.
34633
34634 2006-07-24  Bruno Haible  <bruno@clisp.org>
34635
34636         * lib/tmpdir.h: New file, from GNU gettext.
34637         * lib/tmpdir.c: New file, from GNU gettext.
34638
34639 2006-07-24  Bruno Haible  <bruno@clisp.org>
34640
34641         * lib/clean-temp.h: New file, from GNU gettext.
34642         * lib/clean-temp.c: New file, from GNU gettext.
34643
34644 2006-07-23  Eric Blake  <ebb9@byu.net>
34645
34646         * modules/stdio-safer (Files): Add tmpfile-safer.c.
34647         (Depends-on): Add binary-io.
34648
34649 2006-07-23  Eric Blake  <ebb9@byu.net>
34650
34651         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
34652
34653 2006-07-23  Eric Blake  <ebb9@byu.net>
34654
34655         * lib/tmpfile-safer.c: New file.
34656         * lib/stdio-safer.h (fopen_safer): Add prototype.
34657         * lib/stdio--.h (tmpfile): Make safer.
34658
34659 2006-07-23  Bruno Haible  <bruno@clisp.org>
34660
34661         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
34662         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
34663         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
34664         gl_linked_remove_at): Use it.
34665
34666 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34667         and Simon Josefsson <jas@extundo.com>
34668
34669         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
34670
34671         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
34672
34673 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
34674
34675         * modules/close-stream: New file.
34676         * modules/closeout (Description): Make it clear that it exits
34677         with a diagnostic on error.
34678         (Depends-on): Add close-stream.  Remove fpending, stdbool.
34679         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
34680
34681 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
34682
34683         * m4/close-stream.m4: New file.
34684
34685 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
34686
34687         * lib/close-stream.c, lib/close-stream.h: New files.
34688
34689 2006-07-22  Bruno Haible  <bruno@clisp.org>
34690
34691         Merge from GNU gettext 0.15.
34692
34693         2006-05-01  Bruno Haible  <bruno@clisp.org>
34694
34695                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
34696
34697         2006-07-22  Bruno Haible  <bruno@clisp.org>
34698
34699                 * modules/javaversion: New file.
34700                 * MODULES.html.sh (Java): Add javaversion.
34701
34702         2006-03-12  Bruno Haible  <bruno@clisp.org>
34703
34704                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
34705
34706         2005-12-04  Bruno Haible  <bruno@clisp.org>
34707
34708                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
34709                 (untested).
34710
34711         2006-06-21  Bruno Haible  <bruno@clisp.org>
34712
34713                 Avoid warnings from recent versions of mcs.
34714                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
34715                 -o, -L, -r any more. Use options documented since mcs-1.0
34716                 instead. Similarly for -g.
34717
34718         2005-12-04  Bruno Haible  <bruno@clisp.org>
34719
34720                 * build-aux/csharpcomp.sh.in: Suffix for resources is
34721                 .resources, not .resource.
34722
34723         2005-07-09  Bruno Haible  <bruno@clisp.org>
34724
34725                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
34726                 add a .dll suffix.
34727                 Reported by Mark Junker <mjscod@gmx.de>.
34728
34729         2006-07-22  Bruno Haible  <bruno@clisp.org>
34730
34731                 * modules/gettext: Upgrade to gettext-0.15.
34732                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
34733                 m4/visibility.m4.
34734                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
34735
34736 2006-07-22  Bruno Haible  <bruno@clisp.org>
34737
34738         Merge from GNU gettext 0.15.
34739
34740         2006-03-25  Bruno Haible  <bruno@clisp.org>
34741
34742                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
34743
34744         2006-07-21  Bruno Haible  <bruno@clisp.org>
34745
34746                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
34747                 "1.1".
34748
34749         2006-05-09  Bruno Haible  <bruno@clisp.org>
34750
34751                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
34752                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
34753                 for the conftestver execution.
34754
34755         2006-05-01  Bruno Haible  <bruno@clisp.org>
34756
34757                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
34758                 optional target-version argument. Verify that the compiler
34759                 groks source of the specified source-version, or add -source
34760                 option as necessary. Verify that the compiler produces
34761                 bytecode in the specified target-version, or add -target and
34762                 -source options as necessary. Make the result of the test
34763                 available as variable CONF_JAVAC. Also log error output in
34764                 config.log.
34765
34766         2006-03-11  Bruno Haible  <bruno@clisp.org>
34767
34768                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
34769
34770         2006-05-09  Bruno Haible  <bruno@clisp.org>
34771
34772                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
34773                 CLASSPATH_SEPARATOR to a semicolon.
34774
34775         2006-03-12  Bruno Haible  <bruno@clisp.org>
34776
34777                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
34778                 available as variable CONF_JAVA, for subsequent autoconf
34779                 tests. Also log error output in config.log.
34780
34781         2006-07-19  Bruno Haible  <bruno@clisp.org>
34782
34783                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
34784                 that getline works on glibc2 systems. Needed to avoid trouble
34785                 in relocatable.c.
34786                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
34787
34788         2005-12-04  Bruno Haible  <bruno@clisp.org>
34789
34790                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
34791                 launcher (untested).
34792
34793         2005-12-04  Bruno Haible  <bruno@clisp.org>
34794
34795                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
34796
34797         2006-07-22  Bruno Haible  <bruno@clisp.org>
34798
34799                 * gettext.m4: Update from GNU gettext-0.15.
34800                 * nls.m4: Likewise.
34801                 * po.m4: Likewise.
34802                 * inttypes-pri.m4: Likewise.
34803                 * inttypes-h.m4: Renamed from inttypes.m4.
34804                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
34805
34806 2006-07-22  Bruno Haible  <bruno@clisp.org>
34807
34808         Merge from GNU gettext 0.15.
34809
34810         2005-07-05  Bruno Haible  <bruno@clisp.org>
34811
34812                 * printf-args.c (printf_fetchargs): Work around broken
34813                 definition of wint_t on mingw.
34814
34815         2005-02-12  Bruno Haible  <bruno@clisp.org>
34816
34817                 * xallocsa.h: Add extern "C" for C++.
34818
34819         2006-05-17  Bruno Haible  <bruno@clisp.org>
34820
34821                 Cygwin portability.
34822                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
34823
34824         2006-04-30  Bruno Haible  <bruno@clisp.org>
34825
34826                 * progreloc.c: Include <mach-o/dyld.h> if available.
34827                 (find_executable): Use _NSGetExecutablePath when possible.
34828
34829         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
34830
34831                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
34832                 function.
34833
34834         2005-12-29  Bruno Haible  <bruno@clisp.org>
34835
34836                 * progreloc.c (set_program_name_and_installdir): Fix
34837                 compilation error.
34838
34839         2005-12-04  Bruno Haible  <bruno@clisp.org>
34840
34841                 Cygwin portability.
34842                 * progreloc.c: Include <windows.h> also on Cygwin.
34843                 (find_executable): Add support for Cygwin.
34844                 (set_program_name_and_installdir): Handle also platforms with
34845                 nonempty EXEEXT.
34846
34847         2006-07-11  Bruno Haible  <bruno@clisp.org>
34848
34849                 * javacomp.c: Fix a comment.
34850                 Reported by Jim Meyering.
34851
34852         2006-04-30  Bruno Haible  <bruno@clisp.org>
34853
34854                 * javacomp.h (compile_java_class): Add source_version,
34855                 target_version arguments.
34856                 * javacomp.c: Rewritten to choose only a compiler that
34857                 respects the specified source_version and target_version.
34858
34859         2006-06-27  Bruno Haible  <bruno@clisp.org>
34860
34861                 Assume correct S_ISDIR macro.
34862                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
34863
34864         2006-07-22  Bruno Haible  <bruno@clisp.org>
34865
34866                 * javaversion.h: New file, from GNU gettext.
34867                 * javaversion.c: New file, from GNU gettext.
34868                 * javaversion.java: New file, from GNU gettext.
34869                 * javaversion.class: New file, from GNU gettext.
34870
34871         2006-05-17  Bruno Haible  <bruno@clisp.org>
34872
34873                 Cygwin portability.
34874                 * javaexec.c (execute_java_class): Test for jview program
34875                 also on Cygwin.
34876
34877         2006-04-09  Bruno Haible  <bruno@clisp.org>
34878
34879                 * fatal-signal.c: Don't include string.h.
34880                 (at_fatal_signal): Use a copying loop instead of memcpy.
34881
34882         2005-12-04  Bruno Haible  <bruno@clisp.org>
34883
34884                 * csharpexec.c: Add support for 'clix' launcher (untested).
34885                 (execute_csharp_using_sscli): New function.
34886                 (execute_csharp_program): Call it.
34887
34888         2006-06-21  Bruno Haible  <bruno@clisp.org>
34889
34890                 Avoid warnings from recent versions of mcs.
34891                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
34892                 -o, -L, -r any more. Use options documented since mcs-1.0
34893                 instead. Similarly for -g.
34894
34895         2005-07-09  Bruno Haible  <bruno@clisp.org>
34896
34897                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
34898                 add a .dll suffix.
34899                 Reported by Mark Junker <mjscod@gmx.de>.
34900
34901         2006-06-17  Bruno Haible  <bruno@clisp.org>
34902
34903                 * config.charset: Update for NetBSD 3.0.
34904
34905         2006-05-17  Bruno Haible  <bruno@clisp.org>
34906
34907                 Cygwin portability.
34908                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
34909
34910         2006-05-16  Bruno Haible  <bruno@clisp.org>
34911
34912                 * localcharset.c [CYGWIN]: Include <windows.h>.
34913                 (get_charset_aliases): For Cygwin, return the same CPxxx
34914                 aliases list as under WIN32.
34915                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
34916                 the environment variables. Fall back to GetACP().
34917
34918         2006-04-05  Bruno Haible  <bruno@clisp.org>
34919
34920                 * config.charset: Update Juan Manuel Guerrero's address.
34921
34922         2005-02-12  Bruno Haible  <bruno@clisp.org>
34923
34924                 * allocsa.h: Add extern "C" for C++.
34925
34926         2005-02-10  Bruno Haible  <bruno@clisp.org>
34927
34928                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
34929                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
34930
34931         2006-07-22  Bruno Haible  <bruno@clisp.org>
34932
34933                 * gettext.h: Update to GNU gettext-0.15.
34934
34935 2006-07-22  Bruno Haible  <bruno@clisp.org>
34936
34937         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
34938         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
34939         lib-prefix.m4, longdouble.m4, ssize_t.m4.
34940
34941 2006-07-21  Eric Blake  <ebb9@byu.net>
34942
34943         * modules/stdlib-safer: New file.
34944         * MODULES.html.sh (File stream based Input/Output): Add
34945         stdlib-safer.
34946
34947 2006-07-21  Eric Blake  <ebb9@byu.net>
34948
34949         * lib/stdlib-safer.h: New file from coreutils, required by
34950         stdlib--.h.
34951
34952 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
34953
34954         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
34955
34956 2006-07-20  Bruno Haible  <bruno@clisp.org>
34957
34958         * gnulib-tool: Recognize new option --assume-autoconf.
34959         (autoconf_minversion): New variable.
34960         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
34961
34962 2006-07-20  Bruno Haible  <bruno@clisp.org>
34963
34964         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
34965
34966 2006-07-19  Derek R. Price  <derek@ximbiot.com>
34967
34968         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
34969         Reindent and repaginate.
34970
34971 2006-07-19  Derek Price  <derek@ximbiot.com>
34972
34973         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
34974         Correct grammar.
34975
34976 2006-07-17  Bruno Haible  <bruno@clisp.org>
34977
34978         * modules/list: New file.
34979         * modules/array-list: New file.
34980         * modules/carray-list, modules/carray-list-tests: New files.
34981         * modules/linked-list, modules/linked-list-tests: New files.
34982         * modules/avltree-list, modules/avltree-list-tests: New files.
34983         * modules/rbtree-list, modules/rbtree-list-tests: New files.
34984         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
34985         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
34986         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
34987         * modules/oset: New file.
34988         * modules/array-oset: New file.
34989         * modules/avltree-oset, modules/avltree-oset-tests: New files.
34990         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
34991         * tests/test-carray_list.c: New file.
34992         * tests/test-linked_list.c: New file.
34993         * tests/test-avltree_list.c: New file.
34994         * tests/test-rbtree_list.c: New file.
34995         * tests/test-linkedhash_list.c: New file.
34996         * tests/test-avltreehash_list.c: New file.
34997         * tests/test-rbtreehash_list.c: New file.
34998         * tests/test-avltree_oset.c: New file.
34999         * tests/test-rbtree_oset.c: New file.
35000         * MODULES.html.sh (Container data structures): New section.
35001
35002 2006-07-17  Bruno Haible  <bruno@clisp.org>
35003
35004         * m4/gl_list.m4: New file.
35005
35006 2006-07-17  Bruno Haible  <bruno@clisp.org>
35007
35008         * lib/gl_list.h: New file.
35009         * lib/gl_list.c: New file.
35010         * lib/gl_array_list.h: New file.
35011         * lib/gl_array_list.c: New file.
35012         * lib/gl_carray_list.h: New file.
35013         * lib/gl_carray_list.c: New file.
35014         * lib/gl_linked_list.h: New file.
35015         * lib/gl_linked_list.c: New file.
35016         * lib/gl_anylinked_list1.h: New file.
35017         * lib/gl_anylinked_list2.h: New file.
35018         * lib/gl_avltree_list.h: New file.
35019         * lib/gl_avltree_list.c: New file.
35020         * lib/gl_anyavltree_list1.h: New file.
35021         * lib/gl_anyavltree_list2.h: New file.
35022         * lib/gl_rbtree_list.h: New file.
35023         * lib/gl_rbtree_list.c: New file.
35024         * lib/gl_anyrbtree_list1.h: New file.
35025         * lib/gl_anyrbtree_list2.h: New file.
35026         * lib/gl_anytree_list1.h: New file.
35027         * lib/gl_anytree_list2.h: New file.
35028         * lib/gl_linkedhash_list.h: New file.
35029         * lib/gl_linkedhash_list.c: New file.
35030         * lib/gl_anyhash_list1.h: New file.
35031         * lib/gl_anyhash_list2.h: New file.
35032         * lib/gl_avltreehash_list.h: New file.
35033         * lib/gl_avltreehash_list.c: New file.
35034         * lib/gl_rbtreehash_list.h: New file.
35035         * lib/gl_rbtreehash_list.c: New file.
35036         * lib/gl_anytreehash_list1.h: New file.
35037         * lib/gl_anytreehash_list2.h: New file.
35038
35039         * lib/gl_oset.h: New file.
35040         * lib/gl_oset.c: New file.
35041         * lib/gl_array_oset.h: New file.
35042         * lib/gl_array_oset.c: New file.
35043         * lib/gl_avltree_oset.h: New file.
35044         * lib/gl_avltree_oset.c: New file.
35045         * lib/gl_rbtree_oset.h: New file.
35046         * lib/gl_rbtree_oset.c: New file.
35047         * lib/gl_anytree_oset.h: New file.
35048
35049 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
35050
35051         * m4/mkancesdirs.m4: New file.
35052         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
35053         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
35054         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
35055         it.
35056
35057 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
35058
35059         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
35060         * lib/mkancesdirs.h: New files.
35061         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
35062         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
35063         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
35064         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
35065         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
35066         callers changed.  Revamp internals significantly, by not
35067         attempting to create directories that are temporarily more
35068         permissive than the final results.  Do not attempt to use
35069         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
35070         This removes some race conditions, fixes some bugs, and simplifies
35071         things.  Use new dirchownmod function to do owner and mode changes.
35072         * lib/mkdir-p.h: Likewise.
35073         * lib/modechange.c (octal_to_mode): New function.
35074         (struct mode_change): New member mentioned.
35075         (make_node_op_equals): New arg mentioned.  All callers changed.
35076         (mode_compile): Keep track of which mode bits the user has explicitly
35077         mentioned.
35078         (mode_adjust): New arg DIR, so that we implement the X op correctly.
35079         New arg PMODE_BITS, to keep track of which mode bits the user
35080         mentioned; it treats S_ISUID and S_ISGID speciall.
35081         All callers changed.
35082         * lib/modechange.h: Likewise.
35083
35084 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
35085
35086         * MODULES.html.sh: Add mkancestors.
35087         * modules/mkancesdirs: New module.
35088         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
35089         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
35090         The chdir-safer and afs files are now orphans; I'll remove them
35091         unless someone speaks up.
35092         Add lib/dirchownmod.c, lib/dirchownmod.h.
35093         (Depends-on): Remove alloca, chown, save-cwd, dirname.
35094         Add lchown, mkancesdirs.
35095         (Maintainer): Add self.
35096
35097 2006-07-15  Karl Berry  <karl@gnu.org>
35098
35099         * gnulib-tool: help message wording/arrangement.
35100
35101 2006-07-14  Simon Josefsson  <jas@extundo.com>
35102
35103         * doc/gnulib.texi (Libtool and Windows): New section.
35104
35105 2006-07-12  Simon Josefsson  <jas@extundo.com>
35106
35107         * modules/gendocs (License): Fix license, approved by Karl.
35108
35109 2006-07-12  Eric Blake  <ebb9@byu.net>
35110
35111         * MODULES.html.sh: Add gendocs.
35112
35113 2006-07-11  Eric Blake  <ebb9@byu.net>
35114
35115         * modules/fdl: New module, to install doc/fdl.texi.
35116         * MODULES.html.sh: Add new section for documentation modules.
35117         * gnulib-tool: Avoid space-tab.
35118         (--doc-base): New option, to manage files from doc.
35119
35120 2006-07-11  Eric Blake  <ebb9@byu.net>
35121
35122         * m4/absolute-header.m4: Fix comments to match recent change.
35123
35124 2006-07-11  Eric Blake  <ebb9@byu.net>
35125
35126         * gnulib-tool: List --doc-base before --tests-base.
35127
35128 2006-07-11  Derek R. Price  <derek@ximbiot.com>
35129
35130         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
35131
35132 2006-07-11  Bruno Haible  <bruno@clisp.org>
35133
35134         * README: Mention where to put documentation.
35135
35136 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35137
35138         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
35139
35140 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
35141
35142         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
35143         to stdint.m4.
35144
35145 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
35146
35147         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
35148         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
35149         "no/such/file/stdint.h" when there is no such file, so that
35150         the resulting C code can be parsed by dodgy compilers.
35151         Problems reported by Bob Proulx.
35152
35153 2006-07-10  Derek R. Price  <derek@ximbiot.com>
35154
35155         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
35156         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
35157         macros into the GNU _D_EXACT_NAMLEN.
35158         * lib/savedir.c:  Likewise.
35159         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
35160
35161 2006-07-10  Derek R. Price  <derek@ximbiot.com>
35162         and Paul Eggert  <eggert@cs.ucla.edu>
35163
35164         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
35165         * m4/savedir.m4:
35166         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
35167         macros into the GNU _D_EXACT_NAMLEN.
35168
35169 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
35170
35171         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
35172         around the absolute name, to work around a problem with the HP-UX
35173         11.23 native C compiler, reported by Bob Proulx.
35174
35175 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
35176
35177         * doc/maintain.texi, make-stds.texi: Sync from
35178         <http://savannah.gnu.org/projects/gnustandards>.
35179
35180 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
35181
35182         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
35183
35184 2006-07-09  Jim Meyering  <jim@meyering.net>
35185
35186         * m4/glob.m4: Remove a doubled word in a comment.
35187
35188 2006-07-09  Jim Meyering  <jim@meyering.net>
35189
35190         * lib/argp-pv.c: Remove a doubled word in a comment.
35191         * lib/check-version.c (check_version): Likewise.
35192         * lib/javacomp.c (compile_java_class): Likewise.
35193
35194 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
35195
35196         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
35197         for the benefit of people using Autoconf 2.60.  If you want to
35198         support older Autoconf versions you can copy m4/onceonly_2_57.m4
35199         (or m4/onceonly.m4, if pre-2.57) manually.
35200
35201 2006-07-08  Jim Meyering  <jim@meyering.net>
35202
35203         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
35204         comment.
35205         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
35206         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
35207         comment.
35208
35209 2006-07-08  Jim Meyering  <jim@meyering.net>
35210
35211         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
35212
35213 2006-07-07  Simon Josefsson  <jas@extundo.com>
35214
35215         * tests/test-crc.c: Change expected crc value, the test vector
35216         were probably computed using the old broken crc.c?
35217
35218 2006-07-06  Simon Josefsson  <jas@extundo.com>
35219
35220         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
35221         now the canonical place for the M4 file).
35222
35223         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
35224         from the sys_socket dependency now.
35225
35226         * modules/inet_pton (Files): Ditto.
35227
35228         * modules/inet_ntop (Files): Ditto.
35229
35230 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
35231
35232         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
35233         not gl_PREREQ_GETUSERSHELL.
35234
35235 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35236
35237         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
35238         with only one argument, for Autoconf 2.60.
35239         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
35240         expand to nothing, so add a shell command to avoid syntax error.
35241         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
35242
35243 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35244
35245         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
35246
35247 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
35248
35249         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
35250         no longer needed.  Check for isblank decl.
35251         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
35252         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
35253         of existence.
35254
35255 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
35256
35257         * lib/getloadavg.c: Use __VMS, not VMS.
35258         * lib/getopt.c: Likewise.
35259         * lib/getpagesize.h: Likewise.
35260         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
35261         and probably does not work.
35262
35263 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
35264
35265         * lib/.cppi-disable: Add wcwidth.
35266         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
35267         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
35268         (ISGRAPH): Remove.  All uses changed to isgraph.
35269         (FOLD) [!defined _LIBC]: Remove special case.
35270         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
35271         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
35272         HAVE_ISBLANK.
35273         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
35274         case.
35275
35276 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
35277
35278         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
35279         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
35280         brackets.  Other minor changes to suppress some compiler
35281         warnings.
35282
35283 2006-07-06  Derek R. Price  <derek@ximbiot.com>
35284         and Paul Eggert  <eggert@cs.ucla.edu>
35285
35286         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
35287         of invoking obsolescent AC_HEADER_DIRENT macro.
35288         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
35289         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
35290         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
35291         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
35292         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
35293         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
35294         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
35295         * m4/readdir.m4: Remove; no longer needed.
35296
35297 2006-07-06  Derek R. Price  <derek@ximbiot.com>
35298         and Paul Eggert  <eggert@cs.ucla.edu>
35299
35300         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
35301         Don't worry about this obsolete case any more.
35302         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
35303         directories.
35304         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
35305         worry about this obsolete case any more.
35306         * lib/fts.c: Likewise.
35307         * lib/getcwd.c: Likewise.
35308         * lib/glob.h: Likewise.
35309         * lib/savedir.c: Likewise.
35310
35311 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
35312
35313         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
35314         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
35315         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
35316         needed.
35317         All uses removed.
35318         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
35319         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
35320         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
35321         needed.
35322         * m4/getdate.m4 (gl_GETDATE): Likewise.
35323         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
35324         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
35325         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
35326         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
35327         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
35328         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
35329         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
35330         needed.
35331
35332 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
35333
35334         * lib/memcasecmp.c: Include <limits.h>.
35335         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
35336         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
35337         Don't assume isdigit succeeds only on '0' through '9'.
35338
35339 2006-07-05  Eric Blake  <ebb9@byu.net>
35340
35341         * modules/getaddrinfo (Depends-on): Add snprintf.
35342
35343 2006-07-05  Eric Blake  <ebb9@byu.net>
35344
35345         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
35346         to avoid 'header present but could not be compiled' on cygwin.
35347
35348 2006-07-05  Eric Blake  <ebb9@byu.net>
35349
35350         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
35351         missing from netdb.h.
35352         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
35353
35354 2006-07-05  Derek R. Price  <derek@ximbiot.com>
35355
35356         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
35357         no longer needed.
35358         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
35359         * m4/getdate.m4 (gl_GETDATE): Likewise.
35360         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
35361         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
35362         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
35363         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
35364         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
35365
35366 2006-07-05  Derek R. Price  <derek@ximbiot.com>
35367
35368         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
35369         All uses of is_space replaced by isspace.
35370         * lib/exit.h: Don't talk about STDC_HEADERS.
35371         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
35372         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
35373         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
35374         replaced by isprint etc.
35375         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
35376         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
35377         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
35378         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
35379         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
35380         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
35381
35382 2006-07-05  Bruno Haible  <bruno@clisp.org>
35383
35384         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
35385         the function exists, before testing against AIX.
35386         Reported by Martin Lambers <marlam@marlam.de>.
35387
35388 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
35389
35390         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
35391         From Mark D. Baushke.
35392
35393 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
35394
35395         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
35396         to the absolute name, not just one, to bypass Sun C 5.8's
35397         "warning: #include of /usr/include/... may be non-portable".
35398
35399 2006-07-04  Eric Blake  <ebb9@byu.net>
35400
35401         * modules/dirname-tests: New test module.
35402         * tests/test-dirname.c: New file, replacing dirname.c
35403         TEST_DIRNAME section that was recently deleted.
35404
35405 2006-07-04  Bruno Haible  <bruno@clisp.org>
35406
35407         Assume ANSI C header files and <ctype.h> functions.
35408         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
35409         (mbsnwidth): Use isprint, iscntrl instead.
35410
35411 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
35412
35413         Merge from coreutils.
35414         * MODULES.html.sh: Add xstrtold.
35415         * modules/xstrtold: New file.
35416         * modules/cycle-check (Files): Add lib/same-inode.h.
35417         * modules/dirname (Files): Add m4/double-slash-root.m4.
35418         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
35419         * modules/mkdir-p (Files): Add lib/same-inode.h.
35420         * modules/same (Files): Add lib/same-inode.h.
35421
35422 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
35423
35424         * m4/absolute-header.m4: Renamed from full-header-path.m4.
35425         This is to keep the terminology clean; POSIX talks about
35426         "absolute pathnames", not "full pathnames", but the GNU
35427         Coding Standards say to use "path" for something else;
35428         so use "absolute" to keep both sides happy.
35429         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
35430         Set gl_absolute_header, not gl_full_header_path.
35431         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
35432         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
35433         All uses changed.
35434
35435         Merge from coreutils.
35436
35437         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
35438
35439         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
35440         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
35441         want to require the building of c-strtod.o.
35442         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
35443         needs -lm directly.
35444         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
35445
35446         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
35447
35448         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
35449         --as-needed option if available.  Problem reported by Albert Chin in
35450         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
35451         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
35452         cc merely issues a bunch of annoying warnings for --as-needed
35453         (this problem was reported by Bob Proulx).  Also, try linking with
35454         -lm to detect a bug in binutils 2.16 (this problem was reported
35455         by Ralf Wildenhues).
35456
35457         2006-06-18  Jim Meyering  <jim@meyering.net>
35458
35459         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
35460         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
35461         macro.
35462         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
35463         also check for glibc-2.4's abort-inducing bug.
35464
35465         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
35466         Low-probability clean-up should be to use rmdir to get rid of
35467         the just-created directory, not unlink.
35468
35469         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
35470         configure fail, and request a bug report to inform us about it.
35471         Add a comment that, barring reports to the contrary, in 2007 we'll
35472         assume ftruncate is universally available.
35473
35474         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
35475
35476         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
35477
35478         2006-03-12  Jim Meyering  <jim@meyering.net>
35479
35480         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
35481         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
35482         * m4/same.m4 (gl_SAME): Likewise.
35483         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
35484
35485         2006-03-11  Eric Blake  <ebb9@byu.net>
35486
35487         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
35488         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
35489         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
35490         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
35491
35492 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
35493
35494         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
35495         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
35496         reported by Mark D. Baushke, one in
35497         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
35498
35499         Merge from coreutils.
35500
35501         * lib/.cppi-disable: Add stdint_.h.
35502         * lib/.cvsignore: Add stdint.h.
35503
35504         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
35505
35506         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
35507         both double and long double versions.
35508         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
35509         * lib/xstrtold.c: New file.
35510         * lib/xstrtod.h (xstrtold): New decl.
35511
35512         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
35513
35514         * lib/filemode.c (setst): Remove.
35515         (strmode): Rewrite to avoid setst.  This makes the code shorter,
35516         (arguably) clearer, and the generated code is a bit smaller on my
35517         Debian GNU/Linux stable x86 host.
35518
35519         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
35520
35521         * lib/filemode.c: Include "filemode.h" first, to test the interface.
35522         Assume that filemode.h includes sys/types.h and sys/stat.h.
35523         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
35524         (ftypelet): Reorder to put common cases first, for efficiency.
35525         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
35526         to do 'M'.
35527         (strmode): Renamed from mode_string, and now stores 12 bytes instead
35528         of 10, for compatibility with FreeBSD.  All callers changed.
35529         (filemodestring): Now stores 12 bytes instead of 10, and sets file
35530         types that can't be deduced solely from st_mode.  First arg is now a
35531         const pointer.
35532         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
35533         (strmode): Renamed from mode_string.
35534         (filemodestring): New decl.
35535         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
35536         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
35537         needed.
35538         (S_ISPORT, S_ISWHT): New macros, if not already defined.
35539
35540         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
35541
35542         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
35543         fsusage.h now does that.  Include fsusage.h first, to test interface.
35544         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
35545         at most one method (the old code could have generated decls that
35546         didn't conform to C89, not that this was ever exercised).
35547         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
35548
35549         2006-03-19  Jim Meyering  <jim@meyering.net>
35550
35551         Work even in a chroot where d_ino values for entries in "/"
35552         don't match the stat.st_ino values for the same names.
35553         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
35554         number, iterate through all entries again, using lstat instead.
35555         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
35556         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
35557
35558         * lib/getcwd.c (__getcwd): Clarify a comment.
35559         Use memcpy in place of a call to strcpy.
35560
35561         2006-03-12  Jim Meyering  <jim@meyering.net>
35562
35563         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
35564         matches that of the current directory (which we're about to chdir ".."
35565         out of), then save the dev-ino of the parent, instead.
35566
35567         * lib/same-inode.h (SAME_INODE): New file/macro.
35568         * lib/chdir-safer.c (SAME_INODE): Remove definition.
35569         Include "same-inode.h", instead.
35570         * lib/same.c: Likewise.
35571         * lib/cycle-check.h: Include "same-inode.h".
35572         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
35573         * lib/cycle-check.c (SAME_INODE): Remove definition.
35574         * lib/root-dev-ino.h: Include "same-inode.h".
35575
35576         2006-03-11  Eric Blake  <ebb9@byu.net>
35577
35578         * lib/same.c (same_name): s/base_name/last_component/
35579         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
35580         * lib/filenamecat.c (file_name_concat): Likewise.
35581
35582         2006-03-11  Eric Blake  <ebb9@byu.net>,
35583                     Paul Eggert  <eggert@cs.ucla.edu>
35584
35585         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
35586         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
35587         drive prefix.
35588         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
35589         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
35590         (last_component): New method.
35591         * lib/dirname.c (dir_len): Determine when drive letters need a
35592         subsequent slash.  Preserve // when it is special.
35593         (dir_name): Don't append dot when drive letter is absolute.
35594         [TEST_DIRNAME]: Move into a full-blown gnulib test.
35595         * lib/basename.c (base_name): New semantics - malloc the result.
35596         Preserve // when it is special.  Preserve relative files that look
35597         like drive letters.
35598         (base_len): Preserve // when it is special.
35599         (last_component): New method, similar to old base_name semantics.
35600         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
35601         base_name.  Strip redundant slashes from ///.
35602
35603 2006-07-03  Jim Meyering  <jim@meyering.net>
35604
35605         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
35606         macro is used before the first cycle_check call.
35607
35608 2006-07-03  Eric Blake  <ebb9@byu.net>
35609
35610         * modules/dirname (Depends-on): Add xstrndup.
35611
35612 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
35613
35614         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
35615         test cases, so that config.log is a bit easier to follow.
35616
35617 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
35618
35619         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
35620         both are 64 bits, since this seems to be the tradition, and this
35621         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
35622         we ever run into a host that prefers long long to long in this
35623         case, we'll need another configure-time test.  Problem reported by
35624         Jim Meyering.
35625
35626 2006-07-02  Eric Blake  <ebb9@byu.net>
35627
35628         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
35629
35630 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
35631
35632         * modules/inttypes (Depends-on): No longer depends on stdint.
35633         * modules/stdint (Description): Say more about assumptions.
35634         Say that the fast types might differ.  Say macros are used.
35635         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
35636         (Makefile.am): Revise list of substituted symbols to match
35637         new stdint.m4.
35638         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
35639         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
35640         * tests/test-stdint.c (verify_same_types)
35641         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
35642         the code conforms to C99/C89.
35643         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
35644         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
35645
35646 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
35647
35648         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
35649         but fix a bug, by requiring at least 64 bits.
35650         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
35651         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
35652         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
35653         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
35654
35655         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
35656         changes.  Make 2.59 a prerequisite.  Check and substitute for
35657         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
35658         inttypes.h.  Do not use special include files; just use the
35659         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
35660         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
35661         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
35662         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
35663         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
35664         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
35665         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
35666         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
35667         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
35668         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
35669         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
35670         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
35671         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
35672         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
35673         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
35674         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
35675         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
35676         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
35677         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
35678         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
35679         WINT_MAX.  Check for C99 conformance more strictly, by detecting
35680         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
35681         not check for things that C99 does not require, e.g., int8_t.  If
35682         a test isn't needed unless <stdint.h> isn't working, and is
35683         unlikely to be needed for any other reason, then don't do it
35684         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
35685         size_t, since we assume C89 freestanding at least.  Do not check
35686         for sig_atomic_t, wchar_t, or wint_t, since the code now does
35687         the right thing even if the types are not defined.  Instead use:
35688         (gl_STDINT_TYPE_PROPERTIES): New macro.
35689         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
35690         testing whether <sys/types.h> clashes, as Autoconf does this for
35691         us now.  All uses removed.
35692         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
35693         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
35694         (gl_CHECK_TYPE_SAME):
35695         Remove; no longer needed.
35696         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
35697         exists, since we'll return 0 anyway in that case.
35698         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
35699
35700 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
35701
35702         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
35703         possible collision with system files.
35704         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
35705         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
35706         WCHAR_MIN and WCHAR_MAX in this case.
35707         (<stddef.h>): Do not include; no longer needed.
35708         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
35709         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
35710         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
35711         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
35712         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
35713         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
35714         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
35715         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
35716         !defined(__c99))]: Include in this case too, since it's harmless
35717         now.
35718         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
35719         dangerous to do so.
35720         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
35721         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
35722         (_STDINT_MIN, _STDINT_MAX): New macros.
35723         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
35724         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
35725         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
35726         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
35727         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
35728         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
35729         macros, not typedefs; this simplifies things quite a bit.
35730         Use long int for all types narrower than int64_t.
35731         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
35732         Define in terms of long long int or int64_t or long int,
35733         not int64_t or int32_t.  This saves some compile-time testing.
35734         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
35735         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
35736         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
35737         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
35738         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
35739         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
35740         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
35741         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
35742         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
35743         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
35744         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
35745         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
35746         undef any previous version and define our own version, for
35747         simplicity and consistency with the new macros for types.
35748         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
35749         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
35750         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
35751         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
35752         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
35753         @WINT_T_SUFFIX@ to keep things simple here.
35754         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
35755         Simplify by assuming typical 8/16/32/64 host, since we're
35756         already doing that elsewhere anyway.
35757         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
35758         and assume long long int is 64 bits if available.  This
35759         speeds up 'configure'.
35760
35761 2006-07-01  Eric Blake  <ebb9@byu.net>
35762
35763         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
35764         Reported by Andreas Buening.
35765
35766 2006-07-01  Eric Blake  <ebb9@byu.net>
35767
35768         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
35769
35770 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
35771
35772         * lib/getaddrinfo.c: fixed typo
35773
35774 2006-06-29  Jim Meyering  <jim@meyering.net>
35775
35776         * modules/strftime (Maintainer): Add my name, since with the
35777         FPRINTFTIME changes strftime.c has forked from glibc.
35778
35779 2006-06-29  Eric Blake  <ebb9@byu.net>
35780
35781         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
35782
35783 2006-06-29  Eric Blake  <ebb9@byu.net>
35784
35785         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
35786
35787 2006-06-29  Eric Blake  <ebb9@byu.net>
35788
35789         * lib/stat_.h: New file.
35790
35791 2006-06-29  Eric Blake  <ebb9@byu.net>
35792
35793         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
35794         unused static function.
35795
35796 2006-06-29  Eric Blake  <ebb9@byu.net>
35797
35798         * doc/functions.texi (Function Portability): Document missing lstat
35799         on mingw.
35800
35801 2006-06-29  Eric Blake  <ebb9@byu.net>
35802
35803         * MODULES.html.sh: Add sys_stat.
35804         * modules/sys_stat: New module.
35805         * modules/mkstemp (Depends-on): Add sys_stat.
35806
35807 2006-06-29  Derek R. Price  <derek@ximbiot.com>
35808
35809         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
35810
35811 2006-06-29  Derek R. Price  <derek@ximbiot.com>
35812
35813         * m4/c-bs-a.m4: Removed.
35814
35815 2006-06-29  Derek R. Price  <derek@ximbiot.com>
35816
35817         * lib/strftime.c: Assume strftime() exists.
35818
35819 2006-06-29  Derek Price  <derek@ximbiot.com>
35820
35821         * modules/c-bs-a: Removed - \a is C89.
35822         * MODULES.html.sh: Remove c-bs-a.
35823
35824 2006-06-29  Bruno Haible  <bruno@clisp.org>
35825
35826         * modules/wcwidth (License): Change to LGPL.
35827
35828 2006-06-28  Simon Josefsson  <jas@extundo.com>
35829
35830         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
35831         on _WIN32.
35832
35833         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
35834         getnameinfo.
35835
35836 2006-06-28  Simon Josefsson  <jas@extundo.com>
35837
35838         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
35839
35840 2006-06-28  Simon Josefsson  <jas@extundo.com>
35841
35842         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
35843         functions there.  It will succeed on Windows XP, but on Windows
35844         2000 and (presumably) earlier, it will fail, and use the internal
35845         re-implementation.
35846         (use_win32_p): New function.
35847         (getaddrinfo): Use strtoul on servname, to support numeric ports.
35848         Support AI_NUMERICSERV to disable getservbyname.
35849         (getnameinfo): New function, only supports
35850         NI_NUMERICHOST|NI_NUMERICSERV for now.
35851
35852         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
35853         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
35854         getnameinfo.
35855
35856 2006-06-28  Eric Blake  <ebb9@byu.net>
35857
35858         * modules/wcwidth: New file.
35859         * modules/mbchar (Depends-on): Add wcwidth.
35860         * modules/mbswidth (Depends-on): Add wcwidth.
35861         * MODULES.html.sh: Add wcwidth.
35862
35863 2006-06-28  Eric Blake  <ebb9@byu.net>
35864
35865         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
35866         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
35867
35868 2006-06-28  Eric Blake  <ebb9@byu.net>
35869
35870         * lib/xvasprintf.h: Fix comments.
35871
35872 2006-06-28  Eric Blake  <ebb9@byu.net>
35873
35874         * lib/mbchar.h (wcwidth): Include wcwidth.h.
35875         * lib/mbswidth.c (wcwidth): Move from here...
35876         * lib/wcwidth.h: ...to this new file.
35877
35878 2006-06-28  Derek R. Price  <derek@ximbiot.com>
35879
35880         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
35881
35882         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
35883         it's obsolete.
35884         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
35885
35886 2006-06-28  Derek R. Price  <derek@ximbiot.com>
35887
35888         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
35889         Autoconf 2.60 says this stuff was obsolete.
35890
35891 2006-06-28  Bruno Haible  <bruno@clisp.org>
35892
35893         * modules/wcwidth (Files): Add m4/wchar_t.m4.
35894
35895 2006-06-28  Bruno Haible  <bruno@clisp.org>
35896
35897         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
35898         gt_TYPE_WCHAR_T.
35899
35900 2006-06-28  Bruno Haible  <bruno@clisp.org>
35901
35902         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
35903         declaration for wcwidth.
35904         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
35905
35906 2006-06-28  Bruno Haible  <bruno@clisp.org>
35907
35908         * lib/mkdtemp.c [MINGW]: Include <io.h>.
35909         (mkdir): Define using _mkdir.
35910
35911 2006-06-28  Bruno Haible  <bruno@clisp.org>
35912
35913         * lib/getaddrinfo.h: Fix POSIX URL.
35914         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
35915         _WIN32.
35916         (use_win32_p): Make static.
35917         (getaddrinfo): Reject service name if it is empty or does not consist
35918         solely of decimal digits, or if its value is > 65535.
35919         (getnameinfo): Remove useless casts.
35920
35921 2006-06-27  Simon Josefsson  <jas@extundo.com>
35922
35923         * modules/sys_select: New file, suggested by Bruno Haible, Paul
35924         Eggert and Martin Lambers.
35925
35926 2006-06-27  Simon Josefsson  <jas@extundo.com>
35927
35928         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
35929         Eggert and Martin Lambers.
35930
35931 2006-06-27  Bruno Haible  <bruno@clisp.org>
35932
35933         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
35934         result to 0, not to empty.
35935         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
35936
35937 2006-06-27  Bruno Haible  <bruno@clisp.org>
35938
35939         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
35940
35941 2006-06-26  Simon Josefsson  <jas@extundo.com>
35942
35943         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
35944         present.
35945
35946 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
35947
35948         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
35949         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
35950         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
35951
35952 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
35953
35954         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
35955
35956 2006-06-26  Bruno Haible  <bruno@clisp.org>
35957
35958         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
35959
35960 2006-06-26  Bruno Haible  <bruno@clisp.org>
35961
35962         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
35963
35964 2006-06-26  Bruno Haible  <bruno@clisp.org>
35965
35966         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
35967         SGI C compiler in pre-C99 mode.
35968         Suggested by Mark D. Baushke and Larry Jones.
35969
35970 2006-06-26  Bruno Haible  <bruno@clisp.org>
35971
35972         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
35973         WCHAR_MAX.
35974         Reported by Mark D. Baushke and Larry Jones.
35975
35976 2006-06-26  Bruno Haible  <bruno@clisp.org>
35977
35978         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
35979         in pre-C99 mode.
35980         Suggested by Mark D. Baushke and Larry Jones.
35981
35982 2006-06-23  Simon Josefsson  <jas@extundo.com>
35983             Bruno Haible  <bruno@clisp.org>
35984
35985         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
35986         Emit mostlyclean-local rule.
35987         (func_emit_tests_Makefile_am): Likewise.
35988         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
35989
35990 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
35991
35992         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
35993
35994 2006-06-23  Bruno Haible  <bruno@clisp.org>
35995
35996         * tests/test-stdint.c: Update to match ISO C 99 Technical
35997         Corrigendum 1.
35998
35999 2006-06-23  Bruno Haible  <bruno@clisp.org>
36000
36001         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
36002
36003 2006-06-23  Bruno Haible  <bruno@clisp.org>
36004
36005         * lib/stdint_.h: Treat IRIX like OpenBSD.
36006
36007 2006-06-23  Bruno Haible  <bruno@clisp.org>
36008
36009         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
36010         ISO C 99 Technical Corrigendum 1.
36011
36012 2006-06-22  Simon Josefsson  <jas@extundo.com>
36013
36014         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
36015         MinGW.
36016
36017 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
36018
36019         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
36020         needed.  Some compiler complained about some of them.  Problem reported
36021         by Larry Jones in
36022         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
36023
36024 2006-06-21  Simon Josefsson  <jas@extundo.com>
36025
36026         * tests/test-getaddrinfo.c: New file.
36027
36028         * modules/getaddrinfo-tests: New file.
36029
36030         * MODULES.html.sh: Add inet_pton.
36031
36032         * modules/inet_pton: New file.
36033
36034 2006-06-21  Simon Josefsson  <jas@extundo.com>
36035
36036         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
36037         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
36038         of using the (limited) gnulib implementation on Windows XP.
36039
36040         * m4/inet_pton.m4: New file.
36041
36042 2006-06-21  Simon Josefsson  <jas@extundo.com>
36043
36044         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
36045         variable.
36046
36047         * lib/socket_.h: Don't define WINVER.
36048
36049         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
36050         slightly modified to work in gnulib.
36051
36052 2006-06-21  Simon Josefsson  <jas@extundo.com>
36053
36054         * doc/gnulib.texi (Windows sockets): Add.
36055
36056 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
36057
36058         * lib/read-file.c (fread_file): Start with buffer allocation of
36059         0 bytes rather than 1 byte; this simplifies the code.
36060         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
36061         code to free buffer and save/restore errno.
36062         (internal_read_file): Remove unused local.
36063
36064 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
36065
36066         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
36067         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
36068         Problem reported by Denis Excoffier in
36069         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
36070
36071 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36072
36073         * modules/sys_socket, modules/socklen: Include sys/types since
36074         FreeBSD 4.x's sys/socket.h needs it.
36075
36076 2006-06-19  Simon Josefsson  <jas@extundo.com>
36077
36078         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
36079
36080 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
36081
36082         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
36083
36084 2006-06-19  Bruno Haible  <bruno@clisp.org>
36085
36086         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
36087         and FULL_PATH_INTTYPES_H in angle brackets.
36088         Reported by Mark D. Baushke <mdb@gnu.org>.
36089
36090 2006-06-17  Eric Blake  <ebb9@byu.net>
36091
36092         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
36093         errno.
36094
36095 2006-06-17  Bruno Haible  <bruno@clisp.org>
36096
36097         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
36098         <sys/inttypes.h>.
36099
36100 2006-06-17  Bruno Haible  <bruno@clisp.org>
36101
36102         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
36103         whether errno is declared. Assume <errno.h> declares errno.
36104
36105 2006-06-17  Bruno Haible  <bruno@clisp.org>
36106
36107         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
36108
36109 2006-06-17  Bruno Haible  <bruno@clisp.org>
36110
36111         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
36112         problem on Solaris 2.5.1.
36113
36114 2006-06-16  Eric Blake  <ebb9@byu.net>
36115
36116         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
36117         * lib/unicodeio.c [!defined errno]: Likewise.
36118         * lib/strtol.c [!defined errno]: Likewise.
36119         * lib/strtod.c [!defined errno]: Likewise.
36120
36121 2006-06-15  Eric Blake  <ebb9@byu.net>
36122
36123         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
36124
36125 2006-06-15  Eric Blake  <ebb9@byu.net>
36126
36127         * config/srclist.txt (ssize_t.m4): Lose sync.
36128
36129 2006-06-15  Bruno Haible  <bruno@clisp.org>
36130
36131         * modules/stdint (Files): Include m4/full-header-path.m4,
36132         m4/size_max.m4, m4/wchar_t.m4.
36133         (Makefile.am): Many more substitutions.
36134         * modules/stdint-tests: New file.
36135         * tests/test-stdint.c: New file.
36136
36137 2006-06-15  Bruno Haible  <bruno@clisp.org>
36138
36139         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
36140         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
36141         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
36142         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
36143         gl_CHECK_TYPE_SAME): New macros.
36144
36145 2006-06-15  Bruno Haible  <bruno@clisp.org>
36146
36147         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
36148
36149 2006-06-15  Bruno Haible  <bruno@clisp.org>
36150
36151         * lib/stdint_.h: Rewritten to be fully auto-configured.
36152         Fixes bug on HP-UX/IA64.
36153
36154 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
36155
36156         * lib/getdate.y (__attribute__): Don't define if already defined.
36157         Problem reported by Larry Jones.
36158         * lib/utimens.c (__attribute__): Likewise.
36159
36160 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
36161
36162         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
36163         reported by Andreas Schwab.
36164
36165 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36166             Bruno Haible  <bruno@clisp.org>
36167
36168         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
36169         check for the declaration of strnlen and a run test that exposes the
36170         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
36171         rpl_strndup.
36172
36173 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36174             Bruno Haible  <bruno@clisp.org>
36175
36176         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
36177
36178 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36179
36180         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
36181         compile test, for Tru64 4.0D.
36182
36183 2006-05-28  Karl Berry  <karl@gnu.org>
36184
36185         * config/srclist.txt (printf-args.c): lose sync.
36186
36187 2006-05-26  Martin Lambers  <marlam@marlam.de>
36188
36189         * lib/getpass.c: Updates the test for the native W32 API, and adds
36190         missing includes, thus fixing compilation warnings.
36191
36192 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
36193
36194         * lib/exclude.c (exclude_fnmatch): New function.
36195         (excluded_file_name): Call exclude_fnmatch.
36196         * lib/exclude.h (excluded_file_name): New prototype
36197
36198 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
36199
36200         * lib/tempname.c (small_open, large_open): New macros.
36201         (__open, __open64) [!_LIBC]: Remove.
36202         (__gen_tempname): Use small_open and large_open instead of __open
36203         and __open64.  This fixes a portability bug on HP-UX 11.11i
36204         reported by Simon Wing-Tang in
36205         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
36206
36207 2006-05-24  Bruno Haible  <bruno@clisp.org>
36208
36209         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
36210         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
36211         Reported by Thorsten Maerz <torte@netztorte.de> via
36212         Aaron Stone <aaron@serendipity.cx>.
36213
36214 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
36215
36216         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
36217         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
36218         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
36219         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
36220         not really conditional on the cache.
36221         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
36222
36223 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
36224
36225         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
36226         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
36227         (my_usleep): Don't mishandle maximum value.
36228
36229 2006-05-19  Jim Meyering  <jim@meyering.net>
36230
36231         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
36232
36233 2006-05-17  Bruno Haible  <bruno@clisp.org>
36234
36235         Cygwin portability.
36236         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
36237
36238 2006-05-17  Bruno Haible  <bruno@clisp.org>
36239
36240         * lib/stdint_.h: Fix recognition of Cygwin.
36241
36242 2006-05-15  Bruno Haible  <bruno@clisp.org>
36243
36244         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
36245         on libtool patch by Ralf Wildenhues.
36246
36247 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36248
36249         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
36250         test for C99 conformance; (bool) 0.5 is an integer constant
36251         expression, but (bool) -0.5 is not.  Problem reported by Fedor
36252         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
36253
36254 2006-05-11  Simon Josefsson  <jas@extundo.com>
36255
36256         * m4/xvasprintf.m4: Fix obvious typo.
36257
36258 2006-05-11  Jim Meyering  <jim@meyering.net>
36259
36260         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
36261         James Lemley.
36262
36263 2006-05-10  Simon Josefsson  <jas@extundo.com>
36264
36265         * lib/md4.c: Typo fix, update copyright years.
36266         (K1, K2): Don't use L because it turn computations into 64-bit on
36267         64-bit platforms.
36268
36269 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
36270
36271         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
36272         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
36273         unwanted sign propagation, e.g., on hosts with 64-bit int.
36274         There still are some problems with reeelly weird theoretical hosts
36275         (e.g., 33-bit int) but it's not worth worrying about now.
36276         * lib/sha1.c (rol): Likewise.
36277         (K1, K2, K3, K4): Remove unnecessary L suffix.
36278
36279 2006-05-10  Bruno Haible  <bruno@clisp.org>
36280
36281         * lib/des.c: Cast to avoid warnings.
36282
36283 2006-05-09  Bruno Haible  <bruno@clisp.org>
36284
36285         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
36286         (Depends-on): Depend also on xsize, stdarg.
36287         (configure.ac): Add gl_XVASPRINTF.
36288
36289 2006-05-09  Bruno Haible  <bruno@clisp.org>
36290
36291         * m4/xvasprintf.m4: New file.
36292
36293 2006-05-09  Bruno Haible  <bruno@clisp.org>
36294
36295         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
36296         (EOVERFLOW): Define fallback value.
36297         (xstrcat): New function.
36298         (xvasprintf): Recognize the special case of a string concatenation.
36299
36300 2006-05-08  Eric Blake  <ebb9@byu.net>
36301
36302         * gnulib-tool (func_version): Base copyright year on CVS date.
36303         (func_emit_copyright_notice): New function.
36304         (func_emit_lib_Makefile_am): Use it.
36305         (func_emit_tests_Makefile_am): Likewise.
36306         (func_import): Likewise.
36307
36308 2006-05-08  Bruno Haible  <bruno@clisp.org>
36309
36310         * modules/stdarg: New file.
36311         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
36312
36313 2006-05-08  Bruno Haible  <bruno@clisp.org>
36314
36315         * m4/stdarg.m4: New file, from GNU gettext.
36316
36317 2006-05-08  Bruno Haible  <bruno@clisp.org>
36318
36319         * config/srclist.txt (build-aux/config.rpath): different from latest
36320         release.
36321
36322 2006-05-08  Bruno Haible  <bruno@clisp.org>
36323
36324         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
36325
36326 2006-05-05  Jim Meyering  <jim@meyering.net>
36327
36328         * m4/warning.m4: New file, derived from bison's file by the same name.
36329
36330 2006-05-03  Bruno Haible  <bruno@clisp.org>
36331
36332         * lib/stdint_.h: Shorter URL.
36333         * lib/inttypes.h: Likewise.
36334
36335 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
36336
36337         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
36338
36339 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
36340
36341         * lib/verify.h: Document the internals better.  Most of this change
36342         was written by Bruno Haible.
36343
36344 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
36345
36346         * doc/verify.texi: New file, partly based on a proposal by
36347         Bruno Haible.
36348
36349 2006-05-02  Bruno Haible  <bruno@clisp.org>
36350
36351         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
36352         test from here...
36353         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
36354
36355 2006-04-29  Bruno Haible  <bruno@clisp.org>
36356
36357         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
36358         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
36359
36360 2006-04-29  Bruno Haible  <bruno@clisp.org>
36361
36362         * gnulib-tool: Make --update option actually work.
36363
36364 2006-04-29  Bruno Haible  <bruno@clisp.org>
36365
36366         * doc/gcd.texi: New file.
36367         * doc/gnulib.texi: Include it.
36368
36369 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
36370
36371         * lib/getdate.y (get_date): When adding relative date, start with the
36372         initial time, not with the result of the first mktime call.
36373
36374 2006-04-25  Bruno Haible  <bruno@clisp.org>
36375
36376         * gnulib-tool (func_import): Output the include directives in three
36377         blocks, sorted separately.
36378         Reported by Ben Pfaff <blp@cs.stanford.edu>.
36379
36380 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
36381
36382         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
36383         to define main with arguments, for C++.  Reported by Eric Blake.
36384         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
36385         Prefer 'int main ()' to 'int main (void)', for C++.
36386         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
36387         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
36388         for 'main', for C99 and C++.
36389
36390 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
36391
36392         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
36393         Don't assume that exit status -1 is valid.
36394         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
36395         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
36396         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
36397         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
36398         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
36399         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
36400         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
36401         functions can be used without declaring them, or that you can
36402         exit with status -1.
36403         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
36404
36405 2006-04-24  Karl Berry  <karl@gnu.org>
36406
36407         * config/srclist.txt (longdouble.m4): sync lost.
36408
36409 2006-04-24  Eric Blake  <ebb9@byu.net>
36410
36411         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
36412
36413 2006-04-24  Bruno Haible  <bruno@clisp.org>
36414
36415         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
36416         poll() implementation in AIX.
36417         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36418
36419 2006-04-24  Bruno Haible  <bruno@clisp.org>
36420
36421         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
36422         assigned exactly once.
36423
36424 2006-04-23  Claudio Fontana  <claudio@gnu.org>
36425             Bruno Haible  <bruno@clisp.org>
36426
36427         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
36428         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
36429         for AM_CPPFLAGS.
36430
36431 2006-04-23  Bruno Haible  <bruno@clisp.org>
36432
36433         * modules/copy-file: Depend on unistd.
36434         * modules/execute: Likewise.
36435         * modules/fatal-signal: Likewise.
36436         * modules/findprog: Likewise.
36437         * modules/mkdtemp : Likewise.
36438         * modules/pipe: Likewise.
36439         * modules/wait-process: Likewise.
36440
36441 2006-04-23  Bruno Haible  <bruno@clisp.org>
36442
36443         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
36444         condition was already detected.
36445         Reported by Ben Pfaff <blp@cs.stanford.edu>.
36446
36447 2006-04-23  Bruno Haible  <bruno@clisp.org>
36448
36449         * lib/copy-file.c: Include <unistd.h> unconditionally.
36450         * lib/execute.c: Likewise.
36451         * lib/fatal-signal.c: Likewise.
36452         * lib/findprog.c: Likewise.
36453         * lib/mkdtemp.c: Likewise.
36454         * lib/pipe.h: Likewise.
36455         * lib/pipe.c: Likewise.
36456         * lib/wait-process.h: Likewise.
36457
36458 2006-04-23  Bruno Haible  <bruno@clisp.org>
36459
36460         * gnulib-tool (func_usage): Fix --import description. Document
36461         --update.
36462         (func_import): Create temporary file in a temporary directory, if
36463         --dry-run is specified. Silence errors from 'grep' when there are no
36464         m4 files in $m4dir.
36465         (func_create_testdir): Silence errors from 'grep' when there are no
36466         m4 files in $m4dir.
36467         Reported by Karl Berry <karl@freefriends.org>.
36468
36469 2006-04-20  Bruno Haible  <bruno@clisp.org>
36470
36471         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
36472         one argument, so that the code will be portable to Autoconf 2.60.
36473         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
36474         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
36475         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
36476
36477 2006-04-19  Derek Price  <derek@ximbiot.com>
36478             Eric Blake  <ebb9@byu.net>
36479
36480         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
36481         rather than "/full/path.h".  Update comment to match.  Shorten &
36482         generalize m4_translit call via AS_TR_CPP.
36483
36484 2006-04-19  Derek Price  <derek@ximbiot.com>
36485             Eric Blake  <ebb9@byu.net>
36486
36487         * lib/inttypes.h: Correct grammar in comment.
36488
36489 2006-04-18  Derek Price  <derek@ximbiot.com>
36490             Paul Eggert  <eggert@cs.ucla.edu>
36491
36492         * modules/inttypes: New file.
36493         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
36494
36495 2006-04-18  Derek Price  <derek@ximbiot.com>
36496             Paul Eggert  <eggert@cs.ucla.edu>
36497
36498         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
36499         New files.
36500
36501 2006-04-18  Derek Price  <derek@ximbiot.com>
36502             Paul Eggert  <eggert@cs.ucla.edu>
36503
36504         * lib/inttypes.h: New file.
36505         * lib/strtoimax.c: Assume <inttypes.h>.
36506
36507 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
36508
36509         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
36510         isn't mounted.  Problem reported by Kir Kolyshkin.
36511
36512 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
36513
36514         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
36515         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
36516         Derek R. Price.
36517         * lib/regex.h (RE_DUP_MAX): Update comment to match current
36518         implementation.
36519
36520 2006-04-12  Eric Blake  <ebb9@byu.net>
36521
36522         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
36523         is now done automatically by the corresponding Autoconf macro.
36524
36525 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
36526
36527         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
36528         time_r.h.
36529
36530 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36531
36532         Merge regex changes from libc, removing some of our
36533         POSIX-conformance changes that were rejected and redoing them in a
36534         less-intrusive way.
36535
36536         * lib/regcomp.c (re_compile_internal, init_dfa):
36537         Length arg is now size_t, not Idx.  All uses changed.
36538         (peek_token): Forward decl now says internal_function.
36539         (__re_error_msgid, __re_error_msgid_idx):
36540         Now static rather than extern with attribute_hidden.
36541         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
36542         For some reason libc prefers K&R style defns for external functions.
36543         (regerror) [!defined _LIBC]: Likewise.
36544         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
36545         (seek_collating_symbol_entry, lookup_collation_sequence_value):
36546         (build_range_exp, build_collating_symbol):
36547         Use K&R-style defn.
36548         (re_compile_fastmap): Use '\0' to memset, not 0.
36549         (utf8_sb_map): Make the calculations more obvious.
36550         (init_dfa, parse_bracket_exp, build_charclass_op):
36551         Call calloc and cast result, as glibc does.
36552         (init_word_char, fetch_token, peek_token, peek_token_bracket):
36553         (build_range_exp, build_collating_symbol):
36554         Now internal functions.
36555
36556         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
36557
36558         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
36559         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
36560         Don't depend on VMS; depend on __VMS instead, for POSIX
36561         namespace cleanness.
36562         (regoff_t): Define to ssize_t, not long int.
36563
36564         Remove the REG_ macros named below.  Instead, make the old names
36565         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
36566         __USE_GNU_REGEX.
36567         (REG_BACKSLASH_ESCAPE_IN_LISTS):
36568         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
36569         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
36570         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
36571         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
36572         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
36573         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
36574         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
36575         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
36576         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
36577         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
36578         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
36579         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
36580         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
36581         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
36582         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
36583         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
36584         (REG_NREGS):
36585         Remove.  All uses replaced by the old RE_* names.
36586         (RE_BACKSLASH_ESCAPE_IN_LISTS):
36587         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
36588         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
36589         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
36590         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
36591         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
36592         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
36593         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
36594         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
36595         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
36596         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
36597         Don't bother having these macros be independent of each others'
36598         values, since they no longer exist in the POSIX name space.
36599
36600         Rename the following member names back to their old names,
36601         unless !__USE_GNU_REGEX.  All uses changed back.
36602         (buffer): Renamed from re_buffer.
36603         (allocated): Renamed from re_allocated.
36604         (used): Renamed from re_used.
36605         (syntax): Renamed from re_syntax.
36606         (fastmap): Renamed from re_fastmap.
36607         (translate): Renamed from re_translate.
36608         (can_be_null): Renamed from re_can_be_null.
36609         (regs_allocated): Renamed from re_regs_allocated.
36610         (fastmap_accurate): Renamed from re_fastmap_accurate.
36611         (no_sub): Renamed from re_no_sub.
36612         (not_bol): Renamed from re_not_bol.
36613         (not_eol): Renamed from re_not_eol.
36614         (newline_anchor): Renamed from re_newline_anchor.
36615         (num_regs): Renamed from rm_num_regs.
36616         (start): Renamed from rm_start.
36617         (end): Renamed from rm_end.
36618
36619         (free_state): Move up a bit.
36620
36621         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
36622         #define to be empty.
36623         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
36624         when that is what is intended.
36625         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
36626         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
36627         (MAX): New macro.
36628         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
36629         All uses changed back to re_malloc, etc.  It's now the caller's
36630         responsibility to check for overflow; all callers changed.
36631         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
36632         (re_x2nrealloc): Remove.
36633         (free_state): Remove decl.
36634
36635         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
36636         (re_set_registers, re_exec):
36637         Use K&R-style defn.
36638
36639         2006-01-31  Roland McGrath  <roland@redhat.com>
36640
36641         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
36642         Reported by Mike Frysinger <vapier@gentoo.org>.
36643
36644         2006-01-15  Andreas Jaeger  <aj@suse.de>
36645
36646         [BZ #1950]
36647         * lib/regex_internal.c (re_string_reconstruct): Adjust for
36648         build_wcs_upper_buffer change.
36649         (build_wcs_upper_buffer): Change return type.
36650
36651         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
36652
36653         * lib/regex_internal.h: Include <stdint.h> if available.
36654
36655         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
36656
36657         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
36658
36659         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
36660
36661         * lib/regcomp.c: Adjust for changed secondary hash function.
36662
36663         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
36664
36665         * lib/regex.h: Pretty printing.
36666         Clean up namespace a bit.
36667
36668         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
36669
36670         * lib/regexec.c (update_cur_sifted_state, check_arrival,
36671         check_arrival_add_next_nodes): Avoid using uninitialized variable.
36672
36673         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
36674                     Ulrich Drepper  <drepper@redhat.com>
36675
36676         [BZ #1302]
36677         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
36678         changed.
36679         (bitset_word_t): Renamed from bitset_word.  All uses changed.
36680
36681         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
36682
36683         [BZ #281]
36684         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
36685         * lib/regcomp.c: Remove unnecessary uses of
36686         unsigned RE_TRANSLATE_TYPE.
36687         * lib/regex_internal.h: Likewise.
36688         * lib/regex_internal.c: Likewise.
36689         * lib/regexec.c: Likewise.
36690         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
36691
36692         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
36693
36694         * lib/regexec.c (find_recover_state): Remove unnecessary
36695         initialization.
36696         (transit_state_bkref): Make DFA a const pointer.
36697         (get_subexp): Likewise.
36698         (check_arrival): Likewise.
36699         (update_cur_sifted_state): Likewise.
36700         (re_search_internal): Likewise.
36701         (prune_impossible_nodes): Likewise.
36702         (acquire_init_state_context): Likewise.
36703         (proceed_next_node): Likewise.
36704         (set_regs): Likewise.
36705         (free_fail_stack_return): Likewise.
36706         (check_arrival_expand_ecl): Mark DFA parameter as const.
36707         (check_arrival_expand_ecl_sub): Likewise.
36708         (check_subexp_limits): Likewise.
36709         (sub_epsilon_src_nodes):  Likewise.
36710         (add_epsilon_src_nodes):  Likewise.
36711         (merge_state_array): Likewise.
36712         (update_regs): Likewise.
36713         (build_trtable): Likewise.
36714         (sift_states_backward): Mark MCTX parameter as const.
36715         (build_sifted_states): Likewise.
36716         (update_cur_sifted_state): Likewise.
36717         (sift_states_mkref): Likewise.
36718         (check_arrival_expand_ecl): Mark eclosure as const.
36719         (check_dst_limits_calc_pos_1): Likewise.
36720         * lib/regex_internal.h (re_match_context_t): Make dfa a const
36721         pointer.
36722
36723         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
36724
36725         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
36726         (transit_state_sb): Likewise.
36727         (transit_state_mb): Likewise.
36728         (sift_states_iter_mb): Likewise.
36729         (check_arrival_add_next_nodes): Likewise.
36730         (check_node_accept_bytes): Change first parameter to pointer-to-const.
36731         [_LIBC] (re_search_2_stub): Use mempcpy.
36732
36733         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
36734         mbrtowc for very simple UTF-8 case.
36735
36736         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
36737         a pointer-to-const.
36738         (re_acquire_state_context): Likewise.
36739         * lib/regex_internal.h: Adjust prototypes.
36740
36741         * lib/regex.c: Prevent using C++ compilers.
36742
36743         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
36744         (re_acquire_state_context): Likewise.
36745
36746 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36747
36748         * modules/regex (Depends-on): Add ssize_t.
36749
36750 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36751
36752         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
36753         translation table.
36754
36755 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36756
36757         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
36758
36759 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
36760             Bruno Haible  <bruno@clisp.org>
36761
36762         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
36763         <sys/types.h> and <inttypes.h>.
36764
36765 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36766
36767         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
36768         `__error_t_defined', so argp.h will not typedef the former.
36769
36770 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
36771
36772         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
36773         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
36774         glibc names.  Even if glibc is changed to conform to POSIX, the
36775         traditional names will be available anyway, since regex depends on
36776         the extensions module.  Also, fix a longstanding typo in the
36777         implementation of Spencer ERE test #75 from grep 2.3.  Problems
36778         reported by Emanuele Giaquinta.  Also, change sense of cached
36779         variable, so that the message makes sense.
36780
36781 2006-03-24  Simon Josefsson  <jas@extundo.com>
36782
36783         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
36784         including some doc fixes.
36785         (base64_encode_alloc): Fix +1 bug on allocation failures.
36786
36787 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36788
36789         * lib/base64.c (base64_encode): Do not read past end of array with
36790         unsanitized input on systems with CHAR_BIT > 8.
36791
36792 2006-03-24  Eric Blake  <ebb9@byu.net>
36793
36794         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
36795
36796 2006-03-22  Karl Berry  <karl@gnu.org>
36797
36798         * config/srclist.txt (*setenv.[ch]): get from coreutils.
36799         * config/srclistvars.sh (COREUTILS): new var.
36800
36801 2006-03-17  Jim Meyering  <jim@meyering.net>
36802
36803         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
36804         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
36805
36806 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
36807
36808         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
36809         no longer needs it.  Instead, check that regoff_t is as least
36810         as wide as ptrdiff_t.
36811
36812         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
36813         so that our regex.h stays compatible with the installed regex.
36814         This is helpful for installers who configure --without-included-regex.
36815         Problem reported by Emanuele Giaquinta.
36816
36817 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
36818
36819         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
36820         Typedef to long int, not to off_, as POSIX will likely change
36821         in that direction.
36822
36823 2006-03-15  Eric Blake  <ebb9@byu.net>
36824
36825         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
36826
36827 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
36828
36829         * lib/argp-help.c (validate_uparams): Fix typo
36830         * lib/argp-parse.c (argp_default_options): Consistently begin help
36831         messages with a lowercase letter.
36832
36833 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
36834
36835         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
36836         overrun buffers and shouldn't be used (much as gets shouldn't be
36837         used).
36838         * lib/time_r.c (asctime_r, ctime_r): Likewise.
36839
36840 2006-03-08  Simon Josefsson  <jas@extundo.com>
36841
36842         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
36843         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36844
36845 2006-03-08  Simon Josefsson  <jas@extundo.com>
36846
36847         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
36848         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36849
36850 2006-03-08  Simon Josefsson  <jas@extundo.com>
36851
36852         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
36853         signal that configure disabled the device.
36854
36855 2006-03-08  Simon Josefsson  <jas@extundo.com>
36856
36857         * build-aux/maint.mk: Fix refresh-po, to handle no translated
36858         languages.
36859
36860 2006-03-07  Simon Josefsson  <jas@extundo.com>
36861
36862         * modules/getopt (Depends-on): Add unistd.
36863
36864         * modules/unistd: New file.
36865
36866 2006-03-07  Simon Josefsson  <jas@extundo.com>
36867
36868         * modules/gc-random: New file.
36869
36870 2006-03-07  Simon Josefsson  <jas@extundo.com>
36871
36872         * m4/unistd_h.m4: New file.
36873
36874 2006-03-07  Simon Josefsson  <jas@extundo.com>
36875
36876         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
36877         test to be side-effect free by storing the result in the cache
36878         variable gl_cv_lib_readline, and moving the assignment of
36879         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
36880         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36881
36882 2006-03-07  Simon Josefsson  <jas@extundo.com>
36883
36884         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
36885         error on missing devices (the functions will return an error).
36886
36887         * m4/gc.m4: Move random stuff to gc-random.m4
36888
36889 2006-03-07  Simon Josefsson  <jas@extundo.com>
36890
36891         * lib/unistd_.h: New file.
36892
36893 2006-03-07  Simon Josefsson  <jas@extundo.com>
36894
36895         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
36896
36897 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
36898
36899         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
36900         Problem reported by Juan Manuel Guerrero.
36901
36902 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
36903
36904         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
36905         the unistd module.
36906         * lib/getlogin_r.c: Likewise.
36907         * lib/getlogin_r.h: Likewise.
36908         * lib/glob.c: Likewise.
36909         * lib/pagealign_alloc.c: Likewise.
36910         * lib/unistd_.h: Remove; no longer needed.
36911
36912 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
36913
36914         * MODULES.html.sh (Support for systems lacking POSIX:2001):
36915         Add unistd.
36916         * modules/c-stack (Depends-on): Add unistd.
36917         * modules/getlogin_r: Likewise.
36918         * modules/glob: Likewise.
36919         * modules/pagealign_alloc: Likewise.
36920         * modules/unistd (Files): Remove lib/unistd_.h.
36921         (EXTRA_DIST): Remove.
36922         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
36923         need unistd_.h.
36924         (MOSTLYCLEANFILES): Remove unistd.h-t.
36925
36926 2006-03-03  Simon Josefsson  <jas@extundo.com>
36927
36928         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
36929
36930 2006-03-03  Simon Josefsson  <jas@extundo.com>
36931
36932         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
36933         libidn and bison.
36934
36935 2006-03-03  Simon Josefsson  <jas@extundo.com>
36936
36937         * build-aux/maint.mk: Add indent target.
36938
36939 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
36940
36941         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
36942         our replacement poll.h in any case, to avoid a differing
36943         declaration from a system header.  Seen on AIX.
36944
36945 2006-03-01  Simon Josefsson  <jas@extundo.com>
36946
36947         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
36948         <kasal@ucw.cz>.
36949
36950 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
36951
36952         * modules/gettime (Depends-on): Add extensions module.
36953         * modules/nanosleep (Depends-on): Likewise.
36954         * modules/settime (Depends-on): Likewise.
36955
36956 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
36957
36958         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
36959         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
36960         pedantically.
36961         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
36962         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
36963
36964         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
36965         not "==".  Reported by Ralf Wildenhues.
36966
36967 2006-03-01  Karl Berry  <karl@gnu.org>
36968
36969         * doc/Copyright/request-*: new files, synced from gnuorg.
36970
36971 2006-03-01  Karl Berry  <karl@gnu.org>
36972
36973         * config/srclist.txt (Copyright/*): new entries.
36974
36975 2006-02-28  Simon Josefsson  <jas@extundo.com>
36976
36977         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
36978
36979 2006-02-27  Simon Josefsson  <jas@extundo.com>
36980
36981         * lib/base64.h: Indent #define's.  From Jim Meyering
36982         <jim@meyering.net>.
36983
36984 2006-02-27  Jim Meyering  <jim@meyering.net>
36985
36986         Revert the change of 2006-02-24, so these files can continue
36987         to be sync'd from gettext.
36988         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
36989         of `config.h'.
36990
36991 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
36992
36993         * modules/intprops: New file.
36994         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
36995         Add intprops.
36996         * modules/getloadavg (Files): Remove lib/intprops.h.
36997         (Depends-on): Add intprops.
36998         * modules/human: Likewise.
36999         * modules/inttostr: Likewise.
37000         * modules/openat: Likewise.
37001         * modules/sig2str: Likewise.
37002         * modules/userspec: Likewise.
37003         * modules/utimecmp: Likewise.
37004         * modules/xnanosleep: Likewise.
37005         * modules/xstrtol: Likewise.
37006
37007 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
37008
37009         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
37010         * modules/lock-tests (TESTS): Use $(EXEEXT).
37011         * modules/tls-tests: Likewise.
37012         * modules/argp-tests: Likewise.
37013         (check_PROGRAMS): New var, replacing...
37014         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
37015
37016 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
37017
37018         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
37019         `config.h'.
37020
37021 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
37022
37023         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
37024
37025 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
37026
37027         Sync from coreutils.
37028         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
37029         gl_CHDIR_SAFER.
37030
37031 2006-02-22  Jim Meyering  <jim@meyering.net>
37032
37033         Sync from coreutils.
37034         * m4/chdir-safer.m4: New file.
37035
37036 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
37037
37038         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
37039         AT_FDCWD exceeds INT_MAX.
37040         * lib/openat.h (AT_FDCWD): Likewise.
37041
37042 2006-02-17  Eric Blake  <address@hidden>
37043
37044         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
37045
37046 2006-02-16  Simon Josefsson  <jas@extundo.com>
37047
37048         * modules/getaddrinfo (Depends-on): Add sys_socket.
37049
37050 2006-02-15  Simon Josefsson  <jas@extundo.com>
37051
37052         * build-aux/maint.mk: Add dsyntax-check rule.
37053
37054 2006-02-15  Eric Blake  <ebb9@byu.net>
37055
37056         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
37057         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
37058         'present but cannot compile' warnings on cygwin.
37059         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
37060         use ws2tcpip.h if sys/socket.h works.
37061         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
37062         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
37063
37064 2006-02-14  Simon Josefsson  <jas@extundo.com>
37065
37066         * modules/maintainer-makefile (Files): Rename.
37067
37068         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
37069         and (the local) Makefile.cfg to maint-cfg.mk.
37070
37071         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
37072         to the latter.
37073
37074         * modules/maintainer-makefile: New module.
37075
37076         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
37077         severaly stripped to make it possible to build it up from scratch
37078         with reliable tests.
37079
37080         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
37081         fixes to permit overriding the default actions when configure and
37082         makefile are not available.
37083
37084 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
37085
37086         Sync from coreutils.
37087         * modules/lstat (Depends-on): Don't depend on xalloc.
37088         (License): Change from GPL to LGPL, since this is now simply a
37089         replacement for a libc function.
37090
37091 2006-02-14  Jim Meyering  <jim@meyering.net>
37092
37093         Sync from coreutils.
37094
37095         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
37096         failure on deficient systems, and simplify gnulib lgpl dependencies.
37097         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
37098         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
37099
37100         * lib/xalloc-die.c: Remove unused definition of N_.
37101
37102 2006-02-14  Jim Meyering  <jim@meyering.net>
37103
37104         Sync from coreutils.
37105         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
37106         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
37107         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
37108         double-quote uses of that variable, to accommodate the rare case in
37109         which getmntent is available in none of the libraries checked.  This
37110         happens at least on FreeBSD 5.0.
37111
37112 2006-02-13  Simon Josefsson  <jas@extundo.com>
37113
37114         * gnulib-tool (Usage): Fix --import, from
37115         karl@freefriends.org (Karl Berry).
37116
37117 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
37118
37119         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
37120
37121 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
37122
37123         * lib/argp-namefrob.h: Restore changes accidentally lost during the
37124         "autoupdate" on 2005-12-12.
37125
37126 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
37127
37128         * modules/closeout (Depends-on): Remove atexit.
37129
37130 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
37131
37132         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
37133         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
37134
37135 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
37136
37137         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
37138         __EXTENSIONS__ if this causes compilation to fail.  Problem
37139         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
37140         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
37141
37142 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
37143
37144         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
37145         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
37146         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
37147         All uses changed.
37148
37149 2006-01-26  Simon Josefsson  <jas@extundo.com>
37150
37151         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
37152         prototype is visible on mingw32.
37153
37154         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
37155         for mingw32.
37156
37157         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
37158         mingw32).
37159
37160 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
37161
37162         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
37163         attempt to open for write; this always fails, at least on POSIX
37164         hosts.  This reinstates the 2006-01-09 change, which was
37165         inadvertently removed.
37166
37167 2006-01-26  Bruno Haible  <bruno@clisp.org>
37168
37169         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
37170         Reported by Paul Eggert.
37171
37172 2006-01-26  Bruno Haible  <bruno@clisp.org>
37173             Paul Eggert  <eggert@cs.ucla.edu>
37174
37175         * lib/stdbool_.h (_Bool)
37176         [(! (defined __cplusplus || defined __BEOS__)
37177           && !defined __GNUC__
37178           && !(defined __HP_cc || defined __xlc__
37179                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
37180                || defined __sgi))]:
37181         #define to signed char in these cases too; this simplifies
37182         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
37183         etc., separately) and makes it more conservative.
37184
37185 2006-01-25  Simon Josefsson  <jas@extundo.com>
37186
37187         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
37188         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
37189         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
37190
37191 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
37192
37193         * lib/argp-namefrob.h: Bugfix. Remove stray #
37194
37195 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
37196
37197         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
37198         so that we test the test.
37199         Check for yet another HP-UX cc bug involving *bool |= bool.
37200
37201 2006-01-25  Karl Berry  <karl@gnu.org>
37202
37203         * config/srclist.txt (vasnprintf.c): sync lost.
37204
37205 2006-01-25  Jim Meyering  <jim@meyering.net>
37206
37207         Sync from the stable (b5) branch of coreutils:
37208
37209         * lib/fts.c (fts_children): Don't let close() clobber errno from
37210         failed fchdir().
37211
37212         * lib/fts.c (fts_stat): When following a symlink-to-directory,
37213         don't necessarily interpret stat-fails+lstat-succeeds as indicating
37214         a dangling symlink.  That can also happen at least for ELOOP.
37215         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
37216         FYI, this bug predates the inclusion of fts.c in coreutils.
37217
37218         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
37219         in their own block, so pre-c99 compilers don't object.
37220
37221         Avoid the double-free (first in fts_read, second in fts_close) that
37222         would occur when an `active' directory is made inaccessible (e.g.,
37223         via chmod a-x) during a traversal.
37224         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
37225         before returning.  Reproduce this failure by
37226         mkdir -p a/b; cd a; chmod a-x . b
37227         Reported by Stavros Passas.
37228
37229 2006-01-25  Jim Meyering  <jim@meyering.net>
37230
37231         * lib/fileblocks.c: Remove more useless parentheses.
37232         * lib/readutmp.h: Likewise.
37233
37234 2006-01-25  Bruno Haible  <bruno@clisp.org>
37235
37236         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
37237         warnings.
37238         Reported by Paul Eggert.
37239
37240 2006-01-25  Bruno Haible  <bruno@clisp.org>
37241
37242         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
37243         rid of a trap command. For Solaris sh.
37244         Reported by Mark D. Baushke <mdb@gnu.org>.
37245
37246 2006-01-24  Simon Josefsson  <jas@extundo.com>
37247
37248         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
37249         Bruno.
37250
37251 2006-01-24  Karl Berry  <karl@gnu.org>
37252
37253         * config/srclist.txt (argp-namefrob.h): sync lost.
37254
37255 2006-01-24  Jim Meyering  <jim@meyering.net>
37256
37257         * modules/openat (Files): Add lib/intprops.h.
37258         From Mark D. Baushke.
37259
37260 2006-01-24  Jim Meyering  <jim@meyering.net>
37261
37262         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
37263         Reported by Mark D. Baushke.
37264
37265 2006-01-24  Jim Meyering  <jim@meyering.net>
37266
37267         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
37268
37269 2006-01-24  Bruno Haible  <bruno@clisp.org>
37270
37271         * modules/strnlen (Maintainer): Change from glibc to all.
37272
37273 2006-01-24  Bruno Haible  <bruno@clisp.org>
37274
37275         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
37276         Patch by Paul Eggert.
37277
37278 2006-01-24  Bruno Haible  <bruno@clisp.org>
37279
37280         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
37281         already has it.
37282         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
37283         2005-11-26.
37284
37285         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
37286         'signed char' to avoid problems with the built-in _Bool type.
37287         Reported by Paul Eggert on 2005-11-26.
37288
37289 2006-01-24  Bruno Haible  <bruno@clisp.org>
37290
37291         * gnulib-tool (func_import): Avoid constructing complicated sed
37292         expressions inside backquote.
37293         Report and solution by Mark D. Baushke <mdb@gnu.org>.
37294
37295 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
37296
37297         These changes imported from libc.
37298         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
37299         test and two separate function calls.
37300         * lib/strndup.c (__strndup): Add libc_hidden_def.
37301
37302 2006-01-23  Simon Josefsson  <jas@extundo.com>
37303
37304         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
37305         Remove the test_*_SOURCES variable: automake infers it by default.
37306         * modules/tls-tests: Likewise.
37307
37308 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
37309
37310         Work around porting bugs reported by Dieter in
37311         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
37312         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
37313         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
37314         Include "getopt.h" first, to check interface.
37315         (getenv): Declare only if defined HAVE_DECL_GETENV &&
37316         !HAVE_DECL_GETENV.
37317         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
37318         (__strndup): Revert to K&R-style function dfns, the glibc style.
37319         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
37320         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
37321         Include strnlen.h first, to get prototype properly.
37322         (strnlen): Renamed from __strnlen.
37323         Remove weak alias.
37324
37325 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
37326
37327         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
37328
37329 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
37330
37331         * config/srclist.txt: Adjust to reflect glibc reorganization.
37332         This affects only comments.
37333
37334 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
37335
37336          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
37337          Reported by Bruce Korb <bkorb@gnu.org>.
37338
37339 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
37340
37341         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
37342         to pacify gcc -Wswitch-default.
37343
37344 2006-01-22  Bruno Haible  <bruno@clisp.org>
37345
37346         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
37347         temporary buffer for sprintf, take into account the precision also
37348         for 'd', 'i', 'u', 'o', 'x', 'X'.
37349
37350 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
37351
37352         * modules/argp-tests: New module
37353         * tests/test-argp.c: New file
37354         * tests/test-argp-2.sh: New file
37355
37356 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
37357
37358         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
37359         (__argp_base_name): Removed
37360         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
37361         typo.
37362         (__argp_base_name): Provide macro definition or extern declaration
37363         depending on the configuration
37364
37365 2006-01-20  Simon Josefsson  <jas@extundo.com>
37366
37367         * modules/inet_ntop (Depends-on): Depend on sys_socket.
37368
37369 2006-01-20  Simon Josefsson  <jas@extundo.com>
37370
37371         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
37372
37373 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
37374
37375         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
37376         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
37377         Suggested by Bruno Haible.
37378
37379 2006-01-20  Karl Berry  <karl@gnu.org>
37380
37381         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
37382         until changes propagate, I guess.
37383
37384 2006-01-19  Simon Josefsson  <jas@extundo.com>
37385
37386         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
37387
37388 2006-01-19  Simon Josefsson  <jas@extundo.com>
37389
37390         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
37391
37392 2006-01-19  Simon Josefsson  <jas@extundo.com>
37393
37394         * gnulib-tool: Set check_PROGRAMS.
37395
37396         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
37397         modules/des-tests, modules/gc-arcfour-tests,
37398         modules/gc-arctwo-tests, modules/gc-des-tests,
37399         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
37400         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
37401         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
37402         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
37403         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
37404         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
37405         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
37406         test_*_SOURCES.
37407
37408 2006-01-18  Simon Josefsson  <jas@extundo.com>
37409
37410         * modules/socklen (Depends-on): Depend on sys_socket.
37411
37412 2006-01-18  Simon Josefsson  <jas@extundo.com>
37413
37414         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
37415         modules/des-tests, modules/gc-arcfour-tests,
37416         modules/gc-arctwo-tests, modules/gc-des-tests,
37417         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
37418         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
37419         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
37420         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
37421         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
37422         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
37423         $(EXEEXT) to automake TESTS variable, for mingw32.
37424
37425 2006-01-17  Simon Josefsson  <jas@extundo.com>
37426
37427         * modules/socklen (Include): Need sys/socket.h.
37428
37429 2006-01-17  Bruno Haible  <bruno@clisp.org>
37430
37431         * modules/ssize_t (Include): Add <sys/types.h>.
37432
37433 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
37434
37435         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
37436         it's not portable and it doesn't work with cross-compiles.
37437         Problem reported by Bruno Haible.  Fix missing-$ typo in
37438         'test "gl_cv_ignore_unused_libraries" ...' that prevented
37439         -zignore from being used with Sun's C compiler.
37440
37441 2006-01-12  Simon Josefsson  <jas@extundo.com>
37442
37443         * lib/base64.c: Fix warning, reported by Bruno Haible
37444         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
37445
37446 2006-01-12  Bruno Haible  <bruno@clisp.org>
37447
37448         * modules/ldd: New file.
37449         * build-aux/ldd.sh.in: New file.
37450         * MODULES.html.sh (Support for building libraries and executables): Add
37451         ldd.
37452
37453 2006-01-12  Bruno Haible  <bruno@clisp.org>
37454
37455         * m4/ldd.m4: New file.
37456
37457 2006-01-12  Bruno Haible  <bruno@clisp.org>
37458
37459         * gnulib-tool (func_import, func_create_testdir): Don't go into an
37460         endless loop while replacing $auxdir with build-aux.
37461
37462 2006-01-11  Simon Josefsson  <jas@extundo.com>
37463
37464         * lib/stdint_.h (SIZE_MAX): Add missing (.
37465
37466 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
37467
37468         Sync from coreutils.
37469         * lib/md5.c: Fix commentary typos.
37470         (alignof, UNALIGNED_P): No need for a GCC-specific version.
37471         * lib/md5.h (__attribute__): Remove; unused.
37472         * lib/sha1.c: Fix commentary to match md5 better.
37473         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
37474         so that we don't need to worry about alignment.  All uses changed.
37475         This merges the 2005-10-28 md5 change into sha1.
37476
37477 2006-01-11  Jim Meyering  <jim@meyering.net>
37478
37479         Sync from coreutils.
37480         * lib/md5.c (OP): Fix spacing.
37481
37482 2006-01-11  Bruno Haible  <bruno@clisp.org>
37483
37484         Ensure automatic ordering between gl_LOCK and gl_ARGP.
37485         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
37486         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
37487
37488 2006-01-11  Bruno Haible  <bruno@clisp.org>
37489
37490         Ensure automatic ordering between gl_LOCK and gl_ARGP.
37491         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
37492         the "early" section as well.
37493
37494 2006-01-11  Bruno Haible  <bruno@clisp.org>
37495
37496         Avoid "ar: no archive members specified" error on MacOS X.
37497         * gnulib-tool (func_modules_add_dummy): New function.
37498         (func_import, func_create_testdir): Invoke it.
37499
37500 2006-01-11  Bruno Haible  <bruno@clisp.org>
37501
37502         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
37503         with $auxdir in AC_CONFIG_FILES statements.
37504
37505 2006-01-11  Bruno Haible  <bruno@clisp.org>
37506
37507         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
37508         Initialize also noinst_HEADERS to empty.
37509
37510 2006-01-11  Bruno Haible  <bruno@clisp.org>
37511
37512         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
37513         variables.
37514         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
37515         autoreconf.
37516
37517 2006-01-11  Bruno Haible  <bruno@clisp.org>
37518
37519         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
37520         overridable by the user.
37521         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
37522
37523 2006-01-10  Simon Josefsson  <jas@extundo.com>
37524
37525         * modules/sys_socket: New file.
37526
37527 2006-01-10  Simon Josefsson  <jas@extundo.com>
37528
37529         * m4/sys_socket_h.m4: New file.
37530
37531 2006-01-10  Simon Josefsson  <jas@extundo.com>
37532
37533         * lib/socket_.h: New file.
37534
37535 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
37536
37537         * modules/readutmp (Maintainer): Add myself.
37538
37539 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
37540
37541         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
37542         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
37543         People who are still concerned with buggy memcmp implementations
37544         can invoke gl_FUNC_MEMCMP themselves.
37545
37546 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
37547
37548         * lib/regex_internal.h (BITSET_WORD_BITS):
37549         Work around a bug in 64-bit PGC (before version 6.1-2), where the
37550         preprocessor mishandles large unsigned values as if they were signed.
37551         Problem reported by Claudio Fontana in
37552         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
37553
37554 2006-01-10  Jim Meyering  <jim@meyering.net>
37555
37556         Avoid the double-free (first in fts_read, second in fts_close) that
37557         would occur when an `active' directory is made inaccessible (e.g.,
37558         via chmod a-x) during a traversal.
37559         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
37560         before returning.  Reproduce this failure by
37561         mkdir -p a/b; cd a; chmod a-x . b
37562         Reported by Stavros Passas.
37563
37564         Sync from coreutils.
37565         * lib/sha1.c: Tweak grammar in a comment.
37566
37567 2006-01-10  Jim Meyering  <jim@meyering.net>
37568
37569         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
37570         Patch by Joerg Sonnenberger.
37571
37572 2006-01-10  Bruno Haible  <bruno@clisp.org>
37573
37574         * modules/readutmp: Depend on module free.
37575         * modules/strtok_r: Depend on module restrict.
37576
37577 2006-01-10  Bruno Haible  <bruno@clisp.org>
37578
37579         * modules/gettext (configure.ac): Add an invocation of
37580         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
37581
37582 2006-01-10  Bruno Haible  <bruno@clisp.org>
37583
37584         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
37585         Reported by Werner Lemberg <wl@gnu.org>.
37586
37587 2006-01-10  Bruno Haible  <bruno@clisp.org>
37588
37589         * lib/localcharset.c: Update from GNU gettext.
37590
37591 2006-01-10  Bruno Haible  <bruno@clisp.org>
37592
37593         * lib/argp.h (__const): Remove macro. Use const instead.
37594         * lib/argp-fmtstream.h (__const): Likewise.
37595         * lib/glob_.h (__const): Remove macro.
37596         * lib/glob-libc.h: Use const instead of __const.
37597
37598 2006-01-10  Bruno Haible  <bruno@clisp.org>
37599
37600         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
37601         variable.
37602         Needed to avoid an automake error regarding the 'gettext' module.
37603
37604 2006-01-09  Simon Josefsson  <jas@extundo.com>
37605
37606         * modules/inet_ntop (Depends-on): Add restrict.
37607
37608 2006-01-09  Simon Josefsson  <jas@extundo.com>
37609
37610         * modules/gc-rijndael-tests (License): Put under LGPL.
37611
37612         * modules/gc-des-tests (License): Likewise.
37613
37614         * modules/gc-arcfour-tests (License): Likewise.
37615
37616         * modules/gc-arctwo-tests (License): Likewise.
37617
37618         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
37619
37620         * modules/gc-hmac-sha1-tests (Files): Likewise.
37621
37622         * modules/gc-hmac-md5-tests (License): Likewise.
37623
37624         * modules/gc-sha1-tests (License): Likewise.
37625
37626         * modules/gc-md5-tests (License): Likewise.
37627
37628         * modules/gc-md4-tests (License): Likewise.
37629
37630         * modules/gc-md2-tests (License): Likewise.
37631
37632         * modules/gc-tests (License): Likewise.
37633
37634         * modules/des-tests (License): Likewise.
37635
37636         * modules/md4-tests (License): Likewise.
37637
37638         * modules/md2-tests (License): Likewise.
37639
37640 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37641
37642         Sync from coreutils:
37643
37644         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
37645         * modules/lib-ignore: New file.
37646         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
37647         chdir-safer.m4, lchmod.m4.
37648         * modules/openat: Add mkdirat.c, openat-priv.h.
37649
37650 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37651
37652         Sync from coreutils.
37653         * m4/lib-ignore.m4: New file.
37654         * m4/lchmod.m4: New file.
37655
37656 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37657
37658         Sync from coreutils.
37659         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
37660         for write access: POSIX says that must fail.
37661         * lib/fts.c (diropen): Likewise.
37662         * lib/save-cwd.c (save_cwd): Likewise.
37663         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
37664         well, for minor improvements on hosts that lack O_DIRECTORY.
37665         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
37666         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
37667         Fall back on chown if open failed with EACCES.
37668
37669         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
37670         Report an error at compile-time if only a 1-second nominal clock
37671         resolution is found.
37672
37673         * lib/lchmod.h: New file.
37674         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
37675         (make_dir_parents): Use lchown rather than chown, and
37676         lchmod rather than chmod.
37677
37678         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
37679         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
37680         "proc" reported by n0dalus.
37681
37682         * lib/mountlist.c: Include <limits.h>.
37683         (dev_from_mount_options)
37684         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
37685         New function.  It no longer assumes "dev=" has the System V meaning
37686         on Linux (since it doesn't).  It also parses "dev=" more carefully.
37687         (read_file_system_list)
37688         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
37689         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
37690         dev= in that case.
37691
37692         * lib/posixtm.h (PDS_PRE_2000): New macro.
37693         * lib/posixtm.c (year): Arg is now syntax_bits rather than
37694         allow_century.  All usages changed.  Reject dates outside the range
37695         1969-1999 if PDS_PRE_2000 is used.
37696
37697 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37698
37699         Sync from coreutils.
37700         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
37701         (Time of day items): Mention the possibility of leap seconds.
37702         Problem reported by Dr. David Alan Gilbert.
37703
37704 2006-01-09  Jim Meyering  <jim@meyering.net>
37705
37706         Sync from coreutils.
37707
37708         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
37709
37710         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
37711
37712         * lib/modechange.c (mode_compile): Reject an invalid mode string
37713         that starts with an octal digit.  From Andreas Gruenbacher.
37714
37715         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
37716         and dup to open_safer and dup_safer, respectively.
37717         (openat_permissive): Fix typo in comment.
37718
37719         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
37720         "gettext.h"; either no longer needed or are guaranteed by openat.h.
37721         (_): Remove; no longer needed.
37722         (openat): Renamed from rpl_openat; no need for rpl_openat
37723         since openat.h renames openat for us.
37724         Replace most of the body with a call to openat_permissive,
37725         to avoid duplicate code.
37726         Port to (probably hypothetical) environments were mode_t is
37727         wider than int.
37728         (openat_permissive): Require mode arg, so that we can check
37729         types better.  Put it just after flags.  Change cwd failure
37730         indicator from pointer-to-bool to pointer-to-errno-value.
37731         All callers changed.
37732         Invoke openat_save_fail and/or openat_restore_fail if
37733         cwd_errno is null, so that openat can call us.
37734         (openat_permissive, fdopendir, fstatat, unlinkat):
37735         Simplify errno handling to avoid some duplicate code,
37736         as it's OK to set errno on success.
37737         * lib/openat.h: Revamp code so that function macros depend on
37738         __OPENAT_PREFIX only, not also on AT_FDCWD.
37739         (openat_ro): Remove.  Caller changed to use openat_permissive.
37740         (openat_permissive): Now a macro, if not a function.
37741         (openat_restore_fail, openat_save_fail): Now always functions,
37742         since mkdirat needs them even if __OPENAT_PREFIX is defined.
37743
37744         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
37745         and openat.c.
37746         * lib/mkdirat.c: Include openat-priv.h.
37747         Remove definitions of macros defined therein.
37748         * lib/openat.c: Likewise.
37749
37750         * lib/mkdirat.c (mkdirat): New file and function.
37751         * lib/openat.h (mkdirat): Declare.
37752
37753         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
37754
37755         * lib/openat.h (openat_permissive): Declare.
37756         (openat_ro): Define.
37757
37758         * lib/openat.c (EXPECTED_ERRNO): New macro.
37759         (openat_permissive): New function -- used in remove.c rewrite.
37760         (all functions): Set errno just before returning, only if there
37761         was an actual failure.
37762         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
37763
37764         Emulate openat-family functions using Linux's procfs, if possible.
37765         Idea and some code based on Ulrich Drepper's glibc changes.
37766
37767         * lib/openat.c: (BUILD_PROC_NAME): New macro.
37768         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
37769         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
37770         before falling back on save_cwd and restore_cwd.
37771         (fdopendir, fstatat, unlinkat): Likewise.
37772
37773         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
37774         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
37775
37776         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
37777         as second argument to va_arg.  Otherwise, some versions of gcc
37778         warn that `if this code is reached, the program will abort'.
37779
37780 2006-01-09  Jim Meyering  <jim@meyering.net>
37781
37782         Sync from coreutils.
37783         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
37784         Require openat-priv.h.
37785
37786 2006-01-09  Bruno Haible  <bruno@clisp.org>
37787
37788         * modules/strnlen (Include): Use strnlen.h.
37789
37790 2006-01-09  Bruno Haible  <bruno@clisp.org>
37791
37792         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
37793
37794 2006-01-09  Bruno Haible  <bruno@clisp.org>
37795
37796         * lib/sysexit_.h (EX_OK): New macro.
37797         Suggested by Martin Lambers <marlam@marlam.de>.
37798
37799 2006-01-09  Bruno Haible  <bruno@clisp.org>
37800
37801         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
37802         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
37803
37804 2006-01-09  Bruno Haible  <bruno@clisp.org>
37805
37806         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
37807         numbers.
37808
37809 2006-01-09  Bruno Haible  <bruno@clisp.org>
37810
37811         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
37812         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
37813         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
37814         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
37815
37816 2006-01-09  Bruno Haible  <bruno@clisp.org>
37817
37818         * build-aux/javacomp.sh.in: New file, moved from lib/.
37819         * modules/javacomp-script (Files): Update.
37820         (configure.ac): Add AC_CONFIG_FILES invocation.
37821         (EXTRA_DIST): Remove variable.
37822
37823         * build-aux/javaexec.sh.in: New file, moved from lib/.
37824         * modules/javaexec (Files): Update.
37825         (configure.ac): Add AC_CONFIG_FILES invocation.
37826         (EXTRA_DIST): Remove javaexec.sh.in.
37827
37828         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
37829         * modules/csharpcomp-script (Files): Update.
37830         (configure.ac): Add AC_CONFIG_FILES invocation.
37831         (EXTRA_DIST): Remove variable.
37832
37833         * build-aux/csharpexec.sh.in: New file, moved from lib/.
37834         * modules/csharpexec (Files): Update.
37835         (configure.ac): Add AC_CONFIG_FILES invocation.
37836         (EXTRA_DIST): Remove csharpexec.sh.in.
37837
37838 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
37839
37840         Sync from coreutils.
37841
37842         Add POSIX ACL support
37843         * lib/acl.h (copy_acl, set_acl): Add declarations.
37844         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
37845         systems other than Linux.
37846         (chmod_or_fchmod): New function: use fchmod when possible,
37847         and chmod otherwise.
37848         (file_has_acl): Add a POSIX ACL implementation, with a
37849         Linux-specific subcase.
37850         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
37851         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
37852         acls are unsupported.
37853         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
37854         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
37855         are unsupported.
37856
37857 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
37858
37859         Sync from coreutils.
37860         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
37861
37862 2006-01-07  Bruno Haible  <bruno@clisp.org>
37863
37864         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
37865         gl_EARLY.
37866
37867 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
37868
37869         * lib/strftime.c (tzname): Don't declare if it is already #defined.
37870         Problem reported for Mingw by Mark Junker.
37871
37872 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
37873
37874         * README: Gnulib normally doesn't generate a tarball.
37875
37876 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
37877
37878         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
37879         long int, not int, for nanosecond counts, so that people who are
37880         used to POSIX struct timespec won't be surprised.  Reported by Jim
37881         Meyering.
37882
37883 2005-12-28  Bruno Haible  <bruno@clisp.org>
37884
37885         * build-aux/config.rpath: Update from GNU gettext.
37886
37887 2005-12-16  Jim Meyering  <jim@meyering.net>
37888
37889         * modules/fprintftime: New module.
37890         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
37891
37892 2005-12-16  Jim Meyering  <jim@meyering.net>
37893
37894         * m4/fprintftime.m4: New file.
37895
37896 2005-12-16  Jim Meyering  <jim@meyering.net>
37897
37898         * lib/fprintftime.c, lib/fprintftime.h: New files.
37899
37900 2005-12-15  Simon Josefsson  <jas@extundo.com>
37901
37902         * modules/socklen (configure.ac): Fix M4 macro name, to align with
37903         new m4/socklen.m4.
37904
37905 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
37906
37907         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
37908         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
37909
37910 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
37911
37912         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
37913         * lib/argp-help.c (fill_in_uparams): Check if the constructed
37914         struct uparams is valid. Fall back to the default values if it is
37915         not.
37916
37917 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
37918
37919         * modules/argp (Files): Add argp-pin.c
37920         (Depends-on): dirname
37921         (lib_SOURCES): Add argp-pin.c
37922
37923 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
37924
37925         * m4/argp.m4:  Check if program_invocation_name and
37926         program_invocation_short_name are declared and define appropriate
37927         macros if they are not.
37928
37929 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
37930
37931         * lib/argp-help.c (__argp_base_name): New function
37932         (__argp_short_program_name): Rewrite using __argp_base_name
37933         * lib/argp-namefrob.h: Define program_invocation_name and
37934         program_invocation_short_name if requested
37935         (__argp_base_name): Add prototype
37936         * lib/argp-parse.c (argp_def): Use gettext wrappers
37937         (argp_default_parser): Use __argp_base_name
37938         * lib/argp-pin.c: New file. Defines program_invocation_name and
37939         program_invocation_short_name on systems that lack them.
37940
37941 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
37942
37943         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
37944         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
37945         porting problem reported by Georg Schwarz in
37946         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
37947
37948 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
37949
37950         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
37951         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
37952         porting problem reported by Georg Schwarz in
37953         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
37954
37955 2005-12-05  Bruno Haible  <bruno@clisp.org>
37956
37957         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
37958         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
37959         Reported by Mark Junker <mjscod@gmx.de>.
37960
37961 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
37962
37963         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
37964         Use implementation from Albert Chin, with some
37965         comments/corrections by Stepan Kasal and myself.
37966
37967 2005-12-02  Bruno Haible  <bruno@clisp.org>
37968
37969         * gnulib-tool (func_import): Accept GPLed build tool modules when
37970         --lgpl is given.
37971         * modules/csharpcomp-script: New file.
37972         * modules/csharpcomp: Depend on it.
37973         * modules/javacomp-script: New file.
37974         * modules/javacomp: Depend on it.
37975         Suggested by Simon Josefsson.
37976
37977 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
37978
37979         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
37980         statement, to work around an HP-UX 10.20 compiler bug reported by
37981         Peter O'Gorman.
37982
37983 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
37984
37985         * modules/savedir (Depends-on): Add openat.
37986
37987 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
37988
37989         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
37990         (uintmax_t) [defined uintmax_t]: Do not declare.
37991         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
37992         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
37993         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
37994         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
37995         sake of portability to weird hosts that C allows (though we don't
37996         know of any practical examples).
37997
37998         * lib/savedir.h (fdsavedir): New decl.
37999         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
38000         contains most of the former guts of savedir.
38001         (savedir): Use savedirstream.
38002         Include "openat.h".
38003
38004 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
38005
38006         * modules/obstack (Files): Add m4/ulonglong.m4.
38007         Problem reported by Davide Angelocola.
38008
38009 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
38010
38011         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
38012         coreutils no longer futzes with rounding modes.
38013
38014 2005-11-14  Jim Meyering  <jim@meyering.net>
38015
38016         * lib/mkstemp-safer.c: Include <config.h>, required for possible
38017         replacement of mkstemp.
38018
38019 2005-11-10  Simon Josefsson  <jas@extundo.com>
38020
38021         * lib/readline.c: Remove EOL.
38022
38023 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
38024
38025         * modules/gethrxtime (Depends-on): Add gettime.
38026
38027 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
38028
38029         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
38030         or gettimeofday; no longer needed.
38031
38032 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
38033
38034         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
38035         time business.
38036         (gethrxtime) [! (HAVE_NANOUPTIME
38037         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
38038         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
38039         our own approximation.
38040
38041 2005-11-08  Eric Blake  <ebb9@byu.net>
38042
38043         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
38044
38045 2005-11-08  Eric Blake  <ebb9@byu.net>
38046
38047         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
38048
38049 2005-11-04  Bruno Haible  <bruno@clisp.org>
38050
38051         * gnulib-tool: Implement --update mode.
38052
38053 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
38054
38055         Fix porting problem reported by Theodoros V. Kalamatianos.
38056         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
38057         Don't assume that futimes failing means we must fail.
38058
38059 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
38060
38061         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
38062         variables to suggest the intended function of the PATH_MAX check.
38063
38064 2005-10-30  Kean Johnston  <jkj@sco.com>
38065
38066         Trivial changes to support SCO systems.
38067         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
38068         as PATH_MAX.
38069         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
38070         where __ptr is null when no I/O is pending.
38071
38072 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
38073
38074         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
38075         leave errno alone.  Problem reported by Dmitry V. Levin.
38076
38077 2005-10-28  Simon Josefsson  <jas@extundo.com>
38078
38079         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
38080         Test more.
38081
38082         * tests/test-gc-md2.c, tests/test-md2.c: New files.
38083
38084         * modules/md2, modules/md2-tests: New files.
38085
38086 2005-10-28  Simon Josefsson  <jas@extundo.com>
38087
38088         * m4/inet_ntop.m4: More tests.
38089
38090         * m4/gc-md2.m4, md2.m4: New file.
38091
38092 2005-10-28  Simon Josefsson  <jas@extundo.com>
38093
38094         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
38095         "restrict" keywords, as per POSIX.  Protect the function
38096         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
38097         Don't use K&R prototypes.  Check the sprintf return values.
38098         Re-define EAFNOSUPPORT if not present.  Indent.
38099
38100         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
38101         suggested by Bruno Haible <bruno@clisp.org>.
38102
38103         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
38104
38105         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
38106
38107         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
38108         libgcrypt).
38109
38110         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
38111
38112         * lib/md2.h, lib/md2.c: New files.
38113
38114 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
38115
38116         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
38117         errno alone.  Problem reported by Frederic Jolliton.
38118
38119 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
38120
38121         * modules/verify (License): Change from GPL to LGPL.  This is a
38122         tiny module and there are apparently near-equivalents that are
38123         under the BSD license.
38124
38125 2005-10-24  Simon Josefsson  <jas@extundo.com>
38126
38127         * modules/sha1: Relicense to LGPL.
38128
38129 2005-10-24  Simon Josefsson  <jas@extundo.com>
38130
38131         * lib/md4.h: Shrink buffer size, now that we changed the type.
38132
38133 2005-10-23  Simon Josefsson  <jas@extundo.com>
38134
38135         * gnulib-tool (func_import): Fix --tests-base.
38136
38137 2005-10-22  Simon Josefsson  <jas@extundo.com>
38138
38139         * modules/arcfour (Depends-on): Need stdint.
38140
38141 2005-10-22  Simon Josefsson  <jas@extundo.com>
38142
38143         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
38144         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
38145
38146 2005-10-22  Simon Josefsson  <jas@extundo.com>
38147
38148         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
38149         suggested by Bruno Haible <bruno@clisp.org>.
38150
38151 2005-10-22  Simon Josefsson  <jas@extundo.com>
38152
38153         * lib/crc.h: Include stddef.h, for size_t.
38154
38155 2005-10-22  Simon Josefsson  <jas@extundo.com>
38156
38157         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
38158         arcfour_context struct (simplify test vector testing in GNU
38159         Shishi).
38160
38161 2005-10-21  Simon Josefsson  <jas@extundo.com>
38162
38163         * modules/des, modules/des-tests: New files.
38164
38165         * modules/gc-des, modules/gc-des-tests: New files.
38166
38167         * tests/test-des.c, tests/test-gc-des.c: New file.
38168
38169 2005-10-21  Simon Josefsson  <jas@extundo.com>
38170
38171         * modules/arctwo, modules/arctwo-tests: New files.
38172
38173         * tests/test-arctwo.c: New file.
38174
38175         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
38176
38177         * tests/test-gc-arctwo.c: New file.
38178
38179 2005-10-21  Simon Josefsson  <jas@extundo.com>
38180
38181         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
38182         Bruno Haible <bruno@clisp.org>.
38183
38184         * m4/gc-des.m4: New file.
38185
38186 2005-10-21  Simon Josefsson  <jas@extundo.com>
38187
38188         * m4/arctwo.m4: New file.
38189
38190         * m4/gc-arctwo.m4: New file.
38191
38192 2005-10-21  Simon Josefsson  <jas@extundo.com>
38193
38194         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
38195         block.
38196
38197 2005-10-21  Simon Josefsson  <jas@extundo.com>
38198
38199         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
38200         <bruno@clisp.org>.
38201
38202         * lib/hmac-sha1.c (hmac_sha1): Likewise.
38203
38204         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
38205         Bruno Haible <bruno@clisp.org>.
38206
38207         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
38208         <bruno@clisp.org>.
38209
38210 2005-10-21  Simon Josefsson  <jas@extundo.com>
38211
38212         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
38213
38214 2005-10-21  Simon Josefsson  <jas@extundo.com>
38215
38216         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
38217
38218 2005-10-21  Simon Josefsson  <jas@extundo.com>
38219
38220         * lib/des.h, lib/des.c: New files.
38221
38222         * lib/gc-gnulib.c: Support DES.c
38223
38224 2005-10-21  Simon Josefsson  <jas@extundo.com>
38225
38226         * lib/arctwo.h, lib/arctwo.c: New files.
38227
38228         * lib/gc-gnulib.c: Support ARCTWO.
38229
38230 2005-10-21  Simon Josefsson  <jas@extundo.com>
38231
38232         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
38233         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
38234
38235 2005-10-21  Simon Josefsson  <jas@extundo.com>
38236
38237         * gnulib-tool (func_import, func_create_testdir): Define automake
38238         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
38239         Makefile.am snippet),
38240         suggested by Bruno Haible <bruno@clisp.org>.
38241
38242         * modules/gc (Makefile.am): Use it.
38243
38244 2005-10-21  Bruno Haible  <bruno@clisp.org>
38245
38246         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
38247         patch.
38248
38249 2005-10-19  Simon Josefsson  <jas@extundo.com>
38250
38251         * tests/test-gc-rijndael.c: New file.
38252
38253         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
38254
38255 2005-10-19  Simon Josefsson  <jas@extundo.com>
38256
38257         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
38258         interface too.
38259
38260 2005-10-19  Simon Josefsson  <jas@extundo.com>
38261
38262         * tests/test-gc-arcfour.c: New file.
38263
38264         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
38265
38266 2005-10-19  Simon Josefsson  <jas@extundo.com>
38267
38268         * modules/gc-md4, modules/gc-md4-tests: New file.
38269
38270         * tests/test-gc-md4.c: New file.
38271
38272 2005-10-19  Simon Josefsson  <jas@extundo.com>
38273
38274         * m4/gc-md4.m4: New file.
38275
38276 2005-10-19  Simon Josefsson  <jas@extundo.com>
38277
38278         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
38279         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
38280         <kasal@ucw.cz>.
38281
38282 2005-10-19  Simon Josefsson  <jas@extundo.com>
38283
38284         * m4/gc-arcfour.m4: New file.
38285
38286         * m4/gc-rijndael.m4: New file.
38287
38288 2005-10-19  Simon Josefsson  <jas@extundo.com>
38289
38290         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
38291
38292 2005-10-19  Simon Josefsson  <jas@extundo.com>
38293
38294         * lib/gc-gnulib.c: Support ARCFOUR.
38295
38296 2005-10-19  Simon Josefsson  <jas@extundo.com>
38297
38298         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
38299         support.
38300
38301         * lib/gc.h: Add ECB enum type.
38302
38303         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
38304
38305 2005-10-18  Simon Josefsson  <jas@extundo.com>
38306
38307         * tests/test-md5.c: New file.
38308
38309         * modules/md5-tests: New file.
38310
38311 2005-10-18  Simon Josefsson  <jas@extundo.com>
38312
38313         * tests/test-md4.c: New file.
38314
38315         * modules/md4, modules/md4-tests: New files.
38316
38317 2005-10-18  Simon Josefsson  <jas@extundo.com>
38318
38319         * m4/md4.m4: New file.
38320
38321 2005-10-18  Simon Josefsson  <jas@extundo.com>
38322
38323         * lib/md4.h, lib/md4.c: New files, based on md5.?.
38324
38325 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
38326
38327         * gnulib-tool (func_create_testdir): Omit the second check whether
38328         BUILT_SOURCES in nonempty.
38329
38330 2005-10-17  Simon Josefsson  <jas@extundo.com>
38331
38332         * tests/test-rijndael.c: New file.
38333
38334 2005-10-17  Simon Josefsson  <jas@extundo.com>
38335
38336         * modules/sha1: Depend on stdint instead of md5.
38337
38338         * modules/md5: Depend on stdint, remove uint32_t.
38339
38340 2005-10-17  Simon Josefsson  <jas@extundo.com>
38341
38342         * modules/gc-sha1-tests: New file.
38343
38344         * tests/test-gc-sha1.c: New file.
38345
38346 2005-10-17  Simon Josefsson  <jas@extundo.com>
38347
38348         * m4/md5.m4: Remove call to uint32_t.m4.
38349
38350 2005-10-17  Simon Josefsson  <jas@extundo.com>
38351
38352         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
38353
38354         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
38355         md5.h.
38356
38357         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
38358
38359         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
38360
38361 2005-10-17  Simon Josefsson  <jas@extundo.com>
38362
38363         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
38364
38365 2005-10-17  Simon Josefsson  <jas@extundo.com>
38366
38367         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
38368
38369 2005-10-17  Simon Josefsson  <jas@extundo.com>
38370
38371         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
38372
38373         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
38374
38375 2005-10-17  Bruno Haible  <bruno@clisp.org>
38376
38377         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
38378         that it can also be used in a test.
38379
38380 2005-10-16  Bruno Haible  <bruno@clisp.org>
38381
38382         * gnulib-tool (func_emit_tests_Makefile_am): Also define
38383         TESTS_ENVIRONMENT, so that individual tests can augment it.
38384
38385         * gnulib-tool (func_create_testdir): Use an intermediate target for
38386         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
38387         macros, like $(ALLOCA_H), which cannot be passed through the command
38388         line.
38389
38390 2005-10-15  Simon Josefsson  <jas@extundo.com>
38391
38392         * modules/rijndael-tests: New file.
38393
38394         * modules/rijndael: New file.
38395
38396 2005-10-15  Simon Josefsson  <jas@extundo.com>
38397
38398         * m4/rijndael.m4: New file.
38399
38400 2005-10-15  Simon Josefsson  <jas@extundo.com>
38401
38402         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
38403
38404         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
38405
38406 2005-10-14  Simon Josefsson  <jas@extundo.com>
38407
38408         * tests/test-arcfour.c: New file.
38409
38410         * modules/arcfour, modules/arcfour-tests: New files.
38411
38412 2005-10-14  Simon Josefsson  <jas@extundo.com>
38413
38414         * m4/arcfour.m4: New file.
38415
38416 2005-10-14  Simon Josefsson  <jas@extundo.com>
38417
38418         * lib/arcfour.h, lib/arcfour.c: New files.
38419
38420 2005-10-14  Roland McGrath  <roland@redhat.com>
38421
38422         Import from libc.  [BZ #1331]
38423         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
38424         macro argument.
38425         Reported by Matej Vela <vela@debian.org>.
38426
38427 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
38428
38429         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
38430         include <wchar.h>; no longer needed.
38431
38432 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
38433
38434         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
38435
38436 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
38437         and  Ulrich Drepper  <drepper@redhat.com>
38438
38439         Import from libc.
38440         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
38441         instead of inline stream orientation test and two separate
38442         function calls.  Pay no attention to USE_IN_LIBIO.
38443
38444 2005-10-13  Simon Josefsson  <jas@extundo.com>
38445
38446         * modules/gc-hmac-md5-tests: New file.
38447
38448         * tests/test-gc-hmac-sha1.c: New file.
38449
38450         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
38451
38452         * modules/gc-hmac-md5-tests: New file.
38453
38454         * tests/test-gc-md5.c: New file.
38455
38456         * modules/gc-md5-tests: New file.
38457
38458 2005-10-13  Simon Josefsson  <jas@extundo.com>
38459
38460         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
38461         Move memory allocation outside of loop.
38462
38463 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
38464
38465         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
38466         intermediate directory is in a read-only file system.  Problem
38467         reported by Eric Blake.
38468
38469 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
38470
38471         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
38472
38473 2005-10-12  Simon Josefsson  <jas@extundo.com>
38474
38475         * tests/test-hmac-sha1.c: New file.
38476
38477         * modules/hmac-sha1-tests: New file.
38478
38479         * modules/hmac-sha1: New file.
38480
38481 2005-10-12  Simon Josefsson  <jas@extundo.com>
38482
38483         * modules/gc-sha1: New file.
38484
38485 2005-10-12  Simon Josefsson  <jas@extundo.com>
38486
38487         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
38488
38489         * tests/test-gc-pbkdf2-sha1.c: New file.
38490
38491 2005-10-12  Simon Josefsson  <jas@extundo.com>
38492
38493         * modules/gc-md5, modules/gc-hmac-md5: New files.
38494
38495         * modules/gc (Files): Remove md5, memxor and hmac files.
38496
38497 2005-10-12  Simon Josefsson  <jas@extundo.com>
38498
38499         * m4/gc-pbkdf2-sha1.m4: New file.
38500
38501         * m4/gc-hmac-sha1.m4: New file.
38502
38503         * m4/gc-sha1: New file.
38504
38505         * m4/hmac-sha1.m4: New file.
38506
38507 2005-10-12  Simon Josefsson  <jas@extundo.com>
38508
38509         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
38510
38511         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
38512
38513 2005-10-12  Simon Josefsson  <jas@extundo.com>
38514
38515         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
38516         suggested by Bruno Haible <bruno@clisp.org>.
38517
38518 2005-10-12  Simon Josefsson  <jas@extundo.com>
38519
38520         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
38521
38522 2005-10-12  Simon Josefsson  <jas@extundo.com>
38523
38524         * lib/gc-pbkdf2-sha1.c: New file.
38525
38526         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
38527
38528 2005-10-12  Simon Josefsson  <jas@extundo.com>
38529
38530         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
38531
38532         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
38533
38534 2005-10-12  Simon Josefsson  <jas@extundo.com>
38535
38536         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
38537         GC_USE_HMAC_MD5, respectively.
38538
38539         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
38540         (gc_md5): Fix typo.
38541
38542         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
38543
38544         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
38545
38546         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
38547
38548 2005-10-12  Bruno Haible  <bruno@clisp.org>
38549
38550         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
38551         Reported by Stepan Kasal <kasal@ucw.cz>.
38552
38553 2005-10-11  Simon Josefsson  <jas@extundo.com>
38554
38555         * tests/test-crc.c: New file.
38556
38557         * modules/crc, modules/crc-tests: New files.
38558
38559 2005-10-11  Simon Josefsson  <jas@extundo.com>
38560
38561         * m4/crc.m4: New file.
38562
38563 2005-10-11  Simon Josefsson  <jas@extundo.com>
38564
38565         * lib/gc.h: Add gc_hash and gc_hash_buffer.
38566
38567         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
38568
38569         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
38570
38571 2005-10-11  Simon Josefsson  <jas@extundo.com>
38572
38573         * lib/crc.h, lib/crc.c: New files.
38574
38575         * lib/gc.h (gc_hash_buffer): Add doc.
38576
38577 2005-10-11  Bruno Haible  <bruno@clisp.org>
38578
38579         * modules/c-strcasestr: New file.
38580         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
38581
38582 2005-10-11  Bruno Haible  <bruno@clisp.org>
38583
38584         * modules/c-strcase: New file.
38585         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
38586
38587 2005-10-11  Bruno Haible  <bruno@clisp.org>
38588
38589         * lib/strcasecmp.c: Include limits.h.
38590         (strcasecmp): Avoid integer overflow on exotic platforms.
38591         * lib/strncasecmp.c: Include limits.h.
38592         (strncasecmp): Avoid integer overflow on exotic platforms.
38593         Reported by Paul Eggert.
38594
38595 2005-10-11  Bruno Haible  <bruno@clisp.org>
38596
38597         * lib/c-strcasestr.h: New file, from GNU gettext.
38598         * lib/c-strcasestr.c: New file, from GNU gettext.
38599
38600 2005-10-11  Bruno Haible  <bruno@clisp.org>
38601
38602         * lib/c-strcase.h: New file, from GNU gettext.
38603         * lib/c-strcasecmp.c: New file, from GNU gettext.
38604         * lib/c-strncasecmp.c: New file, from GNU gettext.
38605
38606 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
38607
38608         * modules/mempcpy (License): GPL -> LGPL.
38609         * modules/strchrnul (License): Likewise.
38610         * modules/sysexits (License): Likewise.
38611
38612 2005-10-08  Simon Josefsson  <jas@extundo.com>
38613
38614         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
38615
38616 2005-10-07  Simon Josefsson  <jas@extundo.com>
38617
38618         * m4/memxor.m4: Remove gl_C_RESTRICT call.
38619
38620 2005-10-06  Simon Josefsson  <jas@extundo.com>
38621
38622         * tests/test-hmac-md5.c: New file.
38623
38624         * modules/hmac-md5-tests: New file.
38625
38626         * modules/hmac-md5: New file.
38627
38628 2005-10-06  Simon Josefsson  <jas@extundo.com>
38629
38630         * m4/hmac-md5.m4: New file.
38631
38632         * m4/memxor.m4: Require gl_C_RESTRICT.
38633
38634 2005-10-06  Simon Josefsson  <jas@extundo.com>
38635
38636         * lib/memxor.c (memxor): Avoid casts and warnings.
38637
38638 2005-10-06  Simon Josefsson  <jas@extundo.com>
38639
38640         * lib/hmac-md5.c: New file.
38641
38642         * lib/hmac.h: New file.
38643
38644 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
38645
38646         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
38647         promotes to int, not unsigned int, to catch the AIX 5.3
38648         compiler bug.
38649
38650 2005-10-05  Simon Josefsson  <jas@extundo.com>
38651
38652         * modules/memxor: New file.
38653
38654         * modules/iconv (Files): Move config.rpath to havelib, it is used
38655         there.
38656
38657         * modules/havelib (Files): Add config.rpath.
38658
38659 2005-10-05  Simon Josefsson  <jas@extundo.com>
38660
38661         * m4/memxor.m4: New file.
38662
38663 2005-10-05  Simon Josefsson  <jas@extundo.com>
38664
38665         * lib/memxor.c (memxor): Fix compiler error.
38666
38667         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
38668         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
38669
38670         * lib/memxor.h, lib/memxor.c: New files.
38671
38672         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
38673         we assume all systems have it, suggested by Jim Meyering
38674         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
38675         any systems lack sys/socket.h; mingw32 is known to lack it, but we
38676         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
38677         same reasons.
38678
38679 2005-10-05  Simon Josefsson  <jas@extundo.com>
38680
38681         * config/srclist.txt: Add glibc bug 1423 for md5.h.
38682
38683 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
38684
38685         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
38686         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
38687         needed, since the source code now assumes these .h files.
38688
38689 2005-10-05  Derek Price  <derek@ximbiot.com>
38690
38691         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
38692
38693 2005-10-05  Bruno Haible  <bruno@clisp.org>
38694
38695         * modules/stdint (License): Change to LGPL.
38696
38697 2005-10-04  Simon Josefsson  <jas@extundo.com>
38698
38699         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
38700         D. Baushke" <mdb@gnu.org>.
38701
38702 2005-10-04  Bruno Haible  <bruno@clisp.org>
38703
38704         * lib/verify.h (verify_true): Provide alternative definition for C++.
38705
38706 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
38707
38708         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
38709         (SSIZE_MAX): New macro, if not already defined.
38710         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
38711         than 2 GiB.
38712
38713 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
38714
38715         Sync from coreutils.
38716         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
38717         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
38718         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
38719         ULLONG_MAX doesn't work with 2.7.2.1.
38720
38721 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
38722
38723         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
38724         From Ben Pfaff.
38725
38726         * modules/exclude (Depends-on): Depend on verify.
38727         * modules/strtoimax (Depends-on): Likewise.
38728         * modules/utimecmp (Depends-on): Likewise.
38729
38730 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
38731
38732         * lib/exclude.c: Include verify.h.
38733         (verify): Remove.  All callers changed to use verify.h's version.
38734         * lib/strtoimax.c: Likewise.
38735         * lib/utimecmp.c: Likewis.e
38736
38737         Sync from coreutils.
38738         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
38739         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
38740         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
38741         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
38742         bother returning ENOSYS if settimeofday or stime fails; just let
38743         them return whatever errno they want to return.
38744         * lib/utimens.c: Include unistd.h, for dup2.
38745         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
38746         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
38747
38748 2005-10-02  Jim Meyering  <jim@meyering.net>
38749
38750         Sync from coreutils.
38751         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
38752         from glibc-2.2.5 that fails for read-only files.
38753
38754 2005-10-02  Jim Meyering  <jim@meyering.net>
38755
38756         Sync from coreutils.
38757         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
38758         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
38759         `#if HAVE_CONFIG_H'.
38760         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
38761         Remove AT_FDCWD test.
38762         Do not consume the fd unless successful.
38763         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
38764         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
38765         block, so that we don't even try to compile it if settimeofday is
38766         available.  This works around a compilation failure on OSF1 V5.1,
38767         due to stime requiring a `long int*' while tv_sec is `int'.
38768
38769 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
38770
38771         Sync from coreutils.
38772         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
38773         against `yes', rather than just testing for nonempty.
38774
38775 2005-10-01  Simon Josefsson  <jas@extundo.com>
38776
38777         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
38778         and Darwin.
38779
38780         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
38781         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
38782         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
38783         freeaddrinfo and gai_strerror are declared by the POSIX headers.
38784         Check if struct addrinfo is declared.
38785
38786 2005-10-01  Simon Josefsson  <jas@extundo.com>
38787
38788         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
38789         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
38790         AI_* and EAI_* definitions.  Protect function declarations.
38791
38792 2005-10-01  Jim Meyering  <jim@meyering.net>
38793
38794         Sync from coreutils.
38795
38796         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
38797         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
38798         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
38799         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
38800         in the inet and nsl libraries.  Required on Solaris 5.7.
38801
38802 2005-10-01  Jim Meyering  <jim@meyering.net>
38803
38804         Sync from coreutils.
38805         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
38806         in the inet and nsl libraries.  Required on Solaris 5.7.
38807
38808 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
38809
38810         * lib/getdelim.c (getdelim): Remove unused variables.
38811
38812 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
38813
38814         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
38815         so that the code works even with ancient cpp.  Portability problem
38816         with GCC 2.7.2.1 reported by Thomas M.Ott.
38817
38818 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
38819
38820         * modules/regex (Depends-on): Add strcase.
38821
38822         * modules/gethostname (Licence): Change from GPL to LGPL, since
38823         gethostname.c is a trivial implementation of a standard library
38824         function.
38825         * modules/poll (License): Change from GPL to LGPL, since it's
38826         derived from LGPL code.
38827
38828 2005-09-27  Jim Meyering  <jim@meyering.net>
38829
38830         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
38831         HAVE_CONFIG_H.
38832
38833         * lib/intprops.h (signed_type_or_expr__): Define.
38834         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
38835         for unsigned types.
38836
38837 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
38838
38839         * lib/verify.h (verify_expr): Remove, replacing with:
38840         (verify_true): New macro that returns true instead of void.
38841         (verify_type__): Remove.
38842         (verify): Use verify_true rather than verify_type__.
38843
38844 2005-09-26  Bruno Haible  <bruno@clisp.org>
38845
38846         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
38847         is necessary.
38848         (lib_SOURCES): Remove mbchar.c.
38849         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
38850         (Files): Add m4/mbrtowc.m4.
38851         * modules/mbiter: Likewise.
38852         * modules/mbuiter: Likewise.
38853
38854 2005-09-26  Bruno Haible  <bruno@clisp.org>
38855
38856         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
38857         compile mbchar.c if they are not both present.
38858         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
38859         * m4/mbiter.m4 (gl_MBITER): Likewise.
38860         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
38861         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
38862         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
38863
38864 2005-09-25  Jim Meyering  <jim@meyering.net>
38865
38866         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
38867         also uses socklen_t.
38868
38869 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
38870
38871         * lib/utimens.c (ENOSYS): Define if not already defined.
38872         (futimens): Support having a null PATH if the file descriptor
38873         is nonnegative.
38874
38875         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
38876         Remove.
38877         (__attribute): Define to empty unless GCC 3.1 or later.
38878         This works around a core dump on OpenBSD 3.4, which has GCC
38879         2.95.3, which dumps core when given __attribute__(()).  It also
38880         simplifies other tests, since we really don't want to bother with
38881         worrying about which ancient version of GCC supported what.
38882         Original problem reported by Yoann Vandoorselaere, with part of
38883         the fix suggested by Derek Price.
38884
38885 2005-09-24  Jim Meyering  <jim@meyering.net>
38886
38887         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
38888         so we can once again use a positive bitfield width of 1 -- now we
38889         don't have to explain why we were using a bitfield width of 2.
38890
38891 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
38892
38893         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
38894         and similarly for the other external symbols.  Problem reported
38895         by James Gallager.
38896
38897         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
38898         bug reported by Jim Meyering.
38899
38900         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
38901         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
38902         not needed, since socklen is a prerequisite module.
38903
38904 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
38905
38906         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
38907         Problem reported by Eric Blake.
38908         (getaddrinfo): Initialize se so that it's not garbage.
38909         Redo internal storage allocation so that it doesn't make unportable
38910         assumptions about alignment.
38911         Fix a memory leak.
38912
38913         * lib/utimens.c (futimens): Use futimesat if available.
38914         Prefer it to futimes since it doesn't have the futimes bug.
38915
38916         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
38917         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
38918         Instead, declare a function that returns a pointer to an array,
38919         and use verify_type__ to declare the size of the array.
38920         Problem and germ of a solution reported by Bruno Haible.
38921         (verify_type__): Use 2, not 1, for bitfield size, to avoid
38922         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
38923
38924 2005-09-23  Jim Meyering  <jim@meyering.net>
38925
38926         Sync from coreutils.
38927         Correct build failure (socklen_t not defined) on at least
38928         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
38929         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
38930
38931 2005-09-23  Jim Meyering  <jim@meyering.net>
38932
38933         * modules/getaddrinfo (Depends-on): Add socklen.
38934
38935 2005-09-23  Bruno Haible  <bruno@clisp.org>
38936
38937         * tests/test-verify.c: New file.
38938
38939 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
38940
38941         Sync from coreutils.
38942
38943         * modules/argmatch (Depends-on): Add verify.
38944         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
38945         unistd-safer.
38946         * modules/save-cwd (Depends-on): Likewise.
38947
38948         * modules/openat (Files): Add lib/openat-die.c.
38949         (Depends-on): Remove error, exitfail.
38950         Add dirname.
38951
38952         * modules/verify: New file.
38953         * MODULES.html.sh (Diagnostics <assert.h>): New section,
38954         with "verify" module.
38955
38956 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
38957
38958         Sync from coreutils.
38959
38960         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
38961         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
38962         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
38963         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
38964         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
38965         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
38966         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
38967         Don't bother checking for string.h, stdlib.h, unistd.h.
38968         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
38969         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
38970         module's job.
38971         * m4/jm-macros.m4 (gl_MACROS): Likewise.
38972         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
38973
38974         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
38975         (gl_GETDATE): Use it.
38976
38977         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
38978
38979 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
38980
38981         Sync from coreutils.
38982
38983         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
38984         stat-time.h.
38985         * lib/argmatch.h: Include verify.h
38986         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
38987         (ARGMATCH_ASSERT): Remove; unused.
38988         * lib/canonicalize.c: Assume STDC_HEADERS.
38989         * lib/exclude.c: Include "strcase.h".
38990         * lib/regex_internal.h [!defined _LIBC]: Likewise.
38991         * lib/getusershell.c: Include stdio--.h rather than stdio.h
38992         and stdio-safer.h.
38993         (getusershell): Call fopen, not fopen_safer.
38994         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
38995         Do not include unistd-safer.h.
38996         (save_cwd): Don't call fd_safer; no longer needed
38997         now that we include fcntl--.h.
38998
38999         * lib/getdate.y (relative_time): New type.
39000         (RELATIVE_TIME_0): New constant.
39001         (parser_control): Use relative_time instead of doing it ourselves.
39002         (%union): Add new relative_time rel member.
39003         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
39004         Now typeless.
39005         (relunit, relunit_snumber): Now of type rel.
39006         (zone, rel, relunit, get_date): Adjust to above changes.
39007
39008         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
39009         Do not include unistd-safer.h.
39010         (getloadavg): Don't call fd_safer; no longer needed
39011         now that we include fcntl--.h.
39012
39013         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
39014         (make_dir_parents): Treat ENOSYS like EEXIST.
39015
39016         Improve quality of diagnostics on restore_cwd failure.
39017         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
39018         (make_dir_parents): Last arg is now int * (for errno), not bool *.
39019         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
39020         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
39021         each time through the loop.  Do not diagnose restore_cwd failure;
39022         that is the caller's job (and perhaps the caller does not care).
39023
39024         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
39025         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
39026         If the file already exists but is not a directory, don't bother
39027         to try to make its parents.
39028         Close potential file descriptor leak if we can't chdir("/") (!).
39029         Don't always return true if chdir($PWD) fails; return true only
39030         if the requested action was done successfully (except for the
39031         chdir($PWD)).
39032         Don't log final directory unless we actually made it.
39033         Refactor to avoid duplicate code to fix up permissions.
39034         Don't attempt to fix up parent permissions if chdir($PWD) fails.
39035
39036         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
39037         to make it a bit faster and (I hope) clearer.
39038         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
39039         Fix bug in formats like %2N.
39040
39041         * lib/verify.h: New file.
39042
39043 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
39044
39045         Sync from coreutils.
39046         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
39047
39048 2005-09-22  Jim Meyering  <jim@meyering.net>
39049
39050         Sync from coreutils.
39051
39052         * m4/lstat.m4 (gl_FUNC_LSTAT):
39053         Use AC_LIBSOURCES to require lstat.c and lstat.h.
39054         Remove obsolete comment.
39055         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
39056         * m4/xstrtod.m4: Likewise.
39057
39058         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
39059
39060 2005-09-22  Jim Meyering  <jim@meyering.net>
39061
39062         Sync from coreutils.
39063
39064         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
39065
39066         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
39067         the .tm_year member, since otherwise gcc-4.0 would now warn about
39068         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
39069
39070         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
39071         order to avoid an unsuppressible warning from gcc on 64-bit systems.
39072
39073         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
39074         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
39075         when run in a time zone for which daylight savings time is in effect
39076         for the starting date.
39077
39078         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
39079         stop us from restricting permissions of just-created absolute-named
39080         directories.
39081         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
39082         to restore initial working directory.
39083         * lib/mkdir-p.c (make_dir_parents): New parameter:
39084         different_working_dir, to tell caller if/when we change the working
39085         directory and are unable to return to the initial one.
39086         * lib/mkdir-p.h (make_dir_parents): Update prototype.
39087         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
39088         `return false'.  This fixes a bug introduced on 2004-07-30.
39089
39090         * lib/openat.c (fdopendir): Be sure to close the supplied
39091         file descriptor before returning.  This makes our replacement
39092         implementation a little closer to Solaris's, where fdopendir
39093         ties the file descriptor to the returned DIR* pointer.
39094         * lib/openat.c (unlinkat): New function.
39095         * lib/openat.h (unlinkat): Add prototype.
39096         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
39097         (openat_restore_fail): Rename from openat_restore_die.
39098         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
39099
39100         Provide an alternative to exiting immediately upon save_cwd or
39101         restore_cwd failure.  Now, an application can arrange e.g.,
39102         to perform a longjump in that case.
39103         * lib/openat.c: Include dirname.h.
39104         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
39105         (rpl_openat, fdopendir, fstatat): Call openat_save_die
39106         and openat_restore_die rather than calling error directly.
39107         Don't include "error.h" or "exitfail.h"; they're no longer needed.
39108
39109         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
39110         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
39111         define.
39112
39113         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
39114         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
39115                             int utc, int nanoseconds);
39116         Background:
39117         date should not have to allocate a megabyte of virtual memory to
39118         handle a format argument like +%1048575T.  When implemented with
39119         strftime, it must allocate such a buffer, use strftime to fill it
39120         in, print it, then free it.
39121         With fprintftime, it simply prints everything and exits.
39122         With no need for memory allocation, that's one fewer way to fail.
39123         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
39124         optional field width, not before, so we accept %9:z, not %:9z.
39125         (my_strftime): Be sure to use L_('x') for literals.
39126
39127         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
39128         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
39129         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
39130         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
39131         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
39132         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
39133         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
39134         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
39135         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
39136         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
39137         * lib/xgethostname.c, lib/xreadlink.c:
39138         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
39139
39140         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
39141         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
39142         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
39143         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
39144         and don't include <sys/file.h>).
39145
39146 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
39147
39148         Sync from coreutils.
39149
39150         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
39151         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
39152         [!LDAV_DONE]: Avoid unused variable warning.
39153
39154 2005-09-21  Bruno Haible  <bruno@clisp.org>
39155
39156         * lib/unicodeio.h (unicode_to_mb): New declaration.
39157
39158 2005-09-20  Derek Price  <derek@ximbiot.com>
39159
39160         * lib/getaddrinfo.c: Don't include <netdb.h> included from
39161         getaddrinfo.h.
39162
39163 2005-09-20  Bruno Haible  <bruno@clisp.org>
39164
39165         * gnulib-tool: Remove trailing slashes from the values specified for
39166         --source-base, --m4-base, --tests-base, --aux-dir.
39167         Suggested by Simon Josefsson <jas@extundo.com>.
39168
39169 2005-09-20  Bruno Haible  <bruno@clisp.org>
39170
39171         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
39172         func_modules_to_filelist, func_import, func_create_testdir): Make all
39173         sorting results locale-independent, so that gnulib-cache.m4 doesn't
39174         change when gnulib-tool is invoked in a different locale.
39175
39176 2005-09-19  Simon Josefsson  <jas@extundo.com>
39177
39178         * m4/socklen.m4: Fix typo.
39179
39180 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
39181
39182         Use a consistent style for including <config.h>.
39183         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
39184         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
39185         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
39186         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
39187         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
39188         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
39189         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
39190         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
39191         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
39192         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
39193         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
39194         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
39195         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
39196         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
39197         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
39198         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
39199         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
39200         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
39201         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
39202         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
39203         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
39204         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
39205         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
39206         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
39207         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
39208         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
39209         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
39210         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
39211         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
39212         lib/xstrtoumax.c, lib/yesno.c:
39213         Standardize inclusion of config.h.
39214         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
39215         lib/inttostr.h:  Removed inclusion of config.h from header files.
39216         * lib/inttostr.c:  Adjusted in-tree users.
39217         * lib/timespec.h: Remove superfluous warning to include config.h.
39218         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
39219         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
39220         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
39221         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
39222         config.h with HAVE_CONFIG_H.
39223
39224 2005-09-19  Jim Meyering  <jim@meyering.net>
39225
39226         * modules/pathmax (License): Change to LGPL.
39227
39228 2005-09-19  Derek Price  <derek@ximbiot.com>
39229
39230         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
39231
39232 2005-09-19  Bruno Haible  <bruno@clisp.org>
39233
39234         * gnulib-tool (import): Provide default for --tests-base.
39235
39236 2005-09-19  Bruno Haible  <bruno@clisp.org>
39237
39238         * doc/quote.texi: New file, extracted from gnulib.texi.
39239         * doc/ctime.texi: New file, extracted from gnulib.texi.
39240         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
39241         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
39242         * doc/gnulib.texi: Include them.
39243
39244 2005-09-18  Bruno Haible  <bruno@clisp.org>
39245
39246         Portability fix.
39247         * gnulib-tool (func_readlink): New function.
39248         (func_ln_if_changed): Use it.
39249
39250 2005-09-18  Bruno Haible  <bruno@clisp.org>
39251
39252         * gnulib-tool: Support --with-tests also with --import.
39253         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
39254         (func_import): Use variables $testsbase and $inctests. Emit a
39255         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
39256         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
39257         SUBDIRS += $testsdir.
39258         (func_create_testdir): Update.
39259
39260 2005-09-18  Bruno Haible  <bruno@clisp.org>
39261
39262         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
39263         instead of $dry_run.
39264         (func_cp_if_changed, func_mv_if_changed): Remove functions.
39265         (func_ln_if_changed): Don't handle dry-run here.
39266         (func_import): In dry-run mode, detect more precisely which actions
39267         would be performed, and don't use "...ing" verbs.
39268
39269 2005-09-18  Bruno Haible  <bruno@clisp.org>
39270
39271         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
39272         (func_import): Use join on two temporary files instead of three nested
39273         loops, in order to determine which files are new or old.
39274
39275 2005-09-18  Bruno Haible  <bruno@clisp.org>
39276
39277         * gnulib-tool (func_import): Comment out code that spits out the
39278         new files with --dry-run.
39279
39280 2005-09-18  Bruno Haible  <bruno@clisp.org>
39281
39282         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
39283
39284 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
39285
39286         * lib/stat-time.h: New file.
39287         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
39288         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
39289         in a different way.
39290         (timespec_cmp): New function.
39291         * lib/utimecmp.c: Include stat-time.h.
39292         (SYSCALL_RESOLUTION): Depend on whether various struct stat
39293         members exist, not on the obsolescent ST_MTIM_NSEC.
39294         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
39295
39296 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
39297
39298         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
39299
39300 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
39301
39302         * MODULES.html.sh (File system functions): Add stat-time.
39303         * modules/stat-time: New file.
39304         * modules/timespec (Files): Remove m4/st_mtim.m4; this
39305         is now done in a different way, by the stat-time module.
39306         * modules/utimecmp (Depends-on): Add stat-time.
39307
39308 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
39309
39310         * m4/st_mtim.m4: Remove.  Superseded by...
39311         * m4/stat-time.m4: New file.
39312         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
39313         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
39314
39315 2005-09-15  Derek Price  <derek@ximbiot.com>
39316
39317         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
39318
39319 2005-09-15  Derek Price  <derek@ximbiot.com>
39320
39321         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
39322         * lib/regex_internal.c: Ditto, using this...
39323         (__GNUC_PREREQ): ...new macro.
39324         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
39325         using...
39326         (__GNUC_PREREQ): ...this new macro.
39327
39328         * lib/strstr.h: Include string.h. Define strstr as a macro here.
39329
39330 2005-09-15  Derek Price  <derek@ximbiot.com>
39331             Paul Eggert  <eggert@cs.ucla.edu>
39332
39333         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
39334         changes, consolidating in...
39335         * lib/regex_internal.h: ...this file.
39336
39337 2005-09-13  Jim Meyering  <jim@meyering.net>
39338
39339         * lib/canon-host.c: Filter through gnu indent and reword comments
39340         slightly.
39341         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
39342
39343 2005-09-13  Derek Price  <derek@ximbiot.com>
39344
39345         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
39346         failure.
39347         Reported by Jim Meyering  <jim@meyering.net>.
39348
39349 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
39350
39351         * lib/base64.c: Typo.
39352         (base64_encode): Put b64str in initialized data section.
39353
39354 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
39355
39356         Merge glibc and coreutils changes into gnulib, plus a few
39357         extra fixes.
39358         * lib/md5.c: Use #error rather than a string.
39359         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
39360         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
39361         (__attribute__): Define to empty for non recent-GCC.
39362         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
39363         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
39364         Renamed from their non-__ counterparts, with new macros replacing
39365         them if not _LIBC.  Add __THROW attribute.
39366         (rol): Remove.
39367         (struct md5_ctx): Align buffer if using GCC.
39368         * lib/sha1.h (struct sha1_ctx): Likewise.
39369         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
39370         The old name was backwards.
39371         (NOTSWAP): Remove; not used.
39372         (rol): New macro, moved here from md5.h.
39373         (sha1_process_block): Remove a FIXME that doesn't make sense.
39374
39375 2005-09-12  Derek Price  <derek@ximbiot.com>
39376
39377         Return usable errors from canon-host.
39378         * lib/canon-host.h: New file.
39379         * lib/canon-host.c (canon_host): Wrap...
39380         (canon_host_r): ...this new function, which now relies exclusively on
39381         getaddrinfo.
39382         (ch_strerror): New function.
39383         (last_cherror): New global.
39384         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
39385         interface.
39386         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
39387         void *.
39388         (freeaddrinfo): Free ai->ai_canonname when set.
39389
39390 2005-09-12  Derek Price  <derek@ximbiot.com>
39391
39392         Make canon-host require getaddrinfo.
39393         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
39394         AC_LIBSOURCE canon-host.h.  Call...
39395         (gl_PREREQ_CANON_HOST): ...this new function, which requires
39396         gl_GETADDRINFO.
39397         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
39398
39399 2005-09-12  Derek Price  <derek@ximbiot.com>
39400
39401         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
39402         LGPL.
39403         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
39404
39405 2005-09-12  Derek Price  <derek@ximbiot.com>
39406
39407         * lib/gai_strerror.c: Include config.h when available.  Include
39408         getaddrinfo.h before other headers to test interface.
39409         Reported by Larry Jones <lawrence.jones@ugs.com>.
39410
39411 2005-09-12  Derek Price  <derek@ximbiot.com>
39412             Paul Eggert  <eggert@cs.ucla.edu>
39413
39414         * modules/glob (Files): Add glob-libc.h.
39415
39416 2005-09-12  Derek Price  <derek@ximbiot.com>
39417             Paul Eggert  <eggert@cs.ucla.edu>
39418
39419         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
39420         glob_.h, glob-libc.h.
39421         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
39422
39423 2005-09-12  Derek Price  <derek@ximbiot.com>
39424             Paul Eggert  <eggert@cs.ucla.edu>
39425
39426         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
39427         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
39428         protecting things that should be done only in gnulib contexts.
39429         * lib/glob_.h: New file, containing only the glob things needed for
39430         gnulib.
39431         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
39432         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
39433         (glob, globfree, glob_pattern_p): Now defined simply in terms of
39434         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
39435         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
39436         and to respect the namespace rules better.
39437
39438 2005-09-08  Simon Josefsson  <jas@extundo.com>
39439
39440         * modules/socklen: New file.
39441
39442 2005-09-08  Simon Josefsson  <jas@extundo.com>
39443
39444         * m4/socklen.m4: New file.
39445
39446 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
39447
39448         * modules/utimens (Files): Add m4/utimbuf.m4, since
39449         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
39450         Reported by Sergey Poznyakoff.
39451
39452 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
39453
39454         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
39455         definitions, since that's the preferred style in glibc.
39456         Fix a minor spacing issue, and update copyright notice to match
39457         glibc's.
39458
39459 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
39460
39461         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
39462
39463 2005-09-06  Simon Josefsson  <jas@extundo.com>
39464
39465         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
39466         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
39467
39468 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
39469
39470         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
39471         warning.
39472
39473 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
39474
39475         * config/srclist.txt: Add glibc bug 1302.
39476
39477 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
39478
39479         Change bitset word type from unsigned int to unsigned long int,
39480         as this has better performance on typical 64-bit hosts.
39481         Port bitset code to hosts with unusual word sizes.
39482         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
39483         (build_collating_symbol):
39484         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
39485         argument is a bitset.  This is merely a style issue, but it makes
39486         it clearer that an entire array is expected.
39487         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
39488         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
39489         Port to the case where bitset_word is not the same as unsigned int.
39490         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
39491         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
39492         Likewise.
39493         * lib/regexec.c (check_dst_limits_calc_pos_1,
39494         check_subexp_matching_top):
39495         (build_trtable, group_nodes_into_DFAstates):
39496         Likewise.
39497         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
39498         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
39499         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
39500         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
39501         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
39502         * lib/regcomp.c (optimize_subexps, lower_subexp):
39503         Work even if bitset_word has holes in its bitwise representation.
39504         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
39505         * lib/regexec.c (check_dst_limits_calc_pos_1,
39506         check_subexp_matching_top):
39507         Likewise.
39508         * lib/regex_internal.c (re_string_reconstruct):
39509         Don't assume UCHAR_MAX == 255.
39510         * lib/regex_internal.h (bitset_set_all): Likewise.
39511         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
39512         All uses changed.
39513         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
39514         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
39515         All uses changed.
39516         (BITSET_WORD_MAX): New macro.
39517         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
39518         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
39519         (bitset_empty, bitset_copy):
39520         Prefer sizeof (bitset) to multiplying it out ourselves.
39521         (bitset_not_merge): Remove; unused.
39522         (bitset_contain): Return bool, not unsigned int with one bit on.
39523         All callers changed.
39524         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
39525         alignment than re_node_set; do this by defining a new internal
39526         type struct dests_alloc and using it to allocate memory.
39527
39528 2005-09-05  Bruno Haible  <bruno@clisp.org>
39529
39530         * gnulib-tool (func_import): Fix comparison in handling of symbolic
39531         links.
39532
39533 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
39534
39535         * modules/size_max (Makefile.am): Add size_max.h
39536
39537 2005-09-04  Derek Price  <derek@ximbiot.com>
39538
39539         * gnulib-tool (func_import): Fix reversed $symbolic logic.
39540
39541 2005-09-03  Simon Josefsson  <jas@extundo.com>
39542
39543         * gnulib-tool: Fix typo.
39544
39545 2005-09-03  Simon Josefsson  <jas@extundo.com>
39546
39547         * config/srclist.txt: Add glibc bug 1293.
39548
39549 2005-09-03  Derek Price  <derek@ximbiot.com>
39550
39551         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
39552         From Larry Jones <lawrence.jones@ugs.com>.
39553
39554 2005-09-02  Simon Josefsson  <jas@extundo.com>
39555
39556         * modules/socklen: New file.
39557
39558 2005-09-02  Simon Josefsson  <jas@extundo.com>
39559
39560         * modules/havelib: New module.
39561
39562         * modules/gettext, modules/iconv, modules/lock, modules/readline:
39563         Use havelib.
39564
39565 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
39566
39567         Check for arithmetic overflow when calculating sizes, to prevent
39568         some buffer-overflow issues.  These patches are conservative, in the
39569         sense that when I couldn't determine whether an overflow was possible,
39570         I inserted a run-time check.
39571         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
39572         macros.
39573         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
39574         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
39575         (re_xnrealloc, re_x2nrealloc): New inline functions.
39576         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
39577         parse_bracket_exp):
39578         (build_equiv_class, build_charclass): Check for arithmetic overflow
39579         in size expression calculations.
39580         * lib/regex_internal.c (re_string_realloc_buffers):
39581         (build_wcs_upper_buffer, re_node_set_add_intersect):
39582         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
39583         (re_dfa_add_node, register_state): Likewise.
39584         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
39585         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
39586         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
39587         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
39588
39589 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
39590
39591         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
39592         m4/ulonglong.m4.  Problem reported by Martin Lambers.
39593
39594 2005-09-02  Bruno Haible  <bruno@clisp.org>
39595
39596         Support for lib vs. lib64 distinction on biarch platforms.
39597         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
39598         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
39599         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
39600
39601 2005-09-02  Bruno Haible  <bruno@clisp.org>
39602
39603         * gnulib-tool (import): In the other first-use case, provide defaults
39604         as well.
39605
39606 2005-09-02  Bruno Haible  <bruno@clisp.org>
39607
39608         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
39609         patches not yet found in the latest gettext release.
39610
39611 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
39612
39613         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
39614         to avoid a collision with bits/local_lim.h in glibc.
39615         All uses changed.  Problem reported by Dmitry V. Levin in
39616         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
39617
39618         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
39619         bugs in int versus size_t comparisons.
39620         (re_string_context_at): Fix bug where the code assumed that
39621         Idx is signed.
39622
39623         Use bool where appropriate.
39624         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
39625         All callers changed.
39626         (calc_eclosure_iter): Likewise, for ROOT arg.
39627         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
39628         (build_charclass_op): Likewise, for NON_MATCH arg.
39629         * lib/regex_internal.c (re_string_allocate, re_string_construct):
39630         (re_string_construct_common): Likewise, for ICASE arg.
39631         * lib/regexec.c (re_search_2_stub, re_search_stub):
39632         Likewise, for RET_LEN arg.
39633         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
39634         (set_regs): Likewise, for FL_BACKTRACK arg.
39635         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
39636         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
39637         (calc_eclosure_iter, parse_bracket_exp):
39638         Use bool for internal variables that are booleans.
39639         * lib/regexec.c (re_search_internal, check_matching,
39640         proceed_next_node):
39641         (set_regs, build_sifted_states, sift_states_bkref):
39642         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
39643         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
39644         (find_collation_sequence_value):
39645         Likewise.
39646         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
39647         (re_node_set_compare):
39648         Return bool, not int. All callers changed.
39649         * lib/regexec.c (check_halt_node_context, check_dst_limits):
39650         (build_trtable, check_node_accept): Likewise.
39651         * lib/regex_internal.h: Include stdbool.h.
39652
39653         Fix bugs uncovered when converting to bool.
39654         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
39655         failure instead of charging ahead blindly.
39656         * lib/regex_internal.c (register_state): Likewise.
39657         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
39658         for freeing internal storage.
39659         (group_nodes_into_DFA_states): Use unsigned int, not int, for
39660         bitset pieces used as boolean, to avoid undefined behavior
39661         on hosts that do int overflow checking.
39662
39663 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
39664
39665         * config/srclist.txt: Add glibc bugs 1285-1287.
39666
39667 2005-09-01  Jim Meyering  <jim@meyering.net>
39668
39669         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
39670         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
39671         Require gl_STAT_MACROS, too.
39672
39673 2005-09-01  Bruno Haible  <bruno@clisp.org>
39674
39675         * gnulib-tool (import): In the first-use case, provide defaults.
39676
39677 2005-09-01  Bruno Haible  <bruno@clisp.org>
39678
39679         * gnulib-tool (func_import): Remove the .tmp files.
39680
39681 2005-09-01  Bruno Haible  <bruno@clisp.org>
39682
39683         * gnulib-tool (func_import): Fix handling of symbolic links.
39684
39685 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39686
39687         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
39688         old glibc regex code mishandles strings longer than 2**31 bytes.
39689         This patch fixes this when the regex code is used in gnulib
39690         (i.e., outside glibc).
39691
39692         This patch should not affect the use of the regex code inside
39693         glibc.  No doubt this problem also needs to be handled for glibc
39694         as well, but the result will be an incompatible change to the
39695         glibc ABI, and the old ABI will have to be supported too.  That
39696         can be the the subject for another patch.
39697
39698         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
39699         governing whether the rest of this patch is active.  By default,
39700         the macro is disabled and the patch has no effect.
39701         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
39702         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
39703         (struct re_pattern_buffer, re_search, re_search_2, re_match):
39704         (re_match_2, re_set_registers): Use the new types.
39705         * lib/regex_internal.h (Idx, re_hashval_t): New types.
39706         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
39707         New macros.
39708         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
39709         (re_string_context_at, bin_tree_t, re_dfastate_t):
39710         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
39711         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
39712         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
39713         (re_string_char_size_at, re_string_wchar_at):
39714         (re_string_elem_size_at):
39715         Use the new types and macros to port to 64-bit hosts.
39716         Use unsigned types for internal values, so that the code
39717         mostly works even for arrays larger than SSIZE_MAX.
39718         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
39719         (search_duplicated_node, calc_eclosure_iter, fetch_number):
39720         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
39721         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
39722         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
39723         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
39724         (calc_inveclosure, parse_dup_op, build_range_exp):
39725         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
39726         (fetch_number, create_token_tree, mark_opt_subexp):
39727         Likewise.
39728         * lib/regex_internal.c (re_string_construct_common,
39729         create_ci_newstate):
39730         (create_cd_newstate, re_string_allocate, re_string_construct):
39731         (re_string_realloc_buffers, build_wcs_upper_buffer):
39732         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
39733         (re_string_reconstruct, re_string_peek_byte_case):
39734         (re_string_fetch_byte_case, re_string_context_at):
39735         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
39736         (re_node_set_init_copy, re_node_set_add_intersect):
39737         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
39738         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
39739         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
39740         (re_acquire_state, re_acquire_state_context, register_state):
39741         Likewise.
39742         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
39743         search_cur_bkref_entry):
39744         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
39745         (re_search_internal, re_search_2_stub, re_search_stub)
39746         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
39747         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
39748         (update_cur_sifted_state, check_dst_limits):
39749         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
39750         (check_subexp_limits, sift_states_bkref, merge_state_array):
39751         (check_subexp_matching_top, get_subexp, get_subexp_sub):
39752         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
39753         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
39754         (expand_bkref_cache, check_node_accept_bytes):
39755         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
39756         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
39757         (acquire_init_state_context, check_halt_node_context):
39758         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
39759         (sift_states_backward, clean_state_log_if_needed):
39760         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
39761         (find_recover_state, transit_state_sb, transit_state_mb):
39762         (transit_state_bkref, build_trtable, match_ctx_clean):
39763         Likewise.
39764         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
39765         to work around an assumption that REG_MISSING is negative.
39766
39767         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
39768         (seek_collating_symbol_entry) [defined _LIBC]:
39769         (lookup_collation_sequence_value) [defined _LIBC]:
39770         (build_range_exp, build_collating_symbol) [defined _LIBC]:
39771         Use prototypes rather than old-style function definitions.
39772         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
39773         (transit_state_sb) [0]:
39774         (find_collation_sequence_value) [defined _LIBC]: Likewise.
39775
39776         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
39777         rm_eo.
39778
39779         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
39780         (optimize_subexps, lower_subexp):
39781         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
39782         since the signed shift might overflow.  Use 1u<<31 instead.
39783         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
39784         Likewise.
39785         * lib/regexec.c (check_dst_limits_calc_pos_1,
39786         check_subexp_matching_top): Likewise.
39787
39788         * lib/regcomp.c (optimize_subexps, lower_subexp):
39789         Use CHAR_BIT rather than 8, for clarity.
39790         * lib/regexec.c (check_dst_limits_calc_pos_1):
39791         (check_subexp_matching_top): Likewise.
39792         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
39793         have to worry about portability issues when shifting it left.
39794         Remove no-longer-needed test for table_size > 0.
39795         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
39796         in a word, as the resulting behavior is undefined.
39797         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
39798         in one case, a <= should have been an <, and in another case the
39799         whole test was missing.
39800         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
39801         the standard name CHAR_BIT.
39802         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
39803         this is not true on one's complement and signed-magnitude hosts.
39804
39805         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
39806         next_last_offset.
39807         (struct re_dfa_t): Remove unused member states_alloc.
39808         * lib/regcomp.c (init_dfa): Don't initialize unused members.
39809
39810 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39811
39812         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
39813         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
39814         and large-file glibc and in 32-bit large-file Solaris.
39815
39816 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39817
39818         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
39819         lengths fit in regoff_t; this isn't true if regoff_t is the same
39820         width as size_t.
39821         * lib/regex.c (re_search_internal): 5th arg is LAST_START
39822         (= START + RANGE) instead of RANGE.  This avoids overflow
39823         problems when regoff_t is the same width as size_t.
39824         All callers changed.
39825         (re_search_2_stub): Check for overflow when adding the
39826         sizes of the two strings.
39827         (re_search_stub): Check for overflow when adding START
39828         to RANGE; if it occurs, substitute the extreme value.
39829
39830 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39831
39832         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
39833
39834 2005-08-31  Jim Meyering  <jim@meyering.net>
39835
39836         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
39837         a pointer-to-const.
39838         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
39839         (register_state): Likewise.
39840         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
39841         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
39842         (group_nodes_into_DFAstates): Likewise.
39843
39844 2005-08-31  Jim Meyering  <jim@meyering.net>
39845
39846         * check-module: Add a FIXME comment.
39847
39848 2005-08-31  Eric Blake  <ebb9@byu.net>
39849
39850         * modules/unistd-safer (Files): Add unistd--.h.
39851         * modules/stdio-safer (Files): Add stdio--.h.
39852
39853 2005-08-31  Derek Price  <derek@ximbiot.com>
39854
39855         * lib/getdelim.c (getdelim): Return EOF on EOF.
39856         Reported by Larry Jones <lawrence.jones@ugs.com>.
39857
39858 2005-08-31  Bruno Haible  <bruno@clisp.org>
39859
39860         Avoid unnecessary diffs in the generated lib/Makefile.am.
39861         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
39862         the generated files.
39863         (func_import): Don't set cmd.
39864
39865 2005-08-31  Bruno Haible  <bruno@clisp.org>
39866
39867         * lib/strstr.c: Include <stddef.h>, for NULL.
39868         * lib/strcasestr.c: Likewise.
39869         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
39870
39871 2005-08-31  Bruno Haible  <bruno@clisp.org>
39872
39873         * gnulib-tool: New option --macro-prefix.
39874         (func_import): Use macro_prefix.
39875         (import): Handle option --macro-prefix.
39876
39877 2005-08-31  Bruno Haible  <bruno@clisp.org>
39878
39879         * gnulib-tool (import): Rename most ac_* variables to cached_*.
39880         Also use new variables cached_lgpl, cached_libtool.
39881
39882 2005-08-31  Bruno Haible  <bruno@clisp.org>
39883
39884         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
39885         always instantiating them.
39886
39887 2005-08-31  Bruno Haible  <bruno@clisp.org>
39888
39889         * gnulib-tool (func_import): Read the previous cached settings
39890         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
39891         earlier added by gnulib but are now dropped. Warn when a gnulib file
39892         overwrites a non-gnulib file.
39893
39894 2005-08-31  Bruno Haible  <bruno@clisp.org>
39895
39896         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
39897         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
39898         projects that don't keep autogenerated files in CVS. Put into
39899         actioncmd only the specified modules, not the transitive closure.
39900
39901 2005-08-31  Bruno Haible  <bruno@clisp.org>
39902
39903         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
39904         Create directories that shall be filled.
39905         (import): Don't look for gl_* macros in configure.ac. Recurse across
39906         all directories containing a gnulib-cache.m4 files, if meaningful.
39907
39908 2005-08-31  Bruno Haible  <bruno@clisp.org>
39909
39910         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
39911         (import): Set seen_libtool when we see gl_LIBTOOL.
39912
39913 2005-08-31  Bruno Haible  <bruno@clisp.org>
39914
39915         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
39916         declaration macro definitions from generated gnulib.m4.
39917
39918 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
39919
39920         * lib/iconvme.h: Add prototype for iconv_alloc.
39921
39922 2005-08-29  Simon Josefsson  <jas@extundo.com>
39923
39924         * lib/iconvme.c: Fix errno.
39925
39926 2005-08-29  Bruno Haible  <bruno@clisp.org>
39927
39928         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
39929         that it works when the directory contains spaces.
39930
39931 2005-08-29  Bruno Haible  <bruno@clisp.org>
39932
39933         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
39934
39935 2005-08-29  Bruno Haible  <bruno@clisp.org>
39936
39937         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
39938         Emit more advice.
39939
39940 2005-08-29  Bruno Haible  <bruno@clisp.org>
39941         and Stepan Kasal  <kasal@ucw.cz>
39942
39943         * check-module: If more parameters are given, check each of them
39944         separately; add more exceptions, as noted by Jim Meyering.
39945         (check_module): New procedure.
39946         (%exempt_header): Now contains all exceptions.
39947
39948 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
39949
39950         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
39951
39952 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
39953
39954         * lib/iconvme.c: Split iconv_string into iconv_alloc.
39955
39956 2005-08-28  Bruno Haible  <bruno@clisp.org>
39957
39958         * m4/gnulib-tool.m4: New file.
39959
39960 2005-08-27  Jim Meyering  <jim@meyering.net>
39961
39962         * modules/unistd-safer (Files): Add pipe-safer.c.
39963         * modules/fcntl-safer (Files): Add creat-safer.c.
39964
39965 2005-08-27  Jim Meyering  <jim@meyering.net>
39966
39967         * m4/stdlib-safer.m4: New file.  From coreutils.
39968         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
39969         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
39970         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
39971         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
39972         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
39973
39974 2005-08-27  Jim Meyering  <jim@meyering.net>
39975
39976         * lib/fopen-safer.c: Merge minor changes from coreutils.
39977         * lib/dup-safer.c: Likewise.
39978         * lib/fd-safer.c: Likewise.
39979
39980         Merge from coreutils.
39981         * lib/stdio--.h: New file.
39982         * lib/stdlib--.h: New file.
39983         * lib/mkstemp-safer.c: New file.
39984
39985         GNU tar needs these.
39986         * lib/pipe-safer.c: New file.
39987         * lib/creat-safer.c: New file.
39988         * lib/fcntl--.h (creat): Define to creat_safer.
39989         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
39990         * lib/unistd--.h (pipe): Define to pipe_safer.
39991         * lib/unistd-safer.h: Declare pipe_safer.
39992
39993 2005-08-26  Simon Josefsson  <jas@extundo.com>
39994
39995         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
39996         Haible <bruno@clisp.org>.
39997
39998 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
39999
40000         * lib/regex_internal.h: Remove all references to
40001         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
40002         or better.
40003         (bitset_not, bitset_merge, bitset_not_merge):
40004         (bitset_mask, re_string_allocate, re_string_construct):
40005         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
40006         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
40007         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
40008         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
40009         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
40010         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
40011         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
40012         (re_acquire_state_context):
40013         Remove unnecessary forward decls.
40014         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
40015         Put __attribute at function definition,
40016         now that the function decl has been removed.
40017         * lib/regex_internal.c (re_string_peek_byte_case):
40018         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
40019         Likewise.
40020
40021 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
40022
40023         * m4/regex.m4: Add AC_PREREQ(2.50).
40024         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
40025
40026 2005-08-25  Simon Josefsson  <jas@extundo.com>
40027
40028         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
40029         __fsetlocking.
40030
40031 2005-08-25  Simon Josefsson  <jas@extundo.com>
40032
40033         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
40034         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
40035         GLIBC specific code.
40036
40037 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
40038
40039         Make regex safe for g++.  This fixes one real bug (an "err"
40040         that should have been "*err").  g++ problem reported by
40041         Sam Steingold.
40042         * lib/regex_internal.h (re_calloc): New macro, consistent with
40043         re_malloc etc.  All callers of calloc changed to use re_calloc.
40044         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
40045         not int.  All callers changed.
40046         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
40047         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
40048         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
40049         (find_recover_state): Change "err" to "*err"; this fixes what
40050         appears to be a real bug.
40051         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
40052         versus int.
40053
40054 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
40055
40056         * modules/regex (Depends-on): Add malloc, since the code
40057         assumes that !malloc(0) means failure.
40058
40059 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
40060
40061         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
40062
40063         alloca modernization/simplification for regex.
40064         * lib/regex.c: Remove portability cruft for alloca.  This no longer
40065         needs to be at the start of the file, and can be moved into
40066         regex_internal.h and simplified.
40067         * lib/regex_internal.h: Include <alloca.h>.
40068         (__libc_use_alloca) [!defined _LIBC]: New macro.
40069         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
40070         now works outside glibc.
40071
40072 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
40073
40074         * config/srclist.txt: Add glibc bugs 1241, 1245.
40075
40076 2005-08-25  Jim Meyering  <jim@meyering.net>
40077
40078         * lib/open-safer.c: Include <config.h>.
40079         Otherwise, we'd lose LARGEFILE support in any file using
40080         e.g. "fcntl--.h"
40081
40082 2005-08-25  Bruno Haible  <bruno@clisp.org>
40083
40084         * m4/minmax.m4: Require autoconf 2.52.
40085         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
40086         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
40087         alternatives of translit over the alphabet.
40088         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
40089
40090 2005-08-24  Simon Josefsson  <jas@extundo.com>
40091
40092         * tests/test-getpass.c: New file.
40093
40094 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
40095
40096         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
40097         for GNU regex features.
40098
40099 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
40100
40101         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
40102         * lib/regex.h (regerror): Likewise.
40103
40104         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
40105         requires this.  (The code never needed it.)
40106
40107         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
40108         All uses of recently-renamed identifiers changed to use the new,
40109         POSIX-compliant names.  The code will build and run just fine
40110         without these changes, but it's better to eat our own dog food
40111         and use the standard-conforming names.
40112
40113         * lib/regex.h: Fix a multitude of POSIX name space violations.
40114         These changes have an effect only for programs that define
40115         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
40116         do not change anything for programs compiled in the normal way.
40117         Also, there is no effect on the ABI.
40118
40119         (_REGEX_SOURCE): New macro.
40120         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
40121         defined and _GNU_SOURCE is not; this fixes a name space violation.
40122
40123         Rename the following macros to obey POSIX requirements.
40124         The old names are still visible as macros if _REGEX_SOURCE is defined.
40125         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
40126         RE_BACKSLASH_ESCAPE_IN_LISTS.
40127         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
40128         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
40129         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
40130         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
40131         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
40132         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
40133         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
40134         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
40135         (REG_INTERVALS): renamed from RE_INTERVALS.
40136         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
40137         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
40138         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
40139         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
40140         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
40141         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
40142         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
40143         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
40144         RE_UNMATCHED_RIGHT_PAREN_ORD.
40145         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
40146         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
40147         (REG_DEBUG): renamed from RE_DEBUG.
40148         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
40149         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
40150         unusual, since we can't clash with the POSIX REG_ICASE.
40151         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
40152         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
40153         (REG_NO_SUB): renamed from RE_NO_SUB.
40154         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
40155         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
40156         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
40157         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
40158         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
40159         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
40160         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
40161         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
40162         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
40163         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
40164         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
40165         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
40166         RE_SYNTAX_POSIX_MINIMAL_BASIC.
40167         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
40168         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
40169         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
40170         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
40171         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
40172         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
40173         (REG_FIXED): Renamed from REGS_FIXED.
40174         (REG_NREGS): Renamed from RE_NREGS.
40175
40176         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
40177         of other REG_* macros, since POSIX says the user is allowed to
40178         #undef these macros selectively.
40179
40180         (reg_errcode_t): Update comment stating what other tables need
40181         to be consistent.
40182
40183         Rename the following enum values to obey POSIX requirements.
40184         The old names are still visible as macros.
40185         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
40186         is not defined, since GNU is supposed to be a superset of POSIX as
40187         much as possible, and since we want reg_errcode_t to be a signed
40188         type for implementation consistency.
40189         (_REG_NOERROR): Renamed from REG_NOERROR.
40190         (_REG_NOMATCH): Renamed from REG_NOMATCH.
40191         (_REG_BADPAT): Renamed from REG_BADPAT.
40192         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
40193         (_REG_ECTYPE): Renamed from REG_ECTYPE.
40194         (_REG_EESCAPE): Renamed from REG_EESCAPE.
40195         (_REG_ESUBREG): Renamed from REG_ESUBREG.
40196         (_REG_EBRACK): Renamed from REG_EBRACK.
40197         (_REG_EPAREN): Renamed from REG_EPAREN.
40198         (_REG_EBRACE): Renamed from REG_EBRACE.
40199         (_REG_BADBR): Renamed from REG_BADBR.
40200         (_REG_ERANGE): Renamed from REG_ERANGE.
40201         (_REG_ESPACE): Renamed from REG_ESPACE.
40202         (_REG_BADRPT): Renamed from REG_BADRPT.
40203         (_REG_EEND): Renamed from REG_EEND.
40204         (_REG_ESIZE): Renamed from REG_ESIZE.
40205         (_REG_ERPAREN): Renamed from REG_ERPAREN.
40206         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
40207         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
40208         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
40209         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
40210
40211         (_REG_RE_NAME, _REG_RM_NAME): New macros.
40212         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
40213         changed.  But support the old name if the new one is not defined
40214         and if _REGEX_SOURCE.
40215
40216         Change the following member names in struct re_pattern_buffer.
40217         The old names are still supported if !_REGEX_SOURCE.
40218         The new names are always supported, regardless of _REGEX_SOURCE.
40219         (re_buffer): Renamed from buffer.
40220         (re_allocated): Renamed from allocated.
40221         (re_used): Renamed from used.
40222         (re_syntax): Renamed from syntax.
40223         (re_fastmap): Renamed from fastmap.
40224         (re_translate): Renamed from translate.
40225         (re_can_be_null): Renamed from can_be_null.
40226         (re_regs_allocated): Renamed from regs_allocated.
40227         (re_fastmap_accurate): Renamed from fastmap_accurate.
40228         (re_no_sub): Renamed from no_sub.
40229         (re_not_bol): Renamed from not_bol.
40230         (re_not_eol): Renamed from not_eol.
40231         (re_newline_anchor): Renamed from newline_anchor.
40232
40233         Change the following member names in struct re_registers.
40234         The old names are still supported if !_REGEX_SOURCE.
40235         The new names are always supported, regardless of _REGEX_SOURCE.
40236         (rm_num_regs): Renamed from num_regs.
40237         (rm_start): Renamed from start.
40238         (rm_end): Renamed from end.
40239
40240         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
40241         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
40242         Prepend __ to parameter names.
40243
40244         Undo yesterday's changes.
40245
40246 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
40247
40248         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
40249         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
40250         lib/regex.c.
40251
40252 2005-08-24  Jim Meyering  <jim@meyering.net>
40253
40254         Sync from coreutils.
40255         * m4/fcntl-safer.m4: New file.
40256
40257         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
40258         and object files for this module.
40259
40260 2005-08-24  Jim Meyering  <jim@meyering.net>
40261
40262         Sync from coreutils.
40263         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
40264
40265 2005-08-24  Jim Meyering  <jim@meyering.net>
40266
40267         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
40268         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
40269
40270 2005-08-24  Jim Meyering  <jim@meyering.net>
40271
40272         * modules/fcntl-safer: New module.
40273         * modules/fts (Depends-on): Add fcntl-safer.
40274         * MODULES.html.sh (File descriptor based Input/Output):
40275         Add fcntl-safer.
40276
40277 2005-08-24  Bruno Haible  <bruno@clisp.org>
40278
40279         Support for unit test modules.
40280         * modules/README: Mention tests modules.
40281         * modules/TEMPLATE-TESTS: New file.
40282         * gnulib-tool: New options --extract-tests-module, --with-tests and
40283         --tests-base (unused for the moment).
40284         (testsbase, inctests): New variables.
40285         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
40286         (func_verify_module): Exclude TEMPLATE-TESTS.
40287         (func_verify_nontests_module, func_verify_tests_module): New functions.
40288         (func_get_dependencies): Add implicit dependency for tests modules.
40289         (func_get_tests_module): New function.
40290         (func_modules_transitive_closure): When --with-tests was specified,
40291         include the unit tests as well, unless explicitly avoided.
40292         (func_emit_lib_Makefile_am): Ignore the tests modules here.
40293         (func_emit_tests_Makefile_am): New function.
40294         (func_create_testdir): When --with-tests was specified, emit a
40295         tests/ directory.
40296         * MODULES.html.sh (Future developments): Update.
40297
40298 2005-08-24  Bruno Haible  <bruno@clisp.org>
40299
40300         * modules/tls-tests: New file.
40301         * tests/test-tls.c: New file, from GNU gettext.
40302
40303 2005-08-24  Bruno Haible  <bruno@clisp.org>
40304
40305         * modules/lock-tests: New file.
40306         * tests/test-lock.c: New file, from GNU gettext.
40307
40308 2005-08-24  Bruno Haible  <bruno@clisp.org>
40309
40310         * lib/lock.h: Add multiple inclusion guard.
40311         * lib/tls.h: Add multiple inclusion guard.
40312
40313 2005-08-24  Bruno Haible  <bruno@clisp.org>
40314
40315         * gnulib-tool: Add support for the --aux-dir option to
40316         --create-testdir, --create-megatestdir, --test, --megatest.
40317         (func_create_testdir, func_create_megatestdir): Optionally emit a
40318         AC_CONFIG_AUX_DIR directive.
40319         (create-testdir, create-megatestdir, test, megatest): Provide a
40320         default value for $auxdir.
40321
40322 2005-08-24  Bruno Haible  <bruno@clisp.org>
40323
40324         * gnulib-tool (import): Use compound statement instead of subshell
40325         where possible.
40326
40327 2005-08-24  Bruno Haible  <bruno@clisp.org>
40328
40329         * gnulib-tool (import): Change --aux-dir default to "build-aux".
40330
40331 2005-08-24  Bruno Haible  <bruno@clisp.org>
40332
40333         * gnulib-tool (func_version): Update.
40334
40335 2005-08-24  Bruno Haible  <bruno@clisp.org>
40336
40337         * gnulib-tool (func_import, func_create_testdir,
40338         func_create_megatestdir): Quote all autoconf macro arguments.
40339
40340 2005-08-24  Bruno Haible  <bruno@clisp.org>
40341
40342         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
40343         option --force, because --force causes the aclocal.m4 of each
40344         subdirectory to be newer than the corresponding config.h.in.
40345
40346 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
40347
40348         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
40349         All contents moved to gl_REGEX.
40350         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
40351         assume that it does.
40352
40353 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
40354
40355         * lib/regex.h (REG_NOSYS)
40356         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
40357         Define, since POSIX requires it as of 2001.
40358         (_REG_ENOSYS)
40359         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
40360         New private symbol, used to keep the enum signed in all cases.
40361         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
40362         Youngman in
40363         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
40364
40365         * lib/regex_internal.c (re_string_skip_chars, register_state):
40366         (calc_state_hash):
40367         Remove forward decls; no longer needed now that we use prototypes.
40368         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
40369         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
40370         (clean_state_log_if_needed): Likewise.
40371
40372 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
40373
40374         * config/srclist.txt: Add glibc bugs 1231-1233.
40375
40376 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
40377
40378         Fix problems reported by Sam Steingold in
40379         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
40380         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
40381         assumed that reg_errcode_t is a signed type, which is not
40382         necessarily true if _XOPEN_SOURCE is not defined.
40383         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
40384         since some compilers warn about it otherwise.
40385
40386 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
40387
40388         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
40389         (init_word_char, create_initial_state, duplicate_node_closure):
40390         (fetch_token, peek_token_bracket, build_range_exp):
40391         (build_collating_symbol): Remove forward decls; no longer needed
40392         now that we use prototypes.
40393
40394         * lib/regcomp.c:
40395         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
40396         (re_compile_fastmap_iter, regcomp, regerror, regfree):
40397         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
40398         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
40399         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
40400         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
40401         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
40402         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
40403         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
40404         (build_range_exp, build_collating_symbol, parse_bracket_exp):
40405         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
40406         (build_charclass, build_charclass_op, fetch_number, create_tree):
40407         (create_token_tree, mark_opt_subexp, duplicate_tree):
40408         Use prototypes rather than old-style definitions.
40409
40410         * lib/regex_internal.c:
40411         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
40412         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
40413         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
40414         (re_string_reconstruct, re_string_peek_byte_case):
40415         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
40416         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
40417         (re_node_set_init_copy, re_node_set_add_intersect):
40418         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
40419         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
40420         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
40421         (re_acquire_state, re_acquire_state_context, register_state):
40422         (create_ci_newstate, create_cd_newstate, free_state):
40423         Likewise.
40424         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
40425         re_search_2):
40426         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
40427         (re_search_internal, prune_impossible_nodes):
40428         (acquire_init_state_context, check_matching, static):
40429         (check_halt_node_context, check_halt_state_context, proceed_next_node):
40430         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
40431         (update_regs, sift_states_backward, build_sifted_states):
40432         (clean_state_log_if_needed, merge_state_array):
40433         (update_cur_sifted_state, add_epsilon_src_nodes):
40434         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
40435         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
40436         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
40437         (find_recover_state, check_subexp_matching_top, transit_state_mb):
40438         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
40439         (check_arrival, check_arrival_add_next_nodes):
40440         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
40441         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
40442         (check_node_accept_bytes, check_node_accept, extend_buffers):
40443         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
40444         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
40445         (sift_ctx_init):
40446         Likewise.
40447
40448         * lib/regex_internal.h:
40449         (re_string_allocate, re_string_construct, re_string_reconstruct):
40450         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
40451         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
40452         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
40453         (re_string_context_at, re_string_peek_byte_case):
40454         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
40455         is defined, since we now use prototypes always.
40456
40457         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
40458         C89 or better.  All uses removed.
40459
40460 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
40461
40462         * config/srclist.txt: Add glibc bugs 1220-1227.
40463
40464 2005-08-20  Jim Meyering  <jim@meyering.net>
40465
40466         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
40467         of unused local, dfa.
40468
40469 2005-08-20  Bruno Haible  <bruno@clisp.org>
40470
40471         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
40472
40473 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
40474
40475         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
40476         (re_node_set_insert_last, re_dfa_add_node):
40477         Rename local variables to avoid GCC shadowing warnings.
40478
40479 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
40480
40481         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
40482         [defined lint]: Suppress bogus uninitialized-variable warnings.
40483
40484         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
40485         and let the caller return REG_ESPACE if out of space.  This
40486         removes an uninitialied-variable warning with GCC 4.0.1, and also
40487         avoids taking the address of a local variable.  All callers
40488         changed.
40489
40490 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
40491
40492         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
40493         $LIBCSRC/posix/regexec.c.
40494         Add glibc bug 1217 for regcomp.c.
40495
40496 2005-08-19  Jim Meyering  <jim@meyering.net>
40497
40498         * lib/regexec.c (proceed_next_node): Redo local variables to
40499         avoid GCC shadowing warnings.
40500
40501 2005-08-18  Bruno Haible  <bruno@clisp.org>
40502
40503         * lib/strstr.c (strstr): Fix return value in multibyte case.
40504         * lib/strcasestr.c (strcasestr): Likewise.
40505
40506 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
40507
40508         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
40509
40510 2005-08-17  Jim Meyering  <jim@meyering.net>
40511
40512         Make the %s format (seconds since the epoch) work for a negative
40513         number and when used with a zero-padded field width, e.g. %015s.
40514
40515         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
40516         label so that it precedes the code to set `digits'.  Otherwise,
40517         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
40518         print `00-22'.  Now, it prints `-0022', as it should.
40519
40520 2005-08-17  Bruno Haible  <bruno@clisp.org>
40521
40522         * modules/strstr (Files): Add m4/mbrtowc.m4.
40523         (Depends-on): Add mbuiter.
40524
40525 2005-08-17  Bruno Haible  <bruno@clisp.org>
40526
40527         * modules/strcasestr: New file.
40528         * MODULES.html.sh (String handling, based on ANSI C 89): Add
40529         strcasestr.
40530
40531 2005-08-17  Bruno Haible  <bruno@clisp.org>
40532
40533         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
40534
40535 2005-08-17  Bruno Haible  <bruno@clisp.org>
40536
40537         * modules/mbuiter: New file.
40538         * MODULES.html.sh (Extended multibyte and wide character utilities):
40539         Add mbuiter.
40540
40541 2005-08-17  Bruno Haible  <bruno@clisp.org>
40542
40543         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
40544         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
40545
40546 2005-08-17  Bruno Haible  <bruno@clisp.org>
40547
40548         * m4/strcasestr.m4: New file.
40549
40550 2005-08-17  Bruno Haible  <bruno@clisp.org>
40551
40552         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
40553         * lib/strstr.c: Completely rewritten, with multibyte locale support.
40554
40555 2005-08-17  Bruno Haible  <bruno@clisp.org>
40556
40557         * lib/strcasestr.h: New file.
40558         * lib/strcasestr.c: New file.
40559
40560 2005-08-17  Bruno Haible  <bruno@clisp.org>
40561
40562         * lib/strcasecmp.c: Use mbuiter.h.
40563
40564 2005-08-17  Bruno Haible  <bruno@clisp.org>
40565
40566         * lib/mbuiter.h: New file.
40567
40568 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
40569
40570         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
40571         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
40572         and gl_GETOPT are both invoked via different paths (as happens
40573         with GNU tar CVS because it uses both argp and getopt), the former
40574         wins.
40575
40576 2005-08-16  Bruno Haible  <bruno@clisp.org>
40577
40578         * modules/tls: New file.
40579         * MODULES.html.sh (Multithreading): Add tls.
40580
40581 2005-08-16  Bruno Haible  <bruno@clisp.org>
40582
40583         * modules/strnlen1: New file.
40584         * MODULES.html.sh (String handling): Add strnlen1.
40585
40586 2005-08-16  Bruno Haible  <bruno@clisp.org>
40587
40588         * modules/strcase (Files): Add m4/mbrtowc.m4.
40589         (Depends-on): Add strnlen1, mbchar.
40590
40591 2005-08-16  Bruno Haible  <bruno@clisp.org>
40592
40593         * modules/mbiter: New file.
40594         * MODULES.html.sh (Extended multibyte and wide character utilities):
40595         Add mbiter.
40596
40597 2005-08-16  Bruno Haible  <bruno@clisp.org>
40598
40599         * modules/mbfile: New file.
40600         * MODULES.html.sh (Extended multibyte and wide character utilities):
40601         Add mbfile.
40602
40603 2005-08-16  Bruno Haible  <bruno@clisp.org>
40604
40605         * modules/mbchar: New file.
40606         * MODULES.html.sh (Extended multibyte and wide character utilities):
40607         New section.
40608
40609 2005-08-16  Bruno Haible  <bruno@clisp.org>
40610
40611         * m4/tls.m4: New file, from GNU gettext.
40612
40613 2005-08-16  Bruno Haible  <bruno@clisp.org>
40614
40615         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
40616         always.
40617         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
40618
40619 2005-08-16  Bruno Haible  <bruno@clisp.org>
40620
40621         * m4/mbiter.m4: New file.
40622
40623 2005-08-16  Bruno Haible  <bruno@clisp.org>
40624
40625         * m4/mbfile.m4: New file.
40626
40627 2005-08-16  Bruno Haible  <bruno@clisp.org>
40628
40629         * m4/mbchar.m4: New file.
40630
40631 2005-08-16  Bruno Haible  <bruno@clisp.org>
40632
40633         * lib/tls.h: New file, from GNU gettext.
40634         * lib/tls.c: New file, from GNU gettext.
40635
40636 2005-08-16  Bruno Haible  <bruno@clisp.org>
40637
40638         * lib/strnlen1.h: New file.
40639         * lib/strnlen1.c: New file.
40640
40641 2005-08-16  Bruno Haible  <bruno@clisp.org>
40642
40643         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
40644         (mbi_init): Update.
40645         (mbi_avail, mbi_advance): Let the iteration end before the terminating
40646         NUL byte, not after it.
40647
40648 2005-08-16  Bruno Haible  <bruno@clisp.org>
40649
40650         * lib/strcase.h (strcasecmp): Add note in comments.
40651         * lib/strncasecmp.c: Use code from strcasecmp.c.
40652         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
40653         (strcasecmp): Work correctly in multibyte locales.
40654
40655 2005-08-16  Bruno Haible  <bruno@clisp.org>
40656
40657         * lib/mbiter.h: New file.
40658
40659 2005-08-16  Bruno Haible  <bruno@clisp.org>
40660
40661         * lib/mbfile.h: New file.
40662
40663 2005-08-16  Bruno Haible  <bruno@clisp.org>
40664
40665         * lib/mbchar.h: New file.
40666         * lib/mbchar.c: New file.
40667
40668 2005-08-16  Bruno Haible  <bruno@clisp.org>
40669
40670         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
40671         the valid ones. Makes the comparison operations transitive:
40672         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
40673         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
40674
40675 2005-08-15  Simon Josefsson  <jas@extundo.com>
40676
40677         * modules/ssize_t (License): Change to 'unlimited'.
40678
40679         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
40680
40681 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
40682
40683         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
40684         Add comments for each pending glibc patch.
40685
40686 2005-08-15  Bruno Haible  <bruno@clisp.org>
40687
40688         * lib/regex.h (__restrict_arr): Don't define to __restrict if
40689         __cplusplus is defined.
40690
40691 2005-08-14  Jim Meyering  <jim@meyering.net>
40692
40693         Sync from coreutils.
40694
40695         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
40696         Use the hash-table-based cycle-detection code not just when
40697         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
40698         Reported by James Youngman in
40699         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
40700         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
40701         FTS_TIGHT_CYCLE_CHECK.
40702         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
40703         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
40704         once again.
40705         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
40706         * lib/fts.c (fd_safer): Remove decl.
40707         Include fcntl--.h rather than unistd-safer.h
40708         (fts_safe_changedir): Don't call fd_safer; no longer needed
40709         now that we include fcntl--.h.
40710
40711 2005-08-12  Simon Josefsson  <jas@extundo.com>
40712
40713         * modules/getndelim2: Use ssize_t module.
40714         * modules/getnline: Likewise.
40715         * modules/safe-read: Likewise.
40716         * modules/xreadlink: Likewise.
40717
40718         * modules/ssize_t: New file.
40719
40720 2005-08-12  Simon Josefsson  <jas@extundo.com>
40721
40722         * m4/readline.m4: Look for termcap, curses or ncurses if required.
40723
40724 2005-08-12  Simon Josefsson  <jas@extundo.com>
40725
40726         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
40727         ssize_t.
40728
40729 2005-08-12  Simon Josefsson  <jas@extundo.com>
40730
40731         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
40732         readline, getdelim and check_version.
40733         (Support for systems lacking ISO C 99: Sizes of integer types):
40734         Add size_max.
40735
40736 2005-08-12  Bruno Haible  <bruno@clisp.org>
40737
40738         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
40739
40740 2005-08-11  Simon Josefsson  <jas@extundo.com>
40741
40742         * modules/readline: New file.
40743
40744         * modules/strnlen (Files): Add strnlen.h.
40745
40746 2005-08-11  Simon Josefsson  <jas@extundo.com>
40747
40748         * m4/readline.m4: New file.
40749
40750 2005-08-11  Simon Josefsson  <jas@extundo.com>
40751
40752         * lib/readline.h, readline.c: New file.
40753
40754 2005-08-11  Simon Josefsson  <jas@extundo.com>
40755
40756         * doc/gnulib.texi (Initial import, Finishing touches): Mention
40757         gl_AVOID.
40758
40759 2005-08-11  Bruno Haible  <bruno@clisp.org>
40760
40761         * lib/strnlen.h (strnlen): Change parameter name to match comment.
40762
40763 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
40764
40765         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
40766
40767 2005-08-10  Simon Josefsson  <jas@extundo.com>
40768
40769         * tests/test-iconvme.c: New file.
40770
40771 2005-08-10  Simon Josefsson  <jas@extundo.com>
40772
40773         * m4/strnlen.m4: New file.
40774
40775         * m4/strndup.m4: Don't check for strnlen declaration, done in
40776         strnlen.m4.
40777
40778 2005-08-10  Simon Josefsson  <jas@extundo.com>
40779
40780         * lib/strndup.c: Use strnlen.h.
40781
40782         * lib/strnlen.h: New file.
40783
40784 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
40785
40786         * README: Typos.
40787
40788 2005-08-02  Simon Josefsson  <jas@extundo.com>
40789
40790         * modules/readline: New file.
40791
40792 2005-08-02  Simon Josefsson  <jas@extundo.com>
40793
40794         * modules/getdelim: New file.
40795
40796         * modules/getline: Rewrite, don't use getndelim2.
40797
40798 2005-08-02  Simon Josefsson  <jas@extundo.com>
40799
40800         * m4/getline.m4: Separate out getdelim stuff into separate module.
40801
40802         * m4/getdelim.m4: New file.
40803
40804 2005-08-02  Simon Josefsson  <jas@extundo.com>
40805
40806         * lib/getline.h, getline.c: Rewrite.
40807
40808         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
40809
40810 2005-07-31  Bruno Haible  <bruno@clisp.org>
40811
40812         * lib/lock.h (gl_lock_initializer): New macro.
40813         (gl_lock_define_initialized): Use it.
40814         (gl_rwlock_initializer): New macro.
40815         (gl_rwlock_define_initialized): Use it.
40816         (gl_recursive_lock_initializer): New macro.
40817         (gl_recursive_lock_define_initialized): Use it.
40818
40819 2005-07-30  Karl Berry  <karl@gnu.org>
40820
40821         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
40822         Report from Ben Pfaff, regarding getopt.
40823
40824 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
40825
40826         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
40827         normal way.
40828         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
40829         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
40830         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
40831         (gl_GETOPT): Use the new macros.  Most of the implementation
40832         is moved to the new macros.  This is for programs like Emacs
40833         that don't want all the functionality of gl_GETOPT.
40834
40835 2005-07-26  Bruno Haible  <bruno@clisp.org>
40836
40837         * m4/lock.m4: Update from GNU gettext.
40838
40839 2005-07-26  Bruno Haible  <bruno@clisp.org>
40840
40841         * lib/lock.h: Update from GNU gettext.
40842         * lib/lock.c: Update from GNU gettext.
40843
40844 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
40845
40846         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
40847         obsolescent AC_TRY_RUN.  Include the default includes files, for
40848         'exit'.
40849
40850 2005-07-24  Bruno Haible  <bruno@clisp.org>
40851
40852         * modules/visibility: New file.
40853         * MODULES.html.sh (Misc): Add visibility.
40854
40855 2005-07-24  Bruno Haible  <bruno@clisp.org>
40856
40857         * m4/visibility.m4: New file.
40858
40859 2005-07-24  Bruno Haible  <bruno@clisp.org>
40860
40861         * doc/visibility.texi: New file.
40862
40863 2005-07-22  Bruno Haible  <bruno@clisp.org>
40864
40865         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
40866         $(ALLOCA_H), redundant through BUILT_SOURCES.
40867         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
40868         redundant through BUILT_SOURCES.
40869         * modules/byteswap (Makefile.am): Remove explicit dependency on
40870         $(BYTESWAP_H), redundant through BUILT_SOURCES.
40871         * modules/fnmatch (Makefile.am): Remove explicit dependency on
40872         $(FNMATCH_H), redundant through BUILT_SOURCES.
40873         * modules/getopt (Makefile.am): Remove explicit dependency on
40874         $(GETOPT_H), redundant through BUILT_SOURCES.
40875         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
40876         redundant through BUILT_SOURCES.
40877         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
40878         redundant through BUILT_SOURCES.
40879         * modules/stdbool (Makefile.am): Remove explicit dependency on
40880         $(STDBOOL_H), redundant through BUILT_SOURCES.
40881         * modules/stdint (Makefile.am): Remove explicit dependency on
40882         $(STDINT_H), redundant through BUILT_SOURCES.
40883         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
40884         Remove explicit dependency on $(SYSEXITS_H).
40885         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
40886
40887 2005-07-18  Simon Josefsson  <jas@extundo.com>
40888
40889         * lib/check-version.c (check_version): Accept identical versions too.
40890
40891 2005-07-18  Bruno Haible  <bruno@clisp.org>
40892
40893         * modules/lock: New file.
40894         * MODULES.html.sh (Multithreading): New section.
40895
40896 2005-07-18  Bruno Haible  <bruno@clisp.org>
40897
40898         * m4/lock.m4: New file, from GNU gettext.
40899
40900 2005-07-18  Bruno Haible  <bruno@clisp.org>
40901
40902         * lib/lock.h: New file, from GNU gettext.
40903         * lib/lock.c: New file, from GNU gettext.
40904
40905 2005-07-18  Bruno Haible  <bruno@clisp.org>
40906
40907         * lib/lock.h (gl_once_t): New type.
40908         (gl_once_define, gl_once): New macros.
40909         * lib/lock.c (fresh_once): New variable.
40910         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
40911         functions.
40912
40913 2005-07-16  Simon Josefsson  <jas@extundo.com>
40914
40915         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
40916         workaround, suggested by Bruno.
40917
40918 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
40919
40920         * modules/xalloc (Depends-on): Add xalloc-die.
40921         * modules/xvasprintf (Depends-on): Add xalloc-die.
40922
40923 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
40924
40925         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
40926         with a minor change.
40927
40928 2005-07-15  Bruno Haible  <bruno@clisp.org>
40929
40930         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
40931         When using lib/poll.c, define poll as rpl_poll.
40932
40933 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
40934
40935         * modules/argp (Depends-on): Remove unlocked-io.
40936
40937 2005-07-14  Derek Price  <derek@ximbiot.com>
40938
40939         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
40940         for glob symlink bug.
40941
40942 2005-07-14  Bruno Haible  <bruno@clisp.org>
40943
40944         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
40945         Instead, test for *_unlocked function declarations directly.
40946
40947 2005-07-11  Simon Josefsson  <jas@extundo.com>
40948
40949         * modules/size_max: New file.
40950
40951         * modules/xsize: Depend on size_max module for size_max.m4.
40952
40953 2005-07-11  Simon Josefsson  <jas@extundo.com>
40954
40955         * lib/size_max.h: New file.
40956
40957 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
40958
40959         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
40960         copyright symbol and the year.
40961         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
40962         (version_etc_va): Use parameterized copyright notice.
40963         Reword to conform to the current GNU coding standards.
40964
40965 2005-07-11  Karl Berry  <karl@gnu.org>
40966
40967         * doc/gnulib.texi (Quoting): new node.
40968         (Initial import): more info, from Patrice.
40969
40970 2005-07-11  Bruno Haible  <bruno@clisp.org>
40971
40972         * gnulib-tool (func_usage): Document option --avoid.
40973         (Command line options): Handle --avoid.
40974         (func_acceptable): New function.
40975         (func_modules_transitive_closure): Use it.
40976
40977 2005-07-11  Bruno Haible  <bruno@clisp.org>
40978
40979         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
40980         Reported by Jim Meyering.
40981
40982 2005-07-10  Bruno Haible  <bruno@clisp.org>
40983
40984         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
40985         Needed when size_t is smaller than 'unsigned int'.
40986         Reported by Paul Eggert.
40987
40988 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
40989
40990         * modules/argp (Depends-on): Add unlocked-io
40991
40992 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
40993
40994         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
40995         block of defines.
40996
40997 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
40998
40999         * config/srclist.txt: Comment out regcomp.c, since we have a porting
41000         fix now.
41001
41002 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
41003         and Paul Eggert  <eggert@cs.ucla.edu>
41004
41005         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
41006         in wint_t, not wchar_t.  Remove now-unnecessary cast.
41007
41008 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
41009
41010         * modules/regex (Files): Add lib/regex_internal.c,
41011         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
41012         (Depends-on): Add extensions.
41013         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
41014
41015 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
41016
41017         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
41018         pathconf.
41019         * m4/same.m4 (gl_SAME): Likewise.
41020         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
41021
41022         * m4/regex.m4: Adjust to new libc regex implementation.
41023         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
41024         all the .c and .h parts of (the new) regex.
41025         Quote the m4 stuff better.
41026         Check for RE_ICASE bug of old gnulib.
41027         Check for REG_STARTEND of recent libc.
41028         Rename local variables from jm_* to gl_*.
41029         Quote operand of "test -f".
41030         Say "recent enough" version of libc, not "version 2".
41031         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
41032         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
41033         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
41034         Remove check for btowc, isascii.
41035         Require AM_LANGINFO_CODESET.
41036
41037 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
41038
41039         * lib/regex.c, regex.h: Sync from libc.
41040         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
41041         * lib/regexec.c:
41042         New files, synced from libc, except that regex_internal.h
41043         currently has a small porting fix.
41044
41045 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
41046
41047         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
41048         regex_internal.c, regexec.c.
41049         Add regex_internal.h too, but as a comment, since the libc version
41050         is currently broken in gnulib mode.
41051
41052 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
41053
41054         Support programs like Emacs that use gnulib but not gettext.
41055         * MODULES.html.sh (Internationalization functions): Add gettext-h.
41056         * modules/gettext-h: New file.
41057         * modules/gettext (Files): Remove lib/gettext.h.
41058         (Depends-on): Add gettext-h.
41059         (Makefile.am): Remove lib_SOURCES.
41060         * modules/argmatch, modules/c-stack, modules/closeout:
41061         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
41062         * modules/execute, modules/file-type, modules/getaddrinfo:
41063         * modules/getopt, modules/human, modules/javacomp:
41064         * modules/javaexec, modules/mkdir-p, modules/obstack:
41065         * modules/openat, modules/pagealign_alloc, modules/pipe:
41066         * modules/quotearg, modules/regex, modules/rpmatch:
41067         * modules/unicodeio, modules/userspec, modules/version-etc:
41068         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
41069         * modules/xsetenv:
41070         Depend on gettext-h, not gettext.
41071
41072 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
41073
41074         * gnulib-tool (func_import): Add support for 'public domain' license.
41075         * modules/alloca, modules/atexit, modules/memmove:
41076         Now public domain, not GPL.
41077         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
41078         * modules/realloc, modules/strerror, modules/strtod:
41079         Now LGPL, not GPL.
41080
41081 2005-07-05  Bruno Haible  <bruno@clisp.org>
41082
41083         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
41084         autoconf CVS. Needed for mingw.
41085
41086 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
41087
41088         Remove the dependency of the strftime module on the tzset module.
41089         * modules/strftime (Depends-on): Remove dependency on tzset.
41090
41091 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
41092
41093         Remove the dependency of the strftime module on the tzset module.
41094         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
41095         gl_FUNC_TZSET_CLOBBER.
41096
41097 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
41098
41099         Remove the dependency of the strftime module on the tzset module.
41100         * lib/strftime.c (my_strftime)
41101         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
41102         Copy the input structure, to work around some of the bug with
41103         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
41104         Solaris releases, you should also use the tzset module, but we won't
41105         require it as a dependency any more since we don't want LGPLed code
41106         to depend on GPLed code.
41107
41108 2005-07-02  Jim Meyering  <jim@meyering.net>
41109
41110         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
41111         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
41112         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
41113         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
41114
41115 2005-07-02  Jim Meyering  <jim@meyering.net>
41116
41117         * lib/backupfile.c (backup_args): Change a `0' to NULL.
41118
41119 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
41120
41121         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
41122         declares only 'struct timespec;' (!).
41123
41124 2005-07-01  Jim Meyering  <jim@meyering.net>
41125
41126         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
41127         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
41128         * lib/save-cwd.c, tempname.c:
41129         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
41130         and don't include <sys/file.h>).
41131
41132 2005-06-29  Jim Meyering  <jim@meyering.net>
41133
41134         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
41135         type name.  Use the variable name instead.
41136         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
41137         Likewise.
41138
41139 2005-06-28  Simon Josefsson  <jas@extundo.com>
41140
41141         * modules/check-version (Files): Add check-version.m4.
41142
41143 2005-06-28  Simon Josefsson  <jas@extundo.com>
41144
41145         * m4/check-version.m4: New file, suggested by Jim Meyering
41146         <jim@meyering.net>.
41147
41148 2005-06-28  Simon Josefsson  <jas@extundo.com>
41149
41150         * lib/check-version.h, lib/check-version.c: New files.
41151
41152 2005-06-28  Simon Josefsson  <jas@extundo.com>
41153
41154         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
41155         collision with global variable.  Better indentation.  Don't
41156         increment buffer pointer beyond buffer end.  Based on comments
41157         from Paul Eggert <eggert@cs.ucla.edu>.
41158
41159         * lib/base64.h: Indent.
41160
41161 2005-06-28  Simon Josefsson  <jas@extundo.com>
41162
41163         * doc/gnulib.texi (Library version handling): New section.
41164
41165 2005-06-28  Jim Meyering  <jim@meyering.net>
41166
41167         * check-module (find_included_lib_files): Hard-code another
41168         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
41169         but modules/fts-lgpl (correctly) does not list those files.
41170
41171         * modules/canonicalize (Files): Add lib/pathmax.h.
41172
41173 2005-06-25  Simon Josefsson  <jas@extundo.com>
41174
41175         * modules/check-version: New file.
41176
41177 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
41178
41179         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
41180         initializer of struct addrinfo, as an indication that we don't
41181         care how many members the structure has.
41182
41183 2005-06-24  Derek Price  <derek@ximbiot.com>
41184         and Bruno Haible  <bruno@clisp.org>
41185
41186         Remove stat module & update lstat.
41187         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
41188         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
41189         * m4/stat.m4: Remove this file.
41190
41191 2005-06-24  Derek Price  <derek@ximbiot.com>
41192         and Bruno Haible  <bruno@clisp.org>
41193
41194         Remove stat module & update lstat.
41195         * lib/stat.c: Remove this file...
41196         (slash_aware_lstat): ...moving this content and its support...
41197         * lib/lstat.c (rpl_lstat): ...into here.
41198         * lib/lstat.h: New file.
41199
41200 2005-06-24  Derek Price  <derek@ximbiot.com>
41201         and Bruno Haible  <bruno@clisp.org>
41202
41203         Remove stat module & update lstat.
41204         * config/srclist.txt (libc sources): Remove stat.
41205
41206 2005-06-24  Derek Price  <derek@ximbiot.com>
41207         and Bruno Haible  <bruno@clisp.org>
41208
41209         Remove stat module & update lstat.
41210         * MODULES.html.sh (stat): Remove.
41211         * MODULES.html: Regenerated.
41212         * modules/lstat (Description): Correct function name.
41213         (Files): Add "lstat.h".
41214         (Depends-on): Remove stat, add xalloc, stat-macros.
41215         * modules/stat: Remove this file.
41216         (Include): Add "lstat.h", remove <sys/stat.h>.
41217
41218 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
41219
41220         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
41221         (ranged_convert): Don't save conversion in a temporary struct.
41222         This causes a warning with GCC 4.0.0, and anyway in the typical
41223         case it's not worth the extra 100 bytes or so of code.
41224         (ranged_convert, __mktime_internal): When calling a function via a
41225         pointer P, use P () rather than (*P) (), as we now assume C89 or
41226         better.
41227
41228 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
41229
41230         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
41231         "who -r" failed to give output.  Problem reported by Tim Waugh.
41232
41233         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
41234         (xcalloc): Use it to avoid needless tests.
41235         Problem reported by Jim Meyering.
41236
41237 2005-06-20  Derek Price  <derek@ximbiot.com>
41238
41239         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
41240         unnecessary for Autoconfs > 2.59c.
41241
41242 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
41243
41244         * lib/argp.h (__option_is_short): Check upper limit of
41245         __key. Isprint() requires its argument to have the value
41246         of an unsigned char or EOF.
41247
41248 2005-06-16  Jim Meyering  <jim@meyering.net>
41249
41250         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
41251         when either N or S is zero.
41252
41253 2005-06-16  Derek Price  <derek@ximbiot.com>
41254
41255         * m4/bison.m4: Declare YACC & YFLAGS precious.
41256
41257 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
41258
41259         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
41260         multibyte string or pattern, fall back on unibyte matching.
41261         Problem reported by James Youngman.
41262
41263 2005-06-08  Bruno Haible  <bruno@clisp.org>
41264
41265         * modules/csharpcomp: New file.
41266         * MODULES.html.sh (C#): Add csharpcomp.
41267
41268 2005-06-08  Bruno Haible  <bruno@clisp.org>
41269
41270         * m4/csharpcomp.m4: New file, from GNU gettext.
41271
41272 2005-06-08  Bruno Haible  <bruno@clisp.org>
41273
41274         * lib/csharpcomp.h: New file, from GNU gettext.
41275         * lib/csharpcomp.c: New file, from GNU gettext.
41276         * lib/csharpcomp.sh.in: New file, from GNU gettext.
41277
41278 2005-06-08  Bruno Haible  <bruno@clisp.org>
41279
41280         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
41281         warning on mingw.
41282
41283 2005-06-07  Derek Price  <derek@ximbiot.com>
41284
41285         Sync from CVS.
41286         * lib/glob_.h: Indent nested #ifdef.
41287
41288 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
41289
41290         Sync from coreutils.
41291         Use "file name" when talking about file names, instead of "filename"
41292         or "path", as per the GNU coding standards.
41293         * lib/mkdir-p.c: Renamed from makepath.c.
41294         (make_dir_parents): Renamed from make_path.  All callers changed.
41295         * lib/mkdir-p.h: Likewise.  All includers changed.
41296         * lib/filenamecat.c: Renamed from path-concat.c.
41297         (file_name_concat): Renamed from path_concat.  All callers changed.
41298         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
41299         * lib/filenamecat.h: Likewise.  All includers changed.
41300         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
41301         in comments or local variable names.
41302         * lib/basename.c: Likewise.
41303         * lib/canonicalize.c, canonicalize.h: Likewise.
41304         * lib/dirname.c, dirname.h: Likewise.
41305         * lib/euidaccess.c: Likewise.
41306         * lib/exclude.c: Likewise
41307         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
41308         * lib/fsusage.c, fsuage.h: Likewise.
41309         * lib/fts.c, fts_.h: Likewise.
41310         * lib/getcwd.c: Likewise.
41311         * lib/getloadavg.c: Likewise.
41312         * lib/mkstemp.c: Likewise.
41313         * lib/mountlist.c, mountlist.h: Likewise.
41314         * lib/openat.c, openat.h: Likewise.
41315         * lib/readlink-stub.c: Likewise.
41316         * lib/readutmp.c, readutmp.h: Likewise.
41317         * lib/rename.c: Likewise.
41318         * lib/rmdir.c: Likewise.
41319         * lib/same.c: Likewise.
41320         * lib/savedir.c: Likewise.
41321         * lib/stripslash.c: Likewise.
41322         * lib/tempname.c: Likewise.
41323         * lib/xreadlink.c: Likewise.
41324         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
41325         All uses changed.
41326         * lib/exclude.h: Likewise.
41327
41328         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
41329         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
41330         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
41331         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
41332         * lib/pathmax.h: Include <limits.h> unconditionally, since other
41333         files have been getting away with it for years (MORE/BSD 4.3
41334         is extinct now).
41335         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
41336         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
41337
41338         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
41339         Define to 256, not 255, as per modern POSIX.
41340
41341 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
41342
41343         Sync from coreutils.
41344         Use "file name" when talking about file names, instead of "filename"
41345         or "path", as per the GNU coding standards.
41346         * MODULES.html.sh: mkdir-p renamed from makepath.
41347         filenamecat renamed from path-concat.
41348         * modules/filenamecat: Renamed from modules/path-concat.
41349         (Files): filenamecat.h and filenamecat.c renamed from
41350         path-concat.h and path-concat.c.
41351         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
41352         (Include): filenamecat.h, not path-concat.h.
41353         * modules/mkdir-p: Renamed from modules/makepath.
41354         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
41355         makepath.c.
41356         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
41357         (Include): mkdir-p.h, not makepath.h.
41358
41359 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
41360
41361         Sync from coreutils.
41362         * m4/mkdir-p.m4: Renamed from makepath.m4.
41363         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
41364         Rename files from makepath.c to mkdir-p.c, and from
41365         makepath.h to mkdir-p.h.
41366         * m4/filenamecat.m4: Renamed from path-concat.m4.
41367         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
41368         Rename files from path-concat.c to filenamecat.c,
41369         and from path-concat.h to filenamecat.h.
41370         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
41371         "file name" in local variables or comments.
41372         * m4/rename.m4: Likewise.
41373
41374 2005-06-01  Bruno Haible  <bruno@clisp.org>
41375
41376         * modules/csharpexec: New file.
41377         * MODULES.html.sh (C#): New section.
41378
41379 2005-06-01  Bruno Haible  <bruno@clisp.org>
41380
41381         * m4/csharp.m4: New file, from GNU gettext.
41382         * m4/csharpexec.m4: New file, from GNU gettext.
41383
41384 2005-06-01  Bruno Haible  <bruno@clisp.org>
41385
41386         * lib/csharpexec.h: New file, from GNU gettext.
41387         * lib/csharpexec.c: New file, from GNU gettext.
41388         * lib/csharpexec.sh.in: New file, from GNU gettext.
41389
41390 2005-05-31  Derek Price  <derek@ximbiot.com>
41391             Paul Eggert  <eggert@cs.ucla.edu>
41392
41393         Sync from cvs.
41394         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
41395
41396 2005-05-31  Derek Price  <derek@ximbiot.com>
41397             Paul Eggert  <eggert@cs.ucla.edu>
41398
41399         Sync from cvs.
41400         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
41401
41402 2005-05-29  Derek Price  <derek@ximbiot.com>
41403
41404         * config/srclist.txt (glob_.h, glob.c): Add these files.
41405
41406 2005-05-29  Derek Price  <derek@ximbiot.com>
41407
41408         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
41409         * modules/glob: New file.
41410         * modules/getlogin_r: Add link to POSIX spec in description.
41411
41412 2005-05-29  Derek Price  <derek@ximbiot.com>
41413             Paul Eggert  <eggert@cs.ucla.edu>
41414
41415         * m4/glob.m4: New file.
41416
41417 2005-05-29  Derek Price  <derek@ximbiot.com>
41418             Paul Eggert  <eggert@cs.ucla.edu>
41419
41420         * lib/glob_.h, lib/glob.c: New files.
41421
41422 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
41423
41424         * modules/fts (Files): Remove m4/inttypes-pri.m4.
41425         * modules/fts-lgpl (Depends-on): Remove gettext.
41426
41427 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
41428
41429         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
41430         and don't require gt_INTTYPES_PRI.
41431
41432 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
41433
41434         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
41435
41436         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
41437         the configuration hassle isn't worth it.
41438         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
41439         (LONGEST_MODIFIER, PRIuMAX): Remove.
41440
41441 2005-05-27  Bruno Haible  <bruno@clisp.org>
41442
41443         * lib/getlogin_r.h: Remove second include of <stddef.h>.
41444
41445 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
41446
41447         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
41448         _POSIX_PTHREAD_SEMANTICS for Solaris.
41449
41450 2005-05-25  Derek Price  <derek@ximbiot.com>
41451
41452         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
41453
41454 2005-05-25  Derek Price  <derek@ximbiot.com>
41455             Paul Eggert  <eggert@cs.ucla.edu>
41456
41457         * modules/getlogin_r, m4/getlogin_r.m4: New files.
41458         * lib/getlogin_r.c, getlogin_r.h: New files.
41459
41460 2005-05-25  Bruno Haible  <bruno@clisp.org>
41461             Derek Price  <derek@ximbiot.com>
41462
41463         * lib/getlogin_r.h: Simplify API documentation.
41464
41465 2005-05-23  Derek Price  <derek@ximbiot.com>
41466
41467         * modules/minmax (Files): Add m4/minmax.m4.
41468         (configure.ac): Add gl_MINMAX.
41469
41470 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
41471
41472         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
41473         so that unistd-safer.h (GPL'ed code) need not be included.
41474
41475 2005-05-22  Bruno Haible  <bruno@clisp.org>
41476
41477         * m4/minmax.m4: New file.
41478         Based on a patch by Derek Price <derek@ximbiot.com>.
41479
41480 2005-05-22  Bruno Haible  <bruno@clisp.org>
41481
41482         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
41483         (INT64_MIN): Fix definition.
41484         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
41485
41486         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
41487         NEED_SIGNED_INT_TYPES.
41488
41489         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
41490         HAVE_SYSTEM_INTTYPES.
41491
41492 2005-05-22  Bruno Haible  <bruno@clisp.org>
41493
41494         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
41495         Also include <sys/param.h> if it defines MIN, MAX.
41496         Based on a patch by Derek Price <derek@ximbiot.com>.
41497
41498 2005-05-21  Jim Meyering  <jim@meyering.net>
41499
41500         * modules/fts (Files): Add m4/inttypes-pri.m4.
41501         (Depends-on): Add lstat and remove gettext.  Alphabetize.
41502
41503 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
41504
41505         New fts module.
41506         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
41507         (setup_dir, free_dir): New functions.
41508         (enter_dir, leave_dir): Define trivial
41509         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
41510         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
41511         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
41512         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
41513         Move to fts-cycle.c.
41514         (fts_open): Use setup_dir.
41515         (fts_close): Use free_dir.
41516         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
41517         This adds a label and some gotos, but the alternatives were messier.
41518         Check for memory allocation failure when entering a dir.
41519         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
41520         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
41521         (FTS): New member fts_cycle, that is a union that contains the
41522         old active_dir_ht and cycle_state.  All uses changed to mention
41523         fts_cycle.ht and fts_cycle.state.
41524         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
41525         fts.c, with the following changes:
41526         (setup_dir, free_dir): New functions.
41527         (enter_dir): Now returns bool.  Return true if successful, false
41528         if memory exhausted.  All callers changed.
41529         Do not bother partly cleaning up on
41530         memory allocation failure; that is free_dir's job.
41531         However, free ad if hash_insert fails, to avoid memory leak.
41532         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
41533         fts->fts_options to see which union member to use.
41534
41535 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
41536
41537         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
41538         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
41539
41540 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
41541
41542         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
41543
41544 2005-05-20  Jim Meyering  <jim@meyering.net>
41545
41546         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
41547         Now a macro, to pacify GCC.
41548
41549 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
41550
41551         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
41552         of -1.
41553
41554 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
41555
41556         * lib/chown.c (rpl_chown): Return -1 on failure.
41557
41558 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
41559
41560         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
41561         Don't check for stddef.h.
41562         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
41563         don't use its results.
41564         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
41565         since we include them unconditionally.  Don't require
41566         AM_STDBOOL_H, since stdbool is a prerequisite.
41567         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
41568         since we assume C89 or better.
41569         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
41570         as we don't use their results.
41571         Don't check for fchdir, memmove, memset, strrchr, as we use
41572         them unconditionally.
41573         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
41574         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
41575
41576 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
41577
41578         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
41579         Include <stddef.h> unconditionally, since we assume C89 now.
41580         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
41581         * lib/fts.c: Include fts_.h first, to check interface.
41582         Do not include intprops.h; no longer needed.
41583         Include cycle-check.h and hash.h, since fts_.h no longer does.
41584         Remove unnecessary casts of closedir to void.
41585         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
41586         decide whether to decrement nlinks.
41587         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
41588         (FTS): Use struct hash_table * instead of Hash_table, so that
41589         we no longer need to include hash.h here.
41590
41591 2005-05-18  Jim Meyering  <jim@meyering.net>
41592
41593         * modules/dirfd (License): Change to LGPL.  Most of the code
41594         is already in the public domain.
41595
41596 2005-05-18  Jim Meyering  <jim@meyering.net>
41597
41598         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
41599         Reported by Yoann Vandoorselaere.
41600
41601 2005-05-17  Jim Meyering  <jim@meyering.net>
41602
41603         * m4/fts.m4: New file, from coreutils.
41604
41605 2005-05-17  Jim Meyering  <jim@meyering.net>
41606
41607         * lib/fts.c, lib/fts_.h: New files, from coreutils.
41608
41609 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
41610
41611         Sync from coreutils.
41612         * m4/unlinkdir.m4: New file.
41613
41614 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
41615
41616         Sync from coreutils.
41617         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
41618         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
41619         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
41620         White space changes only.
41621         * lib/makepath.c (make_path): Port to hosts where leading "//" is
41622         special.
41623         * lib/yesno.c: Include getline.h, not ctype.h.
41624         (yesno): Don't remove leading white space; POSIX doesn't allow it.
41625         Use getline to remove arbitrary restriction on response length.
41626
41627 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
41628
41629         * config/srclist-update: Spell out "Street" in FSF postal
41630         mail address; this is the style the FSF seems to prefer.
41631
41632         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
41633         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
41634         this updates FSF postal mail address.
41635
41636         Sync from coreutils.
41637         * modules/unlinkdir: New file.
41638         * modules/yesno (Depends-on): Add getline.
41639         * MODULES.html.sh (File system functions): Add unlinkdir.
41640
41641 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
41642
41643         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
41644         lib/strsep.h:
41645         Change the initial comment to refer to GPL, not LGPL.
41646         gnulib-tool will change it to LGPL as needed.
41647
41648         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
41649         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
41650         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
41651         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
41652         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
41653         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
41654         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
41655         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
41656         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
41657         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
41658         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
41659         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
41660         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
41661         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
41662         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
41663         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
41664         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
41665         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
41666         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
41667         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
41668         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
41669         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
41670         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
41671         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
41672         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
41673         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
41674         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
41675         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
41676         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
41677         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
41678         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
41679         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
41680         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
41681         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
41682         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
41683         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
41684         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
41685         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
41686         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
41687         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
41688         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
41689         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
41690         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
41691         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
41692         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
41693         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
41694         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
41695         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
41696         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
41697         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
41698         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
41699         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
41700         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
41701         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
41702         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
41703         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
41704         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
41705         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
41706         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
41707         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
41708         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
41709         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
41710         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
41711         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
41712         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
41713         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
41714         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
41715         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
41716         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
41717         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
41718         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
41719         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
41720         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
41721         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
41722         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
41723         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
41724         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
41725         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
41726         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
41727         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
41728         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
41729         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
41730         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
41731         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
41732         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
41733         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
41734         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
41735         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
41736         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
41737         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
41738         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
41739         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
41740         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
41741         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
41742         lib/yesno.c, lib/yesno.h:
41743         Update FSF postal mail address.
41744
41745 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
41746
41747         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
41748         tests/test-memmem.c, tests/test-stpncpy.c:
41749         Update FSF postal mail address.
41750
41751 2005-05-13  Bruno Haible  <bruno@clisp.org>
41752
41753         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
41754         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
41755         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
41756         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
41757         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
41758         Add support for 64-bit integers in the MSVC compiler.
41759
41760 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
41761
41762         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
41763
41764 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
41765
41766         * gnulib-tool (func_import): Sort and uniquify recommended includes.
41767
41768 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
41769
41770         * doc/getdate.texi (General date syntax): Don't say that date
41771         date --iso-8601=ns generates acceptable dates; it doesn't yet.
41772         Problem reported by Nic Ferrier.
41773
41774 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41775
41776         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
41777         specified in ai_socktype. Fix invalid ai_protocol
41778         check. ai_protocol is usually set to 0 or depending on
41779         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
41780         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
41781         ai_socktype / ai_protocol in the returned addrinfo structure.
41782
41783 2005-05-10  Simon Josefsson  <jas@extundo.com>
41784
41785         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
41786         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
41787
41788 2005-05-10  Karl Berry  <karl@gnu.org>
41789
41790         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
41791         (from http://www.gnu.org/licenses).
41792         * doc/COPYING.LIB: also rename to COPYING.LESSER.
41793         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
41794         fdl.texi suffices.
41795
41796 2005-05-10  Karl Berry  <karl@gnu.org>
41797
41798         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
41799         (COPYING.DOC): remove.
41800
41801         * config/srclist-update: new FSF address.
41802
41803 2005-05-10  Derek Price  <derek@ximbiot.com>
41804
41805         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
41806         possible.
41807
41808 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41809             Bruno Haible  <bruno@clisp.org>
41810
41811         * modules/inet_ntop: New file.
41812         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
41813         inet_ntop.
41814
41815 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41816             Bruno Haible  <bruno@clisp.org>
41817
41818         * m4/inet_ntop.m4: New file.
41819
41820 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41821             Bruno Haible  <bruno@clisp.org>
41822
41823         * lib/inet_ntop.h: New file.
41824         * lib/inet_ntop.c: New file, from glibc with modifications.
41825
41826 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
41827
41828         * modules/time_r (License): Change to LGPL.
41829         * modules/extensions (License): Change to LGPL.  Actually,
41830         the license is more permissive than that, but currently gnulib-tool
41831         doesn't know how to handle more-permissive licenses.
41832
41833         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
41834         Problem reported by Dave Love.
41835
41836 2005-05-08  Jim Meyering  <jim@meyering.net>
41837
41838         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
41839         blank.
41840
41841 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
41842
41843         * modules/argmatch (Depends-on): Add stdbool.
41844         * modules/backupfile (Depends-on): Likewise.
41845         * modules/chdir-long (Depends-on): Likewise.
41846         * modules/closeout (Depends-on): Likewise.
41847         * modules/cycle-check (Depends-on): Likewise.
41848         * modules/dirname (Depends-on): Likewise.
41849         * modules/fnmatch (Depends-on): Likewise.
41850         * modules/fsusage (Depends-on): Likewise.
41851         * modules/fwriteerror (Depends-on): Likewise.
41852         * modules/getcwd (Depends-on): Likewise.
41853         * modules/getloadavg (Depends-on): Likewise.
41854         * modules/hard-locale (Depends-on): Likewise.
41855         * modules/makepath (Depends-on): Likewise.
41856         * modules/mountlist (Depends-on): Likewise.
41857         * modules/nanosleep (Depends-on): Likewise.
41858         * modules/posixtm (Depends-on): Likewise.
41859         * modules/quotearg (Depends-on): Likewise.
41860         * modules/readtokens (Depends-on): Likewise.
41861         * modules/readtokens0 (Depends-on): Likewise.
41862         * modules/readutmp (Depends-on): Likewise.
41863         * modules/save-cwd (Depends-on): Likewise.
41864         * modules/strftime (Depends-on): Likewise.
41865         * modules/userspec (Depends-on): Likewise.
41866         * modules/utimecmp (Depends-on): Likewise.
41867         * modules/xgetcwd (Depends-on): Likewise.
41868         * modules/xnanosleep (Depends-on): Likewise.
41869         * modules/xstrtod (Depends-on): Likewise.
41870         * modules/yesno (Depends-on): Likewise.
41871
41872 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
41873
41874         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
41875         needless checks.
41876
41877 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
41878
41879         Merge from coreutils.  Among other things,
41880         add bulletproofing for cases where stdin, stdout, or stderr are closed.
41881         * lib/fd-safer.c: New file.
41882         * lib/fcntl-safer.h, open-safer.c: Remove.
41883         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
41884         * lib/dup-safer.c: Include unistd-safer.h first.
41885         Don't include errno.h.
41886         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
41887         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
41888         * lib/file-type.c: Rely on file-type.h change.
41889         * lib/getloadavg.c: Include unistd-safer.h.
41890         (getloadavg): Use safer open.
41891         * lib/getusershell.c: Include "stdio-safer.h".
41892         (getusershell): Use safer fopen.
41893         * lib/long-options.c (long_options): Use NULL rather than 0.
41894         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
41895         'free'.
41896         * lib/modechange.c: Likewise.
41897         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
41898         (MODE_DONE): New constant.
41899         (struct mode_change): Remove 'next' member.
41900         (make_node_op_equals): New function; like the old one of the
41901         same name, except it allocates an array.
41902         (mode_compile, mode_create_from_ref): Use it.
41903         (mode_compile): Allocate result as an array, not a linked list.
41904         Parse octal string ourself, so that we catch mistakes like "+0".
41905         (mode_adjust): Arg is an array, not a linked list.
41906         * lib/modechange.c: Include stat-macros.h, xalloc.h.
41907         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
41908         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
41909         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
41910         Remove.  This is now stat-macros.h's job.
41911         (talloc): Remove.  All callers replaced by xalloc, so that
41912         our invokers don't have to worry about reporting memory failures.
41913         (make_node_op_equals): Remove.
41914         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
41915         New constants.
41916         (struct mode_change): Moved here from modechange.h.
41917         (mode_append_entry): Remove.
41918         (mode_compile): Remove MASKED_OPS arg, since it encouraged
41919         apps to have incorrect behavior.  Use simpler algorithm for head
41920         and tail.  Don't futz with umask; that's now the job of mode_adjust.
41921         Detect more invalid usages rather than having somewhat-random behavior.
41922         Don't insert an "a=" action, as that leads to incorrect behavior.
41923         (mode_compile, mode_create_from_ref): Return NULL on error instead
41924         of an enum, since now there's only one way to have an error.  All
41925         callers changed.
41926         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
41927         at the correct time.  Simplify calculation of "+u" and its ilk.
41928         Don't mishandle "+X".
41929         (mode_free): Remove "register" and localize decls.
41930         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
41931         (struct mode_change): Move to modechange.c; callers don't
41932         need to see this stuff.
41933         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
41934         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
41935         (mode_change, mode_adjust): Reflect the new signatures noted above.
41936         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
41937         that might redefine system include files.
41938         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
41939         (my_usleep): Use NULL rather than (void *) 0.
41940         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
41941         Use siginterrupt to specify that system calls should be interrupted.
41942         (rpl_nanosleep): Move initialization of suspended closer to call of
41943         my_usleep.
41944         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
41945         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
41946         (desirable_utmp_entry): New function.
41947         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
41948         using x2nrealloc, to simplify logic.
41949         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
41950         size calculation.  Do not assume utmp file is a regular file.
41951         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
41952         (READ_UTMP_CHECK_PIDS): New constant.
41953         * lib/save-cwd.c: Include unistd-safer.h.
41954         (save_cwd): Use fd_safer.
41955         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
41956         [!_LIBC] Include "stat-macros.h" instead.
41957         * lib/unistd-safer.h (fd_safer): New decl.
41958
41959 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
41960
41961         * modules/getloadavg (Depends-on): Add unistd-safer.
41962         * modules/getusershell (Depends-on): Add stdio-safer.
41963         * modules/lstat (Depends-on): Remove xalloc.
41964         * modules/mkstemp (Depends-on): Add stat-macros.
41965         * modules/modechange (Depends-on): Remove xstrtol.
41966         Add stat-macros, xalloc.
41967         * modules/save-cwd (Depends-on): Add unistd-safer.
41968         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
41969         * modules/unistd-safer (Files): Add lib/fd-safer.c
41970         (Makefile.am): Remove lib_SOURCES.
41971
41972         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
41973         Remove fcntl-safer; unistd-safer supersedes it.
41974
41975 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
41976
41977         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
41978         AC_HEADER_STAT.
41979         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
41980         (gl_PREREQ_CHOWN): Remove.
41981         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
41982         it.  Don't require AC_HEADER_STAT.
41983         (gl_PREREQ_LSTAT): Remove.
41984         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
41985         Don't require AC_HEADER_STAT.
41986         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
41987         (gl_PREREQ_RMDIR): Remove.
41988         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
41989         mention stat-macros.h or AC_HEADER_STAT, since we'll make
41990         the stat-macros module a prerequisite.
41991         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
41992         * m4/filemode.m4 (gl_FILEMODE): Likewise.
41993         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
41994         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
41995         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
41996         variable names.
41997         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
41998         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
41999         variable prefixes.
42000         * m4/fcntl-safer.m4: Remove.
42001         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
42002         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
42003         Invoke gl_PREREQ_FD_SAFER.
42004         (gl_PREREQ_FD_SAFER): New macro.
42005         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
42006         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
42007         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
42008         Remove duplicate call to AC_LIBOBJ(readutmp).
42009         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
42010
42011         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
42012         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
42013
42014 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
42015
42016         * MODULES.html.sh (Misc): Add byteswap.
42017
42018 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
42019
42020         * modules/getcwd (Depends-on): Add extensions.
42021         * modules/openat (Depends-on): Likewise.
42022
42023 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
42024
42025         * modules/byteswap: New file.
42026
42027 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
42028
42029         * m4/byteswap.m4: New file.
42030
42031 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
42032
42033         * lib/byteswap_.h: New file.
42034
42035 2005-04-25  Karl Berry  <karl@gnu.org>
42036
42037         * m4/gettext.m4: Update from GNU gettext 0.14.4.
42038
42039 2005-04-25  Albert Chin  <china@thewrittenword.com>
42040
42041         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
42042         Toolkit C bug.
42043
42044 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
42045
42046         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
42047         (func_ln_if_changed) Remove forcibly for no error message
42048         in case file does not exist.
42049
42050 2005-04-19  Simon Josefsson  <jas@extundo.com>
42051
42052         * gnulib-tool (Options): Make --symlink mean --symbolic.
42053
42054 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
42055
42056         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
42057
42058 2005-04-16  Simon Josefsson  <jas@extundo.com>
42059
42060         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
42061
42062 2005-04-15  Simon Josefsson  <jas@extundo.com>
42063
42064         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
42065
42066 2005-04-15  Simon Josefsson  <jas@extundo.com>
42067
42068         * gnulib-tool: Rename --symlink to --symbolic.
42069
42070 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
42071
42072         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
42073         symbolic links to files instead of copying/moving.  Add --aux-dir,
42074         specifying directory relative --dir where auxiliary build tools
42075         are placed.
42076
42077 2005-04-14  Bruno Haible  <bruno@clisp.org>
42078
42079         * modules/allocsa (License): Change to LGPL.
42080         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
42081
42082 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
42083
42084         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
42085         that "UTC +1 second" continues to work.  Problem reported
42086         by Dmitry V. Levin.
42087         (relunit_snumber): New rule.
42088         (relunit): Use it.
42089
42090 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
42091
42092         * lib/getdate.y (universal_time_zone_table): New constant.
42093         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
42094         universal_time_zone_table.
42095         (lookup_zone): Prefer universal_time_zone_table to
42096         local_time_zone_table, so that "GMT" time stamps are allowed in
42097         London during the summer.  Problem reported by Ian Abbott.
42098
42099 2005-04-12  Jim Meyering  <jim@meyering.net>
42100
42101         * lib/human.c (humblock): Set *options even when returning due to
42102         xstrtoumax conversion failure.  Thanks to a used-uninitialized
42103         warning from gcc-4.
42104
42105 2005-04-09  Jim Meyering  <jim@meyering.net>
42106
42107         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
42108         -Wuninitialized: initialize tm0.tm_year.
42109
42110 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
42111
42112         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
42113         count, since there's no maximum.  All uses changed.
42114         Add member dsts_seen.
42115         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
42116         not being INT_MAX.
42117         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
42118         Use pc_rels_seen to decide whther a date is absolute.
42119
42120         * lib/getdate.y (number): Don't overwrite year.
42121         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
42122         check.
42123
42124 2005-04-02  Simon Josefsson  <jas@extundo.com>
42125
42126         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
42127         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
42128
42129 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
42130
42131         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
42132         where no absolute path name can be longer than PATH_MAX.
42133
42134 2005-03-27  Jim Meyering  <jim@meyering.net>
42135
42136         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
42137
42138 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
42139
42140         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
42141         "one's complement" -> "ones' complement" in comment, as per Knuth.
42142         "value of type" -> "type or expression" in comment.
42143         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
42144
42145 2005-03-26  Jim Meyering  <jim@meyering.net>
42146
42147         Comment nits.
42148         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
42149         Correct typos: s/or/of/.
42150
42151 2005-03-26  Jim Meyering  <jim@meyering.net>
42152
42153         * modules/check-include-files: Move to ../ and rename to...
42154         * check-module: ...this.
42155
42156 2005-03-25  Jim Meyering  <jim@meyering.net>
42157
42158         * modules/xvasprintf (Files): Add xalloc.h.
42159
42160 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
42161
42162         * modules/gettext (Files): config/config.rpath ->
42163         build-aux/config.rpath
42164         * modules/iconv (Files): Likewise.
42165         Problem reported by Oskar Liljeblad.
42166
42167 2005-03-23  Jim Meyering  <jim@meyering.net>
42168
42169         * modules/check-include-files: New script to check for
42170         missing dependencies, multiple includes, etc.
42171
42172         * modules/c-strtold (Depends-on): Add xalloc.
42173         * modules/c-strtod (Depends-on): Add xalloc.
42174         * modules/hash (Depends-on): Add xalloc.
42175         (Files): Remove lib/xalloc.h.
42176
42177         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
42178         * modules/userspec (Files): Add lib/inttostr.h.
42179
42180 2005-03-23  Jim Meyering  <jim@meyering.net>
42181
42182         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
42183
42184 2005-03-22  Jim Meyering  <jim@meyering.net>
42185
42186         * modules/stat-macros: New module.
42187         * modules/canonicalize, modules/euidaccess, modules/file-type,
42188         * modules/filemode, modules/lchown, modules/makepath,
42189         * modules/rmdir, modules/stat: Depend on new stat-macros module
42190         rather than listing lib/stat-macros.h manually.
42191         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
42192
42193 2005-03-22  Jim Meyering  <jim@meyering.net>
42194
42195         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
42196
42197 2005-03-22  Bruno Haible  <bruno@clisp.org>
42198
42199         * config/srclist.txt: Replace target directory 'config' with
42200         'build-aux'.
42201         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
42202         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
42203         ../build-aux/.
42204
42205 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
42206
42207         * modules/chdir-long (Depends-on): Add mempcpy.
42208
42209         * modules/acl, modules/backupfile, modules/c-strtod,
42210         modules/c-strtold, modules/canon-host, modules/canonicalize,
42211         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
42212         modules/exclude, modules/exitfail, modules/file-type,
42213         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
42214         modules/getdate, modules/getline, modules/getpagesize,
42215         modules/getpass, modules/getugroups, modules/group-member,
42216         modules/hard-locale, modules/hash, modules/human, modules/idcache,
42217         modules/inttostr, modules/long-options, modules/makepath,
42218         modules/md5, modules/memcasecmp, modules/memcoll,
42219         modules/modechange, modules/mountlist, modules/path-concat,
42220         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
42221         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
42222         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
42223         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
42224         modules/strftime, modules/strndup, modules/strverscmp,
42225         modules/timespec, modules/unlocked-io, modules/userspec,
42226         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
42227         modules/yesno:
42228         Remove lib_SOURCES line from Makefile.am section, as this is now
42229         done automatically by the corresponding Autoconf macro.
42230
42231 2005-03-21  Jim Meyering  <jim@meyering.net>
42232
42233         Changes imported from coreutils.
42234
42235         * lib/cycle-check.c: Don't include xalloc.h.
42236
42237         * lib/path-concat.c: Don't include assert.h.
42238         (path_concat): Remove assertion that would have triggered
42239         for ABASE starting with more than one slash.
42240         Reported by Andreas Schwab.
42241
42242         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
42243         properly when ABASE is an absolute file name.
42244         Correct the description of this function.
42245         Include <assert.h>.
42246         Add an assertion and a test driver.
42247         This fixes a bug introduced on 2004-07-02.
42248         Andreas Schwab reported the resulting failure of cp --parents:
42249         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
42250
42251 2005-03-21  Jim Meyering  <jim@meyering.net>
42252
42253         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
42254         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
42255
42256 2005-03-21  Jim Meyering  <jim@meyering.net>
42257         and  Paul Eggert  <eggert@cs.ucla.edu>
42258
42259         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
42260         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
42261         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
42262         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
42263         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
42264         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
42265         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
42266         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
42267         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
42268         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
42269         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
42270         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
42271         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
42272         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
42273         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
42274         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
42275         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
42276         for these modules.
42277
42278 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
42279
42280         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
42281         (which shouldn't happen), generate nothing instead of returning 0
42282         immediately, so that nstrftime (NULL, ...) doesn't return 0.
42283
42284 2005-03-16  Bruno Haible  <bruno@clisp.org>
42285
42286         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
42287         HAVE_LONGLONG_64BIT.
42288
42289 2005-03-16  Bruno Haible  <bruno@clisp.org>
42290
42291         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
42292         HAVE_LONGLONG_64BIT.
42293
42294 2005-03-16  Bruno Haible  <bruno@clisp.org>
42295
42296         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
42297         HAVE_LONGLONG_64BIT.
42298
42299 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
42300
42301         * lib/strftime.c (my_strftime): Prepend space to format so that we can
42302         reliably distinguish strftime failure from empty output on POSIX
42303         hosts.
42304
42305 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
42306
42307         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
42308         (iconv_string): Don't guess a size-zero buffer, as that might cause
42309         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
42310         result would be 'too large', where 'too large' is (heuristically)
42311         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
42312         overflow concerns.  This will prevent some unwanted malloc failures
42313         when the inputs are very large.
42314
42315 2005-03-15  Karl Berry  <karl@gnu.org>
42316
42317         * config/srclist.txt (config.rpath): from gettext.
42318         * config/config.rpath: update.
42319
42320 2005-03-15  Bruno Haible  <bruno@clisp.org>
42321
42322         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
42323         to 'negate'.
42324
42325         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
42326         variable.
42327
42328         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
42329         results.
42330
42331 2005-03-14  Simon Josefsson  <jas@extundo.com>
42332
42333         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
42334         <fx@gnu.org>.
42335
42336 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
42337
42338         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
42339         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
42340         intprops.h.
42341         * lib/strtol.c: Likewise.
42342
42343 2005-03-14  Jim Meyering  <jim@meyering.net>
42344
42345         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
42346         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
42347         to be nonzero so that we (and caller) can detect the difference
42348         between a valid zero-length expansion and an error return, even
42349         when the underlying strftime fails before writing anything into
42350         that location.
42351
42352 2005-03-14  Bruno Haible  <bruno@clisp.org>
42353
42354         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
42355         Update from GNU gettext 0.14.3.
42356
42357 2005-03-10  Jim Meyering  <jim@meyering.net>
42358
42359         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
42360
42361 2005-03-10  Jim Meyering  <jim@meyering.net>
42362
42363         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
42364         so that this module works on systems without fchdir.
42365
42366 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
42367
42368         Factor int-properties macros into a single file, except for
42369         glibc-related files.
42370         * lib/intprops.h: New file.
42371         * lib/getloadavg.c: Include it instead of limits.h.
42372         (INT_STRLEN_BOUND): Remove.
42373         * lib/human.c: Include intprops.h.
42374         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
42375         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
42376         302/1000.
42377         * lib/inttostr.h: Include intprops.h instead of limits.h.
42378         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
42379         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
42380         for consistency with intprops.h.
42381         (time_t_is_integer, twos_complement_arithmetic): Use them.
42382         * lib/sig2str.h: Include <signal.h>, intprops.h.
42383         (INT_STRLEN_BOUND): Remove.
42384         * lib/strftime.c (TYPE_SIGNED): Remove.
42385         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
42386         * lib/strtol.c: Adjust comments to match intprops.h.
42387         * lib/userspec.c: Include intprops.h.
42388         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
42389         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
42390         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
42391         instead of rolling our own expressions.
42392         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
42393
42394         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
42395         instead of int.
42396         (my_strftime): Do not mishandle years close to INT_MAX, by doing
42397         the right thing even if adding 1900 would overflow.  Similarly
42398         for tm_mon + 1 and tm_yday + 1.
42399         Make %Y always equivalent to %C%y, and similarly for %G and %g.
42400         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
42401         (DO_SIGNED_NUMBER): New macro.
42402         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
42403
42404 2005-03-07  Bruno Haible  <bruno@clisp.org>
42405
42406         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
42407
42408 2005-03-07  Bruno Haible  <bruno@clisp.org>
42409
42410         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
42411
42412 2005-03-04  Derek R. Price  <derek@ximbiot.com>
42413
42414         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
42415         (func_import): Only replace files via --import when they have actually
42416         changed.
42417
42418 2005-03-03  Derek R. Price  <derek@ximbiot.com>
42419
42420         * m4/mmap-anon.m4: New file.
42421         * m4/pagealign_alloc.m4: New file.
42422
42423 2005-03-03  Derek R. Price  <derek@ximbiot.com>
42424             Bruno Haible  <bruno@clisp.org>
42425
42426         * modules/pagealign_alloc: New file.
42427         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
42428
42429 2005-03-03  Derek R. Price  <derek@ximbiot.com>
42430             Bruno Haible  <bruno@clisp.org>
42431
42432         * lib/pagealign_alloc.h: New file.
42433         * lib/pagealign_alloc.c: New file.
42434
42435 2005-03-03  Bruno Haible  <bruno@clisp.org>
42436
42437         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
42438         Use an all-permissive copyright notice, recommended by RMS.
42439
42440 2005-03-02  Bruno Haible  <bruno@clisp.org>
42441
42442         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
42443         of AIX, the replacement has to be done only after <string.h> is
42444         included, therefore not in config.h. stpncpy.h does the replacement,
42445         and stpncpy.c uses it.
42446
42447 2005-03-02  Bruno Haible  <bruno@clisp.org>
42448
42449         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
42450         stpncpy.c uses it.
42451
42452 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
42453
42454         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
42455         The workaround isn't strictly needed for POSIX conformance, and
42456         it's too much of a pain to configure and maintain.  We'll ask
42457         people to fix their kernels instead.
42458         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
42459         (NANOSLEEP_BUG_WORKAROUND): Remove.
42460         (xnanosleep): Remove the workaround.
42461
42462 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
42463
42464         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
42465         Reported by Derek Price.
42466         (Include): Add "timespec.h".
42467
42468         * modules/xnanosleep (Depends-on): Remove gethrxtime.
42469
42470 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
42471
42472         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
42473         to detect nanosleep bug.
42474
42475 2005-03-01  Bruno Haible  <bruno@clisp.org>
42476
42477         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
42478
42479 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
42480
42481         * modules/gethrxtime: New file.
42482         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
42483         (Depends-on): Add gethrxtime.
42484         (configure.ac): Add gl_XNANOSLEEP.
42485         (Makefile.am): Remove lib_SOURCES line.
42486
42487 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
42488
42489         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
42490         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
42491
42492 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
42493
42494         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
42495         * lib/timespec.h (gettime): Return void, since it always
42496         succeeds now.  All uses changed.
42497         * lib/gettime.c (gettime) Likewise.
42498         [HAVE_NANOTIME]: Prefer nanotime.
42499         Assume gettimeofday succeeds, as POSIX requires.
42500         Assime time () succeeds, since other code already does.
42501         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
42502         (timespec_subtract): Remove.
42503         (NANOSLEEP_BUG_WORKAROUND): New constant.
42504         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
42505         things considerably.  Use it only on GNU/Linux hosts, since the
42506         workaround shouldn't be needed elsewhere.
42507
42508 2005-02-24  Bruno Haible  <bruno@clisp.org>
42509
42510         * modules/gettext (Files): Add m4/glibc2.m4.
42511
42512 2005-02-24  Bruno Haible  <bruno@clisp.org>
42513
42514         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
42515         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
42516         * m4/progtest.m4:
42517         Update from GNU gettext 0.14.2.
42518         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
42519
42520 2005-02-24  Bruno Haible  <bruno@clisp.org>
42521
42522         * lib/localcharset.c: Update from GNU gettext 0.14.2.
42523         * lib/config.charset: Update from GNU gettext 0.14.2.
42524
42525 2005-02-24  Bruno Haible  <bruno@clisp.org>
42526
42527         * lib/gettext.h: Update from GNU gettext 0.14.2.
42528
42529 2005-02-23  Simon Josefsson  <jas@extundo.com>
42530
42531         * m4/iconvme.m4: New file.
42532
42533 2005-02-23  Jim Meyering  <jim@meyering.net>
42534
42535         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
42536         change.
42537         Thanks to Bruno Haible for catching it.
42538
42539 2005-02-22  Simon Josefsson  <jas@extundo.com>
42540
42541         * modules/iconvme: New file.
42542
42543         * MODULES.html.sh: Add iconvme.
42544
42545 2005-02-22  Simon Josefsson  <jas@extundo.com>
42546
42547         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
42548
42549 2005-02-22  Simon Josefsson  <jas@extundo.com>
42550
42551         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
42552
42553 2005-02-22  Jim Meyering  <jim@meyering.net>
42554
42555         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
42556         s/ifndef/ifdef/.
42557
42558 2005-02-20  Neil Conway  <neilc@samurai.com>
42559
42560         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
42561         returned by OSX/Darwin if the specified buffer is not large
42562         enough for the hostname.
42563
42564 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42565
42566         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
42567         pass it to _help, otherwise the latter coredumps trying to
42568         dereference state.root_argp.
42569
42570 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
42571
42572         * modules/chdir-long (Depends-on): Add memrchr.
42573         * modules/memrchr (Files): Add lib/memrchr.h.
42574         (Include): "memrchr.h".
42575
42576 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
42577
42578         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
42579
42580 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
42581
42582         * lib/memrchr.h: New file.
42583         * lib/chdir-long.c: Include it.
42584         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
42585         Don't bother including stddef.h.
42586
42587 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
42588
42589         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
42590         inclusion.
42591         Include <sys/types.h>, for dev_t.
42592         (ME_DUMMY, ME_REMOTE): Move from here....
42593         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
42594         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
42595         Dmitry V. Levin.
42596         Include mountlist.h first, to test the interface.
42597
42598 2005-01-29  Bruno Haible  <bruno@clisp.org>
42599
42600         * lib/progname.c (program_name): Initialize.
42601         Needed when linking statically on MacOS X.
42602
42603 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
42604
42605         Sync from coreutils.
42606         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
42607         (Depends-on): Add c-strtod.
42608         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
42609
42610 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
42611
42612         Sync from coreutils.
42613         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
42614
42615         Remove files that are specific to coreutils.
42616         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
42617
42618 2005-01-28  Bruno Haible  <bruno@clisp.org>
42619
42620         * modules/javacomp: New file.
42621         * MODULES.html.sh (Java): Add javacomp.
42622
42623 2005-01-28  Bruno Haible  <bruno@clisp.org>
42624
42625         * m4/javacomp.m4: New file, from GNU gettext.
42626
42627 2005-01-28  Bruno Haible  <bruno@clisp.org>
42628
42629         * lib/javacomp.sh.in: New file, from GNU gettext.
42630         * lib/javacomp.h: New file, from GNU gettext.
42631         * lib/javacomp.c: New file, from GNU gettext.
42632
42633 2005-01-26  Simon Josefsson  <jas@extundo.com>
42634
42635         * lib/gai_strerror.c: Use GPL in header.
42636
42637 2005-01-26  Bruno Haible  <bruno@clisp.org>
42638
42639         * modules/javaexec: New file.
42640         * MODULES.html.sh (Java): Add javaexec.
42641
42642 2005-01-26  Bruno Haible  <bruno@clisp.org>
42643
42644         * m4/javaexec.m4: New file, from GNU gettext.
42645
42646 2005-01-26  Bruno Haible  <bruno@clisp.org>
42647
42648         * lib/javaexec.sh.in: New file, from GNU gettext.
42649         * lib/javaexec.h: New file, from GNU gettext.
42650         * lib/javaexec.c: New file, from GNU gettext.
42651
42652 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42653
42654         * modules/lchown (Depends-on): Remove lchown.h
42655
42656 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42657
42658         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
42659         must be defined if the header file was not found, in order
42660         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
42661
42662 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42663
42664         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
42665         initializers for struct pentry_state.
42666         (__argp_error): Check return value of __asprintf
42667         (__argp_failure): Translate error message
42668
42669         * lib/argp-parse.c: Removed braces around the expansion of N_()
42670
42671 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
42672
42673         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
42674         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
42675         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
42676         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
42677         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
42678         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
42679         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
42680         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
42681         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
42682         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
42683         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
42684         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
42685         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
42686         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
42687         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
42688         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
42689         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
42690         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
42691         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
42692         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
42693         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
42694         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
42695         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
42696         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
42697         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
42698         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
42699         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
42700         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
42701         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
42702         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
42703         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
42704         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
42705         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
42706         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
42707         xstrtol.m4, xstrtoumax.m4, yesno.m4:
42708         Use an all-permissive copyright notice, recommended by RMS.
42709
42710 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
42711
42712         * modules/chdir-long (Depends-on): Remove mempcpy.
42713
42714 2005-01-21  Jim Meyering  <jim@meyering.net>
42715
42716         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
42717         same value as for Solaris 9.
42718
42719         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
42720         component length.  This included changing the parameter to be
42721         of type `char *' rather than `char const *'.
42722         * lib/chdir-long.h (chdir_long): Update prototype.
42723
42724         * lib/openat.c (fdopendir, fstatat): New functions.
42725         * lib/openat.h: Include headers required for use of DIR and struct
42726         stat.
42727         [AT_SYMLINK_NOFOLLOW]: Define.
42728         (fdopendir, fstatat): Add prototypes.
42729
42730 2005-01-21  Bruno Haible  <bruno@clisp.org>
42731
42732         * modules/classpath: New file.
42733         * MODULES.html.sh (Java): Add classpath.
42734
42735 2005-01-21  Bruno Haible  <bruno@clisp.org>
42736
42737         * lib/classpath.h: New file, from GNU gettext.
42738         * lib/classpath.c: New file, from GNU gettext.
42739
42740 2005-01-20  Simon Josefsson  <jas@extundo.com>
42741
42742         * modules/version-etc-fsf: New file.
42743
42744 2005-01-20  Simon Josefsson  <jas@extundo.com>
42745
42746         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
42747         * lib/version-etc.c: Remove version_etc_copyright.
42748         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
42749         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
42750
42751 2005-01-20  Simon Josefsson  <jas@extundo.com>
42752
42753         * lib/base64.h (isbase64): Add.
42754
42755         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
42756         using a unsigned prototype, don't inline.
42757         (base64_decode): Use it.
42758
42759 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
42760
42761         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
42762         it.
42763
42764 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
42765
42766         * lib/save-cwd.c (save_cwd): Remove code to support the case
42767         where fchdir is missing or flaky.
42768
42769 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
42770
42771         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
42772
42773 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
42774
42775         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
42776         AC_LIBSOURCES now does this.
42777         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
42778         with new ullong_max module.
42779
42780 2005-01-19  Bruno Haible  <bruno@clisp.org>
42781
42782         * modules/sh-quote: New file.
42783         * MODULES.html.sh (Executing programs): Add sh-quote.
42784
42785 2005-01-19  Bruno Haible  <bruno@clisp.org>
42786
42787         * lib/sh-quote.h: New file, from GNU gettext.
42788         * lib/sh-quote.c: New file, from GNU gettext.
42789
42790 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
42791
42792         Merge from coreutils.
42793         * m4/ullong_max.m4: New file.
42794         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
42795         (gl_MACROS): Assume localeconv exists.
42796
42797 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
42798
42799         Merge changes from coreutils, as described below in several
42800         changelogs dated today.
42801
42802         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
42803         (O_DIRECTORY): Remove; not needed here, since "." must be
42804         a directory.  All uses removed.
42805         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
42806         universal on Suns, and we also need to test for IRIX.
42807         Revamp code to use 'if' rather than '#if'.
42808         Avoid unnecessary comparison of cwd->desc to 0.
42809
42810         * lib/utimens.c (futimens): Robustify the previous patch, by checking
42811         for known valid error numbers rather than observed invalid ones.
42812
42813 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
42814
42815         * modules/ullong_max: New file.
42816
42817         * modules/chdir-long, modules/openat: New files.
42818         * modules/save-cwd (Depends-on): Depend on chdir-long.
42819         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
42820
42821 2005-01-18  Jim Meyering  <jim@meyering.net>
42822
42823         Merge from coreutils.
42824         * m4/chdir-long.m4, m4/openat.m4: New files.
42825         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
42826         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
42827         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
42828         is sane and DOES follow symlinks.  Besides, testing 20 different
42829         systems found no broken chown implementations.
42830         Prompted by a change in rsync's copy of this macro.
42831         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
42832
42833         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
42834
42835         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
42836         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
42837         NULL-means-set-to-current-time semantics.
42838         Remove temporary file immediately, rather than waiting
42839         for configure's at-exit trap code to do it.
42840
42841 2005-01-18  Jim Meyering  <jim@meyering.net>
42842
42843         * lib/version-etc.c (version_etc_copyright): Update copyright date.
42844
42845         * lib/utimens.c (futimens): Account for the fact that futimes
42846         can also fail with errno == ENOSYS or errno == ENOENT.
42847         Patch from Dmitry V. Levin.
42848
42849         Change the name of the robust chdir function from chdir to chdir_long.
42850         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
42851         (restore_cwd): Use chdir_long, not chdir.
42852         * lib/chdir-long.c: Renamed from chdir.c.
42853         * lib/chdir-long.h: Renamed from chdir.h.
42854         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
42855         Hurd.
42856
42857 2005-01-18  Bruno Haible  <bruno@clisp.org>
42858
42859         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
42860         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
42861         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
42862         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
42863         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
42864         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
42865         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
42866         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
42867         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
42868         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
42869         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
42870         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
42871         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
42872         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
42873         Use an all-permissive copyright notice, recommended by RMS.
42874
42875 2005-01-18  Bob Proulx  <bob@proulx.com>
42876
42877         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
42878         simplify offsetof() macro construct to avoid compile failure with
42879         native HP-UX 11.0 ANSI C compiler.
42880
42881 2005-01-17  Bruno Haible  <bruno@clisp.org>
42882
42883         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
42884         redundant because stpncpy.m4 takes care of it.
42885
42886 2005-01-17  Bruno Haible  <bruno@clisp.org>
42887
42888         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
42889
42890 2005-01-17  Bruno Haible  <bruno@clisp.org>
42891
42892         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
42893         used.
42894
42895 2005-01-17  Bruno Haible  <bruno@clisp.org>
42896
42897         * lib/fwriteerror.h (fwriteerror): Change specification to include
42898         fclose.
42899         * lib/fwriteerror.c: Include <stdbool.h>.
42900         (fwriteerror): At the end, close the file stream. Record whether
42901         stdout was already closed.
42902
42903 2005-01-17  Bruno Haible  <bruno@clisp.org>
42904
42905         * lib/execute.c (environ): Declare if needed.
42906         * lib/pipe.c (environ): Likewise.
42907         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
42908
42909 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42910
42911         * modules/argp: Depend on vsnprintf
42912
42913 2005-01-10  Jim Meyering  <jim@meyering.net>
42914
42915         * modules/closeout (Depends-on): Add atexit.
42916
42917 2005-01-06  Bruno Haible  <bruno@clisp.org>
42918
42919         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
42920
42921 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
42922
42923         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
42924         definitions to be after all include files, to avoid collisions.
42925         Problem reported by Bob Proulx.
42926
42927 2005-01-04  Jim Meyering  <jim@meyering.net>
42928
42929         Changes imported from coreutils.
42930         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
42931         as the mkstemp template, use a temporary directory and an
42932         8.3-friendly template to avoid trouble on systems like DJGPP.
42933         Reported by Juan M. Guerrero via Stepan Kasal.
42934         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
42935         close. Remove the temporary directory right away, rather than waiting
42936         for configure's at-exit trap code to do it.
42937         Suggestion from Stepan Kasal.
42938
42939 2005-01-01  Simon Josefsson  <jas@extundo.com>
42940
42941         * gnulib-tool: Print #include directives when --import'ing.
42942
42943 2004-12-28  Simon Josefsson  <jas@extundo.com>
42944
42945         * tests/test-base64.c: Include required header files.  Remove
42946         unused variables.
42947
42948 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
42949
42950         * modules/error (Depends-on): Remove gettext.
42951
42952 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
42953
42954         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
42955         not needed.  This removes a dependency on the gettext module.
42956         [defined _LIBC]: Do not include <libintl.h>; not needed.
42957
42958 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
42959
42960         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
42961         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
42962
42963 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
42964
42965         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
42966         HAVE_DECL_STRTOLD.
42967
42968 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
42969
42970         * modules/getdate (Depends-on): Remove alloca-opt.
42971
42972 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
42973
42974         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
42975
42976 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
42977
42978         * lib/argp-parse.c: Include <stddef.h>.
42979         (alignof, alignto): New macros.
42980         (parser_init): Don't assume that void * is aligned sufficiently
42981         for struct option.
42982
42983         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
42984         need to extend the stack.
42985         (YYINITDEPTH): New macro, so that the initial stack isn't overly
42986         large.
42987
42988 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42989
42990         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
42991
42992 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
42993
42994         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
42995         (2004-10-24) change.  Apparently this was a false alarm.
42996
42997         * modules/getdate: Depend on alloca-opt, not alloca.
42998
42999 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
43000
43001         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
43002         Remove now-obsolete comment about AIX.
43003         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
43004         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
43005         (YYMAXDEPTH): New macro.
43006
43007 2004-12-18  Simon Josefsson  <jas@extundo.com>
43008
43009         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
43010
43011 2004-12-18  Bruno Haible  <bruno@clisp.org>
43012
43013         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
43014
43015 2004-12-18  Bruno Haible  <bruno@clisp.org>
43016
43017         * lib/fatal-signal.c (fatal_signals): Make non-const.
43018         (init_fatal_signals): New function.
43019         (uninstall_handlers, install_handlers): Ignore signals that were set to
43020         SIG_IGN.
43021         (at_fatal_signal): Call init_fatal_signals.
43022         (init_fatal_signal_set): Likewise. Ignore signals that were set to
43023         SIG_IGN.
43024         Reported by Paul Eggert.
43025
43026 2004-12-18  Bruno Haible  <bruno@clisp.org>
43027
43028         * doc/alloca.texi: New file.
43029         * doc/alloca-opt.texi: New file.
43030
43031 2004-12-17  Jim Meyering  <jim@meyering.net>
43032
43033         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
43034         Otherwise, install-sh could exit with improper exit status when
43035         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
43036
43037 2004-12-16  Simon Josefsson  <jas@extundo.com>
43038
43039         * tests/test-base64.c: Add license.
43040
43041 2004-12-15  Stepan Kasal  <address@hidden>
43042
43043         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
43044
43045 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
43046
43047         * modules/getcwd (Files): Add m4/d-ino.m4.
43048         Suggested by Mark D. Baushke.
43049
43050 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
43051
43052         * lib/getdate.y (textint): New member "negative".
43053         (time_zone_hhmm): New function.
43054         Expect 14 shift-reduce conflicts, not 13.
43055         (o_colon_minutes): New rule.
43056         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
43057         (yylex): Set the "negative" member of signed numbers.
43058
43059 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
43060
43061         * doc/getdate.texi (Time of day items, Time zone items):
43062         Describe new formats +00:00, UTC+00:00.
43063
43064 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
43065
43066         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
43067         spurious "-l"s.  Problem reported by Stepan Kasal.
43068
43069 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
43070
43071         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
43072         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
43073
43074 2004-12-04  Simon Josefsson  <jas@extundo.com>
43075
43076         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
43077         Vandoorselaere <yoann@prelude-ids.org>.
43078
43079 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
43080
43081         Changes imported from coreutils.
43082         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
43083         exist.
43084         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
43085
43086 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
43087
43088         Changes imported from coreutils.
43089         * lib/hard-locale.c: Assume <locale.h> exists.
43090         Include "strdup.h".
43091         (GLIBC_VERSION): New macro.
43092         (hard_locale): Assume setlocale exists.
43093         Rewrite to avoid #ifdef.
43094         Use strdup rather than malloc + strcpy.
43095         * lib/human.c: Assume <locale.h> exists.
43096         (human_readable): Assume localeconv exists.
43097
43098 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
43099
43100         * modules/hard-locale (Depends-on): Add strdup.
43101
43102 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
43103
43104         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
43105         convert T2, not T.  (Imported from libc.)
43106
43107 2004-11-30  Simon Josefsson  <jas@extundo.com>
43108
43109         * modules/restrict (License): Change to LGPL.
43110
43111 2004-11-30  Simon Josefsson  <jas@extundo.com>
43112
43113         * m4/restrict.m4: Add copyright and copying conditions.
43114
43115 2004-11-30  Simon Josefsson  <jas@extundo.com>
43116
43117         * m4/base64.m4: New file.
43118
43119 2004-11-30  Simon Josefsson  <jas@extundo.com>
43120
43121         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
43122         base64.
43123
43124         * tests/test-base64.c: New file.
43125
43126         * modules/base64: New file.
43127
43128 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
43129
43130         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
43131         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
43132
43133         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
43134
43135 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
43136
43137         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
43138         (__getcwd.c): Don't restore errno; glibc doesn't.
43139         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
43140         first, falling back to our code only if its results look suspicious.
43141         Ensure that the resulting buffer is only as large as necessary.
43142
43143         * lib/readutmp.c: Include readutmp.h first.
43144         Include <errno.h>, since readutmp.h no longer does that.
43145         * lib/readutmp.h: Don't include <errno.h>,
43146         <sys/param.h>, <time.h>; not needed to establish interface.
43147         (errno): Remove decl.
43148         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
43149         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
43150         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
43151
43152 2004-11-28  Simon Josefsson  <jas@extundo.com>
43153
43154         * lib/base64.h, base64.c: New file.
43155
43156 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
43157
43158         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
43159
43160 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
43161
43162         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
43163         (Depends-on): Remove pathmax, same.  Add mempcpy.
43164         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
43165         (Makefile.am): Append getcwd.h to lib_SOURCES.
43166         (Include): Add getcwd.h.
43167         (Maintainer): Change from Jim Meyering to "all, glibc",
43168         since getdate now uses intended-for-glibc code.
43169         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
43170         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
43171
43172 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
43173
43174         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
43175         HP's ANSI C compiler.
43176         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
43177         Declaring int functions causes warnings on some modern systems and
43178         shouldn't be needed to compile on ancient ones.
43179         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
43180         defined.
43181
43182         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
43183         with the following changes.
43184         (__set_errno): Parenthesize properly.
43185         Include <stdbool.h>.
43186         (MIN, MAX, MATCHING_INO): New macros.
43187         (__getcwd): Define with prototype, not K&R form.
43188         Use heuristics to allocate default buffer on stack if possible.
43189         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
43190         behavior, and to avoid the PATH_MAX limit when computing
43191         ../../../../...
43192         Use MATCHING_INO to compare inode number to file.
43193         Check for arithmetic overflow in size calculations.
43194         Fix bug in reallocation of dot array that caused getcwd to fail
43195         on directories nested deeper than 75.
43196         Be more careful about saving errno on error.
43197         Do not use realloc; use only free+malloc, as this is a bit
43198         more flexible and avoids a needless copy operation.
43199         Do not inspect st_dev and st_ino for symbolic links; POSIX
43200         doesn't specify the latter.
43201         Check for closedir errors.
43202         Avoid needless casts.
43203         Use "#ifdef weak_alias" around weak_alias, to be like other
43204         glibc code.
43205         The following changes to getcwd.c have effect only when used in
43206         gnulib; they have no effect inside glibc proper.
43207         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
43208         as alloca isn't used.
43209         (alloca, __alloca): Likewise.
43210         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
43211         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
43212         unconditionally, as gnulib assumes C89 or better.
43213         Do not include <sys/param.h>.
43214         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
43215         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
43216         better.
43217         (NULL) [!defined NULL]: Remove; we assume C89 or better.
43218         Include <dirent.h> in a way that is compatible with modern Autoconf.
43219         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
43220         New macros, if not already defined.
43221         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
43222         Use "_LIBC", not "defined _LIBC", for consistency.
43223         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
43224         a mempcpy module.
43225         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
43226         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
43227         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
43228         credit only to Jim Meyering and adjust the copyright dates.
43229         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
43230         <stdlib.h>, <unistd.h>, "pathmax.h".
43231         Instead, include "xgetcwd.h" (first) and "getcwd.h".
43232         (INITIAL_BUFFER_SIZE): Remove.
43233         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
43234
43235 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
43236
43237         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
43238         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
43239         Use the _ONCE methods, for efficiency.
43240         Check for fcntl.h.  In test program, include <errno.h>
43241         and <fcntl.h> if available.  Remove old K&R cruft from
43242         test program.  Check for common errors in GNU/Linux,
43243         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
43244         don't do AC_LIBOBJ, as that's getcwd.m4's job.
43245         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
43246         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
43247         name accordingly.
43248         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
43249         accommodate new getcwd.c.
43250         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
43251         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
43252         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
43253         that's all we need now.
43254
43255 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
43256
43257         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
43258         argp-parse.c depends on getopt internals, that means we should
43259         always use our getopt, to be on the safe side.
43260         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
43261         order not to spoil the result of an eventual previous invocation
43262         of gl_GETOPT_SUBSTITUTE.
43263
43264 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
43265
43266         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
43267         redefinition warnings. To avoid them, include the defines
43268         in `#if !defined __need_getopt ... #endif'. The only place
43269         where __getopt_argv_const is used is in definitions
43270         of getopt_long and getopt_long_only below, which are as well
43271         protected by `#ifndef __need_getopt'.
43272         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
43273         __need_getopt after including <stdio.h> and <unistd.h> These
43274         headers might have defined it.
43275
43276 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
43277
43278         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
43279
43280 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
43281
43282         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
43283         (futimens): New function, which uses futimes if available.
43284         (futimens, utimens): Support timespec==NULL, with same semantics
43285         as utime and utimens.
43286         * lib/utimens.h (futimens): New decl.
43287
43288 2004-11-23  Jim Meyering  <jim@meyering.net>
43289
43290         * lib/getopt_.h: Remove trailing blanks.
43291
43292 2004-11-23  Jim Meyering  <jim@meyering.net>
43293
43294         * lib/__fpending.c: Add comment.
43295
43296 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
43297
43298         * modules/canonicalize (Depends-on): Add xreadlink.
43299         Problem reported by James Youngman.
43300
43301 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
43302
43303         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
43304         New macros.
43305         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
43306         optopt): Use them instead of invoking ## directly; otherwise, the
43307         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
43308
43309 2004-11-19  Bruno Haible  <bruno@clisp.org>
43310
43311         * lib/strtok_r.c: Move comments from here...
43312         * lib/strtok_r.h: ... to here.
43313
43314 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
43315
43316         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
43317         implementations that mishandle size_t overflow.
43318
43319 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
43320
43321         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
43322         might fail.  Problem reported by Yoann Vandoorselaere.
43323         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
43324         implementations that mishandle size_t overflow.
43325
43326 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
43327
43328         * modules/canon-host (Depends-on): Add strdup.
43329
43330 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
43331
43332         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
43333
43334 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
43335
43336         * lib/canon-host.c: Include "strdup.h".
43337         (canon_host): Use getaddrinfo if available, so that IPv6 works.
43338         Use strdup instead of malloc/strcpy to duplicate strings.
43339
43340         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
43341         (human_space_before_unit): New constant.
43342         * lib/human.c (human_readable): Support it.
43343
43344         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
43345         (xgetcwd): Set errno correctly when failing.
43346         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
43347         the failure is actually due to a PATH_MAX problem.
43348
43349         Further getopt changes to make it more likely that glibc will
43350         buy the changes back.
43351         * lib/getopt.c (POSIXLY_CORRECT): New constant.
43352         (getopt): Use it, so to preserve glibc semantic
43353         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
43354         when compiling for libc.
43355         * lib/getopt_.h (__getopt_argv_const): Bring it back.
43356         (getopt_long, getopt_long_only): Use it.
43357
43358         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
43359         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
43360         (getopt): Argv is now char * const *, as per standard.
43361         (_getopt_internal_r, _getopt_internal): Argv is now char **,
43362         not char *__getopt_argv_const *.
43363         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
43364         _getopt_long_only_r): Likewise.
43365         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
43366         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
43367         _getopt_long_r, _getopt_long_only_r): Likewise.
43368         * lib/getopt_.h (__getopt_argv_const): Remove.
43369         (getopt): Argv is now char * const *, as per standard.
43370
43371         * lib/getdate.y (tORDINAL): New token.
43372         (day, relunit): Allow it for relative times.
43373         (relative_time_table): Use tORDINAL for ordinals.
43374
43375 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
43376
43377         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
43378         Document that "second" isn't allowed as an ordinal number.
43379
43380 2004-11-16  Jim Meyering  <jim@meyering.net>
43381
43382         * modules/closeout (Depends-on): Add fpending.
43383
43384 2004-11-15  Jim Meyering  <jim@meyering.net>
43385
43386         * lib/closeout.c: Include "__fpending.h" once again.
43387         Include <stdbool.h>.
43388         (close_stdout): Don't fail just because stdout was closed initially,
43389         since some programs don't write to stdout in the normal course of
43390         operation (other than --version and --help), and we don't want this
43391         function to make e.g. `touch file >&-' fail.
43392         But do fail if it was closed and someone has tried to write to it.
43393         E.g., `printf foo >&-' must fail.
43394
43395 2004-11-13  Jim Meyering  <jim@meyering.net>
43396
43397         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
43398
43399 2004-11-12  Simon Josefsson  <jas@extundo.com>
43400
43401         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
43402         small doc fix is still pending.
43403
43404 2004-11-11  Simon Josefsson  <jas@extundo.com>
43405
43406         * modules/strtok_r: New file.
43407
43408         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
43409         strtok_r.
43410
43411 2004-11-11  Simon Josefsson  <jas@extundo.com>
43412
43413         * m4/strtok_r.m4: New file.
43414
43415         * m4/getopt.m4: Replace opterr.
43416
43417 2004-11-11  Simon Josefsson  <jas@extundo.com>
43418
43419         * lib/strtok_r.h, strtok_r.c: New file.
43420
43421 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
43422
43423         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
43424         of replacing opterr, getopt, etc.  This should handle the
43425         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
43426
43427 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
43428
43429         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
43430         we can stop lying to compilers about the constness of argv when we
43431         are compiled outside glibc.
43432         (getopt, getopt_long, getopt_long_only): Use it.
43433         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
43434         _getopt_internal, getopt): Likewise.
43435         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
43436         _getopt_long_only_r): Likewise.
43437         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
43438         _getopt_long_r, _getopt_long_only_r): Likewise.
43439
43440         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
43441         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
43442         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
43443         the other external symbols.
43444         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
43445         declaration, since the above renaming now works around collisions.
43446
43447 2004-11-11  Jim Meyering  <jim@meyering.net>
43448
43449         * lib/linebreak.c: Remove trailing blanks.
43450         * lib/alloca_.h: Likewise.
43451         * lib/acosl.c: Likewise.
43452         * lib/euidaccess.c: Likewise.
43453         * lib/allocsa.h: Likewise.
43454
43455 2004-11-10  Simon Josefsson  <jas@extundo.com>
43456
43457         * m4/getaddrinfo.m4: New file.
43458
43459 2004-11-10  Simon Josefsson  <jas@extundo.com>
43460
43461         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
43462
43463 2004-11-10  Simon Josefsson  <jas@extundo.com>
43464
43465         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
43466         getaddrinfo.
43467
43468         * modules/getaddrinfo: New file.
43469
43470 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
43471
43472         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
43473
43474 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
43475
43476         * lib/mktime.c (SHR): New macro, which is a portable
43477         substitute for >> that should work even on Crays.
43478         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
43479         Problem reported by Mark D. Baushke in
43480         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
43481         * lib/getdate.y (SHR): Likewise.
43482         (tm_diff): Use it.
43483         * lib/strftime.c (SHR): Likewise.
43484         (tm_diff): Use it.
43485         * lib/quotearg.c (struct quoting_options): Use unsigned int for
43486         quote_these_too, so that right shifts are well defined.  All uses
43487         changed.
43488
43489 2004-11-10  Jim Meyering  <jim@meyering.net>
43490
43491         Ensure that no close failure goes unreported.
43492         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
43493         return early when it seems there's nothing to flush.
43494         Don't include __fpending.h.
43495
43496 2004-11-10  Jim Meyering  <jim@meyering.net>
43497
43498         * modules/closeout (Depends-on): Remove fpending.
43499
43500 2004-11-10  Jim Meyering  <jim@meyering.net>
43501
43502         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
43503
43504 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
43505
43506         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
43507         gl_FUNC_STRFTIME.
43508         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
43509         and AC_REQUIRE when possible, to avoid duplicate checks.
43510         Check for <wchar.h>.
43511
43512 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
43513
43514         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
43515
43516 2004-11-09  Bruno Haible  <bruno@clisp.org>
43517
43518         * m4/sockpfaf.m4: New file.
43519
43520 2004-11-05  Bruno Haible  <bruno@clisp.org>
43521
43522         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
43523         Reported by Mark D. Baushke <mdb@cvshome.org>.
43524
43525 2004-11-04  Bruno Haible  <bruno@clisp.org>
43526
43527         2004-09-11  Bruno Haible  <bruno@clisp.org>
43528                 * allocsa.valgrind: New file.
43529         2004-02-06  Bruno Haible  <bruno@clisp.org>
43530                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
43531                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
43532                 Reported by Christopher Seip <chris.seip@hp.com>.
43533
43534 2004-11-04  Bruno Haible  <bruno@clisp.org>
43535
43536         * modules/allocsa (Files): Add lib/allocsa.valgrind.
43537         (Makefile.am): Distribute it.
43538
43539 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
43540
43541         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
43542         with errno == ERANGE if the buffer is too small.
43543         Problem reported by Mark D. Baushke.
43544
43545 2004-11-03  Albert Chin  <china@thewrittenword.com>
43546             Paul Eggert  <eggert@cs.ucla.edu>
43547
43548         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
43549         equivalent, substitute $ac_type for equivalent type rather than
43550         blindly using uint32_t *always* which won't work if uint32_t is not
43551         available.  Define _UINT32_T to work around typedef of uint32_t if
43552         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
43553         2.5.1.
43554
43555 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
43556
43557         * m4/jm-macros.m4: Sync from coreutils.
43558         (gl_MACROS): Check for mbrlen, for pathchk.
43559         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
43560
43561 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
43562
43563         * lib/xreadlink.c (MAXSIZE): New macro.
43564         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
43565         size does not exceed MAXSIZE.  Avoid cast.
43566         As suggested by Mark D. Baushke in
43567         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
43568         if readlink fails with buffer size just under MAXSIZE, try again
43569         with MAXSIZE.
43570
43571 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
43572
43573         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
43574
43575 2004-11-02  Derek R. Price  <derek@ximbiot.com>
43576         and  Paul Eggert  <eggert@cs.ucla.edu>
43577
43578         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
43579         (get_date): Overparenthesize to avoid GCC warning.
43580
43581 2004-11-02  Bruno Haible  <bruno@clisp.org>
43582
43583         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
43584         returns void.
43585
43586 2004-11-02  Bruno Haible  <bruno@clisp.org>
43587
43588         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
43589         function returns void.
43590
43591 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
43592
43593         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
43594         fflush_unlocked, flockfile, funlockfile, funlockfile,
43595         fputs_unlocked, putc_unlocked.
43596
43597 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
43598
43599         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
43600         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
43601         already declared.
43602
43603 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
43604
43605         * modules/getdate (Files): Add doc/getdate.texi.
43606         (Depends-on): Add setenv, xalloc.
43607
43608 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
43609
43610         * lib/getdate.y: Add support for TZ="foo" within a date string.
43611         Fix some bugs near time_t boundaries.  Reject dates with
43612         out-of-range components, e.g., "Sept 31".
43613         Include <stdlib.h>, "setenv.h", "xalloc.h".
43614         (ISDIGIT_LOCALE): Remove; unused.
43615         Note that the TZ and time functions used here are not reentrant.
43616         (mktime_ok, get_tz): New functions.
43617         (TZBUFSIZE): New constant.
43618         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
43619         This requires that we sometimes generate our own TZ="XXX..." setting.
43620
43621 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
43622
43623         * doc/getdate.texi: New file, from coreutils with modifications for
43624         the new TZ parsing.
43625
43626 2004-10-27  Derek R. Price  <derek@ximbiot.com>
43627
43628         * lib/mktime.c (not_equal_tm): Remove redundant check.
43629
43630 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
43631
43632         * modules/regex (lib_SOURCES): Add regex.c.
43633         Reported by James Youngman in
43634         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
43635
43636 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
43637
43638         * lib/getdate.y: Use Bison 1.875 features, and some minor
43639         code cleanups.  This change does not affect semantics.
43640         Don't include <stdlib.h>; no longer needed.
43641         Don't include unlocked-io.h; only the "#if TEST" code uses
43642         stdio, and performance isn't crucial there.
43643         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
43644         Bison 1.875 features as described below.
43645         All uses of "PC." replaced by "pc->".
43646         (YYSTYPE): Add a forward declaration.
43647         (yylex, yyerror): Use full prototypes in forward decls.
43648         Use "%pure-parser" rather than obsolescent "%pure_parser".
43649         Use %parse-param and %lex-param instead of obsolescent
43650         YYPARSE_PARAM and YYLEX_PARAM.
43651         (meridian_table, month_and_day_table, time_units_table,
43652         relative_time_table, time_zone_table, military_table,
43653         lookup_zone, lookup_word, get_date):
43654         Use NULL instead of 0 where appropriate.
43655         (to_hour): Avoid abort (), to avoid a dependency on
43656         stdlib.h.
43657         (yyerror, yylex): Now accepts parser_control * arg.
43658         (main) [TEST]: Use '\0' rather than 0 for char.
43659
43660 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
43661
43662         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
43663
43664 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
43665
43666         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
43667         It's now the caller's responsibility to handle the case where
43668         !HAVE_GETPAGESIZE && !defined getpagesize.
43669
43670         * lib/mktime.c (leapyear): Arg is long int, not int.
43671
43672 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
43673
43674         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
43675
43676 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
43677
43678         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
43679         missing.  Problem reported by James Youngman.
43680
43681 2004-10-16  Simon Josefsson  <jas@extundo.com>
43682
43683         * gnulib-tool: Fix comments.  Fix parse problem.
43684         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
43685
43686 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
43687
43688         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
43689         implementation of getopt_long.  Problem reported by Alexander Taler in:
43690         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
43691
43692 2004-10-15  Bruno Haible  <bruno@clisp.org>
43693
43694         * gnulib-tool: Untabify. Initialize supplied_libname.
43695         (func_usage): More homogenous output.
43696         (func_modules_transitive_closure, func_modules_to_filelist,
43697         func_emit_lib_Makefile_am): New functions.
43698         (func_import): New function, extracted from big case statement. Use
43699         func_get_license, func_modules_transitive_closure,
43700         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
43701         opt_lgpl. Don't use test -a, as it's not portable.
43702         (func_create_testdir): Use func_modules_transitive_closure,
43703         func_modules_to_filelist, func_emit_lib_Makefile_am.
43704
43705 2004-10-15  Bruno Haible  <bruno@clisp.org>
43706
43707         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
43708
43709 2004-10-15  Bruno Haible  <bruno@clisp.org>
43710
43711         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
43712         the portions belonging to each module.
43713         Suggested by Derek Robert Price <derek@ximbiot.com>.
43714
43715 2004-10-12  Simon Josefsson  <jas@extundo.com>
43716
43717         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
43718         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
43719         to real functions.
43720
43721 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43722
43723         * modules/vsnprintf: New file.
43724
43725 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43726
43727         * m4/vsnprintf.m4: New file.
43728
43729 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43730
43731         * lib/vsnprintf.h: New file.
43732         * lib/vsnprintf.c: New file.
43733
43734 2004-10-11  Bruno Haible  <bruno@clisp.org>
43735
43736         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
43737         vsnprintf.
43738
43739 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
43740
43741         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
43742
43743 2004-10-07  Bruno Haible  <bruno@clisp.org>
43744
43745         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
43746         fits into the provided buffer.
43747
43748 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
43749
43750         * lib/diacrit.c, diacrit.h: Add GPL notice.
43751
43752         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
43753         notice.
43754         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
43755         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
43756         This avoids a potential constant-folding bug.
43757
43758 2004-10-05  Bruno Haible  <bruno@clisp.org>
43759
43760         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
43761         for the declaration of strsep.
43762
43763 2004-10-05  Bruno Haible  <bruno@clisp.org>
43764
43765         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
43766
43767 2004-10-04  Simon Josefsson  <jas@extundo.com>
43768
43769         * modules/memmem: New file.
43770         * tests/test-memmem.c: New file.
43771         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
43772
43773 2004-10-04  Simon Josefsson  <jas@extundo.com>
43774
43775         * m4/memmem.m4: New file.
43776
43777 2004-10-04  Simon Josefsson  <jas@extundo.com>
43778
43779         * lib/memmem.h: New file.
43780         * lib/memmem.c: New file, taken from glibc.
43781
43782 2004-10-04  Simon Josefsson  <jas@extundo.com>
43783
43784         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
43785         '#ifdef USE_UNLOCKED_IO'.
43786
43787 2004-10-04  Simon Josefsson  <jas@extundo.com>
43788
43789         * config/srclist.txt: Add memmem from glibc.
43790
43791 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43792
43793         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
43794
43795         * modules/argmatch, modules/argp, modules/closeout, modules/error,
43796         modules/exclude, modules/getdate, modules/getline,
43797         modules/getndelim2, modules/getpass, modules/getpass-gnu,
43798         modules/getusershell, modules/linebuffer, modules/md5,
43799         modules/mountlist, modules/posixtm, modules/readtokens,
43800         modules/readutmp, modules/regex, modules/sha1,
43801         modules/version-etc, modules/yesno:
43802         Remove dependency on unlocked-io.
43803
43804 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43805
43806         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
43807
43808         * m4/unlocked-io.m4: Add copyright notice.
43809         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
43810
43811 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43812
43813         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
43814         * lib/xmalloc.c (xmemdup): Likewise.
43815         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
43816         XFREE): Remove these long-obsolescent macros.
43817         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
43818         * lib/xstrdup.c: Remove.
43819
43820         * lib/regex.c (re_comp): Cast gettext return value to char *,
43821         Problem reported by Martin Neitzel via Mark D. Baushke.
43822
43823 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43824
43825         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
43826         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
43827         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
43828         regex.c, sha1.c, version-etc.c, yesno.c:
43829         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
43830         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
43831         the includer's responsibility.
43832
43833         Sync from coreutils.
43834
43835         * lib/modechange.c (mode_compile): Don't decrement a pointer that
43836         points to the start of a string, as the C Standard says the
43837         resulting behavior is undefined.
43838
43839         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
43840         simple -> simple_backups, numbered_existing ->
43841         numbered_existing_backups, numbered -> numbered_backups
43842         to avoid shadowing problems.  All uses changed.
43843         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
43844         * lib/backupfile.c (check_extension, numbered_backup):
43845         Rename locals to avoid shadowing 'basename'.
43846         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
43847         once.
43848
43849         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
43850         * lib/.cvsignore: Add getopt.h.
43851
43852 2004-10-04  Bruno Haible  <bruno@clisp.org>
43853
43854         * modules/README: New file.
43855         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
43856         not a module.
43857
43858 2004-10-02  Jim Meyering  <jim@meyering.net>
43859
43860         * lib/dirfd.h, getpagesize.h: Add copyright notice.
43861
43862 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43863
43864         * modules/strsep: New file.
43865
43866 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43867
43868         * m4/strsep.m4: New file.
43869
43870 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43871
43872         * lib/strsep.h: New file.
43873         * lib/strsep.c: New file.
43874
43875 2004-10-01  Simon Josefsson  <jas@extundo.com>
43876
43877         * lib/snprintf.c (snprintf): Handle size==0.
43878
43879 2004-10-01  Simon Josefsson  <jas@extundo.com>
43880             Bruno Haible  <bruno@clisp.org>
43881
43882         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
43883         (snprintf): Declare 'args'.
43884
43885 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
43886
43887         * lib/snprintf.c: Remove comments as to why each header is needed.
43888
43889 2004-10-01  Bruno Haible  <bruno@clisp.org>
43890
43891         * MODULES.html.sh: Add strsep.
43892
43893 2004-09-30  Simon Josefsson  <jas@extundo.com>
43894
43895         * modules/snprintf: New file.
43896
43897 2004-09-30  Simon Josefsson  <jas@extundo.com>
43898
43899         * m4/snprintf.m4: New file.
43900
43901 2004-09-30  Simon Josefsson  <jas@extundo.com>
43902
43903         * lib/snprintf.h, lib/snprintf.c: New files.
43904
43905 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
43906
43907         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
43908         (hol_entry_help): Never translate an empty string.
43909         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
43910         * lib/argp.h (OPTION_NO_TRANS): New option.
43911
43912 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
43913
43914         * modules/argp (Maintainer): Replace Simon Josefsson
43915         by Sergey Poznyakoff.
43916
43917 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
43918
43919         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
43920         changes merged back into glibc.
43921
43922 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
43923
43924         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
43925
43926 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
43927
43928         * lib/xvasprintf.c: Include xalloc.h.
43929         (xvasprintf): Use xalloc_die, not xmalloc_die.
43930
43931 2004-09-29  Bruno Haible  <bruno@clisp.org>
43932
43933         * modules/alloca-opt: New file, derived from modules/alloca.
43934         * modules/allocsa: Depend on alloca-opt instead of alloca.
43935         * modules/setenv: Likewise.
43936         * modules/vasnprintf: Likewise.
43937         * MODULES.html.sh: Add alloca-opt.
43938
43939 2004-09-28  Simon Josefsson  <jas@extundo.com>
43940
43941         * gnulib-tool: New parameter --lgpl, to asseert that modules are
43942         LGPL, and to replace license template from GPL to LGPL.
43943
43944 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
43945
43946         * modules/dummy: Change license to LGPL.
43947
43948 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
43949
43950         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
43951
43952 2004-09-24  Simon Josefsson  <jas@extundo.com>
43953
43954         * modules/minmax (License): Change from GPL to LGPL.
43955
43956 2004-09-23  Simon Josefsson  <jas@extundo.com>
43957
43958         * gnulib-tool (--import): Typo.
43959
43960 2004-09-23  Simon Josefsson  <jas@extundo.com>
43961
43962         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
43963
43964 2004-09-22  Bruno Haible  <bruno@clisp.org>
43965
43966         * modules/*: Add 'License' field.
43967         * gnulib-tool: Accept --extract-license option.
43968         (func_get_license): New function.
43969
43970 2004-09-21  Bruno Haible  <bruno@clisp.org>
43971
43972         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
43973         Reported by Simon Josefsson.
43974
43975 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
43976
43977         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
43978         gl_AC_TYPE_LONG_LONG.
43979
43980 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
43981
43982         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
43983
43984 2004-09-18  Simon Josefsson  <jas@extundo.com>
43985         and  Paul Eggert  <eggert@cs.ucla.edu>
43986
43987         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
43988         calls with autoreconf.  Define GL_LIB.
43989
43990 2004-09-14  Karl Berry  <karl@gnu.org>
43991
43992         * config/srclist.txt: unsync setenv.c, sigh.
43993
43994 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
43995
43996         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
43997         Problem reported by Bruno Haible in:
43998         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
43999
44000 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
44001
44002         * config/srclist.txt: Comment out argp-pvh.c.
44003
44004 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
44005
44006         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
44007         in case some system header has #define'd it.  Problem reported by
44008         Soeren D. Schulze in
44009         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
44010
44011 2004-09-09  Karl Berry  <karl@gnu.org>
44012
44013         * regex.[ch]: delete from the root.  These were supposed to be
44014                 synced with emacs cvs, but this has not happened for about
44015                 a year, and anyway nothing else uses emacs regex.[ch].
44016                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
44017                 lib/regex[.ch] is untouched.
44018
44019 2004-09-09  Bruno Haible  <bruno@clisp.org>
44020
44021         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
44022
44023 2004-09-09  Bruno Haible  <bruno@clisp.org>
44024
44025         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
44026         modifications.
44027         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
44028
44029 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
44030
44031         * modules/xvasprintf: New file.
44032         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
44033
44034 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
44035
44036         * lib/xvasprintf.h: New file.
44037         * lib/xvasprintf.c: New file.
44038         * lib/xasprintf.c: New file.
44039
44040 2004-09-08  Bruno Haible  <bruno@clisp.org>
44041
44042         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
44043
44044 2004-09-08  Bruno Haible  <bruno@clisp.org>
44045
44046         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
44047         length is > INT_MAX.
44048         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
44049         more.
44050
44051 2004-09-08  Bruno Haible  <bruno@clisp.org>
44052
44053         * lib/stdint_.h: New file, taken from GNU clisp.
44054
44055 2004-09-08  Bruno Haible  <bruno@clisp.org>
44056             Oskar Liljeblad  <oskar@osk.mine.nu>
44057
44058         * modules/stdint: New file.
44059         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
44060
44061 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
44062
44063         Import from coreutils.
44064         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
44065         strings on unbounded length.  alloca's performance benefits aren't
44066         that important here.
44067         (V_STRDUP): Remove.
44068         (parse_with_separator): New function, with most of the internals
44069         of the old parse_user_spec.  Allow user to omit both user and group,
44070         for compatibility with FreeBSD.
44071         Clone only the user name, not the entire spec.
44072         Do not set *uid, *gid unless entirely successful.
44073         Avoid memory leak in some failing cases.
44074         Fix regression for USER.GROUP reported by Dmitry V. Levin in
44075         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
44076         (parse_user_spec): Rewrite to use parse_with_separator.
44077
44078 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
44079
44080         * modules/userspec: Don't depend on alloca.
44081
44082 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
44083
44084         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
44085
44086 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
44087
44088         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
44089         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
44090         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
44091
44092 2004-08-16  Simon Josefsson  <jas@extundo.com>
44093
44094         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
44095         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
44096         Add --dry-run for --import.
44097         Let user provided command line parameters override configure.ac
44098         settings.
44099
44100 2004-08-12  Simon Josefsson  <jas@extundo.com>
44101
44102         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
44103         as discussed with Paul Eggert in threads rooted at
44104         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
44105         and
44106         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
44107         Before, the test was empty, and relied on ELIDE_CODE in source
44108         code.)
44109         (gl_PREREQ_GETOPT): New macro.
44110         (gl_GETOPT): Use them.
44111
44112 2004-08-12  Simon Josefsson  <jas@extundo.com>
44113
44114         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
44115         * lib/getopt_.h: Renamed from getopt.h.
44116
44117 2004-08-12  Simon Josefsson  <jas@extundo.com>
44118
44119         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
44120         Change default library name from libfoo to libgnu.
44121         Now, if you have a configure.ac that says:
44122                 gl_SOURCE_BASE(gl)
44123                 gl_M4_BASE(gl/m4)
44124                 gl_MODULES(error getopt etcetera)
44125                 gl_INIT
44126         you can import all you need by running:
44127                 ../gnulib/gnulib-tool --import
44128
44129         * modules/getopt (Files): Rename getopt.h to getopt_.h.
44130         (Makefile.am): Rewrite, use logic from argz.
44131         (Include): Use <getopt.h> instead of "getopt.h".
44132
44133 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
44134
44135         * modules/argp (Files): Add m4/unlocked-io.m4.
44136         (Depends-on): Add extensions.
44137
44138 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
44139
44140         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
44141         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
44142         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
44143         Check for program_invocation_name, program_invocation_short_name,
44144         flockfile, funlockfile, features.h, _getopt_long_only_r.
44145
44146 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
44147
44148         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
44149         its complicated substitute.
44150         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
44151         and program_invocation_name.
44152         (__argp_basename) [!_LIBC]: Remove; the only use was
44153         replaced by its body.
44154         (__argp_short_program_name): Change condition from
44155         !defined __argp_short_program_name to
44156         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
44157         to match argp-namefrob.h.
44158         (__argp_failure): Don't assume strerror_r returns char *.
44159         * lib/argp-parse.c (N_): Define unconditionally.
44160         (argp_default_options): Fill out initializers with 0 to avoid
44161         gcc warnings.
44162
44163 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
44164
44165         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
44166         getopt1.c.
44167
44168 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
44169
44170         Merge from coreutils.
44171
44172         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
44173
44174         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
44175         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
44176
44177 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
44178
44179         Merge from coreutils.
44180
44181         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
44182         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
44183         for Reliant Unix 5.43.
44184
44185         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
44186         (union fooround): Use uintmax_t, not long int.
44187         The rest is a merge from libc:
44188         [defined _LIBC]: Include <shlib-compat.h>.
44189         (_obstack) [defined _LIBC]: Remove after 2.3.4.
44190
44191         * lib/settime.c (settime): Recode to avoid warning with
44192         Sun Forte C 6U2.
44193
44194         * lib/strverscmp.c: Convert to UTF-8.
44195
44196 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
44197
44198         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
44199         m4/uintmax_t.m4.
44200
44201 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
44202
44203         * modules/xalloc-die: New file.
44204         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
44205
44206         * modules/md5 (Files): Add m4/uint32_t.m4.
44207         * modules/sha1: Renamed from modules/sha.
44208         (Files):
44209         Rename lib/sha.h to lib/sha1.h.
44210         Rename lib/sha.c to lib/sha1.c.
44211         Rename m4/sha.m4 to m4/sha1.m4.
44212         (lib_SOURCES): Likewise.
44213         (configure.ac): Rename gl_SHA to gl_SHA1.
44214         (Include): sha.h -> sha1.h.
44215
44216 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
44217
44218         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
44219         * m4/sha1.m4: Renamed from sha.m4.
44220         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
44221
44222 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
44223
44224         * lib/obstack.h (obstack_empty_p):
44225         Don't assume that chunk->contents is suitably aligned.
44226         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
44227         Likewise. Problem reported by Benno in
44228         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
44229
44230         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
44231         readable.  This could be improved further but it'd take some work.
44232
44233 2004-08-08  Simon Josefsson  <jas@extundo.com>
44234
44235         * modules/xgethostname (Depends-on): Remove exit and error (not
44236         used).
44237
44238         * modules/getpass-gnu: Add getpass.h.
44239         (Depends-on): Add stdbool.
44240         * modules/getpass: Add getpass.h.
44241
44242 2004-08-08  Simon Josefsson  <jas@extundo.com>
44243
44244         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
44245         Check getpass declaration.
44246
44247 2004-08-08  Simon Josefsson  <jas@extundo.com>
44248
44249         * lib/xgethostname.c: Don't include error.h (not used).
44250
44251         * lib/getpass.h: Add.
44252         * lib/getpass.c: Include getpass.h first.
44253
44254 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
44255
44256         * lib/xalloc-die.c: New file.
44257         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
44258         All uses removed.
44259         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
44260         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
44261         xalloc-die.c.
44262         (_, N_, xalloc_die): Move to xalloc-die.c.
44263         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
44264         so that we needn't mess with xalloc_msg_memory_exhausted.
44265
44266         * lib/sha1.h: Renamed from sha.h.
44267         (SHA1_H): Renamed from _SHA_H.
44268         (sha1_ctx): Renamed from sha_ctx.
44269         (sha1_init_ctx): Renamed from sha_init_ctx.
44270         (sha1_process_block): Renamed from sha_process_block.
44271         (sha1_process_bytes): Renamed from sha_process_bytes.
44272         (sha1_finish_ctx): Renamed from sha_finish_ctx.
44273         (sha1_read_ctx): Renamed from sha_read_ctx.
44274         (sha1_stream): Renamed from sha_stream.
44275         (sha1_buffer): Renamed from sha_buffer.
44276         * lib/sha1.c: Likewise; renamed from sha.c.
44277         Do not include <sys/types.h>.
44278         Include <stddef.h> rather than <stdlib.h>.
44279
44280 2004-08-08  Bruno Haible  <bruno@clisp.org>
44281
44282         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
44283         FILESYSTEM_PREFIX_LEN.
44284         * lib/progreloc.c: Likewise.
44285         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
44286
44287 2004-08-06  Simon Josefsson  <jas@extundo.com>
44288
44289         * modules/progname (Depends-on): Don't depend on stdbool.
44290
44291 2004-08-06  Simon Josefsson  <jas@extundo.com>
44292
44293         * modules/getsubopt: New file.
44294         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
44295         getsubopt.
44296
44297 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
44298
44299         More merge from coreutils.
44300
44301         * m4/utimens.m4, m4/utimecmp.m4: New files.
44302         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
44303         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
44304         prereq.m4, sha.m4: Import changes from coreutils.
44305
44306 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
44307
44308         More merge from coreutils.
44309         * modules/raise, modules/readtokens0, modules/utimens:
44310         * modules/utimecmp, module/xnanosleep: New files.
44311         * modules/strftime: Add lib/strftime.h.
44312         Change include from <time.h> to "strftime.h".
44313         * modules/yesno: Add lib/yesno.h.
44314         * modules/backupfile: Remove lib/addext.c.
44315         * modules/euidaccess: Add stat-macros.h.
44316         * modules/canonicalize, modules/euidaccess,
44317         modules/filemode, modules/lchown, modules/makepath,
44318         modules/rmdir, modules/stat: Likewise.
44319
44320 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
44321
44322         Merge from tar.
44323         * lib/argp-help.c (make_hol, hol_append): Don't assume that
44324         SIZE_MAX is a valid preprocessor constant.
44325         (__argp_basename): Change from "#ifndef _LIBC"
44326         to "#ifndef __argp_short_program_name", so that
44327         we don't compile these functions for tar.
44328
44329         More merges from coreutils.
44330         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
44331         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
44332         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
44333         * lib/addext.c: Remove; no longer needed.
44334         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
44335         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
44336         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
44337         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
44338         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
44339         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
44340         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
44341         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
44342         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
44343         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
44344         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
44345         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
44346         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
44347         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
44348         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
44349         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
44350         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
44351         Import changes from coreutils.
44352
44353 2004-08-05  Simon Josefsson  <jas@extundo.com>
44354
44355         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
44356
44357 2004-08-05  Simon Josefsson  <jas@extundo.com>
44358
44359         * m4/getsubopt.m4: New file.
44360
44361 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
44362
44363         Merge from coreutils.
44364
44365         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
44366         * m4/getcwd-path-max.m4: New files.
44367
44368         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
44369         FILESYSTEM_PREFIX_LEN ->
44370         FILE_SYSTEM_PREFIX_LEN.
44371         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
44372         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
44373         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
44374         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
44375
44376         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
44377         prerequisite modules now handle the DOS stuff.
44378         Don't check for unistd.h.
44379
44380 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
44381
44382         Merge from coreutils.
44383
44384         * lib/.gdb-history: Remove; this doesn't belong here.
44385
44386         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
44387         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
44388         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
44389         * lib/getcwd.c: New files.
44390
44391         * lib/dirname.h: Include <stdbool.h>.
44392         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
44393         for consistency with POSIX terminology.  All uses changed.
44394         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
44395         (strip_trailing_slashes): Use bool for booleans.
44396         * lib/stripslash.c (strip_trailing_slashes): Likewise.
44397
44398         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
44399         sometimes returns a positive errno value even when it succeeds.
44400         (print_errno_message) [!LIBC]: Fall back on strerror if
44401         __strerror_r fails.
44402
44403         * lib/path-concat.c (mempcpy): Don't define if a system header defines
44404         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
44405         (longest_relative_suffix): New function.
44406         (path_concat): Use it.  Assume first argument is not NULL.
44407         Port to DOS.  Omit redundant separators.
44408         Report an error instead of returning NULL.
44409         Use mempcpy instead of memcpy.
44410         (xpath_concat): Remove: not declared or used.
44411
44412         * lib/same.h: Include <stdbool.h>
44413         (same_name): Return bool, not int.
44414         * lib/same.c (same_name): Likewise.
44415         (errno): Don't declare; we assume C89 or better now.
44416
44417         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
44418         if not already defined.
44419
44420         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
44421         * lib/dup-safer.c (errno): Likewise.
44422
44423 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
44424
44425         Merge from coreutils.
44426         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
44427         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
44428         * modules/path-concat: Don't depend on strdup.
44429
44430 2004-08-03  Simon Josefsson  <jas@extundo.com>
44431
44432         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
44433         * lib/progname.h: Don't include stdbool.h.
44434
44435 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
44436
44437         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
44438         * MODULES.html.sh (func_all_modules): Remove fatal.
44439
44440 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
44441
44442         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
44443
44444 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
44445
44446         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
44447         working.
44448
44449 2004-08-02  Simon Josefsson  <jas@extundo.com>
44450
44451         * lib/getsubopt.h: New file, with comments from Bruno Haible.
44452         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
44453         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
44454
44455 2004-08-01  Simon Josefsson  <jas@extundo.com>
44456
44457         * lib/xgetdomainname.c: Include stdlib.h, for free().
44458
44459 2004-07-19  Bruno Haible  <bruno@clisp.org>
44460
44461         * MODULES.html.sh (func_all_modules): Add dummy.
44462
44463 2004-07-16  Simon Josefsson  <jas@extundo.com>
44464
44465         * modules/dummy: New file.
44466
44467 2004-07-16  Simon Josefsson  <jas@extundo.com>
44468
44469         * lib/dummy.c: New file.
44470
44471 2004-07-16  Bruno Haible  <bruno@clisp.org>
44472
44473         * lib/backupfile.h: Add extern "C" for C++.
44474         * lib/closeout.h: Likewise.
44475         * lib/copy-file.h: Likewise.
44476         * lib/findprog.h: Likewise.
44477         * lib/full-write.h: Likewise.
44478         * lib/pathname.h: Likewise.
44479         * lib/progname.h: Likewise.
44480         * lib/stpcpy.h: Likewise.
44481         * lib/stpncpy.h: Likewise.
44482         * lib/strcase.h: Likewise.
44483         * lib/strstr.h: Likewise.
44484         * lib/xalloc.h: Likewise.
44485
44486         * lib/mbswidth.h: Add extern "C" for C++.
44487         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
44488
44489 2004-07-13  Robert Millan  <robertmh@gnu.org>
44490
44491         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
44492
44493 2004-07-09  Simon Josefsson  <jas@extundo.com>
44494
44495         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
44496         failed without this.)
44497
44498 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
44499
44500         * modules/chown (Files): Add lib/fchown-stub.c, since
44501         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
44502
44503 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
44504
44505         * lib/fchown-stub.c: New file.
44506
44507 2004-06-24  Jim Meyering  <jim@meyering.net>
44508
44509         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
44510
44511 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
44512
44513         * modules/argz: Omit "#include".
44514
44515         * MODULES.html.sh (func_all_modules): Add calloc, to match
44516         2004-06-01 addition of calloc module.
44517
44518 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
44519
44520         * m4/argz.m4: New file, which is autoupdated from libtool.
44521
44522 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
44523
44524         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
44525         libtool.
44526
44527 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
44528
44529         * config/srclist-update: Don't insist on "USA." before the
44530         close-comment, as libtool omits the period and puts the */ on a
44531         separate line.
44532         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
44533         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
44534
44535 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
44536
44537         * modules/argz: New file.
44538         * MODULES.html.sh (func_all_modules): Add argz.
44539
44540 2004-06-12  Jim Meyering  <jim@meyering.net>
44541         and  Paul Eggert  <eggert@cs.ucla.edu>
44542
44543         * modules/hash (Files): Add lib/xalloc.h.
44544         * modules/pipe (Depends-on): Add wait-process.
44545         * modules/stat (Depends-on): Add xalloc.
44546         * modules/userspec (Files): Add lib/userspec.h.
44547         * modules/xstrto
44548
44549         Upgrade from gettext-0.13.
44550         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
44551         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
44552         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
44553
44554 2004-06-10  Jim Meyering  <jim@meyering.net>
44555
44556         * lib/calloc.c: New file.
44557
44558 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
44559
44560         * lib/getdate.y (yylex): Allow space between sign and number.
44561         Problem reported by Dan Jacobson.
44562
44563 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
44564
44565         Merge from coreutils CVS.
44566
44567         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
44568         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
44569         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
44570         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
44571         xstrtol.m4: Fix copyright date and/or serial number.
44572
44573         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
44574         See if we need an fchown replacement.
44575         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
44576         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
44577         and use the replacement function if we detect either defect.
44578
44579         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
44580         gl_UTIMECMP.
44581
44582 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
44583         and  Jim Meyering  <jim@meyering.net>
44584
44585         Merge from coreutils CVS.
44586
44587         * lib/stat-macros.h: New file, with contents from file-type.h
44588         and coreutils' system.h.
44589         * lib/file-type.c: Include "stat-macros.h".
44590         * lib/file-type.h (file_type): Move all macro definitions to new file,
44591         stat-macros.h.
44592
44593         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
44594         Wrap old code with this conditional.
44595         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
44596         function that does not dereference symlinks.
44597         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
44598
44599         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
44600         dependency problems.
44601         (xreadlink): Accept new arg SIZE, for efficiency.
44602         All decls and uses changed.
44603         * lib/xreadlink.h: Include <stddef.h>, for size_t.
44604
44605         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
44606         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
44607
44608         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
44609         sysexits.h.
44610
44611 2004-06-01  Jim Meyering  <jim@meyering.net>
44612
44613         * m4/calloc.m4: New file.
44614
44615 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
44616
44617         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
44618         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
44619         Also, fix a typo in a diagnostic.
44620
44621 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
44622
44623         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
44624         or AC_FUNC_REALLOC.
44625
44626 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
44627
44628         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
44629         macros to be defined.
44630         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
44631         the allocator returns NULL because the requested size is zero.
44632
44633 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
44634
44635         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
44636         var.  Add comment explaining why libc still defines it.  This
44637         merges the following patch from glibc:
44638         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
44639
44640 2004-05-20  Andreas Schwab  <schwab@suse.de>
44641
44642         * m4/free.m4: Replace free if it not known to work, not the other
44643         way round.
44644
44645 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
44646
44647         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
44648         present in glibc since revision 1.1 of this file.
44649         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
44650         obstack_alignment_mask, obstack_alloc, obstack_base,
44651         obstack_blank, obstack_blank_fast, obstack_chunk_size,
44652         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
44653         obstack_grow0, obstack_init, obstack_int_grow,
44654         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
44655         obstack_next_free, obstack_object_size, obstack_ptr_grow,
44656         obstack_ptr_grow_fast, obstack_room): Remove declarations of
44657         nonexistent functions.
44658
44659 2004-05-18  Karl Berry  <karl@gnu.org>
44660
44661         * config/srclist.txt: break link for vasnprintf.c.
44662
44663 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
44664
44665         Port obstack to the AS/400, where pointers are 16 bytes wide and
44666         you cannot cast an integer to a valid pointer.  This patch is
44667         currently waiting to be integrated into glibc; see
44668         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
44669
44670         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
44671         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
44672         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
44673         (struct obstack): temp member is now a union of a pointer and
44674         an integer, instead of an integer.  All integer uses changed.
44675         This does not affect the physical layout of struct obstack,
44676         except on hosts (like the AS/400) where the size or alignment of
44677         void * is greater than that of ptrdiff_t.
44678         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
44679         __STDC__)]: Store temporary in pointer member of union, not
44680         integer member.
44681         * lib/obstack.c: Include <stddef.h>, for offsetof.
44682         (struct fooalign): Remove; it doesn't need a name.
44683         (union fooround): Change double to long double, and add void *.
44684         (DEFAULT_ALIGNMENT): Use offsetof to compute.
44685         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
44686         not a macro.  Hence the values are always int; so remove all
44687         casts-to-int in uses.
44688
44689 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
44690
44691         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
44692         we can get this patch merged into glibc.
44693
44694 2004-05-17  Derek R. Price  <derek@ximbiot.com>
44695             Paul Eggert  <eggert@cs.ucla.edu>
44696
44697         * m4/argp: Depend on alloca.
44698
44699 2004-05-17  Derek R. Price  <derek@ximbiot.com>
44700             Paul Eggert  <eggert@cs.ucla.edu>
44701
44702         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
44703         freecoding.
44704
44705 2004-05-17  Bruno Haible  <bruno@clisp.org>
44706
44707         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
44708         precision that consists of a '.' followed by an empty digit string.
44709         Patch by Tor Lillqvist <tml@iki.fi>.
44710
44711 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
44712
44713         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
44714         for backward compatibility with older code.  We need our own
44715         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
44716         it under some other name, and our alloca.h will define it.
44717
44718 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
44719             Derek Price  <derek@ximbiot.com>
44720
44721         * lib/alloca.c: Include <alloca.h>, to get our interface.
44722         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
44723         include <alloca.h> first.  Use C89 prototype for alloca; this
44724         requires including <stddef.h> for size_t.  Use extern "C" if C++.
44725         Use #elif for simplicity, since we can assume C89 now.
44726         Don't try to source the system alloca.h since it will not be found
44727         and to prevent recursively including its replacement.
44728         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
44729         * lib/regex.c: Likewise.
44730
44731 2004-05-16  Derek Price  <derek@ximbiot.com>
44732             Paul Eggert  <eggert@cs.ucla.edu>
44733
44734         getline cleanup.  This changes the getndelim2 API: both order of
44735         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
44736         no delimiter).
44737
44738         * lib/getline.c: Don't include stddef.h or stdio.h, since our
44739         interface does that.
44740         (getline): Always use getdelim, so that we don't have two
44741         copies of this code.
44742         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
44743         if available.
44744         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
44745         (GETNDELIM2_MAXIMUM): New macro.
44746         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
44747         instead of the old practice of delim2==0.  All callers changed.
44748         Return -1 on overflow, instead of returning junk.
44749         Do not set *linesize unless allocation succeeds.
44750         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
44751         that we include sys/types.h.
44752         * lib/getnline.h: Likewise.
44753         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
44754         (getndelim2): Reorder arguments.
44755         * lib/getnline.c (getnline, getndelim):
44756         Don't discard the NMAX argument.
44757         (getnline): Invoke getndelim, to avoid code duplication.
44758         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
44759         of (size_t) -1 by callers of the getnline family.
44760
44761 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
44762
44763         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
44764         Check for gettimeofday.
44765         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
44766         Check for settimeofday, stime.
44767
44768 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
44769
44770         * lib/nanosleep.c (suspended): Change its type from int to
44771         sig_atomic_t volatile.
44772         (first_call): Make it private to rpl_nanosleep, and have it
44773         be zero initially as that's a bit faster.
44774         (my_usleep): Round up fractional times instead of truncating them,
44775         as this is the usual meaning for 'sleep'.
44776
44777         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
44778         doesn't work.
44779         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
44780         (ENOSYS): Define if not defined.
44781         (settime): Fall back on stime if it exists and settimeofday fails.
44782         But don't bother with fallbacks if a method fails with errno == EPERM.
44783
44784 2004-05-11  Jim Meyering  <jim@meyering.net>
44785
44786         Prior to this change, the save_cwd caller required read access to the
44787         current directory on most systems (ones with the fchdir function).
44788
44789         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
44790         fails, try write-only, and finally, resort to using xgetcwd.
44791
44792 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
44793
44794         * lib/obstack.c, obstack.h: Import changes from libc.
44795
44796 2004-04-28  Bruno Haible  <bruno@clisp.org>
44797
44798         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
44799         also implicitly appends .exe to executables.
44800         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
44801         accepts Windows pathnames.
44802         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
44803         Treat Cygwin like Windows, since it now accepts Windows pathnames.
44804         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
44805         Treat Cygwin like Windows, since it now accepts Windows pathnames.
44806         Reported by Derek Robert Price <derek@ximbiot.com>.
44807
44808 2004-04-21  Karl Berry  <karl@gnu.org>
44809
44810         * config/srclist.txt (localcharset.c): break sync.
44811
44812 2004-04-20  Paul Eggert  <eggert@twinsun.com>
44813
44814         * m4/host-os.m4: Add a copyright notice.
44815
44816 2004-04-20  Jim Meyering  <jim@meyering.net>
44817
44818         Change UTILS_ to gl_ in AC_DEFINE'd names.
44819         Change utils_- and jm_-prefixed variables, too.
44820         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
44821         UTILS_FUNC_MKDIR_TRAILING_SLASH.
44822         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
44823
44824         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
44825         Don't emit trailing blanks.
44826         Also rename jm_-prefixed variables to have gl_ prefix.
44827
44828         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
44829         Also rename jm_-prefixed variables to have gl_ prefix.
44830
44831         * m4/jm-macros.m4: Reflect the renamings.
44832         * m4/prereq.m4: Likewise.
44833
44834 2004-04-20  Jim Meyering  <jim@meyering.net>
44835
44836         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
44837         memory.
44838
44839 2004-04-20  Jim Meyering  <jim@meyering.net>
44840             Bruno Haible  <bruno@clisp.org>
44841
44842         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
44843         memory when realloc fails.
44844
44845 2004-04-19  Jim Meyering  <jim@meyering.net>
44846
44847         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
44848         now that readutmp.c may call `free (0)'.
44849
44850 2004-04-19  Bruno Haible  <bruno@clisp.org>
44851
44852         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
44853         * m4/inttypes_h.m4: Likewise.
44854         * m4/stdint_h.m4: Likewise.
44855         * m4/intmax_t.m4: Likewise.
44856         * m4/uintmax_t.m4: Likewise.
44857
44858 2004-04-18  Jim Meyering  <jim@meyering.net>
44859
44860         * m4/prereq.m4: Don't forbid jm_ prefix.
44861
44862         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
44863         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
44864         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
44865         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
44866         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
44867         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
44868         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
44869         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
44870         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
44871         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
44872         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
44873         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
44874         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
44875         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
44876         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
44877         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
44878         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
44879         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
44880         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
44881
44882 2004-04-18  Jim Meyering  <jim@meyering.net>
44883
44884         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
44885         failure, don't leak memory and do call END_UTMP_ENT.
44886
44887 2004-04-16  Jim Meyering  <jim@meyering.net>
44888
44889         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
44890         coreutils' stat program.
44891         (gl_PREREQ): Don't require jm_PREREQ_STAT.
44892
44893 2004-04-11  Paul Eggert  <eggert@twinsun.com>
44894
44895         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
44896         C89.
44897         (CHAR_BIT): Remove, since we assume C89.
44898         Include <stdint.h> if available, as per current Autoconf CVS advice.
44899
44900 2004-03-31  Jim Meyering  <jim@meyering.net>
44901
44902         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
44903         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
44904         * m4/xalloc.m4: Likewise.
44905
44906 2004-03-30  Paul Eggert  <eggert@twinsun.com>
44907
44908         Merge from coreutils.
44909
44910         * m4/inttostr.m4: New file.
44911         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
44912         Require AM_STDBOOL_H and gl_TIMESPEC instead.
44913         Require gl_CLOCK_TIME.
44914         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
44915
44916 2004-03-30  Paul Eggert  <eggert@twinsun.com>
44917
44918         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
44919         not bool, to be more consistent with Unix conventions.
44920         Suggested by Bruno Haible.
44921
44922         Merge from coreutils.
44923
44924         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
44925         * lib/umaxtostr.c: New files.
44926
44927         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
44928         the usual <time.h> dance.
44929         (get_date): Change signature to support fractional time stamps.
44930         All callers changed.
44931         * lib/getdate.y: Include "getdate.h" first, as we can now
44932         assume C89 and don't need to worry about 'const'.
44933         Similarly, include "unlocked-io.h" near start, not in middle.
44934         Include <limits.h>.
44935         (textint.value): Use long int rather than int.
44936         (textint.digits): Use size_t rather than int.
44937         (BILLION, LOG10_BILLION): New constants.
44938         (parser_control): New member rel_ns.  Members day_ordinal,
44939         time_zone, month, day, hour, minutes, rel_year, rel_month,
44940         rel_day, rel_hour, rel_minutes, rel_seconds
44941         are now long int, not int.  Member seconds is now struct timespec,
44942         not int.  New member timespec_seen.  Members dates_seen, days_seen,
44943         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
44944         not int.
44945         (%union.intval): Now long int, not int.
44946         New member timespec.
44947         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
44948         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
44949         (spec): Now is a timespec or an item list.
44950         (timespec, items): New nonterminals.
44951         (time, rel, relunit, number, get_date):
44952         Add support for fractional seconds.
44953         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
44954         (gmtime, localtime, mktime): Remove decls; not needed with C89.
44955         (to_hour): First arg is now long int, not int.
44956         (to_year): Returns long int, not int.
44957         Don't treat year -70 like 70.
44958         (tm_diff): Returns long int, not int.
44959         (lookup_word): Use bool instead of int when appropriate.
44960         (yylex): Use size_t for count, not int.
44961         Detect overflow when parsing large integer constants.
44962         Add support for fractions.
44963         (get_date): Make pointers 'const' if possible.
44964         Use more-portable code to detect integer overflow.
44965         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
44966         Don't use ctime; it's not reliable if the year has >4 digits.
44967
44968         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
44969         This is for compatibility with BSD.
44970
44971         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
44972         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
44973         From coreutils' system.h.
44974
44975         * lib/userspec.c: Don't include "posixver.h".
44976         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
44977         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
44978         compatible extension.  Simplify code by removing a boolean int
44979         that was always nonzero if a string was nonnull.
44980
44981 2004-03-30  Jim Meyering  <jim@meyering.net>
44982
44983         Merge from coreutils.
44984
44985         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
44986         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
44987         on some systems one must include <grp.h> before it.
44988         Reported by Christian Krackowizer.
44989
44990 2004-03-30  Jim Meyering  <jim@meyering.net>
44991
44992         Merge from coreutils.
44993
44994         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
44995
44996         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
44997         an empty input stream.
44998
44999         * lib/readtokens.c: Include <stdbool.h>.
45000         (readtoken): Use `size_t' rather than int/long.
45001         All callers adjusted.
45002         Use `bool' rather than `int' where appropriate.
45003         Use memset rather than an explicit loop.
45004         Use x2nrealloc rather than xrealloc.
45005         Allow the use of `\0' as a delimiter.
45006         (readtokens): Likewise.
45007         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
45008
45009 2004-03-30  Jim Meyering  <jim@meyering.net>
45010
45011         * m4/realloc.m4: Remove file, since now it does no more than
45012         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
45013         the `configure.ac' section of module/realloc.
45014         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
45015
45016 2004-03-30  Bruno Haible  <bruno@clisp.org>
45017
45018         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
45019         nonnull.
45020
45021 2004-03-29  Paul Eggert  <eggert@twinsun.com>
45022
45023         Merge changes to getloadavg.c from coreutils and Emacs.
45024
45025         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
45026         Define to an expression, not to the empty string.
45027         Include cloexec.h and xalloc.h.
45028         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
45029         Use set_cloexec_flag rather than rolling our own.
45030         * lib/cloexec.c, lib/cloexec.h: New files.
45031
45032 2004-03-29  Paul Eggert  <eggert@twinsun.com>
45033
45034         * m4/cloexec.m4: New file.
45035
45036 2004-03-18  Paul Eggert  <eggert@twinsun.com>
45037
45038         * lib/getopt.h: Sync with libc CVS.
45039
45040 2004-03-18  Paul Eggert  <eggert@twinsun.com>
45041             Bruno Haible  <bruno@clisp.org>
45042
45043         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
45044         mbswidth.
45045
45046 2004-03-18  Paul Eggert  <eggert@twinsun.com>
45047             Bruno Haible  <bruno@clisp.org>
45048
45049         * lib/mbswidth.h: Include <wchar.h> only if
45050         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
45051         <wchar.h>.
45052         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
45053
45054 2004-03-09  Paul Eggert  <eggert@twinsun.com>
45055
45056         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
45057         Sync with libc CVS.
45058         * lib/getopt_int.h: New file, also synced from libc.
45059
45060 2004-03-09  Paul Eggert  <eggert@twinsun.com>
45061
45062         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
45063         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
45064         Bring back getopt.c, getopt.h, getopt1.c.
45065
45066 2004-03-07  Paul Eggert  <eggert@twinsun.com>
45067
45068         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
45069         All uses changed.  Check for sa_sigaction member; this fixes
45070         a bug first reported by Jason Andrade in
45071         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
45072
45073 2004-03-07  Paul Eggert  <eggert@twinsun.com>
45074
45075         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
45076         '#if' expressions.  Unlike the code it replaces, it does not
45077         depend on (defined _SC_PAGESIZE).  However, it does depend on
45078         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
45079         first reported by Jason Andrade in
45080         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
45081
45082 2004-02-25  Simon Josefsson  <jas@extundo.com>
45083
45084         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
45085
45086 2004-02-25  Simon Josefsson  <jas@extundo.com>
45087
45088         * lib/strdup.h: New file.
45089         * lib/strdup.c: Include it.
45090         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
45091         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
45092
45093 2004-02-23  Karl Berry  <karl@gnu.org>
45094
45095         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
45096         (from fencepost.gnu.org:/gd/gnuorg).
45097
45098 2004-02-23  Karl Berry  <karl@gnu.org>
45099
45100         * config/srclistvars.sh (GNUORG) [karl]: redefine.
45101         * config/srclist.txt: add maintain/standards documents.
45102
45103 2004-02-18  Bruno Haible  <bruno@clisp.org>
45104
45105         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
45106         Reported by Derek Robert Price <derek@ximbiot.com>.
45107
45108 2004-02-16  Karl Berry  <karl@gnu.org>
45109
45110         * config/mkinstalldirs, install-sh: update from automake.
45111
45112 2004-02-06  Karl Berry  <karl@gnu.org>
45113
45114         * m4/po.m4: update from gettext 0.14.1.
45115
45116 2004-02-06  Karl Berry  <karl@gnu.org>
45117
45118         * lib/config.charset: update from gettext 0.14.1.
45119
45120 2004-02-05  Paul Eggert  <eggert@twinsun.com>
45121
45122         Add comments and code, prompted by suggestions from Bruno Haible
45123         for sh-quote.
45124         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
45125         describing the enum quoting_style values.
45126         * lib/quotearg.c (quotearg_alloc): New function.
45127         (quotearg_buffer_restyled): Treat lone { and } as special.
45128         Treat = as special.  Work around bug with older shells
45129         that "see" a '\' that is really the 2nd byte of a multibyte char.
45130         Quote empty string with shell_quoting_style.
45131
45132 2004-02-03  Bruno Haible  <bruno@clisp.org>
45133
45134         * m4/pipe.m4: New file, from GNU gettext.
45135
45136 2004-02-03  Bruno Haible  <bruno@clisp.org>
45137
45138         * lib/pipe.h: New file, from GNU gettext.
45139         * lib/pipe.c: New file, from GNU gettext.
45140
45141 2004-01-27  Bruno Haible  <bruno@clisp.org>
45142
45143         * m4/execute.m4: New file, from GNU gettext.
45144
45145 2004-01-27  Bruno Haible  <bruno@clisp.org>
45146
45147         * lib/execute.h: New file, from GNU gettext.
45148         * lib/execute.c: New file, from GNU gettext.
45149         * lib/w32spawn.h: New file, from GNU gettext.
45150
45151 2004-01-24  Paul Eggert  <eggert@twinsun.com>
45152
45153         Merge from diffutils.
45154
45155         * lib/file-type.c (file_type): Add typed memory objects.
45156         * lib/file-type.h (S_TYPEISTMO): New macro.
45157
45158         * lib/c-stack.h (c_stack_action): Remove argv argument.
45159         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
45160         (die): Don't calculate message unless segv_action returns.
45161         (get_stack_location, min_address_from_argv, max_address_from_argv,
45162         volatile stack_base, volatile_stack_size): Remove.
45163         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
45164         that every segmentation violation is a stack overflow.  (Ouch!)
45165         See Debian bug 136249 (still outstanding) for more info about why
45166         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
45167
45168 2004-01-24  Paul Eggert  <eggert@twinsun.com>
45169
45170         Exit-status fix from coreutils.
45171
45172         Use exit_failure consistently in place of EXIT_FAILURE,
45173         so that program exit statuses are consistent on failure.
45174
45175         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
45176         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
45177         * lib/argmatch.h: Comment fix to match the above.
45178         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
45179         Now a macro referring to exit_failure, instead of a separate
45180         variable.  Include "exitfail.h" to get it.
45181         * lib/xstrtol.h: Include "exitfail.h".
45182         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
45183
45184         * lib/long-options.c (parse_long_options): Use prototype
45185         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
45186         for clarity.
45187
45188 2004-01-21  Jim Meyering  <jim@meyering.net>
45189
45190         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
45191         so as not to conflict with a different-sized __mktime_internal
45192         function in GNU libc.
45193         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
45194         Problem building statically-linked `ls' reported by Michael Brunnbauer.
45195
45196 2004-01-20  Karl Berry  <karl@gnu.org>
45197
45198         * config/config.guess: update from config.
45199
45200         * config/srclistvars.sh: GNUWWWLICENSES for karl.
45201
45202 2004-01-20  Bruno Haible  <bruno@clisp.org>
45203
45204         Safer stack allocation.
45205         * lib/setenv.c: Include allocsa.h.
45206         (alloca): Remove fallback definition.
45207         (freea): Remove macro.
45208         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
45209         instead of freea.
45210
45211 2004-01-20  Bruno Haible  <bruno@clisp.org>
45212
45213         * m4/eealloc.m4: New file, from GNU gettext.
45214
45215 2004-01-20  Bruno Haible  <bruno@clisp.org>
45216
45217         * m4/allocsa.m4: New file, from GNU gettext.
45218
45219 2004-01-20  Bruno Haible  <bruno@clisp.org>
45220
45221         * lib/xallocsa.h: New file, from GNU gettext.
45222         * lib/xallocsa.c: New file, from GNU gettext.
45223
45224 2004-01-20  Bruno Haible  <bruno@clisp.org>
45225
45226         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
45227
45228 2004-01-20  Bruno Haible  <bruno@clisp.org>
45229
45230         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
45231         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
45232         specially.
45233
45234 2004-01-20  Bruno Haible  <bruno@clisp.org>
45235
45236         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
45237         patch.
45238
45239 2004-01-20  Bruno Haible  <bruno@clisp.org>
45240
45241         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
45242
45243 2004-01-20  Bruno Haible  <bruno@clisp.org>
45244
45245         * lib/eealloc.h: New file.
45246
45247 2004-01-20  Bruno Haible  <bruno@clisp.org>
45248
45249         * lib/binary-io.h: Avoid warnings on Cygwin.
45250
45251 2004-01-20  Bruno Haible  <bruno@clisp.org>
45252
45253         * lib/allocsa.h: New file, from GNU gettext.
45254         * lib/allocsa.c: New file, from GNU gettext.
45255
45256 2004-01-18  Karl Berry  <karl@gnu.org>
45257
45258         * doc/gpl.texi, doc/lgpl.texi: new files.
45259
45260 2004-01-18  Karl Berry  <karl@gnu.org>
45261
45262         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
45263         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
45264
45265 2004-01-15  Paul Eggert  <eggert@twinsun.com>
45266
45267         Merge from coreutils.
45268
45269         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
45270         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
45271         (gl_DEFAULT_POSIX2_VERSION): Move
45272         the documentation from 'configure' into 'config.hin',
45273         so that 'configure --help' isn't burdened by it and
45274         we don't have to worry about its formatting there.
45275         Reword the documentation so that it's more succinct
45276         and can be run together into a single paragraph.
45277         * m4/same.m4 (gl_SAME): Check for pathconf.
45278
45279 2004-01-15  Paul Eggert  <eggert@twinsun.com>
45280
45281         Merge from coreutils.
45282
45283         * lib/posixver.c: Include posixver.h.
45284
45285         * lib/same.c: Include <stdbool.h>, <limits.h>.
45286         (_POSIX_NAME_MAX): Define if not defined.
45287         (MIN): New macro.
45288         (same_name): If file names are silently truncated, report
45289         that the file names are the same if they are the same after
45290         the silent truncation.
45291
45292         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
45293         conversion function.
45294         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
45295         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
45296         longer needed.
45297
45298 2004-01-15  Jim Meyering  <jim@meyering.net>
45299
45300         Merge from coreutils.
45301
45302         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
45303         if no library is required.
45304         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
45305         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
45306         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
45307         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
45308         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
45309         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
45310         value, $ac_cv_search_crypt, if it's "none required".
45311         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
45312         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
45313         not gl_FUNC_GETLOADAVG.
45314         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
45315         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
45316
45317 2004-01-15  Jim Meyering  <jim@meyering.net>
45318
45319         Merge from coreutils.
45320
45321         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
45322         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
45323         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
45324
45325         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
45326         optional configure-time default.
45327
45328         * lib/version-etc.c (version_etc_copyright): Update copyright date.
45329
45330         * lib/xreadlink.c (xreadlink): Correct outdated comment.
45331
45332 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
45333
45334         Merge from coreutils.
45335
45336         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
45337         value, $ac_cv_search_nanosleep, if it's "none required".
45338
45339 2004-01-14  Paul Eggert  <eggert@twinsun.com>
45340
45341         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
45342         with like-named macro in fnmatch.c.
45343         (EXT): Use an internal constant instead.
45344
45345         Merge fnmatch patches from glibc.
45346         * lib/fnmatch.c (mbsinit): Remove define.
45347         Add libc_hidden_ver (__fnmatch, fnmatch).
45348         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
45349         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
45350
45351 2004-01-14  Karl Berry  <karl@gnu.org>
45352
45353         * config/install-sh: update from automake.
45354
45355 2004-01-13  Karl Berry  <karl@gnu.org>
45356
45357         * config/install-sh: update from automake.
45358
45359 2004-01-09  Karl Berry  <karl@gnu.org>
45360
45361         * config/install-sh: update from automake.
45362
45363 2004-01-05  Karl Berry  <karl@gnu.org>
45364
45365         * config/config.{sub,guess}: update from config.
45366
45367 2003-12-31  Karl Berry  <karl@gnu.org>
45368
45369         * config/depcomp: update from automake.
45370
45371 2003-12-14  Karl Berry  <karl@gnu.org>
45372
45373         * lib/config.charset: update from gettext-runtime.
45374
45375 2003-12-03  Paul Eggert  <eggert@twinsun.com>
45376
45377         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
45378         Bug reported by Alfred M. Szmidt.
45379
45380 2003-12-03  Bruno Haible  <bruno@clisp.org>
45381
45382         * m4/gettext.m4: Upgrade from gettext-0.13.
45383         * m4/po.m4: Upgrade from gettext-0.13.
45384         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
45385         * m4/intmax.m4: New file, from gettext-0.13.
45386         * m4/printf-posix.m4: New file, from gettext-0.13.
45387
45388 2003-11-29  Karl Berry  <karl@gnu.org>
45389
45390         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
45391
45392 2003-11-25  Paul Eggert  <eggert@twinsun.com>
45393             Bruno Haible  <bruno@clisp.org>
45394
45395         * lib/printf-parse.h: Don't include sys/types.h.
45396         (ARG_NONE): New macro.
45397         (char_directive): Change type of *arg_index fields to size_t.
45398         * lib/printf-parse.c: Don't include sys/types.h.
45399         (SSIZE_MAX): Remove macro.
45400         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
45401         Remove unnecessary overflow check.
45402         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
45403         fields.
45404
45405 2003-11-25  Bruno Haible  <bruno@clisp.org>
45406
45407         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
45408
45409 2003-11-25  Bruno Haible  <bruno@clisp.org>
45410
45411         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
45412         gt_TYPE_SSIZE_T.
45413
45414 2003-11-24  Paul Eggert  <eggert@twinsun.com>
45415
45416         * modules/alloca: Remove dependency on xalloc.
45417
45418 2003-11-24  Paul Eggert  <eggert@twinsun.com>
45419
45420         * lib/alloca.c: Remove dependency on xalloc module.
45421         (xalloc_die): Remove.
45422         (memory_full) [!defined emacs]: New macro.
45423         [!defined emacs]: Don't include xalloc.h.
45424         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
45425         address arithmetic overflows.  Change datatypes a bit to avoid
45426         unnecessary casts.
45427
45428 2003-11-22  Jim Meyering  <jim@meyering.net>
45429
45430         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
45431         s/size/size_t/.
45432
45433 2003-11-21  Karl Berry  <karl@gnu.org>
45434
45435         * config/config.{sub,guess}: update from config.
45436
45437 2003-11-18  Karl Berry  <karl@gnu.org>
45438
45439         * config/config.{sub,guess}: update from config.
45440
45441         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
45442
45443 2003-11-17  Paul Eggert  <eggert@twinsun.com>
45444
45445         * README: Mention that S+T cannot overflow if S is the size of
45446         an existing object and T is sufficiently small.
45447
45448 2003-11-17  Jim Meyering  <jim@meyering.net>
45449
45450         On systems without utime and without a utimes function capable of
45451         dealing with a NULL struct utimbuf* argument, this utime replacement
45452         could -- in unusual circumstances -- leak a file descriptor.
45453         * lib/utime.c: Include <unistd.h> and <errno.h>.
45454         (utime_null): Be sure to close `fd' and to preserve errno.
45455         Reported by Geoff Collyer via Arnold Robbins.
45456
45457 2003-11-17  Bruno Haible  <bruno@clisp.org>
45458
45459         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
45460         (Depends-on): Add xsize.
45461
45462 2003-11-17  Bruno Haible  <bruno@clisp.org>
45463
45464         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
45465
45466 2003-11-17  Bruno Haible  <bruno@clisp.org>
45467
45468         * lib/vasnprintf.c (alloca): Remove fallback definition.
45469         (freea): Remove definition.
45470         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
45471         Reported by Paul Eggert.
45472
45473 2003-11-16  Paul Eggert  <eggert@twinsun.com>
45474             Bruno Haible  <bruno@clisp.org>
45475
45476         Protect against address arithmetic overflow.
45477         * lib/printf-args.h: Include stddef.h.
45478         (arguments): Change type of field 'count' to size_t.
45479         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
45480         'unsigned int' where appropriate.
45481         * lib/printf-parse.h: Include sys/types.h.
45482         (char_directive): Change type of *arg_index fields to ssize_t.
45483         (char_directives): Change type of fields 'count', max_*_length to
45484         size_t.
45485         * lib/printf-parse.c: Include sys/types.h and xsize.h.
45486         (SSIZE_MAX): Define fallback value.
45487         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
45488         instead of 'int' where appropriate. Check a_allocated, d_allocated
45489         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
45490         * lib/vasnprintf.c: Include xsize.h.
45491         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
45492         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
45493         overflow. Avoid wraparound when converting a width or precision from
45494         decimal to binary.
45495
45496 2003-11-16  Bruno Haible  <bruno@clisp.org>
45497
45498         Update from GNU gettext.
45499         * lib/printf-parse.c: Generalize to it can be compiled for wide
45500         strings.
45501         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
45502         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
45503         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
45504         SNPRINTF): New macros.
45505         Don't include <alloca.h> if the file is used inside libintl.
45506         (local_wcslen): New function, for Solaris 2.5.1.
45507         (VASNPRINTF): Use it instead of wcslen.
45508
45509 2003-11-16  Bruno Haible  <bruno@clisp.org>
45510
45511         * lib/xsize.h (xmax): New function.
45512         (xsum, xsum3, xsum4): Declare as "pure" functions.
45513
45514 2003-11-12  Paul Eggert  <eggert@twinsun.com>
45515
45516         * modules/xalloc (Files): Undo latest change, since xalloc.h
45517         no longer needs SIZE_MAX or PTRDIFF_MAX.
45518
45519 2003-11-12  Paul Eggert  <eggert@twinsun.com>
45520
45521         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
45522         gl_PTRDIFF_MAX.
45523
45524 2003-11-12  Paul Eggert  <eggert@twinsun.com>
45525
45526         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
45527         "return", to pacify some unknown compiler.  Problem reported
45528         by Joerg Schilling.
45529
45530 2003-11-12  Paul Eggert  <eggert@twinsun.com>
45531
45532         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
45533         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
45534         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
45535         heuristic is just as accurate as far as we know, and it removes a
45536         dependency on size_max.m4 and ptrdiff_max.m4.
45537
45538 2003-11-11  Bruno Haible  <bruno@clisp.org>
45539
45540         * modules/xsize (Files): Add m4/size_max.m4.
45541         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
45542
45543 2003-11-11  Bruno Haible  <bruno@clisp.org>
45544
45545         * m4/size_max.m4: New file.
45546         * m4/ptrdiff_max.m4: New file.
45547         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
45548         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
45549         (gl_XALLOC): Invoke it.
45550
45551 2003-11-11  Bruno Haible  <bruno@clisp.org>
45552
45553         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
45554         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
45555         defined.
45556
45557 2003-11-10  Paul Eggert  <eggert@twinsun.com>
45558
45559         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
45560         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
45561         rejected some allocations of exactly SIZE_MAX - 2 bytes.
45562         From Bruno Haible.
45563         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
45564         not (size_t) -1, since it's defined here.
45565
45566 2003-11-09  Karl Berry  <karl@gnu.org>
45567
45568         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
45569
45570 2003-11-06  Paul Eggert  <eggert@twinsun.com>
45571
45572         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
45573         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
45574         Reject sizes of exactly SIZE_MAX bytes.
45575         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
45576         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
45577
45578 2003-11-05  Bruno Haible  <bruno@clisp.org>
45579
45580         * lib/xsize.h: Include limits.h, to avoid a possible collision with
45581         SIZE_MAX defined in <limits.h> on Solaris.
45582
45583 2003-11-04  Jim Meyering  <jim@meyering.net>
45584
45585         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
45586         variable names, rather than @VAR@.
45587         * modules/poll: Likewise.
45588
45589 2003-11-04  Bruno Haible  <bruno@clisp.org>
45590
45591         * modules/xsize: New file.
45592         * modules/linebreak: Depend on xsize.
45593         * MODULES.html.sh (func_all_modules): Add xsize.
45594
45595 2003-11-04  Bruno Haible  <bruno@clisp.org>
45596
45597         * m4/xsize.m4: New file.
45598
45599 2003-11-04  Bruno Haible  <bruno@clisp.org>
45600
45601         * lib/xsize.h: New file.
45602         * lib/linebreak.c: Include xsize.h.
45603         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
45604         argument for overflow.
45605         Suggested by Paul Eggert.
45606
45607 2003-11-03  Karl Berry  <karl@gnu.org>
45608
45609         * config/config.{guess,sub}: update from config.
45610
45611 2003-11-03  Jim Meyering  <jim@meyering.net>
45612
45613         * modules/userspec (lib_SOURCES): Add userspec.h.
45614         (Include): Add "userspec.h".
45615         Improve description.
45616
45617 2003-11-03  Jim Meyering  <jim@meyering.net>
45618
45619         * lib/userspec.c: Include "userspec.h".
45620         * lib/userspec.h: New file.
45621
45622 2003-11-03  Bruno Haible  <bruno@clisp.org>
45623
45624         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
45625
45626 2003-11-03  Bruno Haible  <bruno@clisp.org>
45627
45628         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
45629         available, to avoid (extremely rare) race condition.
45630         Suggested by Paul Eggert.
45631
45632 2003-11-02  Karl Berry  <karl@gnu.org>
45633
45634         * config/srclist.txt (vasprintf.c): sync broken, sigh.
45635
45636 2003-10-31  Paul Eggert  <eggert@twinsun.com>
45637
45638         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
45639         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
45640         (read_filesystem_list): Set and use me_type_malloced.
45641         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
45642         whatever the type happens to be), for brevity and consistency.
45643         Check for size calculation overflow on Alphas running OSF/1.
45644
45645 2003-10-31  Jim Meyering  <jim@meyering.net>
45646
45647         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
45648
45649         * lib/linebuffer.c: Include <string.h> for declaration of memset.
45650
45651 2003-10-30  Paul Eggert  <eggert@twinsun.com>
45652             Bruno Haible  <bruno@clisp.org>
45653
45654         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
45655         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
45656
45657 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
45658
45659         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
45660         netbsd*-gnu*.  Suggested by Robert Millan.
45661
45662 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45663
45664         * modules/group-member: Depend on stdbool.
45665
45666 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45667
45668         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
45669
45670 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45671
45672         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
45673         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
45674         after the 'gnu' in these cases.  This fixes some bugs in the
45675         previous change, and is based on suggestions by Robert Millan.
45676
45677 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45678
45679         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
45680         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
45681         no longer needed.
45682         * lib/quotearg.c (quotearg_n_options): Use it.
45683         * lib/group-member.c: Include <stdbool.h>.
45684         (free_group_info): Arg is now const *; don't free arg.
45685         (get_group_info): Now returns bool and accepts struct group_info *,
45686         rather than returning a malloc'ed struct group_info *.
45687         All uses changed.  Check for overflow in internal size calculation.
45688
45689         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
45690         rather than xmalloc/xrealloc.
45691         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
45692         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
45693         conformance bug: the old code used a pointer after freeing the
45694         storage that it addressed.
45695         * lib/hash.c (hash_initialize): Simplify the code by using
45696         xalloc_oversized rather than doing it by hand.
45697         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
45698         the buffer preserved.  Use free and xmalloc instead.
45699         * lib/quotearg.c (quotearg_n_options): Likewise.
45700         Use a simpler test for size overflow.  Don't use xalloc_oversized
45701         because unsigned int might be wider than size_t (!); this suggests
45702         that we should switch from unsigned int to size_t for slot numbers.
45703
45704 2003-10-28  Paul Eggert  <eggert@twinsun.com>
45705
45706         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
45707         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
45708         NetBSD kernels.  Requested by Richard Stallman.
45709
45710 2003-10-27  Paul Eggert  <eggert@twinsun.com>
45711
45712         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
45713         to allocate the returned structure.  Do not allocate a subarray,
45714         as x2nrealloc will do that.
45715         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
45716         instead of xnrealloc.
45717         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
45718
45719 2003-10-27  Bruno Haible  <bruno@clisp.org>
45720
45721         * lib/stdbool_.h: Better support for BeOS.
45722
45723 2003-10-26  Paul Eggert  <eggert@twinsun.com>
45724
45725         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
45726         now uses inline.
45727
45728 2003-10-26  Paul Eggert  <eggert@twinsun.com>
45729
45730         * lib/xalloc.h (xalloc_oversized): New static inline function, for
45731         callers that want to do their own size-overflow checking.  Include
45732         <stdbool.h>, since xalloc_oversized returns bool.
45733         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
45734         to use xalloc_oversized.
45735
45736         Add two functions x2realloc, x2nrealloc, for programs that grow
45737         arrays dynamically by doubling their sizes.
45738         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
45739         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
45740         New functions.
45741
45742         Port to C99 semantics for 'inline' of external functions.
45743         Bug reported by Bruno Haible.
45744         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
45745         with the old contents of xnmalloc.
45746         (xnmalloc, xmalloc): Use it.
45747         (xnrealloc_inline): New static inline function,
45748         with the old contents of xnrealloc.
45749         (xnrealloc, xrealloc): Use it.
45750
45751         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
45752         that.
45753
45754 2003-10-26  Karl Berry  <karl@gnu.org>
45755
45756         * config/srclist.txt (COPYING.DOC): no longer available from
45757         /gd/gnuorg; don't know where the ultimate source is.
45758
45759 2003-10-25  Paul Eggert  <eggert@twinsun.com>
45760
45761         Fix several address-calculation bugs in the hash modules,
45762         plus some minor code cleanup.
45763
45764         * lib/hash.h: Include <stdbool.h>, for bool.
45765         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
45766         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
45767         hash_get_n_entries, hash_get_max_bucket_length,
45768         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
45769         hash_rehash): Use size_t rather than unsigned.
45770         * lib/hash.c (struct hash_table, hash_get_n_buckets,
45771         hash_get_n_buckets_used, hash_get_n_entries,
45772         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
45773         hash_get_entries, hash_do_for_each, hash_string, is_prime,
45774         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
45775         Likewise.
45776         (SIZE_MAX): Define if not defined.
45777         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
45778         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
45779         hash_print):
45780         Use const * when possible.
45781         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
45782         (check_tuning): Fix bug: if tuning parameters were very close to
45783         0 or 1, rounding errors could have caused subscript violations.
45784         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
45785         (hash_initialize): Add 'fail:' label
45786         to free table and return NULL, and use it to simplify code.
45787         Use calloc rather than clearing the storage ourself.
45788         (hash_initialize, hash_rehash): Check for arithmetic overflow in
45789         buffer size calculations.
45790         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
45791         Include <stddef.h>, for size_t.
45792         * lib/hash-pjw.c (hash_pjw): Likewise.
45793         Switch to method described by Bruno Haible.
45794         Include <limits.h>, for CHAR_BIT.
45795         (SIZE_BITS): New macro.
45796
45797 2003-10-23  Paul Eggert  <eggert@twinsun.com>
45798
45799         * m4/getline.m4 (AM_FUNC_GETLINE):
45800         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
45801         hosts.  Problem reported by Derek Robert Price in
45802         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
45803         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
45804         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
45805
45806 2003-10-21  Paul Eggert  <eggert@twinsun.com>
45807
45808         * lib/getndelim2.c (getndelim2): When size calculation overflows,
45809         ceiling the allocation at NMAX bytes rather than silently
45810         discarding input bytes before NMAX is reached.  This makes
45811         a difference only if NMAX exceeds SIZE_MAX / 2.
45812
45813         * lib/obstack.c: Merge from glibc.
45814         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
45815         Add libc_hidden_def (_obstack_newchunk).
45816         (_obstack_free) [! defined _LIBC]: Remove.
45817         [defined _LIBC]: Make a strong alias from obstack_free, rather than
45818         a clone of the function body.
45819         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
45820         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
45821
45822         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
45823         glibc.
45824         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
45825         arg to memcpy.
45826
45827         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
45828         (obstack_ptr_grow_fast, obstack_int_grow_fast):
45829         Don't use lvalue casts, as GCC plans to remove support for them
45830         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
45831         was also present in the non-GCC version, indicating that this
45832         code had always been buggy and had never been widely used.
45833         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
45834         Use the fast variant of each macro, rather than copying the
45835         definiens of the fast variant; that way, we'll be more likely to
45836         catch future bugs in the fast variants.
45837
45838 2003-10-20  Bruno Haible  <bruno@clisp.org>
45839
45840         * modules/wait-process: New file.
45841         * MODULES.html.sh (func_all_modules): Add wait-process.
45842
45843 2003-10-20  Bruno Haible  <bruno@clisp.org>
45844
45845         * m4/wait-process.m4: New file.
45846
45847 2003-10-20  Bruno Haible  <bruno@clisp.org>
45848
45849         * lib/wait-process.h: New file, from GNU gettext.
45850         * lib/wait-process.c: New file, from GNU gettext.
45851
45852 2003-10-19  Jim Meyering  <jim@meyering.net>
45853
45854         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
45855         HPUX 10.20.
45856
45857 2003-10-18  Karl Berry  <karl@gnu.org>
45858
45859         * config/config.guess: update from config.
45860
45861 2003-10-16  Paul Eggert  <eggert@twinsun.com>
45862
45863         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
45864         (getgroups): First arg is int, not size_t.
45865         Don't let 'free' mangle errno.
45866
45867 2003-10-16  Paul Eggert  <eggert@twinsun.com>
45868
45869         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
45870
45871 2003-10-16  Karl Berry  <karl@gnu.org>
45872
45873         * config/config.{guess,sub}: update from config.
45874
45875 2003-10-16  Jim Meyering  <jim@meyering.net>
45876
45877         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
45878         memcpy.
45879
45880 2003-10-15  Paul Eggert  <eggert@twinsun.com>
45881
45882         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
45883         (SIZE_MAX): Remove.
45884         (new_exclude, add_exclude_file): Initial size no longer needs to
45885         be a power of 2.
45886         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
45887         our own address arithmetic overflow checking.
45888
45889         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
45890         (fnmatch): Do not alloca more than 2000 wide characters;
45891         instead, use malloc for large buffers.
45892         Check for address arithmetic overflow, and return -1
45893         with errno set to ENOMEM in that case.
45894         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
45895         (NEW_PATTERN): Do not alloca more than 8000 bytes;
45896         instead, return -1.  Check for address arithmetic overflow.
45897
45898 2003-10-14  Paul Eggert  <eggert@twinsun.com>
45899
45900         Handle invalid suffixes and overflow independently, so that
45901         callers can treat them independently as needed.  Fix some bugs in
45902         suffix handling, e.g., "100k@" was not diagnosed as an invalid
45903         suffix for a human-readable blocksize.  The major caller-visible
45904         change is the addition of a new
45905         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
45906         that both overflow and suffix chars were found.
45907
45908         * lib/human.c (humblock): Don't check separately for invalid suffix
45909         char; that is xstrtoumax's job (now that its bug is fixed).
45910         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
45911         INTMAX_MAX]: New macros.
45912         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
45913         TYPE_MAXIMUM): New macros.
45914         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
45915         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
45916         if overflow occurs, as it's what __strtol does and it's more useful
45917         in practice.
45918         (__xstrtol): If __strtol reports some error other than ERANGE,
45919         reflect it to the caller as LONGINT_INVALID.  If it reports
45920         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
45921         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
45922         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
45923         value.
45924         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
45925         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
45926         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
45927         [defined UINTMAX_MAX]: New macros.
45928
45929 2003-10-14  Bruno Haible  <bruno@clisp.org>
45930
45931         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
45932
45933 2003-10-14  Bruno Haible  <bruno@clisp.org>
45934
45935         * m4/sig_atomic_t: New file, from GNU gettext.
45936         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
45937
45938 2003-10-14  Bruno Haible  <bruno@clisp.org>
45939
45940         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
45941         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
45942         Also use volatile where needed.
45943
45944 2003-10-12  Paul Eggert  <eggert@twinsun.com>
45945
45946         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
45947         Change maintainer from Bruno Haible to 'all'.
45948
45949 2003-10-12  Paul Eggert  <eggert@twinsun.com>
45950
45951         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
45952
45953 2003-10-12  Paul Eggert  <eggert@twinsun.com>
45954
45955         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
45956         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
45957         and define in terms of the other primitives.
45958         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
45959         (SIZE_MAX): Define if not already defined.
45960         (array_size_overflow): New function.
45961         (xalloc_die): Abort instead of exiting if 'error' returns.
45962         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
45963         (xmalloc, xrealloc): Use them.
45964         (xcalloc): Check for address arithmetic overflow.
45965         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
45966         a bit faster than strcpy.
45967
45968 2003-10-10  Simon Josefsson  <jas@extundo.com>
45969
45970         * modules/argp (Depends-on): Add restrict and strcase.
45971
45972 2003-10-10  Simon Josefsson  <jas@extundo.com>
45973
45974         * m4/argp.m4: Add AC_C_INLINE.
45975
45976 2003-10-08  Paul Eggert  <eggert@twinsun.com>
45977
45978         Merge getpass from libc, plus a few fixes.
45979
45980         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
45981         Include <stdbool.h>.
45982         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
45983         __fsetlocking to empty.
45984         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
45985         do include <bits/libc-lock.h>.
45986         Do not include <fcntl.h>; not needed.
45987         [_LIBC]: Include <wchar.h>.
45988         (NOTCANCEL_MODE): New macro.
45989         (flockfile, funlockfile) [_LIBC]: New macros.
45990         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
45991         [!_LIBC]: New macros.
45992         (call_fclose): New function.
45993         (getpass): Use it.  Save tty stream separately; this simplifies the
45994         code and makes it more reliable if stdin happens to equal stdout.
45995         Invoke __fsetlocking on tty.
45996         Handle thread cancellation if needed.
45997         Namespace cleanup (use __tcgetattr, __getline).
45998         Use bool for Booleans.
45999         [USE_IN_LIBIO]: Handle wide streams.
46000         [!_LIBC]: Unconditionally do the fseek, since we don't know what
46001         stream might go where.
46002
46003         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
46004         doesn't have to include <stdio.h> before us.
46005         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
46006         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
46007         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
46008         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
46009         if not declared, so that we can use getpass.c code from libc without
46010         rewriting it.
46011         (flockfile, ftrylockfile, funlockfile): New macros.
46012
46013 2003-10-08  Paul Eggert  <eggert@twinsun.com>
46014
46015         * modules/getpass: Depend on stdbool.
46016
46017 2003-10-08  Paul Eggert  <eggert@twinsun.com>
46018
46019         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
46020
46021 2003-10-07  Karl Berry  <karl@gnu.org>
46022
46023         * config/config.{guess,sub}: update from config.
46024
46025 2003-10-06  Jim Meyering  <jim@meyering.net>
46026             Bruno Haible  <bruno@clisp.org>
46027
46028         This lets translators provide better translations for the
46029         "Written by ..." part of --version output.
46030         * lib/version-etc.h: Include stdarg.h.
46031         (version_etc_copyright): Declare as readonly.
46032         (version_etc): Make this function variadic with a NULL-terminated list
46033         of author name strings.
46034         (version_etc_va): New declaration.
46035         * lib/version-etc.c: Include stdarg.h, stdlib.h.
46036         (version_etc_copyright): Declare as readonly.
46037         (version_etc_va): New function. Provide a different translatable string
46038         for each possible number of authors < 10. Abbreviate when there are 10
46039         authors or more.
46040         (version_etc): Make this function variadic. Call version_etc_va.
46041         Suggestion from Gary V. Vaughan.
46042
46043         * lib/long-options.h (parse_long_options): Change prototype: the
46044         authors string is moved to the end and becomes variadic.
46045         * lib/long-options.c: Include stdarg.h.
46046         (parse_long_options): Make this function variadic, too.
46047         Call version_etc_va, not version_etc.
46048
46049 2003-10-06  Bruno Haible  <bruno@clisp.org>
46050
46051         * modules/version-etc-2: Remove file.
46052         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
46053
46054 2003-10-06  Bruno Haible  <bruno@clisp.org>
46055
46056         * modules/fatal-signal: New file.
46057         * MODULES.html.sh (func_all_modules): Add fatal-signal.
46058
46059 2003-10-06  Bruno Haible  <bruno@clisp.org>
46060
46061         * m4/fatal-signal.m4: New file.
46062         * m4/signalblocking.m4: New file, from GNU gettext.
46063
46064 2003-10-06  Bruno Haible  <bruno@clisp.org>
46065
46066         * lib/version-etc-2.h: Remove file.
46067         * lib/version-etc-2.c: Remove file.
46068
46069 2003-10-06  Bruno Haible  <bruno@clisp.org>
46070
46071         * lib/fatal-signal.h: New file, from GNU gettext.
46072         * lib/fatal-signal.c: New file, from GNU gettext.
46073
46074 2003-10-05  Paul Eggert  <eggert@twinsun.com>
46075
46076         * README: Rework advice for preventing empty .o files.
46077         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
46078         not <sys/types.h>.
46079
46080 2003-10-04  Karl Berry  <karl@gnu.org>
46081
46082         * lib/argp*: update from libc.
46083
46084 2003-10-04  Karl Berry  <karl@gnu.org>
46085
46086         * config/config.{guess,sub}: update from config.
46087
46088 2003-10-02  Bruno Haible  <bruno@clisp.org>
46089
46090         * modules/lchown (Include): Add lchown.h.
46091         * modules/time_r (Include): Use "..." syntax.
46092         * modules/xgetdomainname (Include): Add xgetdomainname.h.
46093
46094 2003-10-01  Simon Josefsson  <jas@extundo.com>
46095
46096         * MODULES.html.sh (func_all_modules): Move gethostname from section
46097         'based on' to section 'lacking' POSIX:2001.
46098
46099 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
46100
46101         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
46102         to output mode on the same stream.
46103
46104 2003-09-29  Paul Eggert  <eggert@twinsun.com>
46105
46106         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
46107         Fix arg typo in previous patch.
46108
46109 2003-09-28  Jim Meyering  <jim@meyering.net>
46110
46111         * lib/error.c: Correct cpp indentation.
46112
46113 2003-09-27  Paul Eggert  <eggert@twinsun.com>
46114
46115         * modules/free: New file.
46116
46117 2003-09-27  Paul Eggert  <eggert@twinsun.com>
46118
46119         * m4/free.m4: New file.
46120
46121 2003-09-27  Paul Eggert  <eggert@twinsun.com>
46122
46123         * lib/minmax.h (MIN, MAX)
46124         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
46125         Omit the special code that used __typeof__, since we worry that
46126         it could be more trouble than it's worth.  See:
46127         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
46128         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
46129
46130         * lib/free.c: New file.
46131
46132 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
46133
46134         Trivial fixes to Makefile.am parts of module listings.
46135         * modules/strstr: Append strstr.h to lib_SOURCES.
46136         * modules/strcase: Likewise, for strcase.h.
46137
46138 2003-09-27  Karl Berry  <karl@gnu.org>
46139
46140         * config/mkinstalldirs: update from automake.
46141
46142 2003-09-26  Paul Eggert  <eggert@twinsun.com>
46143
46144         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
46145         (error_tail): Do not loop, reallocating temporary buffer, since
46146         the output cannot contain more wide characters than the input
46147         contains bytes, the size must be big enough already.  This avoids
46148         one potential size overflow calculation.  Check for size overflow
46149         when calculating temporary buffer size.  Free temporary buffer
46150         when done, if it was allocated with malloc; this plugs a memory
46151         leak.  Remove casts from void * to pointers, that are no longer
46152         needed now that we're assuming C89 or better.
46153
46154         Merge error changes from glibc.
46155
46156         * lib/error.c, error.h: Update copyright notice header to match glibc.
46157         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
46158         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
46159         Disable cancellation while printing error.
46160         * lib/error.h: Prepend __ to parameter names.
46161
46162 2003-09-26  Jim Meyering  <jim@meyering.net>
46163
46164         * lib/error.c (error_tail): Move some declarations
46165         into inner scope where the local variables are used.
46166
46167 2003-09-26  Bruno Haible  <bruno@clisp.org>
46168
46169         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
46170         stpncpy().
46171         Don't define stpncpy through config.h; it's now done through stpncpy.h.
46172
46173 2003-09-26  Bruno Haible  <bruno@clisp.org>
46174
46175         * lib/stpncpy.h (gnu_stpncpy): New declaration.
46176         (stpncpy): Define as alias for gnu_stpncpy.
46177         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
46178
46179 2003-09-25  Simon Josefsson  <jas@extundo.com>
46180
46181         * lib/xgetdomainname.h: New file.
46182         * lib/xgetdomainname.c: New file.
46183
46184 2003-09-25  Simon Josefsson  <jas@extundo.com>
46185             Bruno Haible  <bruno@clisp.org>
46186
46187         * modules/getdomainname: New file.
46188         * modules/xgetdomainname: New file.
46189         * MODULES.html.sh (func_all_modules): Add getdomainname,
46190         xgetdomainname.
46191
46192 2003-09-25  Simon Josefsson  <jas@extundo.com>
46193             Bruno Haible  <bruno@clisp.org>
46194
46195         * m4/getdomainname.m4: New file.
46196
46197 2003-09-25  Simon Josefsson  <jas@extundo.com>
46198             Bruno Haible  <bruno@clisp.org>
46199
46200         * lib/getdomainname.h: New file.
46201         * lib/getdomainname.c: New file.
46202
46203 2003-09-25  Karl Berry  <karl@gnu.org>
46204
46205         * lib/argp-fmtstream.c, argp-help.c: update from libc.
46206
46207 2003-09-25  Karl Berry  <karl@gnu.org>
46208
46209         * config/install-sh: update from automake.
46210
46211 2003-09-25  Bruno Haible  <bruno@clisp.org>
46212
46213         * modules/version-etc-2: New file, from modules/version-etc with
46214         modifications.
46215         * MODULES.html.sh (func_all_modules): Add version-etc-2.
46216
46217 2003-09-25  Bruno Haible  <bruno@clisp.org>
46218
46219         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
46220         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
46221
46222 2003-09-24  Simon Josefsson  <jas@extundo.com>
46223
46224         * modules/xgethostname: Add xgethostname.h.
46225
46226 2003-09-24  Paul Eggert  <eggert@twinsun.com>
46227
46228         * lib/linebuffer.c (freebuffer): Don't free the argument, just
46229         the buffer associated with the argument.  Bug reported by
46230         Simon Josefsson.
46231
46232 2003-09-24  Paul Eggert  <eggert@twinsun.com>
46233
46234         * README: Document assumptions that 'int' is at least 32 bits
46235         wide, that integer arithmetic is 2's complement without overflow,
46236         that there are no holes in integer values, that adding sizes of
46237         two nonoverlapping objects can't overflow, and that all-bits-zero
46238         yields scalar zero.  Fix spelling and capitalization typos.
46239
46240 2003-09-19  Karl Berry  <karl@gnu.org>
46241
46242         * lib/argp.h: update from libc.
46243
46244 2003-09-17  Paul Eggert  <eggert@twinsun.com>
46245
46246         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
46247         to avoid spurious warnings like "AC_RUN_IFELSE was called before
46248         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
46249
46250 2003-09-17  Paul Eggert  <eggert@twinsun.com>
46251
46252         * gnulib-tool: Use "test -h", not "test -L", for portability
46253         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
46254         (tags_regexp): Remove, since \| doesn't conform to POSIX.
46255         (sed_extract_prog): Issue s commands one-by-one, rather than
46256         using \| in one s command.
46257
46258 2003-09-16  Paul Eggert  <eggert@twinsun.com>
46259
46260         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
46261         input error, instead of returning NULL the next time we are called
46262         (and therefore losing track of errno).
46263
46264 2003-09-16  Bruno Haible  <bruno@clisp.org>
46265
46266         * gnulib-tool (func_create_testdir): Warn about duplicated
46267         dependencies.
46268
46269 2003-09-15  Paul Eggert  <eggert@twinsun.com>
46270
46271         * modules/argmatch, modules/fatal, modules/obstack,
46272         modules/xalloc, modules/xgethostname: Sort dependencies by
46273         importance, not alphabetically.
46274
46275 2003-09-15  Paul Eggert  <eggert@twinsun.com>
46276
46277         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
46278         fails, so that the caller gets the proper errno.
46279
46280         * lib/readutmp.c (read_utmp): Likewise.
46281         Check for fstat error.  Close stream and free storage
46282         when failing.
46283
46284 2003-09-14  Karl Berry  <karl@gnu.org>
46285
46286         * config/srclist.txt (strdup.c): disable for c89 changes.
46287
46288 2003-09-14  Jim Meyering  <jim@meyering.net>
46289
46290         * lib/getloadavg.c: Correct cpp indentation.
46291         * lib/strdup.c: Likewise.
46292         * lib/vasnprintf.c: Likewise.
46293
46294 2003-09-14  Bruno Haible  <bruno@clisp.org>
46295
46296         * modules/fwriteerror: New file.
46297         * MODULES.html.sh (func_all_modules): Add fwriteerror.
46298
46299 2003-09-14  Bruno Haible  <bruno@clisp.org>
46300
46301         * lib/fwriteerror.h: New file.
46302         * lib/fwriteerror.c: New file.
46303
46304 2003-09-12  Paul Eggert  <eggert@twinsun.com>
46305
46306         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
46307         modules/xgethostname, modules/xalloc: Depend on exit.
46308
46309 2003-09-12  Paul Eggert  <eggert@twinsun.com>
46310
46311         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
46312
46313         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
46314         and AC_MINIX, too, so that their extensions are available.
46315
46316         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
46317         This macro has been superseded by gl_BACKUPFILE.
46318
46319         More patches to assume C89 or better.
46320
46321         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
46322
46323         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
46324         unconditionally.
46325         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
46326         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
46327         Include <string.h>, <stdlib.h> unconditionally.
46328         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
46329         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
46330         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
46331         headers or for string.h.
46332         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
46333         or strtoul.
46334
46335         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
46336         headers.
46337         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
46338         * m4/userspec.m4 (gl_USERSPEC): Likewise.
46339         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
46340         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
46341         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
46342         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
46343         memcpy, memset.
46344         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
46345         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
46346         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
46347         strtol.
46348         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
46349         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
46350         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
46351         strtoul.
46352
46353 2003-09-12  Paul Eggert  <eggert@twinsun.com>
46354
46355         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
46356         * lib/obstack.c [!defined _LIBC]: Likewise.
46357         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
46358         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
46359         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
46360
46361         More changes to assume C89 or better.
46362
46363         * lib/error.c (error_tail): Assume vprintf.
46364
46365         * lib/argmatch.c (getenv): Remove decl.
46366         * lib/progreloc.c (get_full_program_name): Define via prototype.
46367         * lib/setenv.c (clearenv): Likewise.
46368         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
46369         needed.
46370         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
46371         (malloc, memcpy): Remove decls.
46372         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
46373         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
46374         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
46375         (memcpy): Remove macro.
46376         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
46377         (__P): Remove.  All uses removed.
46378         (PTR): Remove.  All uses changed to void *.
46379         (CHAR_BIT, NULL): Remove.
46380         (spaces, zeros, memset_space, memset_zero)
46381         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
46382         Remove.
46383         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
46384         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
46385         Define with prototype.
46386         Remove now-unnecessary prototype decl.
46387         (extra_args_spec): Assume ANSI C.  All uses changed.
46388         (extra_args_spec_iso): Remove.
46389         (my_strftime, emacs_strftimeu): Define via prototype.
46390         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
46391         unconditionally.
46392         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
46393         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
46394         (strtoul, strtol): Remove decls.
46395         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
46396         LONG_MAX): Remove.
46397         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
46398         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
46399         (LOCALE_PARAM_PROTO): New macro.
46400         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
46401         (INTERNAL (strtol), strtol): Define with a prototype.
46402         (PARAMS): Remove.  All uses removed.
46403         * lib/tempname.c: Include <string.h> unconditionally.
46404         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
46405         * lib/xgethostname.c (main): Define with a prototype.
46406         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
46407         Include <stdlib.h> unconditionally.
46408         (calloc, malloc, realloc, free): Remove decls.
46409         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
46410         Include <stdlib.h> unconditionally.  Sort include file names.
46411         (strtod): Remove.
46412         (xstrtod): Define with a prototype.
46413         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
46414         (strtol, strtoul): Remove decls.
46415
46416 2003-09-11  Paul Eggert  <eggert@twinsun.com>
46417
46418         More patches to assume C89 or better.
46419         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
46420         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
46421         string.h, memchr, STDC_HEADERS.
46422
46423 2003-09-11  Paul Eggert  <eggert@twinsun.com>
46424
46425         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
46426         Include <stdlib.h>, <string.h> unconditionally.
46427         Remove now-unnecessary cast to char *.
46428         * lib/strnlen.c: Include <string.h> unconditionally.
46429         * lib/yesno.c (yesno): Define with a prototype.
46430
46431 2003-09-11  Bruno Haible  <bruno@clisp.org>
46432
46433         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
46434
46435 2003-09-10  Jim Meyering  <jim@meyering.net>
46436
46437         * lib/error.c: Correct indentation of cpp directives.
46438
46439 2003-09-10  Bruno Haible  <bruno@clisp.org>
46440
46441         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
46442         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
46443         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
46444         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
46445         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
46446         <stdlib.h> and <string.h> checks.
46447         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
46448         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
46449
46450 2003-09-10  Bruno Haible  <bruno@clisp.org>
46451
46452         * lib/strcspn.c: Include <string.h> unconditionally.
46453         * lib/strpbrk.c: Include <string.h> unconditionally.
46454         * lib/strstr.c: Include <string.h> unconditionally.
46455         * lib/unicodeio.c: Include <string.h> unconditionally.
46456         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
46457         * lib/unsetenv.c: Likewise.
46458         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
46459         * lib/yesno.c: Include <stdlib.h> unconditionally.
46460         (rpmatch): Add prototype.
46461
46462 2003-09-09  Paul Eggert  <eggert@twinsun.com>
46463
46464         More patches to assume C89 or better.
46465         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
46466         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
46467         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
46468         or for string.h.
46469         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
46470         stdlib.h.
46471         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
46472         C headers.
46473         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
46474         string.h.
46475         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
46476         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
46477         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
46478         or for string.h.
46479         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
46480         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
46481         C headers.
46482         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
46483         memcpy.
46484         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
46485         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
46486         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
46487         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
46488         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
46489         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
46490         string.h, free.
46491         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
46492         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
46493         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
46494         C headers, or for string.h.
46495         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
46496         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
46497         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
46498         headers, memory.h, stdlib.h, string.h, strings.h.
46499         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
46500         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
46501         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
46502         strchr.
46503         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
46504         headers, memory.h, string.h.
46505         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
46506         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
46507         free.
46508         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
46509         headers.
46510         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
46511         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
46512         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
46513         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
46514         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
46515
46516 2003-09-09  Paul Eggert  <eggert@twinsun.com>
46517
46518         More K&R removal.
46519
46520         * lib/acosl.c (main): Use a prototype.
46521         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
46522         tanl.c: Likewise.
46523
46524         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
46525
46526         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
46527         (getopt, etopt_long, getopt_long_only, _getopt_internal)
46528         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
46529         with a prototype.
46530         * lib/getopt.c (const): Remove macro.
46531         Include <string.h> unconditionally.
46532         (my_index): Remove; all uses changed to strchr.
46533         (strlen): Remove decl.
46534         (exchange): Remove forward decl; no longer needed.
46535         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
46536         Define with prototype.
46537         * lib/getopt1.c (const): Remove macro.
46538         (getopt_long, getopt_long_only, main): Define with prototype.
46539
46540         * lib/getugroups.c: Include <string.h> unconditionally.
46541
46542         * lib/getusershell.c: Include <stdlib.h> unconditionally.
46543         (getusershell, setusershell, endusershell, readname, main):
46544         Define with prototypes.
46545
46546         * lib/group-member.c: Include group-member.h first.
46547         Include <stdlib.h> unconditionally.
46548
46549         * lib/hard-locale.c: Include hard-locale.h first.
46550         Include <stdlib.h>, <string.h> unconditionally.
46551
46552         * lib/hash.c (free, malloc): Remove decls.
46553         Include <stdlib.h> unconditionally.
46554
46555         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
46556         (getenv): Do not declare.
46557
46558         * lib/idcache.c: Include <string.h> unconditionally.
46559
46560         * lib/long-options.c: Include long-options.h first, to test interface.
46561         Include <stdlib.h> unconditionally.
46562
46563         * lib/makepath.c: Include makepath.h first, to test interface.
46564         Include <stdlib.h> and <string.h> unconditionally.
46565
46566         * lib/linebuffer.c: Include <stdlib.h>.
46567         (free): Remove decl.
46568
46569         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
46570         stddef.h. rpl_malloc returns void *, not char *.
46571         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
46572         prototype.
46573
46574         * lib/md5.h: Include <limits.h> unconditionally.
46575         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
46576         (__P): Remove; all uses removed.
46577         * lib/md5.c: Include "md5.h" first.
46578         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
46579         md5_buffer, md5_process_bytes, md5_process_block):
46580         Define with prototypes.
46581         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
46582         * lib/sha.c: Include "sha.h" first.
46583         Include <stdlib.h>, <string.h> unconditionally.
46584
46585         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
46586         * lib/memcmp.c (__ptr_t): Likewise.
46587         * lib/memrchr.c (__ptr_t): Likewise.
46588         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
46589         Include <string.h> unconditionally.
46590         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
46591         * lib/memchr.c: Include <stdlib.h> unconditionally.
46592         * lib/memchr.c (LONG_MAX): Remove.
46593         * lib/memrchr.c (LONG_MAX): Likewise.
46594         * lib/memchr.c (__memchr): Define via a prototype.
46595         * lib/memrchr.c (__memrchr): Likewise.
46596         * lib/memcmp.c (__P): Remove, and remove all uses.
46597         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
46598         Remove forward decls; no longer needed.
46599         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
46600         Use types required by C89 in prototype.
46601
46602         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
46603         * lib/savedir.c: Likewise.
46604         * lib/mkdir.c (free): Remove decl.
46605         * lib/rmdir.c (rmdir): Define with a prototype.
46606         * lib/savedir.c: Include savedir.h first, to test interface.
46607
46608         * lib/mktime.c (STDC_HEADERS): Remove.
46609         Include <stdlib.h>, <string.h> unconditionally.
46610
46611         * lib/modechange.c: Include <stdlib.h> unconditionally.
46612         (malloc): Remove decl.
46613
46614         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
46615         (free): Remove decl.
46616
46617         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
46618         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
46619         (This type really should be intptr_t, but that's a C99ism.)
46620         (_obstack_memcpy): Remove: all uses changed to memcpy.
46621         Include <string.h> unconditionally.
46622         (struct obstack): Assume __STDC__ for types of members
46623         chunkfun, freefun, extra_arg.
46624         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
46625         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
46626         obstack_begin, obstack_specify_allocation,
46627         obstack_specify_allocation_with_arg, obstack_chunkfun,
46628         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
46629         Remove unprototyped decls and the macros that use them.
46630         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
46631         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
46632         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
46633         (defined __STDC__ && __STDC__)]:
46634         Remove nonprototyped code.
46635         Include <stdlib.h> unconditionally.
46636         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
46637         _obstack_allocated_p, _obstack_free, obstack_free,
46638         _obstack_memory_used, print_and_abort):
46639         Define using prototypes.
46640         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
46641         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
46642         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
46643         obstack_next_free, obstack_object_size, obstack_room) [0]:
46644         Remove unused, unprototyped code.
46645
46646         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
46647
46648         * lib/physmem.c (physmem_total, physmem_available, main): Define
46649         with prototypes.
46650
46651         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
46652         (main): Define with a prototype.
46653
46654         * lib/posixver.c (getenv): Remove decl.
46655
46656         * lib/putenv.c (malloc): Returns void *, not char *.
46657         Include <string.h> unconditionally.
46658         (strchr, memcpy, NULL): Do not define.
46659
46660         * lib/readtokens.c: Include readtokens.h first, to test interface.
46661         Include <stdlib.h>, <string.h> unconditionally.
46662         (init_tokenbuffer): Define with a prototype.
46663
46664         * lib/regex.c (PARAMS): Remove.  All uses removed.
46665         All uses of _RE_ARGS removed, too.
46666         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
46667         unconditionally.
46668         (bzero): Assume memset exists.
46669         (memcmp, memcpy, NULL): Remove.
46670         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
46671         char, or assignments to local vars of type signed char.
46672         (init_syntax_once, PREFIX(extract_number_and_incr),
46673         PREFIX(print_partial_compiled_pattern),
46674         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
46675         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
46676         PREFIX(regex_grow_registers), PREFIX(regex_compile),
46677         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
46678         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
46679         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
46680         wcs_compile_range, byte_compile_range, truncate_wchar,
46681         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
46682         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
46683         count_mbs_length, wcs_re_match_2_internal,
46684         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
46685         PREFIX(alt_match_null_string_p),
46686         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
46687         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
46688         regfree, PREFIX(extract_number)): Define with prototype.  Remove
46689         now-unnecessary declaration, if any.
46690         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
46691         regcomp, regexec):
46692         Remove now-unnecessary casts among pointer types.
46693         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
46694
46695         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
46696         (free): Remove decl.
46697
46698         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
46699
46700         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
46701         (free): Remove decl.
46702
46703         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
46704         * lib/xgetcwd.c: Likewise.
46705
46706         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
46707         (free): Remove decl.
46708
46709         * lib/strchrnul.c (strchrnul): Define with a prototype.
46710         Fix bug: c_in was not converted to char before searching.
46711
46712         The following changes are not K&R related:
46713
46714         * lib/group-member.h: Include <sys/types.h>, so that this file is
46715         self-contained.
46716         * lib/makepath.h: Likewise.
46717
46718         * lib/getusershell.c (readname, default_index, line_size, readname):
46719         Use size_t, not int, for sizes.
46720         (readname): If the size overflows, report an error instead of
46721         looping forever.
46722
46723 2003-09-09  Paul Eggert  <eggert@twinsun.com>
46724
46725         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
46726         libc.
46727
46728 2003-09-09  Paul Eggert  <eggert@twinsun.com>
46729
46730         * README: New section: portability guidelines.
46731
46732 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
46733
46734         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
46735         C89 spec.
46736
46737 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
46738
46739         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
46740
46741 2003-09-08  Paul Eggert  <eggert@twinsun.com>
46742
46743         Assume C89 or better; remove K&R cruft.
46744         A few of these changes were first proposed by Derek Robert Price
46745         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
46746
46747         * lib/addext.c: Include <string.h> unconditionally.
46748         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
46749         Don't declare getenv or malloc.
46750
46751         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
46752         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
46753         (NULL): Remove.
46754         (find_stack_direction, alloca): Use prototypes.
46755
46756         * lib/atexit.c (atexit): Define using a prototype.
46757
46758         * lib/basename.c, dirname.c, stripslash.c:
46759         Include <string.h> unconditionally.
46760
46761         * lib/bcopy.c: Include <stddef.h>.
46762         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
46763
46764         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
46765
46766         * lib/error.h (error, error_at_line, error_print_progname)
46767         [! (defined (__STDC__) && __STDC__)]: Remove decls.
46768         * lib/error.c: Include error.h first, to check interface.
46769         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
46770         (VA_START): Remove; all uses changeed to va_start.
46771         (exit, strerror): Remove decls.
46772         (error_print_progname): Prototype uncondionally.
46773         Don't include <errno.h>; no longer needed.
46774         (private_strerror): Remove.
46775         (error_tail): Always define.
46776         (error, error_at_line): Assume C89 or better; always use prototypes.
46777         * lib/fatal.c: Include "fatal.h" first, to test interface.
46778         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
46779         (VA_START): Remove; all uses changed to va_start.
46780         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
46781         this case.
46782         (exit): Remove decl.
46783         (fatal): Prototype unconditionally.  Assume va_start works.
46784         Abort at end, to pacify gcc.
46785
46786         * lib/euidaccess.c (main): Define with a prototype.
46787
46788         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
46789
46790         * lib/exitfail.c: Include <stdlib.h> unconditionally.
46791
46792         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
46793         prototypes.
46794         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
46795         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
46796         (getenv): Remove decl.
46797         (fnmatch): Define using a prototype.
46798         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
46799         (FCT): Define using a prototype.
46800
46801         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
46802
46803         * lib/gethostname.c: Include <stddef.h>.
46804         (gethostname): Define with prototype.  Length is size_t, not int.
46805
46806 2003-09-08  Paul Eggert  <eggert@twinsun.com>
46807
46808         Assume C89 or better; remove K&R cruft.
46809         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
46810         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
46811         string.h, getenv, malloc.
46812         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
46813         headers.
46814         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
46815         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
46816         do not check for strerror.
46817         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
46818         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
46819         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
46820         do not check for doprnt or vprintf.
46821         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
46822         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
46823
46824 2003-09-08  Paul Eggert  <eggert@twinsun.com>
46825
46826         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
46827         getversion.c should have been removed then, but was accidentally
46828         preserved.
46829
46830         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
46831         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
46832
46833 2003-09-08  Karl Berry  <karl@gnu.org>
46834
46835         * config/config.sub, config.guess, srclistvars.sh: update from savannah
46836                 config, forget about prep.
46837
46838         * config/depcomp, missing: update from automake.
46839
46840 2003-09-07  Paul Eggert  <eggert@twinsun.com>
46841
46842         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
46843         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
46844
46845 2003-09-07  Paul Eggert  <eggert@twinsun.com>
46846
46847         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
46848         copy_tm_result.  Bug reported by Simon Josefsson in
46849         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
46850
46851 2003-09-06  Paul Eggert  <eggert@twinsun.com>
46852
46853         * m4/time_r.m4: New file.
46854         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
46855         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
46856         is. Check for timegm declaration.
46857         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
46858         Do not check for gmtime_r.
46859         Replace mktime if __mktime_internal does not exist and if mktime
46860         hasn't been replaced already.
46861
46862 2003-09-06  Paul Eggert  <eggert@twinsun.com>
46863
46864         * lib/time_r.c, lib/time_r.h: New files.
46865
46866         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
46867         __localtime_r.
46868         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
46869         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
46870
46871         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
46872         __gmtime_r.
46873         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
46874         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
46875         Include <time_r.h>.
46876
46877         * lib/timegm.c: Switch to glibc implementation, with the following
46878         changes:
46879         [defined HAVE_CONFIG_H]: Include <config.h>.
46880         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
46881         (__mktime_internal) [!defined _LIBC]: New decl.
46882         (__gmtime_r) [!defined _LIBC]: New macro and function.
46883         (timegm): Use a prototype, since gnulib assumes C89.
46884         Do not bother declaring tmp to be const, as it's not really usefu.
46885         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
46886         (timegm): Declare only if HAVE_DECL_TIMEGM.
46887
46888 2003-09-06  Paul Eggert  <eggert@twinsun.com>
46889
46890         * MODULES.html.sh (func_all_modules): Add time_r.
46891         * modules/time_r: New file.
46892         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
46893         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
46894
46895 2003-09-03  Paul Eggert  <eggert@twinsun.com>
46896
46897         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
46898         Bug reported by Lute Kamstra in
46899         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
46900
46901         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
46902         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
46903         course with correspondingly smaller numbers for tomorrow and
46904         yesterday.  From Tadayoshi Funaba.  Originally installed into
46905         sh-utils on 1999-08-07, but the patch got lost (I guess during the
46906         coreutils merge?).
46907
46908 2003-08-31  Simon Josefsson  <jas@extundo.com>
46909
46910         * modules/timegm: New file.
46911         * MODULES.html.sh (func_all_modules): Add timegm.
46912
46913 2003-08-31  Simon Josefsson  <jas@extundo.com>
46914
46915         * m4/timegm.m4: New file.
46916
46917 2003-08-31  Simon Josefsson  <jas@extundo.com>
46918
46919         * lib/timegm.h: New file.
46920         * lib/timegm.c: New file.  Based on
46921         wget-1.8.2/src/http.c:mktime_from_utc.
46922
46923 2003-08-31  Karl Berry  <karl@gnu.org>
46924
46925         * lib/argp.h: update from libc.
46926
46927 2003-08-28  Bruno Haible  <bruno@clisp.org>
46928
46929         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
46930         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
46931         followed by '#define fnmatch fnmatch_posix' gives an error.
46932
46933 2003-08-28  Bruno Haible  <bruno@clisp.org>
46934
46935         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
46936         warning on QNX, which defines O_BINARY to 000000.
46937
46938 2003-08-27  Jim Meyering  <jim@meyering.net>
46939
46940         * m4/mkstemp.m4: Require that the system mkstemp be able to create
46941         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
46942         would fail after 32.  Reported by Danny Levinson.  Details here:
46943         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
46944
46945 2003-08-24  Bruno Haible  <bruno@clisp.org>
46946
46947         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
46948         MSVC7 <stdio.h> is included later.
46949
46950 2003-08-22  Simon Josefsson  <jas@extundo.com>
46951
46952         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
46953
46954 2003-08-20  Karl Berry  <karl@gnu.org>
46955
46956         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
46957
46958 2003-08-20  Bruno Haible  <bruno@clisp.org>
46959
46960         * modules/progname: New file.
46961         * MODULES.html.sh (func_all_modules): Add progname.
46962
46963 2003-08-20  Bruno Haible  <bruno@clisp.org>
46964
46965         * lib/progname.h: New file, from GNU gettext.
46966         * lib/progname.c: New file, from GNU gettext.
46967         * lib/progreloc.c: New file, from GNU gettext.
46968
46969 2003-08-19  Jim Meyering  <jim@meyering.net>
46970
46971         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
46972         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
46973
46974 2003-08-19  Bruno Haible  <bruno@clisp.org>
46975
46976         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
46977         more.
46978
46979 2003-08-19  Bruno Haible  <bruno@clisp.org>
46980
46981         * lib/xstrdup.c: Assume <string.h> exists.
46982
46983 2003-08-18  Paul Eggert  <eggert@twinsun.com>
46984
46985         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
46986         in makefile rules.
46987
46988 2003-08-18  Jim Meyering  <jim@meyering.net>
46989
46990         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
46991         * m4/lib-ld.m4: Likewise.
46992
46993 2003-08-18  Jim Meyering  <jim@meyering.net>
46994
46995         * lib/setenv.h: Indent nested cpp directive.
46996         * lib/vasnprintf.c: Remove trailing blanks.
46997
46998 2003-08-17  Simon Josefsson  <jas@extundo.com>
46999
47000         * modules/xstrndup: New file.
47001         * MODULES.html.sh (func_all_modules): Add xstrndup.
47002
47003 2003-08-17  Simon Josefsson  <jas@extundo.com>
47004
47005         * modules/argp: Fix autoconf macro name. Add more dependencies.
47006
47007 2003-08-17  Simon Josefsson  <jas@extundo.com>
47008
47009         * m4/xstrndup.m4: New file.
47010
47011 2003-08-17  Simon Josefsson  <jas@extundo.com>
47012
47013         * m4/argp.m4: New file.
47014
47015 2003-08-17  Simon Josefsson  <jas@extundo.com>
47016             Bruno Haible  <bruno@clisp.org>
47017
47018         * lib/xstrndup.h: New file.
47019         * lib/xstrndup.c: New file.
47020
47021 2003-08-17  Bruno Haible  <bruno@clisp.org>
47022
47023         * modules/strndup (Files, Include): Add lib/strndup.h.
47024
47025 2003-08-17  Bruno Haible  <bruno@clisp.org>
47026
47027         * modules/euidaccess (Files): Add lib/euidaccess.h.
47028
47029 2003-08-17  Bruno Haible  <bruno@clisp.org>
47030
47031         * lib/strndup.h: New file.
47032
47033 2003-08-17  Bruno Haible  <bruno@clisp.org>
47034
47035         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
47036         like AC_GNU_SOURCE.
47037         * modules/extensions (configure.ac): Comment out the invocation of
47038         gl_USE_SYSTEM_EXTENSIONS.
47039
47040 2003-08-16  Paul Eggert  <eggert@twinsun.com>
47041
47042         Merges from coreutils, etc.
47043         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
47044         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
47045         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
47046         fixing a typo.
47047         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
47048         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
47049
47050 2003-08-16  Paul Eggert  <eggert@twinsun.com>
47051
47052         Document merge from coreutils.
47053         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
47054         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
47055         * modules/utime: Add m4/utimes-null.m4.
47056
47057 2003-08-16  Paul Eggert  <eggert@twinsun.com>
47058
47059         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
47060         space, undoing this 2003-08-12 change:
47061         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
47062
47063 2003-08-16  Paul Eggert  <eggert@twinsun.com>
47064
47065         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
47066         strtoul.c from libc, undoing this 2003-08-12 change:
47067         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
47068
47069 2003-08-16  Jim Meyering  <jim@meyering.net>
47070
47071         Merges from coreutils.
47072         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
47073         prefix.  Adjust cache variables similarly.  Create 500 rather than
47074         just 300 files, to exercise bug on Darwin6.5, too.
47075         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
47076         $missing_dir.
47077         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
47078         AM_SYS_POSIX_TERMIOS.
47079         Reported by mkc@mathdogs.com.
47080         Also change use of $am_cv_sys_posix_termios
47081         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
47082         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
47083         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
47084         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
47085         in /proc/mounts until it finds one with matching device number.  This
47086         is unnecessary when the FILE argument *is* a mount point.  No stat call
47087         is necessary in that case.  So, disable the statvfs-testing code on
47088         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
47089         as RedHat bug# 84846.
47090         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
47091         to 1MB, so as not to render systems with no stack size limit (e.g.,
47092         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
47093         Include <unistd.h>.  On some systems,
47094         it is required for the definition of _SC_PAGESIZE.
47095
47096 2003-08-16  Jim Meyering  <jim@meyering.net>
47097
47098         Merge from coreutils.
47099         * lib/xstrtoimax.c: #else #if -> #elif.
47100         * lib/xstrtoumax.c: Likewise.
47101
47102 2003-08-16  Jim Meyering  <jim@meyering.net>
47103
47104         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
47105         * m4/utimes.m4: Removed.
47106         * m4/utimes-null.m4: Renamed from utimes.m4.
47107
47108         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
47109         to 1MB, so as not to render systems with no stack size limit (e.g.,
47110         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
47111         Include <unistd.h>.  On some systems,
47112         it is required for the definition of _SC_PAGESIZE.
47113
47114 2003-08-16  Jim Meyering  <jim@meyering.net>
47115         and Paul Eggert  <eggert@cs.ucla.edu>
47116
47117         Merges from coreutils, etc.
47118
47119         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
47120         using the latest version from cvs.  This avoids problems with #line
47121         directives using a vendor (Sun) compiler.
47122         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
47123         Don't set GETGROUPS_LIB here; now it's
47124         done via getgroups.m4's wrapper function.
47125         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
47126         rather than just in sh-util/configure.in, so that the
47127         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
47128         same.
47129         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
47130         AC_FUNC_GETLOADAVG where to find getloadavg.c.
47131         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
47132         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
47133         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
47134         Remove code that is now done by the newly-required macros.
47135         Append $(EXEEXT) to DF_PROG.
47136         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
47137         Do not invoke or require the following here,
47138         since prereq.m4 or some gnulib .m4 now does this for us:
47139         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
47140         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
47141         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
47142         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
47143         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
47144         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
47145         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
47146         AC_FUNC_OBSTACK.
47147         Do not replace the following functions, as this is now the job
47148         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
47149         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
47150         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
47151         atexit getpass, strdup, getpagesize.
47152         Replace 'raise'.
47153         Do not check for the following functions, as this is now the job
47154         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
47155         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
47156         setregid.
47157         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
47158         Check for sys/sysctl.h.
47159         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
47160         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
47161         of checking for ssize_t ourselves.
47162
47163         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
47164         Require every macro that gnulib/modules/* suggests for us.
47165         (jm_PREREQ_ADDEXT): New macro.
47166         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
47167         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
47168
47169         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
47170         (gl_PHYSMEM): Use it.
47171         Also check for `table' function.
47172         Check for new headers and functions.
47173         Add check for sys/sysmp.h.
47174         With suggestions from Kaveh Ghazi.
47175         Ignore headers that are present but cannot be compiled.  This
47176         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
47177         C 5.4.
47178
47179 2003-08-15  Paul Eggert  <eggert@twinsun.com>
47180
47181         Document merge from coreutils.
47182         * modules/userspec: Depend on posixver.
47183         * modules/strftime: Depend on tzset.
47184
47185 2003-08-15  Paul Eggert  <eggert@twinsun.com>
47186
47187         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
47188         rather than tab, after '#' in shell-script copyright notices.
47189         Suggested by Bruno Haible.
47190
47191 2003-08-15  Paul Eggert  <eggert@twinsun.com>
47192
47193         * config/srclist-update: Use three spaces, rather than tab, after '#'
47194         in shell-script copyright notices.  Suggested by Bruno Haible.
47195         Remove unnecessary parenthesization in regular expression.
47196
47197 2003-08-15  Jim Meyering  <jim@meyering.net>
47198
47199         Merge from coreutils.
47200         * lib/xgethostname.c: Include <stdlib.h>.
47201         (xghostname): Don't exit for anything other than memory-related
47202         failure; just return NULL.
47203         * lib/userspec.c: Include "posixver.h".
47204         (parse_user_spec): Accept `.' as a separator only
47205         in pre-POSIX-200112 mode.
47206         * lib/strtoimax.c: Use #elif rather than #else #if.
47207         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
47208         Remove function, now that we can rely on a working tzset function.
47209         [!_LIBC]: Ensure that the required autoconf test has been run.
47210         [!defined _NL_CURRENT && HAVE_STRFTIME]:
47211         Use underlying_strftime for %r.
47212         * lib/sha.c: Merge in some clean-up and optimization changes from
47213         glibc.
47214         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
47215         Ensure that it is a multiple of 64.
47216         Rearrange loop exit tests so as to avoid performing an
47217         additional fread after encountering an error or EOF.
47218         * lib/realloc.c: Update copyright date.
47219
47220 2003-08-15  Jim Meyering  <jim@meyering.net>
47221         and Paul Eggert  <eggert@twinsun.com>
47222
47223         Merge from coreutils.
47224         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
47225         member but strut utmpx does not.  Needed for AIX 4.3.3.
47226         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
47227
47228 2003-08-15  Jim Meyering  <jim@meyering.net>
47229         and Paul Eggert  <eggert@cs.ucla.edu>
47230
47231         Merges from coreutils, etc.
47232         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
47233         Require gl_FUNC_TZSET_CLOBBER.
47234         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
47235         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
47236         members.
47237
47238 2003-08-14  Paul Eggert  <eggert@twinsun.com>
47239
47240         Help the merge from coreutils.
47241         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
47242         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
47243         * m4/tzset.m4: Use it too.
47244
47245 2003-08-14  Paul Eggert  <eggert@twinsun.com>
47246
47247         * modules/tzset: New file.
47248
47249 2003-08-14  Jim Meyering  <jim@meyering.net>
47250
47251         Merges from coreutils.
47252         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
47253         variable names, rather than @FNMATCH_H@.
47254         * modules/alloca: Likewise for $(ALLOCA_H).
47255
47256         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
47257         the three copies of the literal target, `fnmatch.h'.
47258         * modules/alloca (alloca.h): Likewise.
47259
47260 2003-08-14  Jim Meyering  <jim@meyering.net>
47261
47262         Merge from coreutils.
47263         * m4/tzset.m4: New file.
47264         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
47265         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
47266         otherwise, AIX 5.1 systems would end up using the latter.
47267         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
47268         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
47269         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
47270         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
47271
47272 2003-08-14  Jim Meyering  <jim@meyering.net>
47273
47274         Merge from coreutils.
47275         * lib/obstack.h: Whitespace changes.
47276         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
47277         and xcalloc return values.
47278         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
47279         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
47280         hang on OSF/1 5.1 for DIR on both local and remote file systems.
47281         Reported by (and fix confirmed by) Nelson H. F. Beebe.
47282         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
47283         error from mntctl.
47284         Use mntctl's return value to drive the entry-processing loop, since
47285         we can't rely on the value of the vmt_length member in the last
47286         entry.  On some systems doing so could result in exhausting
47287         virtual memory.  Based in part on a patch from Mike Jetzer.
47288
47289 2003-08-14  Jim Meyering  <jim@meyering.net>
47290         and Paul Eggert  <eggert@twinsun.com>
47291
47292         Merges from coreutils, plus other fixes.
47293         * lib/physmem.c: Merge in portability changes from gcc/libiberty
47294         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
47295         for credits and details.  Thanks to Kaveh Ghazi for helping
47296         to keep these files in sync.
47297         (ARRAY_SIZE): Define it.
47298         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
47299         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
47300         (memcasecmp): Don't assume size_t fits in unsigned int.
47301         Remove casts and duplicate code.
47302         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
47303         (memcpy): Remove definition.
47304         Merge in some clean-up and optimization changes from glibc.
47305         [BLOCKSIZE]: Move definition to top of file.
47306         Ensure that it is a multiple of 64.
47307         Rearrange loop exit tests so as to avoid performing an
47308         additional fread after encountering an error or EOF.
47309         * lib/md5.h (md5_uintptr): Define.
47310         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
47311         return to the initial working directory.  Preserve errno
47312         for caller.
47313         * lib/idcache.c: Include "xalloc.h".
47314         (xmalloc, xrealloc): Remove decls.
47315         (getuser): Remove casts no longer required in C89.
47316         * lib/human.c: Include stdio.h, for sprintf.
47317         * lib/group-member.c: Include "xalloc.h".
47318         (xmalloc, xrealloc): Remove decls.
47319         (get_group_info): Remove casts no longer required in C89.
47320         * lib/getusershell.c (readname): Remove casts no longer required in
47321         C89.
47322         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
47323         * lib/getline.c: Whitespace fix, from coreutils.
47324
47325 2003-08-13  Paul Eggert  <eggert@twinsun.com>
47326
47327         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
47328         Check for isascii.
47329
47330         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
47331         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
47332         Undo previous (whitespace-only) change.
47333
47334 2003-08-13  Paul Eggert  <eggert@twinsun.com>
47335
47336         * lib/exclude.c: Include <ctype.h>
47337         (IN_CTYPE_DOMAIN): New macro.
47338         (is_space): New fn.
47339         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
47340         and empty lines.
47341
47342         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
47343         Undo previous (whitespace-only) change.
47344
47345 2003-08-13  Paul Eggert  <eggert@twinsun.com>
47346
47347         * config/srclist-update: Change update back to the old behavior,
47348         leaving whitespace alone.  Use one 'sed' command rather than a
47349         pipeline.
47350         (fixlicense): Now a variable, not a function.
47351         (remove_trailing_blanks): Remove.
47352         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
47353         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
47354         Undo previous (whitespace-only) change.
47355
47356 2003-08-12  Paul Eggert  <eggert@twinsun.com>
47357
47358         Merge from coreutils.
47359         * modules/euidaccess: Add lib_SOURCES, include for new
47360         file euidaccess.h
47361
47362 2003-08-12  Paul Eggert  <eggert@twinsun.com>
47363
47364         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
47365         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
47366         Normalize leading white space and remove trailing white space.
47367
47368         Merge from coreutils
47369         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
47370
47371         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
47372         0.12.1.  These files are now being upgraded automatically by
47373         ../config/srclist-update.
47374
47375 2003-08-12  Paul Eggert  <eggert@twinsun.com>
47376
47377         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
47378         Normalize leading white space and remove trailing white space.
47379         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
47380         notice, as per ../config/srclist-update.
47381
47382         Merge from coreutils.
47383         * lib/euidaccess.h: New file.
47384         * lib/euidaccess.c: Include it.
47385         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
47386         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
47387         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
47388
47389 2003-08-12  Paul Eggert  <eggert@twinsun.com>
47390
47391         * config/srclist-update: Add copyright notice.
47392         (remove_id_lines, remove_trailing_blanks): New constants.
47393         (fixfile): Use them to normalize spacing a bit in copied files.
47394         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
47395         Normalize leading white space and remove trailing white space.
47396
47397         * config/texinfo.tex: Sync with texinfo.
47398
47399         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
47400         strtoul.c from libc, to merge coreutils whitespace changes.
47401
47402         * config/srclist.txt: Get the following m4 files from gettext:
47403         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
47404         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
47405         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
47406         wint_t.m4.
47407
47408 2003-08-12  Karl Berry  <karl@gnu.org>
47409
47410         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
47411         been made.
47412
47413 2003-08-11  Paul Eggert  <eggert@twinsun.com>
47414
47415         * modules/gnu-source, m4/gnu-source.m4:
47416         Remove; we're assuming Autoconf 2.54 or later now.
47417         Suggested by Bruno Haible.
47418         * MODULES.html.sh (func_all_modules): Remove gnu-source.
47419
47420 2003-08-11  Bruno Haible  <bruno@clisp.org>
47421
47422         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
47423
47424 2003-08-11  Bruno Haible  <bruno@clisp.org>
47425
47426         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
47427         (vasnprintf): Use it instead of wcslen.
47428
47429 2003-08-11  Bruno Haible  <bruno@clisp.org>
47430
47431         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
47432         value to ensure that _Bool promotes to int. Use #define for _Bool when
47433         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
47434
47435 2003-08-10  Karl Berry  <karl@gnu.org>
47436
47437         * lib/regex.h: update from libc (whitespace fix).
47438
47439 2003-08-09  Paul Eggert  <eggert@twinsun.com>
47440
47441         Merge some files from coreutils.  These changes were
47442         originally made by Jim Meyering.
47443         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
47444         many older Unixes require this.
47445         * lib/alloca.c (alloca): Remove cast to argument of free;
47446         no longer needed in C89.
47447         * lib/alloca_.h, regex.h: Fix white space to match
47448         what GNU indent does.
47449
47450 2003-08-09  Paul Eggert  <eggert@twinsun.com>
47451
47452         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
47453         apparently Emacs's Unicode mode got confused before my 2003-08-05
47454         checkin.
47455
47456 2003-08-08  Paul Eggert  <eggert@twinsun.com>
47457
47458         * m4/extensions.m4: New file.
47459         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
47460         Require gl_USE_SYSTEM_EXTENSIONS.
47461         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
47462         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
47463
47464 2003-08-08  Paul Eggert  <eggert@twinsun.com>
47465
47466         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
47467         * modules/extensions, modules/gnu-source: New files.
47468         * modules/timespec, modules/unlocked-io: Depend on extensions.
47469
47470 2003-08-07  Paul Eggert  <eggert@twinsun.com>
47471
47472         * modules/restrict: New file.
47473         * MODULES.html.sh (func_all_modules): Add restrict.
47474         * modules/regex: Depend on restrict.
47475
47476 2003-08-07  Paul Eggert  <eggert@twinsun.com>
47477
47478         * m4/restrict.m4: New file.
47479         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
47480
47481 2003-08-07  Bruno Haible  <bruno@clisp.org>
47482
47483         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
47484         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
47485
47486 2003-08-07  Bruno Haible  <bruno@clisp.org>
47487
47488         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
47489         makes the module 'getndelim2' compatible with the module 'getline'.
47490
47491 2003-08-05  Paul Eggert  <eggert@twinsun.com>
47492
47493         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
47494         byte with "\201" to avoid glitches when editing that source file
47495         with multi-gnome-terminal.
47496
47497 2003-08-05  Paul Eggert  <eggert@twinsun.com>
47498
47499         * lib/bumpalloc.h: Remove.
47500
47501 2003-08-05  Paul Eggert  <eggert@twinsun.com>
47502
47503         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
47504         * modules/bumpalloc: Remove.
47505
47506 2003-08-04  Paul Eggert  <eggert@twinsun.com>
47507
47508         * lib/getloadavg.c: Change copyright notice and spacing to conform to
47509         GNU coding style.
47510
47511         Merge from coreutils.
47512         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
47513         1. From glibc.
47514         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
47515         from Karl Berry, implemented by Jim Meyering.
47516         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
47517         from Dmitry V. Levin.
47518         Remove anachronistic cast of xrealloc.
47519         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
47520         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
47521         type. Otherwise, it wouldn't compile with at least /bin/cc on
47522         ymp-cray-unicos9.0.2.X.
47523         Combine two mostly-identical uses of alloca into one.
47524         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
47525
47526 2003-08-04  Dave Love  <d.love@dl.ac.uk>
47527
47528         [From Emacs.]
47529
47530         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
47531         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
47532         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
47533         obsolete NLIST_NAME_UNION.
47534         [__GNU__]: Undef BSD and FSCALE.
47535         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
47536
47537 2003-08-03  Paul Eggert  <eggert@twinsun.com>
47538
47539         * lib/stdbool_.h (_Bool): Make it signed char, instead of
47540         an enum type, so that it's guaranteed to promote to int.  See:
47541         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
47542
47543 2003-08-03  Karl Berry  <karl@gnu.org>
47544
47545         * config/depcomp: update from automake.
47546
47547 2003-07-31  Paul Eggert  <eggert@twinsun.com>
47548
47549         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
47550         (strerror): Don't assume that a printable int fits in 14 bytes.
47551
47552 2003-07-31  Bruno Haible  <bruno@clisp.org>
47553
47554         * modules/getpass-gnu: New file.
47555         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
47556
47557 2003-07-31  Bruno Haible  <bruno@clisp.org>
47558
47559         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
47560
47561 2003-07-24  Karl Berry  <karl@gnu.org>
47562
47563         * config/missing: update from automake.
47564
47565 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
47566             Bruno Haible  <bruno@clisp.org>
47567
47568         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
47569         * lib/getline.c (getline, getdelim): Likewise.
47570         Remove _GNU_SOURCE define; now it's defined in config.h through
47571         m4/getline.m4.
47572
47573 2003-07-23  Karl Berry  <karl@gnu.org>
47574
47575         * config/config.sub: update from prep.
47576
47577 2003-07-22  Paul Eggert  <eggert@twinsun.com>
47578
47579         * modules/xalloc (Depends-on): Add exitfail.
47580         * modules/xmemcoll: Likewise.
47581
47582 2003-07-22  Paul Eggert  <eggert@twinsun.com>
47583
47584         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
47585         over-parenthesization in macros.
47586
47587         Sync with coreutils.
47588
47589         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
47590         required by C99.
47591
47592         Use `exit_failure' for xalloc and xmemcoll instead of their own
47593         private exit-failure variables.
47594         * lib/xalloc.h (xalloc_exit_failure): Remove.
47595         * lib/xmalloc.c: Likewise.  Include exitfail.h.
47596         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
47597         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
47598         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
47599         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
47600
47601 2003-07-20  Jim Meyering  <jim@meyering.net>
47602
47603         * modules/closeout (Depends-on): Add exitfail.
47604         Suggestion from Bruno Haible.
47605
47606 2003-07-19  Karl Berry  <karl@gnu.org>
47607
47608         * config/config.sub: update from prep.
47609
47610 2003-07-18  Paul Eggert  <eggert@twinsun.com>
47611
47612         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
47613         Remove.
47614         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
47615         to test that it can stand by itself.  Include "exitfail.h".
47616         Clients should set exit_failure instead.
47617         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
47618
47619 2003-07-18  Bruno Haible  <bruno@clisp.org>
47620
47621         * modules/getndelim2: New file.
47622         * modules/getline: Share files with module getndelim2.
47623         * modules/getnline: Depend on getndelim2 instead of sharing files with
47624         it. Add getnline.c to lib_SOURCES.
47625         * MODULES.html.sh (func_all_modules): Add getndelim2.
47626
47627 2003-07-18  Bruno Haible  <bruno@clisp.org>
47628
47629         * m4/getndelim2.m4: New file.
47630         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
47631         invoke gl_PREREQ_GETNDELIM2.
47632         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
47633         gl_PREREQ_GETNDELIM2.
47634         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
47635         gl_GETNDELIM2.
47636
47637 2003-07-18  Bruno Haible  <bruno@clisp.org>
47638
47639         * lib/getndelim2.h: New file.
47640         * lib/getndelim2.c: Make into a module of its own. Include config.h,
47641         getndelim2.h.
47642         (getndelim2): Make non-static. Change return type to ssize_t.
47643         * lib/getline.h: Change argument names.
47644         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
47645         * lib/getnline.c: Include getndelim2.h.
47646
47647 2003-07-18  Andreas Schwab  <schwab@suse.de>
47648
47649         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
47650
47651 2003-07-17  Karl Berry  <karl@gnu.org>
47652
47653         * config/config.sub: update from prep.
47654
47655 2003-07-17  Bruno Haible  <bruno@clisp.org>
47656
47657         * modules/getnline: New file.
47658         * modules/getline: Add lib/getndelim2.c to source file list.
47659         * MODULES.html.sh (func_all_modules): Add getnline.
47660
47661 2003-07-17  Bruno Haible  <bruno@clisp.org>
47662
47663         * m4/getnline.m4: New file.
47664
47665 2003-07-17  Bruno Haible  <bruno@clisp.org>
47666
47667         * m4/Makefile.am.in: Remove file.
47668         * m4/Makefile.am: Remove file.
47669         * m4/Makefile.in: Remove file.
47670
47671 2003-07-17  Bruno Haible  <bruno@clisp.org>
47672
47673         * lib/getnline.h: New file.
47674         * lib/getnline.c: New file.
47675         * lib/getndelim2.c: New file, extracted from getline.c.
47676         (getndelim2): Renamed from getdelim2, with added nmax argument.
47677         * lib/getline.c: Include getndelim2.c.
47678         (getdelim2): Moved out to getndelim2.c.
47679         (getline, getdelim): Update.
47680
47681 2003-07-17  Bruno Haible  <bruno@clisp.org>
47682
47683         * lib/Makefile.am: Remove file.
47684         * lib/Makefile.in: Remove file.
47685
47686 2003-07-17  Bruno Haible  <bruno@clisp.org>
47687
47688         * configure.in: Remove file.
47689         * Makefile.in: Remove file.
47690
47691 2003-07-17  Bruno Haible  <bruno@clisp.org>
47692
47693         * MODULES.html.sh: Put the </BODY> right before </HTML>.
47694
47695 2003-07-16  Karl Berry  <karl@gnu.org>
47696
47697         * config/srclist-update: was running fixlicense twice, which caused
47698                 texinfo.tex to be nullified for some reason.  Simplify,
47699                 $gplsrc is no longer needed as far as I can see?
47700
47701 2003-07-16  Jim Meyering  <jim@meyering.net>
47702
47703         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
47704
47705 2003-07-15  Paul Eggert  <eggert@twinsun.com>
47706
47707         * config/srclist.txt: Get the following files from gettext-runtime/intl
47708         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
47709         ref-del.sin.  From Bruno Haible.
47710         * config/srclist-update (fixfile): Change grep pattern again, since the
47711         previous fix didn't work (there was another trailing $).  Use
47712         '[$]' to escape the $s.
47713
47714 2003-07-15  Karl Berry  <karl@gnu.org>
47715
47716         * lib/vasnprintf.c: update from gettext.
47717
47718 2003-07-15  Karl Berry  <karl@gnu.org>
47719
47720         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
47721         gets expanded when surrounded by '$'.
47722
47723 2003-07-15  Jim Meyering  <jim@meyering.net>
47724
47725         * modules/save-cwd: Don't depend on error.  From Derek Price.
47726
47727 2003-07-15  Jim Meyering  <jim@meyering.net>
47728
47729         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
47730
47731 2003-07-14  Simon Josefsson  <jas@extundo.com>
47732
47733         * modules/mempcpy: New file.
47734         * MODULES.html.sh (func_all_modules): Add mempcpy.
47735
47736 2003-07-14  Simon Josefsson  <jas@extundo.com>
47737
47738         * m4/mempcpy.m4: New file.
47739
47740 2003-07-14  Simon Josefsson  <jas@extundo.com>
47741
47742         * lib/mempcpy.h: New file.
47743         * lib/mempcpy.c: New file.
47744
47745 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47746
47747         * modules/getdate, modules/posixtm: Depend on mktime.
47748
47749 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47750
47751         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
47752         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
47753         unicodeio.c, unicodeio.h, unlocked-io.h:
47754         Switch from LGPL to GPL.
47755
47756 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47757
47758         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
47759         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
47760         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
47761         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
47762         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
47763         updated automatically by ../config/srclist-update.  This changes
47764         their license from LPGL to GPL.
47765
47766 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47767
47768         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
47769         assumed to refer to the root of the most recent stable gettext version.
47770         * config/srclistvars.sh: Add defaults for eggert.
47771         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
47772         Match "This program" as well as "The program".  This is needed
47773         for gettext.
47774
47775 2003-07-14  Jim Meyering  <jim@meyering.net>
47776
47777         Don't emit diagnostics.  Let callers do that.
47778         * lib/save-cwd.c: Don't include "error.h".
47779         (save_cwd): Don't call error.  Ensure that errno is valid
47780         when returning nonzero.
47781
47782         * lib/save-cwd.h (restore_cwd): Update prototype.
47783         * lib/save-cwd.c (restore_cwd): Remove two parameters.
47784         Simplify.  Don't call error upon failure.  Let callers do that.
47785         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
47786         when auditing is enabled.  But don't bother updating the #if.
47787
47788 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
47789
47790         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
47791         it breaks C++ compilation.
47792         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
47793
47794 2003-07-10  Simon Josefsson  <jas@extundo.com>
47795
47796         * modules/strchrnul (Makefile.am): Add strchrnul.h.
47797
47798 2003-07-10  Jim Meyering  <jim@meyering.net>
47799
47800         * m4/clock_time.m4: Remove trailing blank.
47801         * m4/intmax_t.m4: Likewise.
47802
47803 2003-07-10  Jim Meyering  <jim@meyering.net>
47804
47805         * lib/vasnprintf.c: Remove trailing blanks.
47806         Make cpp indentation consistent.
47807
47808 2003-07-09  Paul Eggert  <eggert@twinsun.com>
47809
47810         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
47811         posixver.c, strftime.c, strnlen.c, strverscmp.c:
47812         Switch from LGPL to GPL.
47813
47814 2003-07-09  Paul Eggert  <eggert@twinsun.com>
47815
47816         * config/srclist.txt: Sort sublists.  Add
47817         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
47818         that differ from gnulib for one reason or another; we'd like this list
47819         to be smaller but for now let's document what we have.
47820
47821 2003-07-08  Paul Eggert  <eggert@twinsun.com>
47822
47823         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
47824         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
47825         and sweeter "eval x=$x".
47826         * config/srclist.txt: Get lib/argp* from glibc.
47827
47828 2003-07-07  Paul Eggert  <eggert@twinsun.com>
47829
47830         * lib/mktime.c: Fix some boundary cases and remove need for floating
47831         point.
47832
47833         Issue a compile-time diagnostic if time_t is floating point, or if
47834         two's complement arithmetic is not in effect, or if arithmetic
47835         right shift does not propagate the sign.  These assumptions were
47836         all in the original code but they weren't checked.
47837
47838         (TIME_T_MIDPOINT, verify): New macros.
47839         (__isleap): Remove; it has integer overflow problems.
47840         (leapyear): New function, without those problems.
47841         (ydhms_tm_diff): Remove; splitting into two parts.
47842         (ydhms_diff): New function, containing the arithmetic part of
47843         the old ydhms_tm_diff function.  Issue a compile-time
47844         diagnostic if we are not using C99 integer division.
47845         Avoid casts when possible.
47846         (guess_time_tm): New function, containing the checking part of
47847         the old ydhms_tm_diff function.  Return the new value, rather than
47848         the difference between it and the old.  Accept a new argument T
47849         so that *T specifies the old value.  Check for overflow in the result.
47850
47851         (__mktime_internal): Use a time_t offset, not a long int offset.
47852         This undoes the 2003-06-04 change, which is no longer needed now
47853         that we have better overflow checking.
47854         (localtime_offset): Likewise.
47855
47856         (__mktime_internal): Avoid harmful overflow on hosts where time_t
47857         and long are 64-bit but int is only 32-bit.
47858         (ydhms_diff): Use long int to store year1 and yday1.
47859         Issue a compile-time diagnostic if long int is not wide enough.
47860
47861         (__mktime_internal): Use long int to store adjusted year and yday.
47862         Use plain C rather than preprocessor commands, if that doesn't
47863         affect efficiency.
47864         Check for overflow (and try to repair) after each probe
47865         rather than checking only at the very end.  This avoids some bugs
47866         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
47867         does not equal GMT offset at maximum time).
47868         Use integer to check for overflow rather than floating point; this
47869         is more portable to non-IEEE hosts, and is a tad faster.
47870         When we detect that we are oscillating between two values,
47871         don't check whether tm_isdst has the requested value, since
47872         we already know the answer.  When tm_isdst has the wrong value,
47873         use a different heuristic to find the right one, based on the
47874         extreme values actually observed in practice in tz2003a,
47875         rather than the (overly optimistic) "previous 3 calendar quarters".
47876
47877         (not_equal_tm, print_tm, check_result): Use "const T" rather than
47878         "T const" to accommodate glibc style.
47879         (check_result): Use less-confusing report format.  "long" -> "long int.
47880         (main): Likewise.
47881         Don't loop if the iteration overflows time_t.
47882         Allow a negative step in the iteration.
47883
47884 2003-07-06  Karl Berry  <karl@gnu.org>
47885
47886         * config/depcomp: update from automake.
47887         * config/config.sub: update from prep.
47888
47889 2003-07-03  Karl Berry  <karl@gnu.org>
47890
47891         * config/config.guess: update from prep.
47892
47893 2003-07-01  Paul Eggert  <eggert@twinsun.com>
47894
47895         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
47896         xreadlink.c now includes it unconditionally.
47897
47898 2003-07-01  Paul Eggert  <eggert@twinsun.com>
47899
47900         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
47901         having it depend on HAVE_SYS_TYPES_H.
47902
47903 2003-07-01  Bruno Haible  <bruno@clisp.org>
47904
47905         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
47906         <sys/types.h> should be sufficient.
47907         Reported by Paul Eggert.
47908
47909 2003-06-26  Karl Berry  <karl@gnu.org>
47910
47911         * config/depcomp: update from automake.
47912
47913 2003-06-26  Bruno Haible  <bruno@clisp.org>
47914
47915         * modules/human: Depend on module stdbool.
47916
47917 2003-06-25  Bruno Haible  <bruno@clisp.org>
47918
47919         * modules/readlink: New file.
47920         * modules/xreadlink: Depend on it.
47921         * MODULES.html.sh (func_all_modules): Add readlink.
47922
47923 2003-06-25  Bruno Haible  <bruno@clisp.org>
47924
47925         * m4/readlink.m4: New file.
47926
47927 2003-06-25  Bruno Haible  <bruno@clisp.org>
47928
47929         * lib/readlink.c: New file.
47930
47931 2003-06-22  Karl Berry  <karl@gnu.org>
47932
47933         * config/srclist.txt: update mkinstalldirs from automake.
47934         * config/mkinstalldirs: update.
47935
47936 2003-06-22  Bruno Haible  <bruno@clisp.org>
47937
47938         Portability to mingw32.
47939         * m4/ssize_t.m4: New file, from GNU gettext.
47940         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
47941         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
47942
47943 2003-06-22  Bruno Haible  <bruno@clisp.org>
47944
47945         * modules/safe-read: Add m4/ssize_t.m4.
47946         * modules/xreadlink: Add m4/ssize_t.m4.
47947
47948 2003-06-20  Bruno Haible  <bruno@clisp.org>
47949
47950         Assume C89, so PARAMS isn't needed.
47951         * lib/unicodeio.h (PARAMS): Remove.
47952         * lib/unicodeio.c: Don't use PARAMS.
47953
47954 2003-06-18  Karl Berry  <karl@gnu.org>
47955
47956         * config/config.{guess,sub}: update from prep.
47957
47958 2003-06-18  Jim Meyering  <jim@meyering.net>
47959
47960         Merge changes from coreutils.
47961         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
47962         Remove explicit declarations of xmalloc and realloc.
47963         Include xalloc.h.
47964         (read_utmp): Remove anachronistic cast of xmalloc.
47965
47966 2003-06-17  Paul Eggert  <eggert@twinsun.com>
47967
47968         Assume C89, so PARAMS isn't needed.
47969         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
47970         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
47971         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
47972         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
47973         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
47974         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
47975         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
47976         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
47977         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
47978         lib/xstrtod.h, lib/xstrtol.h: Likewise.
47979         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
47980         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
47981         no longer needed. Anyway, config.h should always be included before any
47982         other file.
47983
47984 2003-06-11  Simon Josefsson  <jas@extundo.com>
47985
47986         * modules/sysexits: New file.
47987         * MODULES.html.sh (func_all_modules): Add sysexits.
47988
47989 2003-06-11  Simon Josefsson  <jas@extundo.com>
47990
47991         * lib/sysexit_.h: New file.
47992
47993 2003-06-11  Derek Price  <derek@ximbiot.com>
47994
47995         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
47996         necessary.
47997
47998 2003-06-11  Bruno Haible  <bruno@clisp.org>
47999
48000         * m4/sysexits.m4: New file.
48001
48002 2003-06-10  Simon Josefsson  <jas@extundo.com>
48003
48004         * lib/argp.h: New file, from glibc.
48005         * lib/argp-ba.c: New file, from glibc.
48006         * lib/argp-eexst.c: New file, from glibc.
48007         * lib/argp-fmtstream.c: New file, from glibc.
48008         * lib/argp-fmtstream.h: New file, from glibc.
48009         * lib/argp-fs-xinl.c: New file, from glibc.
48010         * lib/argp-help.c: New file, from glibc.
48011         * lib/argp-namefrob.h: New file, from glibc.
48012         * lib/argp-parse.c: New file, from glibc.
48013         * lib/argp-pv.c: New file, from glibc.
48014         * lib/argp-pvh.c: New file, from glibc.
48015         * lib/argp-xinl.c: New file, from glibc.
48016
48017 2003-06-10  Simon Josefsson  <jas@extundo.com>
48018
48019         * modules/strchrnul: New file.
48020
48021 2003-06-10  Simon Josefsson  <jas@extundo.com>
48022
48023         * modules/argp: New file.
48024
48025 2003-06-10  Simon Josefsson  <jas@extundo.com>
48026
48027         * m4/strchrnul.m4: New file.
48028
48029 2003-06-10  Simon Josefsson  <jas@extundo.com>
48030
48031         * lib/strchrnul.h: New file.
48032         * lib/strchrnul.c: New file.
48033
48034 2003-06-10  Bruno Haible  <bruno@clisp.org>
48035
48036         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
48037
48038 2003-06-07  Karl Berry  <karl@gnu.org>
48039
48040         * config/config.{guess,sub}: update from prep.
48041
48042 2003-06-07  Jim Meyering  <jim@meyering.net>
48043
48044         * modules/strtod: Use $(...) notation, not @...@ for
48045         AC_REPLACE'd variables.
48046         * modules/localcharset: Likewise.
48047
48048 2003-06-07  Jim Meyering  <jim@meyering.net>
48049
48050         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
48051         in place of my name in the copyright comment.
48052         Remove definition and uses of __P.
48053
48054         From coreutils.
48055         * lib/stat.c: Don't declare xmalloc explicitly.
48056         Instead, include "xalloc.h".
48057         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
48058         xrealloc, and xcalloc return values.
48059         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
48060         Improve comment.
48061         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
48062
48063 2003-06-07  Bruno Haible  <bruno@clisp.org>
48064
48065         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
48066         avoid AC_CONFIG_LINKS.
48067         * modules/fnmatch (Makefile.am): Use explicit creation rule for
48068         fnmatch.h, to avoid AC_CONFIG_LINKS.
48069         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
48070
48071 2003-06-07  Bruno Haible  <bruno@clisp.org>
48072
48073         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
48074         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
48075         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
48076         directory.
48077         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
48078         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
48079         directory.
48080
48081 2003-06-06  Jim Meyering  <jim@meyering.net>
48082
48083         Merge from coreutils.
48084         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
48085         Consolidate declarations and initializations of *_base* locals.
48086
48087         Merge from coreutils.
48088         This avoids a core dump on systems without GNU putenv,
48089         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
48090         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
48091         (unsetenv): New static function, from GNU libc.
48092         (rpl_putenv): Use it.
48093
48094         * lib/modechange.c: Remove trailing blanks.
48095
48096         Merge from coreutils.
48097         * lib/fsusage.c: Remove declaration of statfs.
48098         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
48099
48100         * lib/posixtm.c: Include <stdbool.h> unconditionally.
48101
48102 2003-06-06  Jim Meyering  <jim@meyering.net>
48103
48104         * lib/stdbool_.h: Renamed from stdbool.h.in.
48105
48106 2003-06-06  Jim Meyering  <jim@meyering.net>
48107             Bruno Haible  <bruno@clisp.org>
48108
48109         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
48110         Adjust Makefile.am snippet not to redirect directly to target.
48111         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
48112
48113 2003-06-05  Paul Eggert  <eggert@twinsun.com>
48114
48115         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
48116         mismatch, look in future quarters as well as past.  This fixes a
48117         bug when processing fall-backwards gaps immediately after a long
48118         period of daylight-saving time.
48119
48120         * lib/mktime.c: Assume freestanding C89 or better.
48121         (HAVE_LIMITS_H): Remove.  Assume it's 1.
48122         (__P): Remove; not used.
48123         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
48124         (mktime, not_equal_tm, print_tm, check_result,
48125         main): Use prototypes.  Use const * where appropriate.
48126         (main): Fix typo in testing code that uncovered by above changes.
48127         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
48128
48129 2003-06-04  Paul Eggert  <eggert@twinsun.com>
48130
48131         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
48132         locale.h, localeconv.  This merges changes from coreutils.
48133
48134         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
48135         It can be removed after the next Autoconf is released.
48136         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
48137         needed.
48138
48139 2003-06-04  Paul Eggert  <eggert@twinsun.com>
48140
48141         * lib/mktime.c: Fix Debian bug 177940
48142         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
48143         (localtime_offset): Now long int, not time_t, because we want it
48144         to be guaranteed to be signed.  All uses changed.
48145         (__mktime_internal): If overflow would occur when adding offset,
48146         don't add it.
48147
48148         Merge 'human' changes from coreutils.  Rewrite to support
48149         locale-specific notations like thousands separators.
48150         * lib/human.c: Simplify authorship notice.
48151         Include human.h immediately after config.h.
48152         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
48153         <limits.h>: Do not include, since human.h does.
48154         (SIZE_MAX, UINTMAX_MAX): New macros.
48155         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
48156         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
48157         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
48158         (power_letter): Renamed from suffixes.
48159         (generate_suffix_backwards): Remove.
48160         (adjust_value): Now takes int style (because of human.h changes)
48161         and long double value (for greater precision on some platforms).
48162         (group_number): New function.
48163         (human_readable): Use it.  Use integer options, not enum.
48164         Put the options before the sizes in the arg list.
48165         Support all the new options.
48166         The old human_readable function has been removed;
48167         use inttostr.h instead.
48168         (human_readable, default_block_size, humblock):
48169         Use uintmax_t, not int, for block sizes.
48170         (human_readable_inexact, block_size_types): Remove.
48171         (block_size_opts): New constant.
48172         (human_options): Renamed from human_block_size, with new signature
48173         that allows block sizes up to UINTMAX_MAX.  All callers changed.
48174         * lib/human.h: Add copyright and authorship notice.
48175         Include <limits.h> and <stdbool.h> unconditionally.
48176         (PARAMS): Remove.  All uses removed.
48177         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
48178         (enum human_inexact_style): Remove tag; now a nameless enum.
48179         (human_floor, human_ceiling, human_round_to_even): Now have
48180         values 2, 0, 1 rather than -1, 1, 0.
48181         (human_group_digits, human_suppress_point_zero, human_autoscale,
48182         human_base_1024, human_SI, human_B): New constants.
48183         (human_readable_inexact, human_block_size): Remove.
48184         (human_readable): Size args are now uintmax_t, not int.
48185         (human_options): New decl.
48186
48187         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
48188         unnecessary now that we assume C89 or better.  This change
48189         imported from coreutils.
48190
48191         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
48192         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
48193         in the 2003-05-30 sync from glibc.
48194
48195         .h files should stand alone, but we shouldn't include <sys/types.h>
48196         if we can get away with just <stddef.h>.
48197
48198         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
48199         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
48200         rather than <sys/types.h>, as we merely need size_t.
48201         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
48202         to get size_t.
48203         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
48204         Include <stdio.h>, to get FILE.
48205         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
48206         memcasecmp.h has included <stddef.h> and all we need is size_t.
48207         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
48208         our interface, instead of including <sys/types.h>
48209
48210 2003-06-04  Paul Eggert  <eggert@twinsun.com>
48211
48212         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
48213         now, as glibc mktime is buggy on non-glibc systems.
48214
48215 2003-06-03  Karl Berry  <karl@gnu.org>
48216
48217         * config/config.sub: update from prep.
48218
48219 2003-06-02  Paul Eggert  <eggert@twinsun.com>
48220
48221         [from coreutils]
48222         Fix some minor time-related bugs with POSIX time arguments.
48223         Some valid time stamps were being rejected (notably -1, and
48224         time stamps before 1900 on 64-bit hosts).  And some invalid
48225         time stamps were being accepted, e.g. September 31.
48226
48227         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
48228         that we can return (time_t) -1 successfully.
48229         * lib/posixtm.c: Likewise.
48230         [HAVE_STDBOOL_H]: Include <stdbool.h>.
48231         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
48232         (t): Remove static var.
48233         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
48234         of static var.  All uses changed.
48235         (year): Do not reject years before 1900; they can occur with
48236         64-bit time_t.
48237         (posix_time_parse): Do not check for out-of-range components;
48238         that is now the caller's responsibility, since our checks were
48239         only approximations.
48240         (posixtime): Use mktime to check for out-of-range components,
48241         since it knows them exactly.
48242         If mktime returns (time_t) -1, check whether an error actually occurred
48243         by invoking localtime on -1.
48244         (main) [TEST_POSIXTIME]: Check for input data errors, and report
48245         posixtime failures better.
48246         Improve the test data (in comments only).
48247
48248 2003-06-02  Karl Berry  <karl@gnu.org>
48249
48250         * config/mkinstalldirs (version): new variable.
48251         (--version): new option.
48252         (usage): improve message.
48253
48254 2003-05-30  Karl Berry  <karl@gnu.org>
48255
48256         * lib/mktime.c: update from libc.
48257
48258 2003-05-30  Bruno Haible  <bruno@clisp.org>
48259
48260         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
48261         * config/config.rpath: Upgrade to gettext-0.12.1.
48262
48263 2003-05-30  Bruno Haible  <bruno@clisp.org>
48264
48265         * m4/gettext.m4: Upgrade to gettext-0.12.1.
48266         * m4/nls.m4: New file, from gettext-0.12.1.
48267         * m4/po.m4: New file, from gettext-0.12.1.
48268         * m4/progtest.m4: Upgrade to gettext-0.12.1.
48269
48270 2003-05-30  Bruno Haible  <bruno@clisp.org>
48271
48272         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
48273         * lib/localcharset.h: Likewise.
48274         * lib/localcharset.c: Likewise.
48275
48276 2003-05-29  Karl Berry  <karl@gnu.org>
48277
48278         * config/config.rpath: update from gettext.
48279
48280 2003-05-28  Paul Eggert  <eggert@twinsun.com>
48281
48282         Assume the headers required for C89 freestanding compilers.
48283         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
48284         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
48285         * m4/human.m4 (gl_HUMAN): Likewise.
48286         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
48287         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
48288         * m4/userspec.m4 (gl_USERSPEC): Likewise.
48289         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
48290         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
48291         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
48292
48293 2003-05-28  Paul Eggert  <eggert@twinsun.com>
48294
48295         Assume the headers required for C89 freestanding compilers.
48296         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
48297         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
48298         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
48299         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
48300         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
48301         define, since <limits.h> is guaranteed to do that.
48302         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
48303         * lib/exclude.c: Include <stdbool.h> unconditionally.
48304         * lib/tempname.c: Include <stddef.h> unconditionally.
48305         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
48306         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
48307         <stddef.h> does that.
48308         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
48309         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
48310         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
48311         needed.
48312         * lib/xstrtol.c: Likewise.
48313         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
48314         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
48315
48316         * lib/addext.c (addext): Use assignment rather than cast, to avoid
48317         warnings on some platforms.
48318
48319         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
48320         arbitrarily.
48321
48322 2003-05-26  Jim Meyering  <jim@meyering.net>
48323
48324         Merge in a change from coreutils:
48325         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
48326         that is guaranteed to be `no'.  Use `no_such_member' to indicate
48327         that condition, rather than `-1' which is slightly misleading.
48328         Change the name of the cache variable to have the gl_ prefix.
48329         Prompted by a patch from Richard Dawe for DJGPP.
48330
48331 2003-05-24  Karl Berry  <karl@gnu.org>
48332
48333         * config/config.guess: update from prep.
48334
48335 2003-05-22  Karl Berry  <karl@gnu.org>
48336
48337         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
48338
48339 2003-05-20  Karl Berry  <karl@gnu.org>
48340
48341         * config/config.guess: update from prep.
48342
48343 2003-05-18  Karl Berry  <karl@gnu.org>
48344
48345         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
48346         might actually be set by the user.
48347
48348         * config/depcomp, install-sh, mdate-sh: update from automake.
48349
48350 2003-05-17  Bruno Haible  <bruno@clisp.org>
48351
48352         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
48353         invalid expansion for AC_EGREP_CPP.
48354         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
48355         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
48356         Suggested by Akim Demaille <akim@epita.fr> in
48357         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
48358
48359 2003-05-12  Jim Meyering  <jim@meyering.net>
48360
48361         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
48362         the space-padded-by-default conversion specifiers, %e, %k, %l.
48363
48364 2003-05-12  Bruno Haible  <bruno@clisp.org>
48365
48366         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
48367         the string is longer than 4 KB.
48368
48369 2003-05-11  Karl Berry  <karl@gnu.org>
48370
48371         * config/config.{guess,sub}: update from prep.
48372
48373 2003-05-09  Bruno Haible  <bruno@clisp.org>
48374
48375         * modules/error: Add m4/strerror_r.m4 to file list.
48376
48377 2003-05-03  Bruno Haible  <bruno@clisp.org>
48378
48379         Upgrade to Unicode-4.0.
48380         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
48381         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
48382         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
48383         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
48384         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
48385         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
48386         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
48387         Change width of U+E0100..U+E01EF from 1 to 0.
48388
48389 2003-04-25  Jim Meyering  <jim@meyering.net>
48390
48391         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
48392         of type size_t, not int.
48393
48394 2003-04-25  Bruno Haible  <bruno@clisp.org>
48395
48396         * lib/copy-file.c: Include <stddef.h>, for size_t.
48397
48398 2003-04-21  Paul Eggert  <eggert@twinsun.com>
48399
48400         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
48401         code which expansion is under static control.  Patch imported from
48402         Akim Demaille's patch to Bison; see
48403         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
48404
48405 2003-04-14  Bruno Haible  <bruno@clisp.org>
48406
48407         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
48408
48409 2003-04-11  Jim Meyering  <jim@meyering.net>
48410
48411         Merge changes from Coreutils.
48412
48413         2003-03-22  Jim Meyering  <jim@meyering.net>
48414
48415         * lib/strftime.c (widen): Cast alloca return value to proper type.
48416
48417         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
48418
48419         From GNU libc.
48420         * lib/strftime.c (my_strftime): Handle very large width
48421         specifications for numeric values correctly.  Improve checks for
48422         overflow.
48423
48424         2003-01-19  Jim Meyering  <jim@meyering.net>
48425
48426         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
48427         definitions.
48428         (nl_get_alt_digit) [! defined my_strftime]: Define.
48429         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
48430         _nl_get_alt_digit and _nl_get_walt_digit.
48431
48432         * lib/strftime.c (my_strftime): Merge in locale-related changes from
48433         libc. These changes have no effect outside of _LIBC.
48434
48435 2003-04-10  Bruno Haible  <bruno@clisp.org>
48436
48437         * modules/findprog: New file.
48438         * MODULES.html.sh (func_all_modules): Add it.
48439
48440 2003-04-10  Bruno Haible  <bruno@clisp.org>
48441
48442         * m4/findprog.m4: New file.
48443         * m4/eaccess.m4: New file.
48444
48445 2003-04-10  Bruno Haible  <bruno@clisp.org>
48446
48447         * lib/findprog.h: New file, from GNU gettext.
48448         * lib/findprog.c: New file, from GNU gettext.
48449
48450 2003-04-05  Jim Meyering  <jim@meyering.net>
48451
48452         Merge changes from Coreutils.
48453
48454         * lib/exclude.h (PARAMS): Remove definition and uses.
48455         * lib/exclude.c: Remove uses of `PARAMS'.
48456
48457         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
48458         Add test-cases for DOS filenames. Declare program_name.
48459         (main): Set up program_name.  Patch by Rich Dawe.
48460
48461         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
48462         error from mntctl.
48463         Use mntctl's return value to drive the entry-processing loop, since
48464         we can't rely on the value of the vmt_length member in the last
48465         entry.  On some systems doing so could result in exhausting
48466         virtual memory.  Based in part on a patch from Mike Jetzer.
48467
48468 2003-04-04  Bruno Haible  <bruno@clisp.org>
48469
48470         * modules/linebreak: New file.
48471         * MODULES.html.sh (func_all_modules): Add it.
48472
48473 2003-04-04  Bruno Haible  <bruno@clisp.org>
48474
48475         * m4/linebreak.m4: New file.
48476
48477 2003-04-04  Bruno Haible  <bruno@clisp.org>
48478
48479         * lib/linebreak.h: New file, from GNU gettext.
48480         * lib/linebreak.c: New file, from GNU gettext with slight
48481         modifications.
48482         * lib/lbrkprop.h: New file, from GNU gettext.
48483
48484 2003-04-03  Bruno Haible  <bruno@clisp.org>
48485
48486         * modules/utf8-ucs4: New file.
48487         * modules/utf16-ucs4: New file.
48488         * modules/ucs4-utf8: New file.
48489         * modules/ucs4-utf16: New file.
48490         * MODULES.html.sh (func_all_modules): Add them.
48491
48492 2003-04-03  Bruno Haible  <bruno@clisp.org>
48493
48494         * m4/utf-ucs4.m4: New file.
48495         * m4/ucs4-utf.m4: New file.
48496
48497 2003-04-03  Bruno Haible  <bruno@clisp.org>
48498
48499         * lib/utf8-ucs4.h: New file, from GNU gettext.
48500         * lib/utf16-ucs4.h: New file, from GNU gettext.
48501         * lib/ucs4-utf8.h: New file, from GNU gettext.
48502         * lib/ucs4-utf16.h: New file, from GNU gettext.
48503
48504 2003-04-02  Bruno Haible  <bruno@clisp.org>
48505
48506         * modules/binary-io: New file.
48507         * MODULES.html.sh (func_all_modules): Add it.
48508
48509 2003-04-02  Bruno Haible  <bruno@clisp.org>
48510
48511         * lib/binary-io.h: New file, from GNU gettext.
48512
48513 2003-04-01  Bruno Haible  <bruno@clisp.org>
48514
48515         * modules/pathname: New file.
48516         * MODULES.html.sh (func_all_modules): Add it.
48517
48518 2003-04-01  Bruno Haible  <bruno@clisp.org>
48519
48520         * lib/pathname.h: New file, from GNU gettext.
48521         * lib/concatpath.c: New file, from GNU gettext.
48522
48523 2003-03-30  Bruno Haible  <bruno@clisp.org>
48524
48525         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
48526
48527 2003-03-30  Bruno Haible  <bruno@clisp.org>
48528
48529         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
48530         function chown() doesn't exist.
48531
48532 2003-03-28  Bruno Haible  <bruno@clisp.org>
48533
48534         * modules/copy-file: New file.
48535         * MODULES.html.sh (func_all_modules): Add it.
48536
48537 2003-03-28  Bruno Haible  <bruno@clisp.org>
48538
48539         * m4/copy-file.m4: New file.
48540
48541 2003-03-28  Bruno Haible  <bruno@clisp.org>
48542
48543         * lib/copy-file.h: New file, from GNU gettext.
48544         * lib/copy-file.c: New file, from GNU gettext.
48545
48546 2003-03-18  Jim Meyering  <jim@meyering.net>
48547
48548         * lib/quote.c (quote_n): Fix typo in comment.
48549
48550 2003-03-18  Bruno Haible  <bruno@clisp.org>
48551
48552         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
48553         checking.
48554         * m4/onceonly_2_57.m4: Likewise.
48555
48556 2003-03-17  Bruno Haible  <bruno@clisp.org>
48557
48558         * m4/onceonly.m4: Require autoconf 2.54 or newer.
48559         (m4_quote): Remove macro.
48560         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
48561
48562 2003-03-14  Jim Meyering  <jim@meyering.net>
48563
48564         Merge changes from Coreutils.
48565         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
48566         to be const, in order to avoid warnings.
48567         (obstack_room): Likewise.
48568         (obstack_empty_p): Likewise.
48569
48570 2003-03-14  Bruno Haible  <bruno@clisp.org>
48571
48572         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
48573         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
48574
48575 2003-03-13  Paul Eggert  <eggert@twinsun.com>
48576
48577         Merge changes from Bison.
48578         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
48579         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
48580         when compiling Bison 1.875's `bitset bset = obstack_alloc
48581         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
48582         * lib/hash.c: Include <stdbool.h> unconditionally.
48583
48584 2003-03-13  Paul Eggert  <eggert@twinsun.com>
48585
48586         * m4/onceonly.m4 (m4_quote): New macro.
48587         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
48588         Quote AC_FOREACH variable-expansions properly.
48589
48590 2003-03-13  Paul Eggert  <eggert@twinsun.com>
48591
48592         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
48593
48594 2003-03-09  Paul Eggert  <eggert@twinsun.com>
48595
48596         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
48597         Reported by Bruce Becker; see:
48598         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
48599
48600 2003-03-03  Paul Eggert  <eggert@twinsun.com>
48601             Bruno Haible  <bruno@clisp.org>
48602
48603         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
48604         Reported by John Hughes, see
48605         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
48606
48607 2003-02-20  Bruno Haible  <bruno@clisp.org>
48608
48609         * MODULES.html.sh (func_all_modules): Add poll.
48610
48611 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
48612
48613         * modules/poll: New file.
48614
48615 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
48616
48617         * lib/poll_.h: New file.
48618         * lib/poll.c: New file.
48619
48620 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
48621
48622         * m4/poll.m4: New file.
48623
48624 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
48625
48626         * modules/mathl: New file.
48627
48628 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
48629
48630         * lib/mathl.h: New file.
48631         * lib/acosl.c: New file.
48632         * lib/asinl.c: New file.
48633         * lib/atanl.c: New file.
48634         * lib/ceill.c: New file.
48635         * lib/cosl.c: New file.
48636         * lib/expl.c: New file.
48637         * lib/floorl.c: New file.
48638         * lib/frexpl.c: New file.
48639         * lib/ldexpl.c: New file.
48640         * lib/logl.c: New file.
48641         * lib/sincosl.c: New file.
48642         * lib/sinl.c: New file.
48643         * lib/sqrtl.c: New file.
48644         * lib/tanl.c: New file.
48645         * lib/trigl.c: New file.
48646         * lib/trigl.h: New file.
48647
48648 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
48649
48650         * m4/mathl.m4: New file.
48651
48652 2003-02-18  Bruno Haible  <bruno@clisp.org>
48653
48654         * MODULES.html.sh (func_all_modules): Add mathl.
48655
48656 2003-02-17  Bruno Haible  <bruno@clisp.org>
48657
48658         * modules/mkdtemp: New module.
48659         * MODULES.html.sh (func_all_modules): Add it.
48660
48661 2003-02-17  Bruno Haible  <bruno@clisp.org>
48662
48663         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
48664
48665 2003-02-17  Bruno Haible  <bruno@clisp.org>
48666
48667         * lib/mkdtemp.h: New file, from GNU gettext.
48668         * lib/mkdtemp.c: New file, from GNU gettext.
48669
48670 2003-02-02  Jim Meyering  <jim@meyering.net>
48671
48672         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
48673         e.g. glibc-2.2.93.
48674
48675 2003-01-31  Bruno Haible  <bruno@clisp.org>
48676
48677         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
48678         'rpl_rename'.
48679         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
48680         'rpl_strnlen'.
48681         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
48682         'rpl_strtod'.
48683         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
48684         'rpl_utime'.
48685
48686 2003-01-31  Bruno Haible  <bruno@clisp.org>
48687
48688         * lib/rename.c: #undef rename before defining rpl_rename.
48689         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
48690
48691 2003-01-30  Bruno Haible  <bruno@clisp.org>
48692
48693         * modules/vasnprintf, modules/vasprintf: New modules.
48694         * MODULES.html.sh (func_all_modules): Add them.
48695
48696 2003-01-30  Bruno Haible  <bruno@clisp.org>
48697
48698         * m4/signed.m4: New file, from GNU gettext.
48699         * m4/longdouble.m4: New file, from GNU gettext.
48700         * m4/wchar_t.m4: New file, from GNU gettext.
48701         * m4/wint_t.m4: New file, from GNU gettext.
48702         * m4/vasnprintf.m4: New file.
48703         * m4/vasprintf.m4: New file.
48704
48705 2003-01-30  Bruno Haible  <bruno@clisp.org>
48706
48707         * lib/printf-args.h: New file, from GNU gettext.
48708         * lib/printf-args.c: New file, from GNU gettext.
48709         * lib/printf-parse.h: New file, from GNU gettext.
48710         * lib/printf-parse.c: New file, from GNU gettext.
48711         * lib/vasnprintf.h: New file, from GNU gettext.
48712         * lib/vasnprintf.c: New file, from GNU gettext.
48713         * lib/asnprintf.c: New file, from GNU gettext.
48714         * lib/vasprintf.h: New file, from GNU gettext with modifications.
48715         * lib/vasprintf.c: New file, from GNU gettext.
48716         * lib/asprintf.c: New file, from GNU gettext.
48717
48718 2003-01-29  Bruno Haible  <bruno@clisp.org>
48719
48720         * modules/stpncpy: New module.
48721         * MODULES.html.sh (func_all_modules): Add it.
48722
48723 2003-01-29  Bruno Haible  <bruno@clisp.org>
48724
48725         * m4/stpncpy.m4: New file.
48726
48727 2003-01-29  Bruno Haible  <bruno@clisp.org>
48728
48729         * lib/stpncpy.h: New file, from GNU gettext with modifications.
48730         * lib/stpncpy.c: New file, from GNU gettext with modifications.
48731
48732 2003-01-28  Bruno Haible  <bruno@clisp.org>
48733
48734         * modules/c-ctype: New module.
48735         * MODULES.html.sh (func_all_modules): Add it.
48736
48737 2003-01-28  Bruno Haible  <bruno@clisp.org>
48738
48739         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
48740         Paul Eggert.
48741         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
48742         Paul Eggert.
48743
48744 2003-01-27  Bruno Haible  <bruno@clisp.org>
48745
48746         * modules/xsetenv: New module.
48747         * MODULES.html.sh (func_all_modules): Add it.
48748
48749 2003-01-27  Bruno Haible  <bruno@clisp.org>
48750
48751         * lib/xsetenv.h: New file, from GNU gettext.
48752         * lib/xsetenv.c: New file, from GNU gettext.
48753
48754 2003-01-23  Jim Meyering  <jim@meyering.net>
48755
48756         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
48757         from working on systems without dirfd (at least Irix and OSF1/Tru64).
48758
48759 2003-01-23  Bruno Haible  <bruno@clisp.org>
48760
48761         * modules/minmax: New module.
48762         * MODULES.html.sh (func_all_modules): Add it.
48763
48764 2003-01-23  Bruno Haible  <bruno@clisp.org>
48765
48766         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
48767         Eggert.
48768
48769 2003-01-22  Bruno Haible  <bruno@clisp.org>
48770
48771         * modules/exit: New module.
48772         * MODULES.html.sh (func_all_modules): Add it.
48773
48774 2003-01-22  Bruno Haible  <bruno@clisp.org>
48775
48776         * lib/exit.h: New file, from GNU gettext.
48777
48778 2003-01-19  Bruno Haible  <bruno@clisp.org>
48779
48780         * gnulib-tool: Recognize option --extract-maintainer.
48781         (func_get_maintainer): New function.
48782         * modules/*: Add Maintainer entry.
48783
48784 2003-01-16  Jim Meyering  <jim@meyering.net>
48785
48786         * m4/regex.m4: The `regex' struct is both input and output.
48787         Initialize it before each use.  Patch by Tim Waugh.
48788
48789 2003-01-16  Bruno Haible  <bruno@clisp.org>
48790
48791         * MODULES.html.sh: Add a table of contents. Add the module name as
48792         leftmost column. Add hyperlinks.
48793
48794 2003-01-15  Bruno Haible  <bruno@clisp.org>
48795
48796         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
48797
48798 2003-01-15  Bruno Haible  <bruno@clisp.org>
48799
48800         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
48801         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
48802         suffix.
48803
48804 2003-01-15  Bruno Haible  <bruno@clisp.org>
48805
48806         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
48807
48808 2003-01-15  Bruno Haible  <bruno@clisp.org>
48809
48810         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
48811         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
48812
48813 2003-01-14  Jim Meyering  <jim@meyering.net>
48814
48815         * lib/same.c (same_name): Tweak a comment.
48816
48817 2003-01-14  Bruno Haible  <bruno@clisp.org>
48818
48819         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
48820         when a string comparison is sufficient.
48821
48822 2003-01-14  Bruno Haible  <bruno@clisp.org>
48823
48824         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
48825         'unsigned int'.
48826
48827 2003-01-14  Bruno Haible  <bruno@clisp.org>
48828
48829         * lib/hash-pjw.c: Add comment about low quality of this function.
48830
48831 2003-01-13  Bruno Haible  <bruno@clisp.org>
48832
48833         * modules/stpcpy: Distribute lib/stpcpy.h.
48834         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
48835
48836 2003-01-13  Bruno Haible  <bruno@clisp.org>
48837
48838         * modules/*: Add a description.
48839         * modules/strpbrk: Fix Makefile.am snippet.
48840         * modules/strtoimax: Fix dependencies.
48841         * modules/strtoumax: Likewise.
48842
48843 2003-01-13  Bruno Haible  <bruno@clisp.org>
48844
48845         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
48846         * modules/alloca (Makefile.am): All object files depend on alloca.h.
48847         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
48848
48849 2003-01-13  Bruno Haible  <bruno@clisp.org>
48850
48851         * gnulib-tool (func_create_testdir): Store config/* files in the main
48852         directory.
48853         * config.rpath: Move to ...
48854         * config/config.rpath: ... here.
48855         * modules/gettext: Contains config/config.rpath, not config.rpath.
48856         * modules/iconv: Likewise.
48857
48858 2003-01-12  Paul Eggert  <eggert@twinsun.com>
48859
48860         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
48861         to avoid collisions with libcurses and libreadline.
48862
48863         * m4/getstr.m4: Remove.
48864         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
48865
48866 2003-01-12  Paul Eggert  <eggert@twinsun.com>
48867
48868         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
48869         to avoid collisions with libcurses and libreadline.
48870
48871         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
48872         * lib/getstr.h, getstr.c: Remove.
48873         * lib/getline.c: Include "getline.h", to check interface.
48874         Move body of old getstr.c here: this defines MIN_CHUNK and
48875         declares getdelim2, which is renamed from getstr.
48876         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
48877
48878         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
48879         All uses changed.
48880         * lib/linebuffer.h: Likewise.
48881         (readline): Remove backward-compatibility macro.
48882
48883 2003-01-12  Paul Eggert  <eggert@twinsun.com>
48884
48885         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
48886         to avoid collisions with libcurses and libreadline.
48887         * getstr: Remove.
48888         * MODULES.html.sh: Remove getstr.
48889         * modules/getline: Depend on unlocked-io, not getstr.
48890
48891 2003-01-12  Jim Meyering  <jim@meyering.net>
48892
48893         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
48894
48895 2003-01-10  Bruno Haible  <bruno@clisp.org>
48896
48897         * modules/alloca: Change Makefile.am requirements. Simplify Include
48898         requirements. Add lib/alloca_.h to file list.
48899
48900 2003-01-10  Bruno Haible  <bruno@clisp.org>
48901
48902         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
48903
48904 2003-01-10  Bruno Haible  <bruno@clisp.org>
48905
48906         * lib/alloca_.h: New file.
48907         * lib/getdate.y: Unconditionally include alloca.h.
48908         * lib/makepath.c: Likewise.
48909         * lib/setenv.c: Likewise.
48910         * lib/userspec.c: Likewise.
48911
48912 2003-01-09  Karl Berry  <karl@gnu.org>
48913
48914         * MODULES.html.sh: include `dirname $0` in PATH, to find
48915         gnulib-tool.
48916
48917 2003-01-09  Bruno Haible  <bruno@clisp.org>
48918
48919         * modules/stdbool: Change configure.ac, Makefile.am requirements.
48920         Simplify Include requirements. Add lib/stdbool.h.in to file list.
48921
48922 2003-01-09  Bruno Haible  <bruno@clisp.org>
48923
48924         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
48925
48926 2003-01-09  Bruno Haible  <bruno@clisp.org>
48927
48928         * lib/stdbool.h.in: New file.
48929
48930 2003-01-09  Bruno Haible  <bruno@clisp.org>
48931
48932         * gnulib-tool (func_all_modules): Ignore files ending in ~.
48933         * MODULES.html.sh: Likewise.
48934
48935 2003-01-08  Jim Meyering  <jim@meyering.net>
48936
48937         * lib/full-write.c: Undefine and define-away `const' after inclusion
48938         of errno.h, not before.  Suggestion from Bruno Haible.
48939
48940 2003-01-08  Bruno Haible  <bruno@clisp.org>
48941
48942         * modules/full-read: Depend on full-write.
48943
48944 2003-01-08  Bruno Haible  <bruno@clisp.org>
48945
48946         * lib/safe-read.c: Include specification header first, to ensure its
48947         selfcontainedness.
48948         * lib/full-write.c: Likewise.
48949
48950 2003-01-07  Jim Meyering  <jim@meyering.net>
48951
48952         * lib/full-write.c: Rework so that it may serve to define full_read,
48953         too.
48954         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
48955
48956 2003-01-07  Bruno Haible  <bruno@clisp.org>
48957
48958         * lib/strtoimax.c: Include <stdint.h> as an alternative to
48959         <inttypes.h>.
48960         * lib/xstrtol.h: Likewise.
48961         * lib/xstrtoimax.c: Likewise.
48962         * lib/xstrtoumax.c: Likewise.
48963         * lib/human.h: Likewise.
48964
48965         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
48966         on systems that have <inttypes.h> but not <stdint.h>.
48967
48968 2003-01-07  Bruno Haible  <bruno@clisp.org>
48969
48970         * MODULES.html.sh: Add copyright notice.
48971         (missed_files): Omit CVS directory entries.
48972         (func_module): Make it work with sed-3.02.
48973         * MODULES.txt: Remove file.
48974
48975 2003-01-06  Jim Meyering  <jim@meyering.net>
48976
48977         * lib/version-etc.c: Update year in translatable copyright string.
48978
48979 2003-01-03  Karl Berry  <karl@gnu.org>
48980
48981         * config/config.{guess,sub}: update from prep.
48982
48983 2003-01-02  Karl Berry  <karl@gnu.org>
48984
48985         * doc/COPYING.DOC: belatedly updated to 1.2.
48986
48987 2003-01-01  Karl Berry  <karl@gnu.org>
48988
48989         * gnulib-tool (func_verify_module): report module name $module in
48990         error message, not $1.
48991         * gnulib-tool (create-testdir): don't complain if destdir couldn't
48992         be created, only if it doesn't exist.
48993         * gnulib-tool (last_checkin_date): don't expand the $Date here.
48994
48995 2002-12-31  Paul Eggert  <eggert@twinsun.com>
48996
48997         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
48998
48999 2002-12-31  Paul Eggert  <eggert@twinsun.com>
49000
49001         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
49002         memcmp if strcoll doesn't work.
49003
49004 2002-12-31  Bruno Haible  <bruno@clisp.org>
49005
49006         * lib/utime.c (utime_null): No need to call ftruncate if the file was
49007         nonempty.
49008
49009 2002-12-31  Bruno Haible  <bruno@clisp.org>
49010
49011         * lib/memcoll.c (STRCOLL): New macro.
49012         (memcoll): Use it.
49013
49014 2002-12-31  Bruno Haible  <bruno@clisp.org>
49015
49016         * lib/localcharset.h: New file.
49017         * lib/localcharset.c: Include it.
49018         * lib/unicodeio.c: Likewise.
49019
49020 2002-12-31  Bruno Haible  <bruno@clisp.org>
49021
49022         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
49023         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
49024
49025 2002-12-31  Bruno Haible  <bruno@clisp.org>
49026
49027         * lib/getline.h: Include <stddef.h>, for size_t.
49028
49029         * lib/unicodeio.h: Include <stddef.h>, for size_t.
49030         * lib/unicodeio.c: Don't include <stddef.h>.
49031
49032 2002-12-31  Bruno Haible  <bruno@clisp.org>
49033
49034         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
49035         HAVE_TM_ZONE.
49036
49037 2002-12-24  Karl Berry  <karl@gnu.org>
49038
49039         * config/config.guess: update from prep.
49040
49041 2002-12-24  Bruno Haible  <bruno@clisp.org>
49042
49043         General infrasructure.
49044         * m4/README: Rewritten.
49045         * m4/onceonly.m4: New file.
49046         * m4/onceonly_2_57.m4: New file.
49047
49048         Module atexit.
49049         * m4/atexit.m4: New file.
49050
49051         Module strtod.
49052         * m4/strtod.m4: New file.
49053
49054         Module strtol.
49055         * m4/strtol.m4: New file.
49056
49057         Module strtoul.
49058         * m4/strtoul.m4: New file.
49059
49060         Module memchr.
49061         * m4/memchr.m4: New file.
49062
49063         Module memcmp.
49064         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
49065         (jm_FUNC_MEMCMP): Invoke it.
49066
49067         Module memcpy.
49068         * m4/memcpy.m4: New file.
49069
49070         Module memmove.
49071         * m4/memmove.m4: New file.
49072
49073         Module memset.
49074         * m4/memset.m4: New file.
49075
49076         Module strcspn.
49077         * m4/strcspn.m4: New file.
49078
49079         Module strpbrk.
49080         * m4/strpbrk.m4: New file.
49081
49082         Module strstr.
49083         * m4/strstr.m4: New file.
49084
49085         Module strerror.
49086         * m4/strerror.m4: New file.
49087
49088         Module mktime.
49089         * m4/mktime.m4: Renamed from jm-mktime.m4.
49090         (gl_PREREQ_MKTIME): New macro.
49091         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
49092
49093         Module malloc.
49094         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
49095         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
49096         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
49097
49098         Module realloc.
49099         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
49100         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
49101         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
49102
49103         Module strftime.
49104         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
49105         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
49106         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
49107         gl_TM_GMTOFF.
49108         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
49109
49110         Module xalloc.
49111         * m4/xalloc.m4: New file.
49112
49113         Module alloca.
49114         * m4/alloca.m4: New file.
49115
49116         Module putenv.
49117         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
49118         (jm_FUNC_PUTENV): Invoke it.
49119
49120         Module setenv.
49121         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
49122         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
49123         when invoked twice.
49124         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
49125         gt_FUNC_SETENV.
49126
49127         Module memrchr.
49128         * m4/memrchr.m4: New file.
49129
49130         Module stpcpy.
49131         * m4/stpcpy.m4: New file.
49132
49133         Module strcase.
49134         * m4/strcase.m4: New file.
49135
49136         Module strdup.
49137         * m4/strdup.m4: New file.
49138
49139         Module strnlen.
49140         * m4/strnlen.m4: New file.
49141
49142         Module strndup.
49143         * m4/strndup.m4: New file.
49144
49145         Module xstrtod.
49146         * m4/xstrtod.m4: New file.
49147
49148         Module xstrtol.
49149         * m4/xstrtol.m4: New file.
49150
49151         Module getdate.
49152         * m4/getdate.m4: New file.
49153
49154         Module unlocked-io.
49155         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
49156         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
49157         * m4/jm-glibc-io.m4n: Remove file.
49158
49159         Module long-options.
49160         * m4/long-options.m4: New file.
49161
49162         Module md5.
49163         * m4/md5.m4: New file.
49164
49165         Module sha.
49166         * m4/sha.m4: New file.
49167
49168         Module getstr.
49169         * m4/getstr.m4: New file.
49170
49171         Module getline.
49172         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
49173         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
49174         <sys/types.h>, for size_t. Use the function name gnu_getline, not
49175         simply getline. Infoke gl_PREREQ_GETLINE.
49176
49177         Module obstack.
49178         * m4/obstack.m4: New file.
49179
49180         Module hash.
49181         * m4/hash.m4: New file.
49182
49183         Module readtokens.
49184         * m4/readtokens.m4: New file.
49185
49186         Module strverscmp.
49187         * m4/strverscmp.m4: New file.
49188
49189         Module stdbool.
49190         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
49191         OSF/1.
49192
49193         Module strtoll.
49194         * m4/strtoll.m4: New file.
49195
49196         Module strtoull.
49197         * m4/strtoull.m4: New file.
49198
49199         Module strtoimax.
49200         * m4/strtoimax.m4: New file.
49201
49202         Module strtoumax.
49203         * m4/strtoumax.m4: New file.
49204
49205         Module xstrtoimax.
49206         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
49207         jm_AC_PREREQ_XSTRTOIMAX.
49208         Moved the strtol prerequisites to strtol.m4.
49209         Moved the strtoll prerequisites to strtoll.m4.
49210         Moved the strtoimax prerequisites to strtoimax.m4.
49211
49212         Module xstrtoumax.
49213         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
49214         jm_AC_PREREQ_XSTRTOUMAX.
49215         Moved the strtoul prerequisites to strtoul.m4.
49216         Moved the strtoull prerequisites to strtoull.m4.
49217         Moved the strtoumax prerequisites to strtoumax.m4.
49218
49219         Module chown.
49220         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
49221         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
49222
49223         Module dup2.
49224         * m4/dup2.m4: New file.
49225
49226         Module ftruncate.
49227         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
49228         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
49229
49230         Module getgroups.
49231         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
49232         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
49233
49234         Module gettimeofday.
49235         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
49236         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
49237         gl_PREREQ_GETTIMEOFDAY.
49238
49239         Module mkdir.
49240         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
49241         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
49242
49243         Module mkstemp.
49244         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
49245         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
49246         jm_AC_TYPE_UINTMAX_T.
49247         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
49248
49249         Module stat.
49250         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
49251         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
49252
49253         Module lstat.
49254         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
49255         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
49256
49257         Module timespec.
49258         * m4/timespec.m4 (gl_TIMESPEC): New macro.
49259         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
49260         * m4/st_mtim.m4: Indentation.
49261
49262         Module nanosleep.
49263         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
49264         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
49265         gl_PREREQ_NANOSLEEP.
49266
49267         Module regex.
49268         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
49269         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
49270         (gl_REGEX): New macro.
49271
49272         Module rename.
49273         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
49274         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
49275
49276         Module rmdir.
49277         * m4/rmdir.m4: New file.
49278
49279         Module utime.
49280         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
49281         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
49282         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
49283
49284         Module dirname.
49285         * m4/dirname.m4: New file.
49286
49287         Module getopt.
49288         * m4/getopt.m4: New file.
49289
49290         Module unistd-safer.
49291         * m4/unistd-safer.m4: New file.
49292
49293         Module fnmatch.
49294         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
49295         declaration.
49296         (gl_PREREQ_FNMATCH_EXTRA): New macro.
49297         (gl_FUNC_FNMATCH_POSIX): New macro.
49298         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
49299         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
49300         simply fnmatch.
49301
49302         Module exclude.
49303         * m4/exclude.m4: New file.
49304
49305         Module human.
49306         * m4/human.m4: New file.
49307
49308         Module acl.
49309         * m4/acl.m4: Nop.
49310
49311         Module backupfile.
49312         * m4/backupfile.m4: New file.
49313         * m4/d-ino.m4: Indentation.
49314
49315         Module fsusage.
49316         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
49317         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
49318         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
49319
49320         Module dirfd.
49321         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
49322         requirements.
49323
49324         Module euidaccess.
49325         * m4/euidaccess.m4: New file.
49326
49327         Module file-type.
49328         * m4/file-type.m4: New file.
49329
49330         Module fileblocks.
49331         * m4/fileblocks.m4: New file.
49332
49333         Module filemode.
49334         * m4/filemode.m4: New file.
49335
49336         Module isdir.
49337         * m4/isdir.m4: New file.
49338
49339         Module lchown.
49340         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
49341         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
49342
49343         Module makepath.
49344         * m4/makepath.m4: New file.
49345
49346         Module modechange.
49347         * m4/modechange.m4: New file.
49348
49349         Module mountlist.
49350         * m4/mountlist.m4: New file.
49351         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
49352         Indentation.
49353
49354         Module path-concat.
49355         * m4/path-concat.m4: New file.
49356
49357         Module pathmax.
49358         * m4/pathmax.m4: New file.
49359
49360         Module same.
49361         * m4/same.m4: New file.
49362
49363         Module save-cwd.
49364         * m4/save-cwd.m4: New file.
49365
49366         Module savedir.
49367         * m4/savedir.m4: New file.
49368
49369         Module xgetcwd.
49370         * m4/xgetcwd.m4: New file.
49371         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
49372
49373         Module xreadlink.
49374         * m4/xreadlink.m4: New file.
49375
49376         Module safe-read.
49377         * m4/safe-read.m4: New file.
49378
49379         Module safe-write.
49380         * m4/safe-write.m4: New file.
49381
49382         Module closeout.
49383         * m4/closeout.m4: New file.
49384
49385         Module stdio-safer.
49386         * m4/stdio-safer.m4: New file.
49387
49388         Module getpass.
49389         * m4/getpass.m4: New file.
49390
49391         Module getugroups.
49392         * m4/getugroups.m4: New file.
49393
49394         Module group-member.
49395         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
49396         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
49397
49398         Module idcache.
49399         * m4/idcache.m4: New file.
49400
49401         Module userspec.
49402         * m4/userspec.m4: New file.
49403
49404         Module gettime.
49405         * m4/clock_time.m4: New file.
49406         * m4/gettime.m4: New file.
49407
49408         Module settime.
49409         * m4/settime.m4: New file.
49410
49411         Module posixtm.
49412         * m4/posixtm.m4: New file.
49413
49414         Module gethostname.
49415         * m4/gethostname.m4: New file.
49416
49417         Module canon-host.
49418         * m4/canon-host.m4: New file.
49419
49420         Module gettext.
49421         * m4/codeset.m4: New file, from gettext-0.11.5.
49422         * m4/gettext.m4: New file, from gettext-0.11.5.
49423         * m4/glibc21.m4: New file, from gettext-0.11.5.
49424         * m4/iconv.m4: New file, from gettext-0.11.5.
49425         * m4/intdiv0.m4: New file, from gettext-0.11.5.
49426         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
49427         * m4/inttypes.m4: New file, from gettext-0.11.5.
49428         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
49429         * m4/isc-posix.m4: New file, from gettext-0.11.5.
49430         * m4/lcmessage.m4: New file, from gettext-0.11.5.
49431         * m4/lib-ld.m4: New file, from gettext-0.11.5.
49432         * m4/lib-link.m4: New file, from gettext-0.11.5.
49433         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
49434         * m4/progtest.m4: New file, from gettext-0.11.5.
49435         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
49436         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
49437         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
49438
49439         Module localcharset.
49440         * m4/localcharset.m4: New file.
49441
49442         Module hard-locale.
49443         * m4/hard-locale.m4: New file.
49444
49445         Module mbswidth.
49446         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
49447         onceonly macros.
49448         * m4/mbrtowc.m4: Add comment.
49449
49450         Module memcasecmp.
49451         * m4/memcasecmp.m4: New file.
49452
49453         Module memcoll.
49454         * m4/memcoll.m4: New file.
49455
49456         Module unicodeio.
49457         * m4/unicodeio.m4: New file.
49458
49459         Module rpmatch.
49460         * m4/rpmatch.m4: New file.
49461
49462         Module yesno.
49463         * m4/yesno.m4: New file.
49464
49465         Module exitfail.
49466         * m4/exitfail.m4: New file.
49467
49468         Module c-stack.
49469         * m4/c-stack.m4 (gl_C_STACK): New macro.
49470         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
49471
49472         Module error.
49473         * m4/error.m4 (gl_ERROR): New macro.
49474         (jm_PREREQ_ERROR): Use onceonly macros.
49475
49476         Module fatal.
49477         * m4/fatal.m4: New file.
49478
49479         Module getloadavg.
49480         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
49481         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
49482
49483         Module getpagesize.
49484         * m4/getpagesize.m4: New file.
49485
49486         Module getusershell.
49487         * m4/getusershell.m4: New file.
49488
49489         Module physmem.
49490         * m4/physmem.m4: New file.
49491
49492         Module posixver.
49493         * m4/posixver.m4: New file.
49494
49495         Module quotearg.
49496         * m4/quotearg.m4: New file.
49497
49498         Module quote.
49499         * m4/quote.m4: New file.
49500
49501         Module readutmp.
49502         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
49503
49504         Module sig2str.
49505         * m4/sig2str.m4: New file.
49506
49507         Other.
49508         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
49509         ulonglong.m4.
49510         * m4/intmax_t.m4: New file.
49511         * m4/d-type.m4: Indentation.
49512         * m4/jm-macros.m4: Update.
49513         * m4/prereq.m4 (jm_PREREQ): Update.
49514         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
49515         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
49516         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
49517         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
49518         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
49519         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
49520         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
49521         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
49522         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
49523         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
49524         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
49525         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
49526         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
49527         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
49528         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
49529         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
49530         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
49531         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
49532         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
49533
49534 2002-12-24  Bruno Haible  <bruno@clisp.org>
49535
49536         * MODULES.txt: Update according to m4/ changes.
49537
49538         Module gettext.
49539         * config.rpath: New file, from gettext-0.11.5.
49540
49541         * modules/*: New module descriptions.
49542         * gnulib-tool: New file.
49543         * MODULES.html.sh: New file.
49544
49545 2002-12-21  Karl Berry  <karl@gnu.org>
49546
49547         * doc/fdl.texi: update to version 1.2.
49548
49549 2002-12-19  Karl Berry  <karl@gnu.org>
49550
49551         * config/config.guess: update from prep.
49552
49553 2002-12-18  Bruno Haible  <bruno@clisp.org>
49554
49555         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
49556         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
49557
49558 2002-12-17  Bruno Haible  <bruno@clisp.org>
49559
49560         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
49561         stdlib.h, string.h.
49562
49563 2002-12-17  Bruno Haible  <bruno@clisp.org>
49564
49565         * lib/canon-host.c (strdup): Remove unused declaration.
49566
49567         * lib/fsusage.c: Include full_read.h.
49568         (get_fs_usage): Use full_read instead of safe_read.
49569
49570         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
49571
49572 2002-12-12  Karl Berry  <karl@gnu.org>
49573
49574         * config/config.guess: update from prep.
49575
49576 2002-12-11  Bruno Haible  <bruno@clisp.org>
49577
49578         * m4/setenv.m4: New file, from gettext-0.11.5.
49579
49580 2002-12-11  Bruno Haible  <bruno@clisp.org>
49581
49582         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
49583         not unsetenv().
49584         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
49585         modifications:
49586
49587         2002-12-11  Bruno Haible  <bruno@clisp.org>
49588
49589                 * setenv.c (alloca): Fall back to malloc.
49590                 (freea): New macro.
49591                 (setenv): Use freea() to free memory allocated with alloca().
49592
49593         2002-11-13  Bruno Haible  <bruno@clisp.org>
49594
49595                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
49596                 function declarations.
49597                 * unsetenv.c (unsetenv): Likewise.
49598
49599         2002-03-04  Bruno Haible  <bruno@clisp.org>
49600
49601                 Portability to AIX 4.3.3.
49602                 * unsetenv.c: New file, extracted from setenv.c.
49603                 * setenv.c: Move the unsetenv() function to unsetenv.c.
49604
49605         2001-12-20  Bruno Haible  <bruno@clisp.org>
49606
49607                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
49608                 use malloc instead. For SunOS 4.
49609
49610         2001-12-11  Bruno Haible  <bruno@clisp.org>
49611
49612                 * setenv.c: Declare alloca.
49613                 (compar_fn_t): New typedef.
49614                 (KNOWN_VALUE, STORE_VALUE): Use it.
49615
49616         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
49617         setenv.h.
49618
49619 2002-12-10  Paul Eggert  <eggert@twinsun.com>
49620
49621         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
49622         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
49623         Choose values that are less likely to collide with system fnmatch
49624         options.
49625         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
49626         defined (e.g., a pure POSIX system).
49627         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
49628         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
49629
49630 2002-12-06  Paul Eggert  <eggert@twinsun.com>
49631
49632         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
49633         a pain in practice to deal with generated m4 files.  This change
49634         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
49635
49636         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
49637         and jm-glibc-io.m4, as they are no longer a special case.
49638         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
49639         kludge and the auto-generation stuff.  Check only whether the
49640         functions are declared, not whether they exist, since older hosts
49641         that don't declare the functions can't use the optimization anyway.
49642
49643 2002-12-06  Jim Meyering  <jim@meyering.net>
49644
49645         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
49646
49647         Merge in changes from libc's misc/error.c, in preparation
49648         for the merge of gnulib's changes back into libc.
49649
49650         * lib/error.c (_): Define only if not already defined.
49651         Move definition to follow all #include directives.
49652         Include unlocked-io.h only if !_LIBC.
49653         [_LIBC]: Include <libio/libioP.h>.
49654         [USE_IN_LIBIO]: Include <libio/iolibio.h>
49655         (fflush): Tweak definition to use INTUSE.
49656         (putc): Define.
49657
49658 2002-12-05  Paul Eggert  <eggert@twinsun.com>
49659
49660         * lib/alloca.c [defined emacs]: Include "lisp.h".
49661         (xalloc_die) [defined emacs]: New macro.
49662         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
49663         [! defined emacs]: Include <xalloc.h>.
49664         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
49665         (pointer): Typedef to POINTER_TYPE *.
49666         (malloc): Remove decl; we now always use xmalloc.
49667         (alloca): Use old-style definition, since Emacs needs this.
49668         Check for arithmetic overflow when computing combined size.
49669
49670 2002-12-04  Paul Eggert  <eggert@twinsun.com>
49671
49672         Do not generate unlocked-io.h automatically, since it's easier to
49673         maintain it by hand.
49674
49675         * lib/unlocked-io.h: New file, from GNU diffutils,
49676         but with proper copyright notice and attribution.
49677         * lib/gen-uio: Remove.
49678         * lib/Makefile.am: Add copyright notice.
49679         (libfetish_a_SOURCES): Add unlocked-io.h.
49680         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
49681         (DISTCLEANFILES, io_functions): Remove macros.
49682         (EXTRA_DIST): Remove gen_uio.
49683         (unlocked-io.h): Remove rule.
49684
49685 2002-12-04  Jim Meyering  <jim@meyering.net>
49686
49687         Reflect the fact that stat.c and lstat.c are no longer generated.
49688         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
49689         (DISTCLEANFILES): Likewise.
49690         (EXTRA_DIST): Likewise.
49691         (all_local): Don't depend on stat.c or lstat.c.
49692         (stat.c, lstat.c): Remove rules.
49693         (EXTRA_DIST): Remove xstat.in.
49694
49695         * lib/xstat.in: Remove file.  Contents moved into stat.c.
49696         * lib/stat.c: New file.  Contents mostly from xstat.in.
49697         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
49698         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
49699
49700         * lib/safe-read.c: Rework so that it may serve to define safe_write,
49701         too.
49702         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
49703
49704 2002-12-03  Jim Meyering  <jim@meyering.net>
49705
49706         * lib/safe-read.c, safe-write.c: Change variable names and comments,
49707         but not semantics, to minimize the differences between these two files.
49708         (safe_read): Change comment to mention SAFE_READ_ERROR.
49709
49710         * lib/safe-read.c (IS_EINTR): Define.
49711         (safe_read): Use IS_EINTR in place of in-function cpp directives.
49712
49713 2002-12-02  Jim Meyering  <jim@meyering.net>
49714
49715         * lib/safe-read.c (EINTR): Define.
49716         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
49717         (INT_MAX): Provide fallback.
49718         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
49719
49720         * lib/safe-read.h (SAFE_READ_ERROR): Define.
49721
49722 2002-12-02  Bruno Haible  <bruno@clisp.org>
49723
49724         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
49725         Define, taken from safe-read.c.
49726         (INT_MAX): Provide fallback.
49727         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
49728         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
49729
49730         * lib/safe-read.c (EINTR): Remove definition.
49731         (safe_read): Don't use EINTR if it is absent.
49732
49733 2002-12-01  Jim Meyering  <jim@meyering.net>
49734
49735         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
49736         zero.
49737         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
49738
49739 2002-11-27  Paul Eggert  <eggert@twinsun.com>
49740
49741         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
49742         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
49743         with `if (! (value < limit)) abort ();', for readability.
49744
49745 2002-11-26  Karl Berry  <karl@gnu.org>
49746
49747         * lib/strdup.c: copy from libc again, with jim's ok.
49748         * lib/.cppi-disable: re-add strdup.c
49749
49750 2002-11-25  Karl Berry  <karl@gnu.org>
49751
49752         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
49753         instead of "strtol.c".
49754
49755 2002-11-25  Karl Berry  <karl@gnu.org>
49756
49757         * config/install-sh: update from automake for variable quoting, $0 in
49758         error msgs, etc.
49759
49760         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
49761         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
49762         entry.
49763
49764 2002-11-25  Jim Meyering  <jim@meyering.net>
49765
49766         * lib/mktime.c: Sync from libc, now that it has the latest fix.
49767
49768 2002-11-24  Karl Berry  <karl@gnu.org>
49769
49770         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
49771         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
49772
49773 2002-11-24  Jim Meyering  <jim@meyering.net>
49774
49775         Update from coreutils:
49776
49777         * lib/mktime.c: Merge in changes from libc.
49778
49779         Avoid a link-time failure on some Linux systems.
49780         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
49781         (otherwise).
49782         (__mon_yday): Declare with the STATIC attribute.
49783         (__mktime_internal): Likewise.
49784         Based on a report from Greg Schafer.
49785
49786 2002-11-23  Jim Meyering  <jim@meyering.net>
49787
49788         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
49789         Use `unsigned', not `int', as type of index.
49790
49791         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
49792
49793         * lib/fsusage.c: Remove unneeded parentheses around operands of
49794         `defined'.
49795
49796 2002-11-22  Paul Eggert  <eggert@twinsun.com>
49797
49798         * lib/quotearg.h: Allow multiple inclusion by surrounding with
49799         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
49800         so that we can be included first.
49801         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
49802         * lib/quotearg.c: Include quotearg.h immediately after config.h.
49803         No need to include stddef.h or sys/types.h any more.
49804         Surround local include files with "", not "<>".
49805         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
49806         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
49807         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
49808         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
49809         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
49810         (ISPRINT): Remove; no longer needed now that we assume C89.
49811
49812         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
49813         Preserve errno.
49814
49815         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
49816         quotearg_char): Use SIZE_MAX rather than
49817         (size_t) -1 when we are talking about "infinity".
49818
49819         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
49820
49821 2002-11-22  Paul Eggert  <eggert@twinsun.com>
49822
49823         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
49824         hint that one should use `if (! x) abort ();' rather than `assert
49825         (x);', and anyway it's one less thing to worry about configuring.
49826         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
49827         hash_rehash, hash_insert): Use abort rather than assert.
49828
49829 2002-11-22  Bruno Haible  <bruno@clisp.org>
49830
49831         * lib/safe-read.h: Assume C89. Add comments.
49832         (safe_read): Change return type to size_t.
49833         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
49834         byte counts > SSIZE_MAX correctly.
49835         * lib/safe-write.h: New file.
49836         * lib/safe-write.c: New file.
49837         * lib/full-read.h: New file.
49838         * lib/full-read.c: New file.
49839         * lib/full-write.h: Assume C89. Add comments.
49840         * lib/full-write.c: Include safe-write.h.
49841         (full_write): Rewritten to use safe_write.
49842         Suggested by Jim Meyering and Paul Eggert.
49843
49844 2002-11-21  Jim Meyering  <jim@meyering.net>
49845
49846         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
49847
49848         Merge in changes from the coreutils.
49849
49850         2002-09-25  Paul Eggert  <eggert@twinsun.com>
49851         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
49852         <stdint.h>.
49853         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
49854         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
49855         int.  Work more efficiently if X is the same width as uintmax_t.
49856         Do not compare X to -1, to avoid bogus compiler warning.
49857         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
49858         Don't assume that f_frsize and f_bsize are the same type.
49859
49860         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
49861         warning on FreeBSD.
49862
49863         * lib/makepath.c (make_path): Restore umask *before* creating the final
49864         component.
49865         (make_path): Minor reformatting.
49866
49867         * lib/xmalloc.c: Adjust to work with new autoconf macros,
49868         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
49869         HAVE_MALLOC/HAVE_REALLOC.
49870
49871         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
49872         dummy ones.  At least on GNU/Linux systems, `auto' means something
49873         else.
49874         From Michael Stone.
49875
49876 2002-11-21  Bruno Haible  <bruno@clisp.org>
49877
49878         Remove case insensitive option matching.
49879         * lib/argmatch.h (argcasematch): Remove declaration.
49880         (ARGCASEMATCH): Remove macro.
49881         (__xargmatch_internal): Remove case_sensitive argument.
49882         (XARGMATCH): Update.
49883         (XARGCASEMATCH): Remove macro.
49884         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
49885         case_sensitive argument.
49886         (argcasematch): Remove function.
49887         (__xargmatch_internal): Remove case_sensitive argument.
49888         (main): Use XARGMATCH instead of XARGCASEMATCH.
49889
49890         * lib/xmalloc.c: Change compile-time error message. Add comment about
49891         required autoconf version.
49892
49893 2002-11-20  Paul Eggert  <eggert@twinsun.com>
49894
49895         Merge argmatch cleanups from Bison.  Assume C89.
49896
49897         * lib/argmatch.c: Include config.h here, not in argmatch.h.
49898         Include stdlib.h, for EXIT_FAILURE.
49899         Always include <string.h>, since we assume C89.
49900         (EXIT_FAILURE): Remove pre-C89 bug workaround.
49901         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
49902         Include <stddef.h> instead, since it's all we need for size_t.
49903         (PARAMS): Remove.  All uses removed.
49904         (ARRAY_CARDINALITY): Do not bother to #undef.
49905         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
49906         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
49907         Remove unnecessary parentheses.
49908         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
49909         Insert necessary parentheses.
49910         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
49911         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
49912
49913 2002-11-19  Bruno Haible  <bruno@clisp.org>
49914
49915         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
49916         * lib/mbswidth.h: Include <stddef.h>, for size_t.
49917
49918         * lib/mbswidth.h (PARAMS): Remove macro.
49919         (mbswidth, mbsnwidth): Use ANSI C function declarations.
49920         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
49921
49922         * lib/gcd.h (PARAMS): Remove macro.
49923         (gcd): Use ANSI C function declarations.
49924         * lib/gcd.c (gcd): Likewise.
49925
49926 2002-11-15  Bruno Haible  <bruno@clisp.org>
49927
49928         * lib/strcspn.c: Include <stddef.h>.
49929         (strcspn): Use ANSI C function declaration. Change return type to
49930         size_t. Use NULL.
49931         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
49932         (strpbrk): Use NULL.
49933         * lib/strpbrk.h (PARAMS): Remove macro.
49934         (strpbrk): Use ANSI C function declaration.
49935         * lib/strstr.c: Don't include <sys/types.h>.
49936         * lib/strstr.h (PARAMS): Remove macro.
49937         (strstr): Use ANSI C function declarations.
49938
49939 2002-11-14  Karl Berry  <karl@gnu.org>
49940
49941         * config/mkinstalldirs: `do' on separate line, instead of
49942         `for var; do'.
49943
49944 2002-11-06  Bruno Haible  <bruno@clisp.org>
49945
49946         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
49947         * lib/gcd.c (gcd): Likewise.
49948
49949 2002-11-05  Bruno Haible  <bruno@clisp.org>
49950
49951         * lib/gcd.h: New file, from gettext-0.11.5.
49952         * lib/gcd.c: New file, from gettext-0.11.5.
49953
49954 2002-11-05  Bruno Haible  <bruno@clisp.org>
49955
49956         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49957         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49958         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49959         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49960
49961         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
49962         <libintl.h>.
49963         * lib/makepath.c: Include gettext.h instead of <locale.h> and
49964         <libintl.h>.
49965
49966         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
49967         * lib/human.c: Include gettext.h instead of <libintl.h>.
49968         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
49969         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
49970         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
49971         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
49972         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
49973         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
49974         (textdomain): Remove definition.
49975         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
49976
49977         * lib/long-options.c: Remove include of <libintl.h> and definition of
49978         _.
49979         * lib/same.c: Remove include of <libintl.h> and definition of _.
49980
49981 2002-11-04  Owen Taylor  <otaylor@redhat.com>
49982
49983         * lib/config.charset: A few additions for Solaris.
49984
49985 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
49986
49987         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
49988         * lib/localcharset.c (locale_charset): Declare as extern "C".
49989
49990 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
49991
49992         * lib/config.charset: msdos in uk_UA uses CP1125.
49993
49994 2002-11-04  Bruno Haible  <bruno@clisp.org>
49995
49996         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
49997         * lib/strcase.h: New file, from GNU gettext-0.11.5.
49998         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
49999         * lib/strstr.h: New file, from GNU gettext-0.11.5.
50000         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
50001
50002 2002-11-04  Bruno Haible  <bruno@clisp.org>
50003
50004         * lib/localcharset.c (locale_charset): Don't return an empty string.
50005
50006 2002-11-04  Bruno Haible  <bruno@clisp.org>
50007
50008         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
50009         aliases.
50010
50011 2002-11-04  Bruno Haible  <bruno@clisp.org>
50012
50013         * lib/config.charset: Update for newest glibc. Add canonical names
50014         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
50015
50016 2002-11-04  Bruno Haible  <bruno@clisp.org>
50017
50018         * lib/config.charset: Add support for NetBSD.
50019
50020 2002-11-04  Bruno Haible  <bruno@clisp.org>
50021
50022         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
50023
50024 2002-11-01  Bruno Haible  <bruno@clisp.org>
50025
50026         * configure.in: Add AC_CONFIG_AUX_DIR call.
50027         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
50028         test/Makefile.
50029         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
50030
50031 2002-09-28  Karl Berry  <karl@gnu.org>
50032
50033         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
50034         installed automake until the next release, since changes have been
50035         made.
50036
50037 2002-09-25  Karl Berry  <karl@gnu.org>
50038
50039         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
50040         * lib/getopt*: copy from libc/posix.
50041         * lib/gettext.h: copy from gettext.
50042         * lib/.cppi-disable: add strdup.c, gettext.h.
50043
50044 2002-09-25  Karl Berry  <karl@gnu.org>
50045
50046         * config/srclist.txt: enable gettext.h check.
50047         * config/config.{guess,sub}: update from prep.
50048         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
50049                 from automake 1.6.3.
50050         See srclist*.
50051
50052 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
50053
50054         * regex.c (PATFETCH): Remove the translating fetch.
50055         (PATFETCH_RAW): Rename to PATFETCH.
50056         (set_image_of_range): New fun.
50057         (SET_RANGE_TABLE_WORK_AREA): Use it.
50058         (regex_compile): Don't translate the pattern chars so eagerly.
50059         Only do it when inserting an `exactn' bytecode or when handling
50060         a char-range.
50061         (mutually_exclusive_p): Avoid empty statement.
50062
50063 2002-07-06  Jim Meyering  <meyering@lucent.com>
50064
50065         * m4/README: Don't mention Makefile.am.in.
50066         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
50067
50068 2002-07-01  Jim Meyering  <meyering@lucent.com>
50069
50070         * lib/c-stack.c: Include sys/time.h.
50071         From Volker Borchert.
50072
50073 2002-06-26  Paul Eggert  <eggert@twinsun.com>
50074
50075         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
50076
50077 2002-06-26  Paul Eggert  <eggert@twinsun.com>
50078
50079         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
50080         New macro.  Use it uniformly instead of
50081         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
50082         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
50083         reported by Vin Shelton.
50084
50085 2002-06-22  Paul Eggert  <eggert@twinsun.com>
50086
50087         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
50088         Do not assume SA_SIGINFO behavior.
50089         Bug reported by Jim Meyering on NetBSD 1.5.2.
50090
50091 2002-06-22  Jim Meyering  <meyering@lucent.com>
50092
50093         * m4/c-stack.m4: New file, from diffutils-2.8.2.
50094         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
50095
50096         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
50097         now that configure.ac uses AC_GNU_SOURCE.
50098         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
50099         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
50100
50101         Update to latest tools.  Suggestions from Paul Eggert.
50102         * m4/stdbool.m4: New file, from diffutils-2.8.2.
50103         * m4/gnu-source.m4: Update from diffutils-2.8.2.
50104         * m4/fnmatch.m4: Likewise.
50105         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
50106         to AC_HEADER_STDBOOL
50107
50108 2002-06-22  Jim Meyering  <meyering@lucent.com>
50109
50110         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
50111         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
50112
50113 2002-06-22  Jim Meyering  <meyering@lucent.com>
50114
50115         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
50116
50117         * lib/exitfail.c, exitfail.h: Likewise.
50118         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
50119
50120         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
50121         of fnmatch.h.
50122         (EXTRA_DIST): Add fnmatch_loop.c.
50123         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
50124
50125         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
50126         * lib/fnmatch.c: Update from diffutils-2.8.2.
50127         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
50128         * lib/fnmatch.h: Remove file.
50129
50130 2002-06-21  Jim Meyering  <meyering@lucent.com>
50131
50132         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
50133         * m4/mbrtowc.m4: Likewise.
50134
50135         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
50136         * m4/mbswidth.m4: Reflect name change:
50137         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
50138         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
50139
50140         * m4/lib-link.m4: Update from gettext-0.11.2.
50141         * m4/gettext.m4: Likewise.
50142
50143         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
50144         From Alfred M. Szmidt.
50145
50146 2002-06-18  Paul Eggert  <eggert@twinsun.com>
50147
50148         * lib/file-type.h: Report an error if neither S_ISREG nor
50149         S_IFREG is defined, instead of using a test specific to glibc
50150         2.2.  This should be safe, since POSIX requires S_ISREG and
50151         Unix Version 7 had S_IFREG.  We don't need to check for
50152         <sys/types.h> since we don't use any symbols that it defines.
50153
50154 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
50155
50156         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
50157         $@-t, so that each temporary file name is unique and valid in the first
50158         8 characters, for operation under DOS.
50159
50160 2002-06-15  Paul Eggert  <eggert@twinsun.com>
50161
50162         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
50163
50164 2002-06-15  Jim Meyering  <meyering@lucent.com>
50165
50166         Work even with DJGPP 2.03, which lacks support for symlinks.
50167         From Richard Dawe.
50168         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
50169         is defined.
50170         * lib/lchown.c (S_ISLNK): Likewise.
50171
50172 2002-06-15  Jim Meyering  <meyering@lucent.com>
50173
50174         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
50175         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
50176         have been included before this file.
50177
50178 2002-06-14  Jim Meyering  <meyering@lucent.com>
50179
50180         * lib/file-type.h: Use the version from diffutils-2.8.2.
50181         * lib/file-type.c: Likewise.
50182
50183 2002-06-07  Jim Meyering  <meyering@lucent.com>
50184
50185         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
50186         They're needed at least for NetBSD 1.5.2.
50187         ($statxfs_includes): Include those same headers.
50188         ($statxfs_includes): Include sys/vfs.h if available.
50189         ($statxfs_includes): Likewise for sys/statvfs.h.
50190         Check for the following members in both structs statfs and statvfs:
50191         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
50192
50193 2002-06-01  Jim Meyering  <meyering@lucent.com>
50194
50195         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
50196         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
50197
50198 2002-05-28  Jim Meyering  <meyering@lucent.com>
50199
50200         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
50201         Reported by Volker Borchert.
50202
50203 2002-05-27  Jim Meyering  <meyering@lucent.com>
50204
50205         Fix a problem seen only on nonconforming systems whereby ls.c's
50206         use of localtime, and then of gettimeofday would cause trouble:
50207         the localtime call used to initialize rpl_gettimeofday's save
50208         mechanism would clobber ls's current local time information so
50209         that in any long listing the first file would always be listed
50210         with date 1970-01-01.  Analysis by Volker Borchert.
50211
50212         * lib/gettimeofday.c (localtime): Undefine.
50213         (rpl_localtime): New function.
50214
50215 2002-05-27  Jim Meyering  <meyering@lucent.com>
50216
50217         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
50218         localtime.
50219
50220         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
50221         use the replacement function; it wouldn't resolve at link time.
50222         Reported by Volker Borchert.
50223
50224 2002-05-22  Jim Meyering  <meyering@lucent.com>
50225
50226         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
50227         file-type.h.
50228         * lib/file-type.h: New file.
50229         * lib/file-type.c (file_type): New file/function.  Extracted from
50230         diffutils.
50231
50232 2002-04-30  Jim Meyering  <meyering@lucent.com>
50233
50234         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
50235
50236 2002-04-29  Paul Eggert  <eggert@twinsun.com>
50237
50238         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
50239
50240 2002-04-29  Paul Eggert  <eggert@twinsun.com>
50241
50242         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
50243         Do not check for alloca.h (no longer used) or stdbool.h (was never
50244         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
50245
50246 2002-04-29  Paul Eggert  <eggert@twinsun.com>
50247
50248         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
50249
50250 2002-04-29  Jim Meyering  <meyering@lucent.com>
50251
50252         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
50253         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
50254         Use AC_FUNC_STRNLEN here instead.
50255
50256         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
50257         With autoconf-2.53a, it's part of AC_PROG_CC.
50258
50259 2002-04-28  Paul Eggert  <eggert@twinsun.com>
50260
50261         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
50262         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
50263
50264 2002-04-28  Paul Eggert  <eggert@twinsun.com>
50265
50266         * lib/sig2str.h, lib/sig2str.c: New files.
50267         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
50268
50269 2002-04-28  Paul Eggert  <eggert@twinsun.com>
50270
50271         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
50272         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
50273         of 127, since 64 is the largest conceivable number for ancient
50274         nonstandard hosts.
50275         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
50276
50277 2002-04-28  Jim Meyering  <meyering@lucent.com>
50278
50279         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
50280
50281 2002-04-24  Jim Meyering  <meyering@lucent.com>
50282
50283         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
50284         (jm_PREREQ): Use it.
50285
50286         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
50287         mach/mach.h fcntl.h.
50288         Check for this function: setlocale.
50289
50290 2002-04-24  Jim Meyering  <meyering@lucent.com>
50291
50292         * lib/gettext.h: New file, from Gettext.
50293         * lib/Makefile.am (INCLUDES): Remove -I../intl.
50294         (libfetish_a_SOURCES): Add gettext.h.
50295
50296 2002-04-16  Jim Meyering  <meyering@lucent.com>
50297
50298         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
50299         ut_pid, ut_id, ut_exit.
50300
50301 2002-04-16  Jim Meyering  <meyering@lucent.com>
50302
50303         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
50304         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
50305         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
50306
50307 2002-04-12  Jim Meyering  <meyering@lucent.com>
50308
50309         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
50310         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
50311         existence of the getmntinfo function.  Needed for Darwin 5.3.
50312
50313         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
50314         This is necessary at least on Darwin 5.3.
50315
50316         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
50317         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
50318         strnlen.o in the library, and that makes some versions of ranlib
50319         object.
50320
50321 2002-04-12  Jim Meyering  <meyering@lucent.com>
50322
50323         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
50324
50325 2002-04-09  Jim Meyering  <meyering@lucent.com>
50326
50327         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
50328         to be more precise.  Rather than saying we're checking whether the
50329         function `works', say what we're testing.
50330         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
50331         Reported by Bruno Haible.
50332
50333 2002-03-10  Jim Meyering  <meyering@lucent.com>
50334
50335         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
50336         Suggestion from Santiago Vila.
50337
50338 2002-03-08  Jim Meyering  <meyering@lucent.com>
50339
50340         * lib/rename.c: Mention that this wrapper is needed also on
50341         mips-dec-ultrix4.4 systems.
50342
50343 2002-03-02  Jim Meyering  <meyering@lucent.com>
50344
50345         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
50346         not HAVE_CLOCK_SETTIME.
50347
50348 2002-02-27  Paul Eggert  <eggert@twinsun.com>
50349
50350         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
50351         Check for clock_settime.
50352
50353 2002-02-27  Paul Eggert  <eggert@twinsun.com>
50354
50355         * lib/nanosleep.h: Rename to....
50356         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
50357
50358         * lib/gettime.c: New file.
50359         * lib/settime.c: New file.
50360         * lib/stime.c: Remove.
50361
50362         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
50363         timespec.h.  Remove nanosleep.h.
50364
50365 2002-02-25  Paul Eggert  <eggert@twinsun.com>
50366
50367         * m4/acl.m4: New file.
50368         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
50369         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
50370
50371 2002-02-25  Paul Eggert  <eggert@twinsun.com>
50372
50373         * lib/acl.c, lib/acl.h: New files.
50374         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
50375
50376 2002-02-24  Jim Meyering  <meyering@lucent.com>
50377
50378         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
50379         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
50380         cause trouble.  Reported by Nelson Beebe.
50381
50382 2002-02-23  Paul Eggert  <eggert@twinsun.com>
50383
50384         * lib/path-concat.c (xpath_concat): Reorder code to pacify
50385         compilers that don't know that xalloc_die never returns.
50386
50387 2002-02-20  Jim Meyering  <meyering@lucent.com>
50388
50389         * lib/getdate.c: Regenerate using bison-1.33.
50390
50391 2002-02-17  Jim Meyering  <meyering@lucent.com>
50392
50393         * config/config.guess (main): Don't use `head -1'; it's no longer
50394         portable. Use `sed 1q' instead.
50395
50396 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
50397
50398         * m4/codeset.m4: Upgrade to gettext-0.11.
50399         * m4/gettext.m4: Upgrade to gettext-0.11.
50400         * m4/glibc21.m4: Upgrade to gettext-0.11.
50401         * m4/iconv.m4: Upgrade to gettext-0.11.
50402         * m4/isc-posix.m4: Upgrade to gettext-0.11.
50403         * m4/lcmessage.m4: Upgrade to gettext-0.11.
50404         * m4/lib-ld.m4: New file, from gettext-0.11.
50405         * m4/lib-link.m4: New file, from gettext-0.11.
50406         * m4/lib-prefix.m4: New file, from gettext-0.11.
50407         * m4/progtest.m4: Upgrade to gettext-0.11.
50408
50409 2002-02-15  Paul Eggert  <eggert@twinsun.com>
50410
50411         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
50412         (jm_PREREQ): Use it.
50413
50414 2002-02-15  Paul Eggert  <eggert@twinsun.com>
50415
50416         * lib/posixver.c, lib/posixver.h: New files.
50417         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
50418
50419 2002-02-02  Paul Eggert  <eggert@twinsun.com>
50420             Bruno Haible  <bruno@clisp.org>
50421
50422         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
50423         (fwrite_success_callback): New declaration.
50424         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
50425         print_unicode_char. Call failure callback instead of error.
50426         (fwrite_success_callback): New function.
50427         (exit_failure_callback): New function.
50428         (fallback_failure_callback): New function.
50429         (print_unicode_char): Call unicode_to_mb.
50430
50431 2002-01-26  Jim Meyering  <meyering@lucent.com>
50432
50433         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
50434         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
50435
50436 2002-01-26  Jim Meyering  <meyering@lucent.com>
50437
50438         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
50439
50440 2002-01-22  Paul Eggert  <eggert@twinsun.com>
50441
50442         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
50443
50444 2002-01-22  Jim Meyering  <meyering@lucent.com>
50445
50446         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
50447         Otherwise, some versions of automake would omit the rule that makes
50448         Makefile from Makefile.in.
50449
50450 2002-01-21  Paul Eggert  <eggert@twinsun.com>
50451
50452         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
50453         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
50454         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
50455         (memcoll): Set errno to zero if there is no error.
50456
50457         * lib/quotearg.c (quotearg_buffer_restyled):
50458         Fix bug with quoting buffers containing NUL when backslashing escapes.
50459         This bug was exposed by the other changes in this patch.
50460         (quotearg_n_options): New arg ARGSIZE.
50461         All callers changed.
50462         (quoting_options_from_style): New function.
50463         (quotearg_n_style): Use it.
50464         (quotearg_n_style_mem): New function.
50465
50466         * lib/quotearg.h (quotearg_n_style_mem): New function.
50467
50468 2002-01-19  Jim Meyering  <meyering@lucent.com>
50469
50470         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
50471         Remove useless quotes: DF_PROG="df".
50472         * m4/strnlen.m4: New file.
50473
50474 2002-01-16  Paul Eggert  <eggert@twinsun.com>
50475
50476         * lib/backupfile.c (ISDIGIT): Comment fix.
50477         * lib/getdate.y (ISDIGIT): Likewise.
50478         * lib/posixtm.c (ISDIGIT, year): Likewise.
50479         * lib/strverscmp.c (ISDIGIT): Likewise.
50480         * lib/userspec.c (ISDIGIT): Likewise.
50481
50482 2002-01-16  Jim Meyering  <meyering@lucent.com>
50483
50484         * lib/getdate.y: Add three semicolons, each just before a closing
50485         brace. Bison (as of version 1.31) no longer papers over that mistake.
50486
50487 2002-01-05  Jim Meyering  <meyering@lucent.com>
50488
50489         * lib/version-etc.c (version_etc_copyright): Update copyright year.
50490
50491 2001-12-19  Paul Eggert  <eggert@twinsun.com>
50492
50493         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
50494         not silently exit merely because the output buffer happens to
50495         have nothing pending.
50496
50497 2001-12-18  Paul Eggert  <eggert@twinsun.com>
50498
50499         See the big note in ../ChangeLog.
50500         * lib/human.c (suffixes): Prefer K to k for 1024.
50501         (generate_suffix_backwards): New function.
50502         (human_readable_inexact): Use it.
50503         * lib/xstrtol.c (__xstrtol): If there is no number but there
50504         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
50505         Accept 'K' as well as 'k'.
50506
50507 2001-12-15  Jim Meyering  <meyering@lucent.com>
50508
50509         * lib/regex.h (__restrict_arr): Update from libc.
50510
50511         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
50512         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
50513         (STREQ): Define.
50514
50515 2001-12-14  Jim Meyering  <meyering@lucent.com>
50516
50517         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
50518         Suggestion from Bruno Haible.
50519
50520 2001-12-10  Jim Meyering  <meyering@lucent.com>
50521
50522         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
50523         xrealloc, Instead, include "xalloc.h".
50524         (initbuffer): Don't cast xmalloc return value to char*.
50525         (readline): Reword comment.
50526         Don't cast xrealloc return value to char*
50527         Return NULL, not 0.
50528
50529 2001-12-09  Jim Meyering  <meyering@lucent.com>
50530
50531         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
50532         about `signed and unsigned type in conditional expression'.
50533         * lib/posixtm.c (posix_time_parse): Likewise.
50534
50535         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
50536
50537         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
50538         to avoid a pedantic warning.
50539
50540         * lib/getstr.c: Don't include assert.h.
50541         (getstr): Remove warning-evoking assertions.
50542         Return -1 if offset parameter is out of bounds.
50543         Change the type of a local from int to size_t.
50544
50545         * lib/strftime.c (my_strftime_localtime_r): Include this function
50546         definition in the `#if ! HAVE_TM_GMTOFF' block.
50547
50548         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
50549         Include xalloc.h instead.
50550
50551 2001-12-02  Jim Meyering  <meyering@lucent.com>
50552
50553         * lib/tempname.c: Don't declare getenv, thus reverting the change of
50554         2001-11-18.  It's no longer necessary, now that stdlib.h is always
50555         included.
50556
50557         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
50558         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
50559
50560 2001-11-30  Akim Demaille  <akim@epita.fr>
50561
50562         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
50563         before being defined.
50564
50565 2001-11-27  Paul Eggert  <eggert@twinsun.com>
50566
50567         * lib/quotearg.h (quotearg_n, quotearg_n_style):
50568         First arg is int, not unsigned.
50569         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
50570         (SIZE_MAX, UINT_MAX): New macros.
50571         (quotearg_n_options): Abort if N is negative.
50572         Avoid overflow check on hosts where size_t is 64 bits and int
50573         is 32 bits, as overflow is impossible there.
50574         Fix off-by-one typo that caused unnecessary reallocation.
50575
50576 2001-11-27  Jim Meyering  <meyering@lucent.com>
50577
50578         * lib/tempname.c: Merge with version from libc.
50579         * lib/regex.c: Likewise.
50580
50581         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
50582         systems for which STDC_HEADERS is 0, it was not included, resulting in
50583         a warning about an integer-to-pointer conversion problem with getenv.
50584         Reported by Volker Borchert.
50585
50586 2001-11-26  Jim Meyering  <meyering@lucent.com>
50587
50588         * lib/gtod.h: Remove file.
50589         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
50590         * lib/gettimeofday.c: Don't include gtod.h.
50591         (GTOD_init): Remove function.
50592         (rpl_gettimeofday): Do its job here instead, rather than aborting.
50593         Suggestion from Volker Borchert.
50594
50595 2001-11-23  Jim Meyering  <meyering@lucent.com>
50596
50597         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
50598         it.
50599         * lib/hash.c (struct hash_table): Define it here instead.
50600
50601 2001-11-22  Jim Meyering  <meyering@lucent.com>
50602
50603         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
50604
50605 2001-11-20  Jim Meyering  <meyering@lucent.com>
50606
50607         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
50608         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
50609
50610 2001-11-19  Jim Meyering  <meyering@lucent.com>
50611
50612         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
50613         directory.  Use "conftestXXXXXX" as the template.
50614         Suggestion from Paul Eggert.
50615
50616         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
50617         immediately, so the test doesn't mistakenly hit the max-open-files
50618         limit.
50619
50620 2001-11-18  Paul Eggert  <eggert@twinsun.com>
50621
50622         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
50623         (TEMPORARIES): New macro.
50624         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
50625         removes an artificial limitation (e.g. HP-UX 10.20, where
50626         TMP_MAX is 17576).
50627
50628 2001-11-18  Jim Meyering  <meyering@lucent.com>
50629
50630         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
50631
50632 2001-11-18  Jim Meyering  <meyering@lucent.com>
50633
50634         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
50635         on SunOS 4.
50636
50637         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
50638         files will be created before anything else.
50639
50640 2001-11-17  Paul Eggert  <eggert@twinsun.com>
50641
50642         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
50643         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
50644
50645 2001-11-17  Jim Meyering  <meyering@lucent.com>
50646
50647         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
50648         Prompted by a report from Bob Proulx.
50649
50650         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
50651         Instead, require UTILS_FUNC_MKSTEMP.
50652
50653 2001-11-17  Jim Meyering  <meyering@lucent.com>
50654
50655         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
50656         Now, that's done as part of AC_FUNC_STRTOD.
50657
50658 2001-11-17  Jim Meyering  <meyering@lucent.com>
50659
50660         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
50661         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
50662         rather than group writable.  Patch by Juan F. Codagnone.
50663
50664         * lib/readtokens.c: Remove explicit declarations of xmalloc and
50665         xrealloc, Instead, include "xalloc.h".
50666
50667         * lib/mountlist.c: Include unlocked-io.h after all system headers.
50668         Remove explicit declarations of xmalloc, xrealloc,
50669         and xstrdup.  Instead, include "xalloc.h".
50670
50671         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
50672         unlocked-io.h.
50673         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
50674         Likewise.
50675         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
50676
50677         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
50678         Reported by Padraig Brady.
50679
50680         * lib/mkstemp.c: #undef mkstemp.
50681         Include config.h.
50682         (rpl_mkstemp): Rename from mkstemp.
50683         Protoize.
50684
50685 2001-11-16  Jim Meyering  <meyering@lucent.com>
50686
50687         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
50688         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
50689         determine the amount of total physical memory, use pstat_getstatic.
50690         HPUX-11 doesn't define _SC_PHYS_PAGES.
50691         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
50692         If sysconf couldn't be used to determine the amount of available
50693         physical memory, use both pstat_getstatic and pstat_getdynamic.
50694         Based on a patch from Bob Proulx.
50695
50696 2001-11-10  Jim Meyering  <meyering@lucent.com>
50697
50698         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
50699         (jm_PREREQ): Use it.
50700
50701 2001-11-09  Jim Meyering  <meyering@lucent.com>
50702
50703         * m4/jm-macros.m4: Require autoconf-2.52f.
50704         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
50705         Use these AC_-prefixed names, not the AM_-prefixed ones.
50706
50707         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
50708
50709 2001-11-05  Jim Meyering  <meyering@lucent.com>
50710
50711         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
50712
50713 2001-11-04  Jim Meyering  <meyering@lucent.com>
50714
50715         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
50716         $DEFS.
50717
50718 2001-11-03  Jim Meyering  <meyering@lucent.com>
50719
50720         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
50721         of AC_DEFUN.
50722
50723         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
50724         know the name of the variable in the macro definition.
50725
50726 2001-11-03  Jim Meyering  <meyering@lucent.com>
50727
50728         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
50729         in argmatch_to_argument call.
50730
50731         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
50732         argument.
50733
50734         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
50735         e.g., a fault due to an attempt to free a NULL pointer.
50736
50737 2001-11-01  Jim Meyering  <meyering@lucent.com>
50738
50739         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
50740         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
50741
50742 2001-11-01  Jim Meyering  <meyering@lucent.com>
50743
50744         * lib/dirfd.c, lib/dirfd.h: New files.
50745         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
50746
50747         * lib/hash.c (hash_print) [TESTING]: Clean up.
50748
50749 2001-10-22  Paul Eggert  <eggert@twinsun.com>
50750
50751         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
50752         to avoid a warning if -Wall.
50753
50754 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
50755
50756         * README: New file
50757         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
50758         (per RMS's instructions, this is now the canonical source)
50759         * lgpl/, gpl/: New directories.
50760
50761 2001-10-21  Paul Eggert  <eggert@twinsun.com>
50762
50763         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
50764
50765 2001-10-21  Jim Meyering  <meyering@lucent.com>
50766
50767         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
50768         this code would end up calling gettext even in packages built
50769         with --disable-nls.
50770         * lib/getopt.c (_): Likewise.
50771         * lib/regex.c (_): Likewise.
50772
50773 2001-10-20  Paul Eggert  <eggert@twinsun.com>
50774
50775         * m4/error.m4 (jm_PREREQ_ERROR):
50776         Do not invoke AC_CHECK_FUNCS with strerror_r, as
50777         AC_FUNC_STRERROR_R does that.
50778         Check for strerror declaration.
50779
50780         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
50781         are supposed to have them these days.
50782         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
50783         Merge changes from latest Autoconf CVS.
50784         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
50785         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
50786         POSIX decided to standardize on the int flavor of strerror_r.
50787
50788 2001-10-20  Paul Eggert  <eggert@twinsun.com>
50789
50790         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
50791         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
50792         Use strerror_r that is only a macro, even if it is not a function.
50793         (strerror): Check for HAVE_DECL_STRERROR before declaring.
50794         (private_strerror): Use prototypes, not old-style function definition.
50795         (print_errno_message): New function.
50796         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
50797         char*-flavored one.
50798         (error_tail, error, error_at_line): Use it.
50799
50800 2001-10-11  Jim Meyering  <meyering@lucent.com>
50801
50802         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
50803         and quote_n (1, ... to avoid clobbering a buffer.
50804
50805 2001-10-05  Jim Meyering  <meyering@lucent.com>
50806
50807         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
50808         hash-pjw.h.
50809         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
50810         * lib/hash-pjw.h: New file.
50811
50812 2001-09-30  Jim Meyering  <meyering@lucent.com>
50813
50814         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
50815         `struct fsstat' has the `f_fstypename' member.
50816         Use that to define FS_TYPE, which is now used to make
50817         the getfsstat link test tighter.
50818
50819 2001-09-30  Jim Meyering  <meyering@lucent.com>
50820
50821         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
50822         Include <sys/ucred.h>, for Apple Darwin.
50823         Include sys/mount.h and sys/fs_types.h only if available.
50824         (FS_TYPE): Define.
50825         (read_filesystem_list): Use FS_TYPE.
50826
50827 2001-09-29  Paul Eggert  <eggert@twinsun.com>
50828
50829         * lib/exclude.c (excluded_filename): 0 -> false, since it's
50830         a boolean context.
50831
50832 2001-09-29  Jim Meyering  <meyering@lucent.com>
50833
50834         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
50835         [one-argument getmntent function]): Include stdio.h before mntent.h.
50836         SunOS 4.1.x needs it for the declaration of `FILE'.
50837         Patch by Volker Borchert.
50838
50839         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
50840         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
50841         sys/fs_types.h, and make the link-test for getfsstat guard #include
50842         directives with appropriate #if HAVE_*_H tests so that we can
50843         detect getfsstat on Apple Darwin1.3.7 systems.
50844         Reported by Nelson Beebe.
50845         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
50846
50847 2001-09-28  Paul Eggert  <eggert@twinsun.com>
50848
50849         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
50850         #defines strtoimax.  Also treat the other strto* functions
50851         like strtoimax.
50852
50853         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
50854         Check for strtoul and strtoumax,
50855         as those declarations are made even in the signed case.
50856         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
50857         Likewise, for strtol and strtoimax.
50858
50859 2001-09-28  Paul Eggert  <eggert@twinsun.com>
50860
50861         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
50862         #defines strtoimax.  Also treat the other strto* functions
50863         like strtoimax.
50864
50865         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
50866         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
50867         (strtoimax, strtoumax): Do not declare if already defined as a macro.
50868
50869 2001-09-26  Jim Meyering  <meyering@lucent.com>
50870
50871         Most macros in unlocked-io.h had the wrong number of arguments.
50872         * lib/gen-uio: New script.
50873         (USE_UNLOCKED_IO): Define to 1 if not already defined.
50874         * lib/unlocked-io.hin: Remove file.
50875         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
50876         rather than trying to embed it here.
50877         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
50878         Reported by Padraig Brady.
50879
50880 2001-09-25  Volker Borchert  <bt@teknon.de>
50881
50882         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
50883         `result'.
50884
50885 2001-09-24  Jim Meyering  <meyering@lucent.com>
50886
50887         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
50888
50889 2001-09-23  Jim Meyering  <meyering@lucent.com>
50890
50891         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
50892         instead of the mere test for existence of mntent.h.  The latter
50893         would get a false-positive on AIX 3.4 systems.
50894         In the outer getmntent if-block, don't die if neither of the getmntent
50895         tests succeeds.  Instead, just fall through and continue with the
50896         remaining tests.
50897
50898 2001-09-23  Jim Meyering  <meyering@lucent.com>
50899
50900         * lib/mountlist.c: Remove useless parentheses in #if directives.
50901         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
50902         the deprecated MOUNTED symbol is no longer defined in mntent.h.
50903
50904 2001-09-22  Jim Meyering  <meyering@lucent.com>
50905
50906         * m4/gettext.m4: New file.  From gettext.
50907         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
50908         * m4/progtest.m4: Likewise
50909         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
50910         * m4/glibc21.m4: Likewise.
50911
50912         * m4/libintl.m4: Remove.  No longer used.
50913
50914 2001-09-22  Jim Meyering  <meyering@lucent.com>
50915
50916         * lib/localcharset.c: Update from latest gettext.
50917         * lib/config.charset: Likewise.
50918
50919 2001-09-20  Jim Meyering  <meyering@lucent.com>
50920
50921         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
50922         strtoimax.
50923         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
50924         strtoumax.
50925
50926 2001-09-20  Jim Meyering  <meyering@lucent.com>
50927
50928         * lib/xstrtol.c (strtoimax): Guard declaration with
50929         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
50930         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
50931         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
50932         (strtoumax): Likewise, for completeness (it wasn't necessary).
50933
50934 2001-09-17  Paul Eggert  <eggert@twinsun.com>
50935
50936         * lib/strtoimax.c (HAVE_LONG_LONG):
50937         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
50938         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
50939         to work around bug in IBM C compiler.
50940
50941 2001-09-17  Jim Meyering  <meyering@lucent.com>
50942
50943         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
50944         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
50945         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
50946         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
50947         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
50948         whenever the right hand side need not be expanded by the shell.
50949
50950 2001-09-16  Paul Eggert  <eggert@twinsun.com>
50951
50952         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
50953         library.  It's not correct, as some older glibcs are buggy.
50954         fnmatch wasn't fixed until glibc 2.2.
50955
50956         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
50957         special shell magic here.
50958
50959 2001-09-16  Jim Meyering  <meyering@lucent.com>
50960
50961         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
50962         * m4/jm-macros.m4: Require it.
50963
50964 2001-09-16  Jim Meyering  <meyering@lucent.com>
50965
50966         * lib/mkdir.c: New file.
50967
50968 2001-09-15  Jim Meyering  <meyering@lucent.com>
50969
50970         * m4/jm-macros.m4: Check for help2man.
50971
50972 2001-09-11  Jim Meyering  <meyering@lucent.com>
50973
50974         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
50975         The body, by Paul Eggert, was moved here from configure.in.
50976         * m4/jm-macros.m4: Require UTILS_HOST_OS.
50977
50978 2001-09-04  Paul Eggert  <eggert@twinsun.com>
50979
50980         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
50981         (jm_PREREQ): Use it.
50982
50983 2001-09-04  Paul Eggert  <eggert@twinsun.com>
50984
50985         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
50986         Use ssize_t, not int, to store result of readlink.
50987         Check for ssize_t overflow as well as size_t overflow,
50988         as POSIX says the result of readlink is implementation-defined
50989         when ssize_t overflows.
50990         Remove unnecessary cast to char*.
50991         Use free+malloc instead of realloc, as the storage doesn't need
50992         to be preserved and it's clearer and can be more efficient that way.
50993         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
50994         * lib/xreadlink.h (xreadlink): Update prototype.
50995
50996 2001-09-04  Paul Eggert  <eggert@twinsun.com>
50997
50998         * lib/xgetcwd.c: Revert some of the previous change; intead,
50999         fix the HAVE_GETCWD_NULL code to behave more like the
51000         !HAVE_GETCWD_NULL code used to.
51001
51002         Include "xalloc.h".
51003         (xgetcwd): Do not return NULL when memory is exhausted; instead,
51004         invoke xalloc_die.
51005
51006 2001-09-03  Paul Eggert  <eggert@twinsun.com>
51007
51008         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
51009         sys/param.h, as pathmax.h includes them.
51010
51011 2001-09-03  Paul Eggert  <eggert@twinsun.com>
51012
51013         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
51014         (jm_PREREQ_XGETCWD): New macro.
51015
51016         * m4/getcwd.m4: New file.
51017
51018 2001-09-03  Paul Eggert  <eggert@twinsun.com>
51019
51020         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
51021         like the HAVE_GETCWD_NULL code.
51022         Include pathmax.h if not HAVE_GETCWD.
51023         Do not include xalloc.h.
51024         (INITIAL_BUFFER_SIZE): New symbol.
51025         Do not use xmalloc / xrealloc, since the caller is responsible for
51026         handling errors.  Preserve errno around `free' during failure.
51027         Do not overrun buffer when using getwd.
51028
51029 2001-09-03  Paul Eggert  <eggert@twinsun.com>
51030
51031         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
51032         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
51033         getcwd (NULL, 0).
51034
51035 2001-09-03  Paul Eggert  <eggert@twinsun.com>
51036
51037         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
51038         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
51039         spotted by Jim Meyering.
51040
51041 2001-09-03  Jim Meyering  <meyering@lucent.com>
51042
51043         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
51044         failure.
51045
51046 2001-09-02  Jim Meyering  <meyering@lucent.com>
51047
51048         * lib/error.c: Update from GNU libc.
51049
51050 2001-09-01  Jim Meyering  <meyering@lucent.com>
51051
51052         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
51053         Used by df.
51054
51055 2001-09-01  Jim Meyering  <meyering@lucent.com>
51056
51057         * lib/xreadlink.c: New file.
51058         * lib/xreadlink.h: New file.
51059         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
51060         xreadlink.h.
51061
51062         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
51063         doesn't conflict with sparc Solaris 7's definition in
51064         /usr/include/sys/int_types.h.
51065
51066         * lib/exclude.c: Use `""', not `<>' to #include non-system header
51067         files.
51068         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
51069         and strncasecmp as r-values.  Unixware didn't have declarations.
51070
51071 2001-08-31  Paul Eggert  <eggert@twinsun.com>
51072
51073         * lib/xstrtol.h: Add copyright notice.
51074         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
51075         LONGINT_INVALID_SUFFIX_CHAR.
51076
51077 2001-08-31  Paul Eggert  <eggert@twinsun.com>
51078
51079         * lib/xstrtol.c (strtoimax): New decl.
51080
51081 2001-08-31  Paul Eggert  <eggert@twinsun.com>
51082
51083         * lib/xgetcwd.c: Don't include pathmax.h.
51084         Include stdlib.h and unistd.h if available.
51085         Include xalloc.h.
51086         (xmalloc, xstrdup, free): Remove decls.
51087         (xgetcwd): Don't assume sizes fit in unsigned.
51088         Check for overflow when computing sizes.
51089         Simplify reallocation code.
51090
51091 2001-08-31  Paul Eggert  <eggert@twinsun.com>
51092
51093         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
51094         a directory's st_size can have an arbitrary value, so the old
51095         usage could waste an arbitrary amount of memory.  All uses
51096         changed.
51097         * lib/savedir.h: Update prototype.
51098
51099 2001-08-31  Paul Eggert  <eggert@twinsun.com>
51100
51101         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
51102
51103         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
51104         old strtoimax.c.
51105
51106         Also, make the following further changes to make this file's
51107         configuration more similar to that of strtol.c:
51108         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
51109         (strtoumax, uintmax_t, strtoull, strtol): Remove.
51110         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
51111         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
51112         changed to signed values.
51113
51114         And make the following changes as well:
51115         Fix copyright notice, as 1999 was missing.
51116         (verify): New macro.
51117         (strtoimax): Check sizes at compile-time, not run-time.
51118         Prefer strtol to strtoll if both work.
51119         (main): Remove; it was not that useful and was a pain to maintain.
51120
51121         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
51122
51123 2001-08-31  Jim Meyering  <meyering@lucent.com>
51124
51125         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
51126         Use an initial, malloc'd, buffer of length 128 rather than
51127         a statically allocated one of length 1024.
51128
51129 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51130
51131         Simplify code, partly by assuming autoconf 2.52 semantics.
51132
51133         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
51134
51135         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
51136         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
51137         All uses removed.
51138         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
51139         Move AC_REQUIRE to next-to-top level, to avoid confusion.
51140         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
51141         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
51142         jm_AC_HEADER_INTTYPES_H.
51143         * m4/jm-macros.m4 (jm_MACROS): Likewise.
51144
51145         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
51146
51147         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
51148         Quote first arg of AC_DEFUN.
51149         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
51150         since they are needed to parse the include file even if we need
51151         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
51152         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
51153         but with opposite signedness.
51154
51155 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51156
51157         Merge 'exclude' changes from tar 1.13.22.
51158         This fixes one or two unlikely storage allocation overflow bugs,
51159         but doesn't change user-visible behavior otherwise.
51160
51161 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51162
51163         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
51164         (jm_PREREQ_EXCLUDE): New macro.
51165
51166 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51167
51168         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
51169         tm to be declared.
51170
51171 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51172
51173         * lib/hash.c: Remove '2001' from copyright notice.
51174
51175 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51176
51177         * lib/full-write.h: New file.
51178         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
51179         * lib/full-write.c: Correct credits, as cccp.c no longer
51180         exists and anyway it was so heavily changed from the old cccp
51181         code as to be unrecognizable.  Include full-write.h.
51182         (full_write) Return size_t, with short writes meaning failure.
51183         All callers changed.  This fixes a bug with large buffers
51184         on 64-bit hosts.
51185         * lib/utime.c: Include full-write.h.
51186
51187 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51188
51189         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
51190         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
51191         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
51192         Include if available.
51193         (<xalloc.h>): Include
51194         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
51195         (verify): New macro.  Use it to verify that EXCLUDE macros do not
51196         collide with FNM macros.
51197         (struct patopts): New struct.
51198         (struct exclude): Use it, as exclude patterns now come with options.
51199         (new_exclude): Support above changes.
51200         (new_exclude, add_exclude_file):
51201         Initial size must now be a power of two to simplify overflow checking.
51202         (free_exclude, fnmatch_no_wildcards): New function.
51203         (excluded_filename): No longer requires options arg, as the options
51204         are determined by add_exclude.  Now returns bool, not int.
51205         (excluded_filename, add_exclude):
51206         Add support for the fancy new exclusion options.
51207         (add_exclude, add_exclude_file): Now takes int options arg.
51208         Check for arithmetic overflow when computing sizes.
51209         (add_exclude_file): xrealloc might modify errno, so don't
51210         realloc until after errno might be used.
51211
51212         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
51213         New macros.
51214         (free_exclude): New decl.
51215         (add_exclude, add_exclude_file): Now takes int options arg.
51216         (excluded_filename): No longer requires options arg, as the options
51217         are determined by add_exclude.  Now returns bool, not int.
51218
51219 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51220
51221         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
51222
51223 2001-08-27  Jim Meyering  <meyering@lucent.com>
51224
51225         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
51226
51227         * lib/version-etc.c (N_): Remove definition.
51228         Revert most of last change.
51229         Instead, simply don't mark the `Copyright...' string for translation.
51230         Based on advice from Paul Eggert.
51231
51232         * lib/strtoxmax.c: Tweak comment.
51233
51234 2001-08-26  Jim Meyering  <meyering@lucent.com>
51235
51236         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
51237
51238         * m4/xstrtoimax.m4: New file.
51239         * m4/xstrtoumax.m4: Add comments explaining why we
51240         AC_REPLACE_FUNCS(strtol).
51241
51242 2001-08-26  Jim Meyering  <meyering@lucent.com>
51243
51244         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
51245         of copyright with `%s' so translators don't get an untranslated
51246         message in 2002.
51247         (COPYRIGHT_YEAR): Define.
51248         (version_etc): Use fprintf rather than fputs.
51249         Suggestion from Ulrich Drepper.
51250
51251         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
51252
51253         * lib/strtoll.c: New file, from GNU libc.
51254         * lib/xstrtoimax.c: New file.
51255
51256         * lib/xstrtol.h: Add xstrtoimax.
51257         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
51258         * lib/strtoimax.c: New file.  Likewise, but first define
51259         STRTOUXMAX_SIGNED.
51260
51261         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
51262         ...
51263         * lib/strtoxmax.c: ... then renamed to this.
51264
51265 2001-08-18  Paul Eggert  <eggert@twinsun.com>
51266
51267         * m4/inttypes.m4: Add AC_PREREQ(2.13).
51268         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
51269         (jm_AC_TYPE_INTMAX_T): New macro.
51270         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
51271
51272         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
51273
51274         * m4/longlong.m4: Renamed from ulonglong.m4.
51275         * m4/inttypes.m4: Renamed from inttypes_h.m4.
51276         * m4/uintmax_t.m4: Removed.
51277
51278 2001-08-13  Paul Eggert  <eggert@twinsun.com>
51279
51280         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
51281         Port to Solaris 8, where 'sed' requires a space after the 'r'
51282         command, and where sh dislikes "$/".  Clean up the spacing a bit.
51283         Redirect output to $tmp just once.
51284
51285 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
51286
51287         * lib/addext.c (<errno.h>): Include.
51288         (errno): Declare if not defined.
51289         (addext): Work correctly when pathconf returns -1 and leaves
51290         errno alone because there is no limit.  Also, work even if
51291         pathconf returns a value greater than SIZE_MAX.
51292
51293 2001-08-12  Jim Meyering  <meyering@lucent.com>
51294
51295         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
51296         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
51297         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
51298         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
51299         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
51300         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
51301         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
51302         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
51303         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
51304         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
51305         utime.m4, utimes.m4, xstrtoumax.m4:
51306         Quote the first argument in each use of AC_DEFUN.
51307
51308 2001-08-12  Jim Meyering  <meyering@lucent.com>
51309
51310         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
51311         Simply `return getcwd (NULL, 0);'.
51312         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
51313         Use 1300 as initial value for length, not PATH_MAX.
51314
51315         * lib/pathmax.h: Clean up cpp syntax.
51316
51317 2001-08-12  Jim Meyering  <meyering@lucent.com>
51318
51319         * lib/gettimeofday.c: New file.
51320         * lib/gtod.h: New file.
51321         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
51322
51323 2001-08-05  Jim Meyering  <meyering@lucent.com>
51324
51325         * m4/jm-macros.m4: Require autoconf-2.52.
51326
51327 2001-08-04  Jim Meyering  <meyering@lucent.com>
51328
51329         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
51330         stmt, to get in sync with glibc.
51331
51332 2001-08-03  Paul Eggert  <eggert@twinsun.com>
51333
51334         The following changes are from gettext 0.10.39 as maintained by
51335         Bruno Haible.
51336
51337         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
51338         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
51339         with inverted sense.  All uses changed.
51340
51341         * lib/mbswidth.c: Don't include <limits.h>.
51342         Include <stdlib.h> and <string.h> unconditionally.
51343         (iswcntrl, mbsinit, ISCNTRL): New macros.
51344         (mbsnwidth): Use K&R style function declarations.
51345         Don't bother checking for MB_LEN_MAX == 1, since the compiler
51346         can optimize it when MB_CUR_MAX == 1.
51347         The width of control characters is zero, not 1.
51348
51349 2001-08-03  Paul Eggert  <eggert@twinsun.com>
51350
51351         The following changes are from gettext 0.10.39 as maintained by
51352         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
51353
51354         * m4/codeset.m4: Upgrade to serial AM1.
51355         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
51356         all uses changed.  Quote first arg of AC_DEFUN.
51357         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
51358
51359         * m4/iconv.m4: Upgrade to serial AM2.
51360         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
51361         Add --with-libconv-prefix.
51362         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
51363         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
51364         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
51365         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
51366         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
51367
51368         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
51369         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
51370         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
51371         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
51372         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
51373         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
51374         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
51375         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
51376         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
51377
51378         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
51379         string.h any more.
51380
51381         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
51382         not the default value.
51383
51384         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
51385         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
51386         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
51387         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
51388         Also check for iswcntrl, used for wcwidth fallback.
51389         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
51390         to Autoconf 2.13.
51391
51392 2001-08-03  Jim Meyering  <meyering@lucent.com>
51393
51394         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
51395         as it was in the original.  Reported by Paul Eggert.
51396
51397 2001-07-16  Jim Meyering  <meyering@lucent.com>
51398
51399         * m4/gettimeofday.m4: New file.
51400         Prompted by a report from Bernhard Baehr.
51401
51402 2001-07-15  Jim Meyering  <meyering@lucent.com>
51403
51404         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
51405         stuff. Now it's in ../Makefile.cfg.
51406
51407 2001-07-15  Jim Meyering  <meyering@lucent.com>
51408
51409         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
51410         (BUILT_SOURCES): Add unlocked-io.h.
51411         (io_functions): Define.
51412         (unlocked-io.h): New rule.
51413         (DISTCLEANFILES): Add unlocked-io.h.
51414         (all-local): Depend on unlocked-io.h, to ensure it is created.
51415
51416         * lib/unlocked-io.hin: New file
51417
51418         * lib/regex.c: Update from glibc.
51419
51420 2001-07-05  Jim Meyering  <meyering@lucent.com>
51421
51422         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
51423         recommendation.
51424         (libfetish_a_SOURCES): Put all .h files here instead.
51425         Remove a thus-exposed (better checks in automake) duplicate and
51426         two unnecessary .h files.
51427
51428 2001-07-04  Jim Meyering  <meyering@lucent.com>
51429
51430         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
51431         that generates jm-glibc-io.m4 so that it doesn't trigger any make
51432         distcheck failure.
51433
51434 2001-07-02  Jim Meyering  <meyering@lucent.com>
51435
51436         The following changes were prompted by suggestions from Bruno Haible.
51437
51438         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
51439         is now generated.
51440         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
51441         definition of EXTRA_DIST.
51442         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
51443         ensure that the generated file is created/updated whenever the list
51444         of $(unlocked_functions) is changed.
51445         (jm-glibc-io.m4): New rule.
51446         (unlocked-io.h): New rule -- currently unused.
51447
51448 2001-06-24  Jim Meyering  <meyering@lucent.com>
51449
51450         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
51451         unmatched right bracket, rather than kludging it with an extra,
51452         falsely-matching quote in a comment.  Patch by Akim Demaille.
51453
51454 2001-06-11  Jim Meyering  <meyering@lucent.com>
51455
51456         * lib/regex.c: Update from GNU libc.
51457
51458 2001-05-27  Jim Meyering  <meyering@lucent.com>
51459
51460         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
51461         Check for ut_type in struct utmp.
51462
51463 2001-05-27  Jim Meyering  <meyering@lucent.com>
51464
51465         * lib/readutmp.h (UT_TYPE): Define.
51466
51467 2001-05-24  Jim Meyering  <meyering@lucent.com>
51468
51469         * lib/argmatch.c: Include "quote.h".
51470         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
51471         quote function.  Reported by Göran Uddeborg.
51472
51473 2001-05-22  Jim Meyering  <meyering@lucent.com>
51474
51475         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
51476         now that we use the package-supplied version unconditionally.
51477         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
51478
51479 2001-05-21  Jim Meyering  <meyering@lucent.com>
51480
51481         * m4/regex.m4: Change a couple backticks to single quotes to avoid
51482         shell syntax errors.
51483
51484 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
51485
51486         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
51487
51488 2001-05-20  Paul Eggert  <eggert@twinsun.com>
51489
51490         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
51491         Don't bother to check library strftime, since
51492         we'll be using our own my_strftime function anyway.
51493         Define my_strftime instead of strftime.
51494
51495 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
51496
51497         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
51498         which is not yet declared.
51499
51500 2001-05-15  Jim Meyering  <meyering@lucent.com>
51501
51502         * m4/regex.m4: Use proper quoting so brackets appear in the test
51503         program.
51504         Reported by, and with help from, Bruno Haible.
51505
51506 2001-05-13  Jim Meyering  <meyering@lucent.com>
51507
51508         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
51509         undefined.
51510
51511 2001-05-11  Paul Eggert  <eggert@twinsun.com>
51512
51513         dirname code cleanup.  base_name now behaves more compatibly
51514         with POSIX basename when given file names that have trailing
51515         slashes, and similarly for dir_name.  Add new primitives
51516         base_len and dir_len.  Put the directory-name-related decls
51517         into dirname.h.
51518
51519         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
51520         * lib/backupfile.c (base_name): Likewise.
51521         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
51522         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
51523         * lib/makepath.c (strip_trailing_slashes): Likewise.
51524         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
51525         ISSLASH): Likewise.
51526         * lib/rename.c (strip_trailing_slashes): Likewise.
51527         * lib/same.c (base_name): Likewise.
51528         * lib/stripslash.c (ISSLASH): Likewise.
51529
51530         * lib/addext.c: Include <dirname.h> after size_t is defined.
51531         * lib/backupfile.c: Likewise.
51532
51533         * lib/addext.c (addext): Use base_len to trim redundant
51534         trailing slashes instead of doing it ourselves.
51535         But do not trim the last slash if it is not redundant.
51536
51537         * lib/backupfile.c (find_backup_file_name,
51538         max_backup_version): Use base_len instead of rolling it ourselves.
51539         Handle the case of "" and (on DOS) "C:" correctly.
51540
51541         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
51542         needed. Include <string.h>, <dirname.h>.
51543         (base_name): Allow file names ending in slashes, other than names
51544         that are all slashes.  In this case, return the basename followed
51545         by the slashes.  This is more general, and can be used in places
51546         where the original base_name purposely had an assertion failure.
51547         (base_len): New function.
51548
51549         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
51550         Do not include <assert.h>; no longer needed.
51551         Include xalloc.h.
51552         (memrchr): Remove decl.
51553         (dir_name_r): Remove.
51554         (dir_len): Renamed from dirlen.  All callers changed.
51555         Rewrite in terms of base_name, for simplicity and consistency.
51556         (dir_name): Never return NULL.  All callers changed.
51557         Do not include <stdlib.h> in test program; no longer needed.
51558         return 0; is fine for test program.
51559
51560         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
51561         New macros.
51562         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
51563
51564         * lib/path-concat.c (path_concat): Use base_len to compute
51565         base length, not strlen; this means we cannot rely on memcpy
51566         to null-terminate.
51567
51568         * lib/same.c (STREQ): Remove.
51569         (same_name): Handle the case where the basename ends in trailing '/'.
51570
51571         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
51572         a slash was stripped.  Do not strip the last slash after a
51573         file system prefix.
51574
51575 2001-05-11  Paul Eggert  <eggert@twinsun.com>
51576
51577         * lib/Makefile.am (libfetish_a_SOURCES):
51578         Add strftime.c, since we now compile it on all hosts.
51579
51580         * lib/strftime.c (my_strftime):
51581         Define to nstrftime if emacs, but only if my_strftime is not defined.
51582         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
51583         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
51584         Add one more extra argument: a nanoseconds value.
51585         All uses changed.
51586         (ns): New macro.
51587         (my_strftime function): Add %N format.
51588         (emacs_strftimeu): Renamed from emacs_strftime,
51589         with extra ut argument.
51590
51591 2001-05-09  Paul Eggert  <eggert@twinsun.com>
51592
51593         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
51594
51595 2001-04-21  Jim Meyering  <meyering@lucent.com>
51596
51597         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
51598         doesn't interfere.
51599
51600 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
51601
51602         * m4/ftruncate.m4: Check for chsize.
51603         Link with ftruncate.o unconditionally if ftruncate is missing.
51604         This was required when cross-compiling to i586-mingw32msvc.
51605
51606 2001-04-08  Jim Meyering  <meyering@lucent.com>
51607
51608         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
51609         recomputed; that's necessary when the offset spans a DST transition.
51610         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
51611
51612 2001-04-02  Jim Meyering  <meyering@lucent.com>
51613
51614         * lib/regex.h, regex.c: Update from GNU libc.
51615
51616 2001-03-24  Jim Meyering  <meyering@lucent.com>
51617
51618         * m4/jm-macros.m4: Require autoconf-2.49d.
51619
51620 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
51621
51622         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
51623
51624 2001-03-19  Paul Eggert  <eggert@twinsun.com>
51625
51626         * lib/version-etc.c (version_etc_copyright): Update to 2001.
51627
51628 2001-03-17  Jim Meyering  <meyering@lucent.com>
51629
51630         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
51631         now that the version in autoconf is equivalent.
51632         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
51633
51634         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
51635         Suggestion from Akim Demaille.
51636
51637         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
51638         (jm_PREREQ_TEMPNAME): New function.
51639
51640 2001-03-16  Paul Eggert  <eggert@twinsun.com>
51641
51642         * lib/tempname.c (uint64_t): Define to uintmax_t if
51643         not defined, and if UINT64_MAX is not defined.
51644         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
51645         Reported by John David Anglin.
51646
51647 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
51648
51649         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
51650         resolve alias if codeset is empty.
51651         * lib/config.charset (BeOS): Use wildcard syntax.
51652
51653 2001-03-13  Jim Meyering  <meyering@lucent.com>
51654
51655         * lib/path-concat.c (path_concat)
51656         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
51657         concatenating e.g., `C:' and `foo'.
51658         From Bruno Haible.
51659
51660 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
51661
51662         * lib/localcharset.c (locale_charset): Don't use
51663         setlocale(LC_CTYPE,NULL). Don't return NULL.
51664         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
51665
51666 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
51667
51668         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
51669         support for DOS/DJGPP.
51670
51671 2001-03-01  Paul Eggert  <eggert@twinsun.com>
51672
51673         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
51674         lacks mkstemp.  Compile our own tempname.c if we compile our own
51675         mkstemp.c, as mkstemp relies on tempname.
51676
51677 2001-03-01  Jim Meyering  <meyering@lucent.com>
51678
51679         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
51680         AH_VERBATIM really does output its argument verbatim.
51681
51682 2001-02-28  Paul Eggert  <eggert@twinsun.com>
51683
51684         * lib/Makefile.am (libfetish_a_SOURCES):
51685         Add dup-safer.c, fopen-safer.c.
51686         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
51687
51688         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
51689         * lib/unistd-safer.h: New files.
51690
51691 2001-02-25  Paul Eggert  <eggert@twinsun.com>
51692
51693         The mkstemp replacement is taken from glibc 2.2.2, with some
51694         portability fixes for use outside glibc, as follows:
51695
51696         * lib/tempname.c (struct_stat64): New macro.
51697         (direxists, __gen_tempname): Use it.
51698         This avoids a portability problem with Solaris 8.
51699
51700         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
51701         (<stddef.h>, <stdint.h>, <string.h>):
51702         Include only if STDC_HEADERS || _LIBC.
51703         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
51704         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
51705         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
51706         (__set_errno): Define this macro if <errno.h> doesn't.
51707         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
51708         Define these macros if <stdio.h> doesn't.
51709         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
51710         Define these macros if <sys/stat.h>
51711         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
51712         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
51713         __xstat64): Define if not _LIBC.
51714         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
51715         (__gen_tempname): Invoke gettimeofday only if
51716         HAVE_GETTIMEOFDAY || _LIBC;
51717         otherwise, fall back on plain "time".
51718         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
51719
51720         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
51721
51722         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
51723
51724 2001-02-18  Paul Eggert  <eggert@twinsun.com>
51725
51726         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
51727
51728 2001-02-17  Paul Eggert  <eggert@twinsun.com>
51729
51730         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
51731         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
51732         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
51733         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
51734
51735 2001-02-17  Paul Eggert  <eggert@twinsun.com>
51736
51737         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
51738         Remove workaround macros for hosts that have mbrtowc but not
51739         mbstate_t, as we now insist on proper declarations for both
51740         before using mbrtowc.
51741
51742 2001-02-17  Jim Meyering  <meyering@lucent.com>
51743
51744         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
51745         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
51746         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
51747         UnixWare 7.1.1.
51748
51749         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
51750         rather than AC_CACHE_VAL.
51751
51752 2001-02-17  Jim Meyering  <meyering@lucent.com>
51753
51754         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
51755         around included file name.
51756
51757         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
51758
51759         * lib/strftime.c: Update from GNU libc (the only changes were to
51760         comments).
51761
51762 2001-02-17  Jim Meyering  <meyering@lucent.com>
51763
51764         * lib/regex.c: Update from libc.
51765
51766 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
51767
51768         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
51769         clash.
51770
51771 2001-02-16  Paul Eggert  <eggert@twinsun.com>
51772
51773         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
51774         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
51775         Reported by Mark Hounschell via Paul Eggert.
51776
51777 2001-02-07  Jim Meyering  <meyering@lucent.com>
51778
51779         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
51780
51781 2001-02-05  Jim Meyering  <meyering@lucent.com>
51782
51783         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
51784         it includes the patch required for `large file' support with at least
51785         HP-UX's 10.20 /bin/cc.
51786
51787 2001-02-03  Jim Meyering  <meyering@lucent.com>
51788
51789         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
51790         AS_IF, now that it works once again (mysteriously).
51791         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
51792
51793 2001-01-30  Jim Meyering  <meyering@lucent.com>
51794
51795         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
51796         * m4/chown.m4: Rename conftestchown to conftest.chown.
51797         * m4/rename.m4: s/conftestdir/conftest.d1/ and
51798         s/conftestdir2/conftest.d2/.
51799         * m4/utimes.m4: s/conftestdata/conftest.data/
51800         Inspired by Pavel Roskin's change in autoconf.
51801
51802 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
51803
51804         * lib/config.charset: Update for FreeBSD 4.2.
51805
51806 2001-01-27  Jim Meyering  <meyering@lucent.com>
51807
51808         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
51809         a use of AS_IF.
51810         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
51811
51812 2001-01-26  Jim Meyering  <meyering@lucent.com>
51813
51814         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
51815         quotearg.c includes it.
51816
51817 2001-01-26  Jim Meyering  <meyering@lucent.com>
51818
51819         * lib/quotearg.c: Include stddef.h.
51820         * lib/quote.c: Include stddef.h.
51821         Reported by Axel Kittenberger.
51822
51823         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
51824         line in double quotes so that it evokes a better diagnostic.
51825         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
51826         Reported by Axel Kittenberger.
51827
51828 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
51829
51830         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
51831         as if it was a `charset'.
51832
51833 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
51834
51835         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
51836         has const.
51837
51838 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
51839
51840         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
51841         to avoid a warning.  Add back 'const' to inptr.
51842
51843 2001-01-20  Jim Meyering  <meyering@lucent.com>
51844
51845         Be sure that headers are checked before used in code compiled
51846         for the type checks.
51847         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
51848         In place of that, invoke jm_CHECK_ALL_TYPES.
51849         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
51850         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
51851         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
51852         The check for ssize_t was mistakenly run before the test for unistd.h.
51853
51854         The configure-time check for stdbool.h was missing.
51855         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
51856         (jm_PREREQ_HASH): New function.
51857
51858 2001-01-17  Jim Meyering  <meyering@lucent.com>
51859
51860         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
51861         for autoconf-2.49c.
51862         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
51863
51864 2001-01-16  Jim Meyering  <meyering@lucent.com>
51865
51866         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
51867         From Bruno Haible.
51868
51869 2001-01-14  Jim Meyering  <meyering@lucent.com>
51870
51871         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
51872         foo and bar.  Create conftestdir/ in the script, not in the C code.
51873         Remove directories in the script, not in the C code.
51874         Remove conftestdir{,2} before trying to create the directory.
51875         Make the entire configure script fail if the mkdir fails.
51876
51877 2001-01-14  Jim Meyering  <meyering@lucent.com>
51878
51879         * lib/rename.c: New file.  From Volker Borchert.
51880         Include stdlib.h, string.h or strings.h, and xalloc.h.
51881         Use strip_trailing_slashes rather than open-coding it.
51882
51883 2001-01-03  Paul Eggert  <eggert@twinsun.com>
51884
51885         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
51886
51887 2001-01-03  Jim Meyering  <meyering@lucent.com>
51888
51889         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
51890         of local `inptr' to avoid warning with some system declarations of
51891         iconv.
51892
51893 2001-01-02  Volker Borchert  <bt@teknon.de>
51894
51895         * m4/rename.m4: New file.
51896         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
51897
51898 2001-01-01  Jim Meyering  <meyering@lucent.com>
51899
51900         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
51901         even on systems with utmpx.h.  It's necessary for the declaration of
51902         utmp's ut_user member.  Reported by Andreas Jaeger.
51903
51904         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
51905         available. They are required for the declarations of getgrgid and
51906         getpwuid resp.
51907         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
51908         Reported by Andreas Jaeger.
51909
51910 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
51911
51912         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
51913         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
51914         so `make install' also works in VPATH builds.
51915
51916 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
51917
51918         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
51919         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
51920         can be used in subdirectories.
51921
51922 2000-12-29  Paul Eggert  <eggert@twinsun.com>
51923
51924         * lib/modechange.c: Do not assume that mode_t uses the
51925         traditional octal encoding.  E.g. "chmod 1 FOO" should set
51926         the other-execute bit of FOO even if S_IXOTH != 1.
51927
51928         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
51929         WOTH, XOTH, ALLM): New macros.
51930         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
51931          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
51932         Use them.
51933         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
51934         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
51935         (mode_compile):
51936         No need to use uintmax_t; unsigned long is long enough.
51937         Don't bother to get suffix since we don't use it.
51938
51939 2000-12-26  Jim Meyering  <meyering@lucent.com>
51940
51941         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
51942         better with autoheader.
51943
51944 2000-12-24  Jim Meyering  <meyering@lucent.com>
51945
51946         * lib/hash.c (is_prime): Return explicit boolean values.
51947         (hash_get_first): Return NULL to appease Irix5.6's 89.
51948         Reported by Nelson Beebe.
51949
51950 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
51951
51952         * lib/localcharset.c (locale_charset): Add support for Win32.
51953
51954 2000-12-18  Paul Eggert  <eggert@twinsun.com>
51955
51956         * lib/physmem.h, lib/physmem.c: New files.
51957
51958         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
51959         (noinst_HEADERS): Add physmem.h.
51960
51961         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
51962         't' for compatibility with Solaris 8 sort.
51963
51964 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
51965
51966         * lib/config.charset: Add support for BeOS.
51967
51968 2000-12-17  Jim Meyering  <meyering@lucent.com>
51969
51970         * m4/dos.m4 (jm_AC_DOS): New file and macro.
51971         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
51972
51973 2000-12-16  Jim Meyering  <meyering@lucent.com>
51974
51975         This bug had a serious impact on chown: `chown N:M FILE' (for integer
51976         N and M) would have treated it like `chown N:N FILE'.
51977
51978         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
51979
51980 2000-12-16  Jim Meyering  <meyering@lucent.com>
51981
51982         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
51983         SHELLS_FILE to a file name that's useful on djgpp systems.
51984         Include stdlib.h.
51985         (ADDITIONAL_DEFAULT_SHELLS): Define.
51986         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
51987         Based mostly on a patch from Prashant TR.
51988
51989 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
51990
51991         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
51992         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
51993         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
51994
51995 2000-12-08  Andreas Schwab  <schwab@suse.de>
51996
51997         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
51998         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
51999
52000 2000-12-07  Jim Meyering  <meyering@lucent.com>
52001
52002         * lib/stripslash.c (ISSLASH): Define.
52003         (strip_trailing_slashes): Use ISSLASH rather than comparing against
52004         `/'.
52005         From Prashant TR.
52006
52007         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
52008         (dir_name_r): Declare this function as static.
52009         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
52010         manifest itself on a name containing a mix of slashes and
52011         backslashes.
52012         Make this function work with names starting with a DOS-style
52013         drive letter and colon prefix.
52014         (dir_name): Append `.' if necessary.
52015         Based mostly on patches from Prashant TR and Eli Zaretskii.
52016
52017         * lib/dirname.h (dir_name_r): Remove prototype.
52018
52019 2000-12-06  Paul Eggert  <eggert@twinsun.com>
52020
52021         * m4/off_t-format.m4: Remove this file.
52022         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
52023
52024 2000-12-06  Jim Meyering  <meyering@lucent.com>
52025
52026         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
52027         replacement strtoull, we may well need the replacement strtoul, too.
52028         Check for declarations of strtoul and strtoull.
52029         Check for strtol.  Mainly as a cue to cause automake to include
52030         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
52031         Check for limits.h -- strtol.c needs it.
52032
52033 2000-12-05  Jim Meyering  <meyering@lucent.com>
52034
52035         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
52036
52037 2000-12-04  Jim Meyering  <meyering@lucent.com>
52038
52039         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
52040         Also include memory.h, stdlib.h, unistd.h if appropriate.
52041         Reported by Andreas Jaeger (conflicting declaration of malloc).
52042
52043 2000-12-02  Jim Meyering  <meyering@lucent.com>
52044
52045         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
52046         * m4/jm-macros.m4 (jm_MACROS): require it.
52047
52048 2000-12-02  Jim Meyering  <meyering@lucent.com>
52049
52050         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
52051
52052 2000-12-01  Paul Eggert  <eggert@twinsun.com>
52053
52054         * lib/memrchr.c: Include <config.h> before any system include file.
52055
52056 2000-11-30  Jim Meyering  <meyering@lucent.com>
52057
52058         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
52059
52060 2000-11-30  Jim Meyering  <meyering@lucent.com>
52061
52062         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
52063
52064 2000-11-29  Paul Eggert  <eggert@twinsun.com>
52065
52066         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
52067
52068 2000-11-26  Jim Meyering  <meyering@lucent.com>
52069
52070         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
52071
52072 2000-11-22  Paul Eggert  <eggert@twinsun.com>
52073
52074         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
52075         size of (size_t) -1; it's not portable.
52076
52077 2000-11-17  Jim Meyering  <meyering@lucent.com>
52078
52079         * lib/strstr.c: Update from GNU libc.
52080
52081 2000-11-17  Akim Demaille  <akim@epita.fr>
52082
52083         * lib/obstack.h: Formatting changes.
52084         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
52085         prevent type checking.
52086         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
52087         cast the value to (void *): assigning a `foo *' to a `void *'
52088         variable is valid.
52089         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
52090
52091 2000-11-16  Jim Meyering  <meyering@lucent.com>
52092
52093         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
52094
52095 2000-11-11  Jim Meyering  <meyering@lucent.com>
52096
52097         * lib/error.c: Add a couple #includes, merging from GNU libc version.
52098
52099 2000-11-10  Jim Meyering  <meyering@lucent.com>
52100
52101         * lib/obstack.h: Update from GNU libc.
52102         * lib/obstack.c: Likewise.
52103
52104 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
52105
52106         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
52107
52108 2000-11-06  Paul Eggert  <eggert@twinsun.com>
52109
52110         * lib/getusershell.c (setusershell): Use rewind rather than
52111         fseek/fseeko, to avoid configuration hassles with fseeko.
52112         Don't bother opening SHELLS_FILE if shellstream is NULL;
52113         it's not necessary.
52114
52115 2000-11-05  Jim Meyering  <meyering@lucent.com>
52116
52117         * lib/makepath.h (make_dir): Declare.
52118         * lib/makepath.c (make_dir): Remove `static' attribute.
52119         Tweak a comment.
52120
52121 2000-11-04  Jim Meyering  <meyering@lucent.com>
52122
52123         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
52124
52125 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
52126
52127         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
52128         last one in a bucket, advance to the next bucket.
52129
52130 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
52131
52132         * lib/fnmatch.c: Do not comment out all the code if we are using
52133         the GNU C library, because in some cases we are replacing buggy
52134         code in the GNU C library itself.
52135
52136 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
52137
52138         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
52139         (regex_compile): Catch bogus \(\1\).
52140
52141 2000-10-30  Paul Eggert  <eggert@twinsun.com>
52142
52143         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
52144         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
52145         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
52146
52147 2000-10-30  Paul Eggert  <eggert@twinsun.com>
52148
52149         * lib/error.h, getline.h, modechange.h:
52150         Remove "2000" from Copyright line, as the file hasn't been
52151         changed this year other than in the copyright notice.
52152
52153         * lib/xalloc.h: Add "2000" to Copyright line, as this file
52154         was changed this year.
52155
52156 2000-10-29  Jim Meyering  <meyering@lucent.com>
52157
52158         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
52159         renaming.
52160         * m4/ls-mntd-fs.m4: Likewise
52161
52162 2000-10-29  Jim Meyering  <meyering@lucent.com>
52163
52164         * lib/xstat.in: Fix grammar in comment.
52165
52166 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
52167
52168         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
52169         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
52170         doesn't define __restrict_arr.
52171
52172 2000-10-28  Jim Meyering  <meyering@lucent.com>
52173
52174         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
52175         (jm_PREREQ_MEMCHR): New function.
52176
52177 2000-10-28  Jim Meyering  <meyering@lucent.com>
52178
52179         * lib/memchr.c: Update from libc.
52180         Adjust for portability:
52181         [HAVE_STDLIB_H]: Include stdlib.h.
52182         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
52183         Undef __memchr, too.
52184         [!weak_alias]: Define __memchr to memchr.
52185
52186         * lib/regex.c: Update from libc.
52187         * lib/regex.h: Likewise.
52188         * lib/getopt1.c: Likewise.
52189         * lib/memcmp.c: Likewise.
52190
52191         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
52192         Avoid using fseek, when possible -- it's broken by design.
52193         Patch by Ulrich Drepper.
52194
52195 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
52196
52197         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
52198         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
52199         Giving in to popular pressure to shut up the compiler with casts.
52200
52201 2000-10-26  Jim Meyering  <meyering@lucent.com>
52202
52203         * lib/strftime.c: Update from libc.
52204
52205 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
52206
52207         * regex.c: More `unsigned char' -> `re_char' changes.
52208         Also change several `int' into `re_wchar_t'.
52209         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
52210         (PUSH_FAILURE_POINTER): Don't cast any more.
52211         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
52212         We want GCC to complain, since this piece of code makes
52213         re_match non-reentrant, which *should* be fixed.
52214         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
52215         (EXTEND_BUFFER): Use RETALLOC.
52216         (SET_LIST_BIT): Don't cast.
52217         (re_wchar_t): New type.
52218         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
52219         that those two functions will always properly return.
52220         (IMMEDIATE_QUIT_CHECK): Cast to void.
52221         (analyse_first): Use recursion rather than an explicit stack.
52222         (re_compile_fastmap): Can't fail anymore.
52223         (re_search_2): Don't check re_compile_fastmap for failure.
52224         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
52225         Now also sets the new value (passed in a new argument).
52226         (re_match_2_internal): Use it.
52227         Also, use a new var `reg' of type size_t when looping through regs
52228         rather than reuse the inappropriate `mcnt'.
52229
52230 2000-10-25  Jim Meyering  <meyering@lucent.com>
52231
52232         * lib/obstack.c: Update from libc.
52233
52234 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
52235
52236         * regex.c (regex_compile): Change the way of handling a range from
52237         a char less than 256 to a char not less than 256.
52238
52239 2000-10-24  Andrew Innes  <andrewi@gnu.org>
52240
52241         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
52242         NT-Emacs only.
52243         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
52244         so that re_search functions only quit when callers expect them to.
52245
52246 2000-10-23  Jim Meyering  <meyering@lucent.com>
52247
52248         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
52249         wrong.  That set_locale call must not have any side effects.
52250         From Paul Eggert.
52251
52252 2000-10-22  Jim Meyering  <meyering@lucent.com>
52253
52254         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
52255         [CYCLIC]: Remove now-unused definition.
52256
52257         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
52258         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
52259         Suggestion from Ulrich Drepper.
52260
52261 2000-10-21  Jim Meyering  <meyering@lucent.com>
52262
52263         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
52264         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
52265         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
52266
52267 2000-10-21  Jim Meyering  <meyering@lucent.com>
52268
52269         * lib/dirname.c (memrchr): Declare if necessary.
52270         (dir_name): Remove the restriction that there be no
52271         trailing slashes.  Now, this code skips past them, effectively
52272         ignoring them.
52273         [TEST_DIRNAME] (main): New unit tests.
52274
52275         * lib/memrchr.c: New file from GNU libc.
52276         Undef __memrchr, too.
52277         [!weak_alias]: Define __memrchr to memrchr.
52278         Guard weak_alias use with `#ifdef weak_alias'.
52279
52280 2000-10-21  Jim Meyering  <meyering@lucent.com>
52281
52282         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
52283         (dir_name): Use dir_name_r.
52284         * lib/dirname.h (dir_name_r): Declare it.
52285
52286 2000-10-17  Jim Meyering  <meyering@lucent.com>
52287
52288         * lib/quote.h (PARAMS): Define and use.
52289         Reported by Akim Demaille.
52290
52291         * lib/getopt.c: Update from libc.
52292
52293 2000-10-16  Jim Meyering  <meyering@lucent.com>
52294
52295         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
52296         setlocale.
52297         From Jan Fedak.
52298
52299 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
52300
52301         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
52302
52303 2000-09-25  Jim Meyering  <meyering@lucent.com>
52304
52305         * lib/md5.h (rol): Define (from GnuPG).
52306
52307         * lib/sha.c: Give credit (GnuPG) where due.
52308         (M): Use rol rather than open-coding it.
52309         Add a FIXME comment.
52310
52311 2000-09-21  Jim Meyering  <meyering@lucent.com>
52312
52313         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
52314         Reported by Michael Stone.
52315
52316 2000-09-20  Jim Meyering  <meyering@lucent.com>
52317
52318         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
52319         (noinst_HEADERS): Add sha.h.
52320         Based on code from Scott G. Miller and from GnuPG.
52321
52322 2000-09-18  Jim Meyering  <meyering@lucent.com>
52323
52324         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
52325         LIBS. Otherwise, everyone ends up linking with -lelf for some
52326         configurations.
52327         Reported by Mike Stone.
52328
52329 2000-09-15  Jim Meyering  <meyering@lucent.com>
52330
52331         * lib/regex.c: Update from libc.
52332
52333 2000-09-10  Jim Meyering  <meyering@lucent.com>
52334
52335         * lib/getopt.c (_getopt_internal): Update from glibc.
52336
52337 2000-09-09  Jim Meyering  <meyering@lucent.com>
52338
52339         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
52340         think it should be used as a general replacement for isascii.
52341         * lib/fnmatch.c: Likewise.
52342         * lib/mbswidth.c: Likewise
52343         * lib/regex.c: Likewise.
52344
52345         Don't use atoi.
52346         * lib/userspec.c: Include sys/param.h and limits.h.
52347         Include xstrtol.h.
52348         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
52349         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
52350         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
52351         UID, GID.  Check range.
52352
52353 2000-09-06  Jim Meyering  <meyering@lucent.com>
52354
52355         * lib/getopt.c (_getopt_internal): Update from glibc.
52356
52357 2000-08-30  Jim Meyering  <meyering@lucent.com>
52358
52359         * lib/strftime.c: Merge in changes from GNU libc.
52360
52361 2000-08-26  Jim Meyering  <meyering@lucent.com>
52362
52363         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
52364         * m4/fpending.m4: New file.
52365
52366 2000-08-26  Jim Meyering  <meyering@lucent.com>
52367
52368         * lib/closeout.c: Include "__fpending.h".
52369         (close_stdout_status): Return right away if there's nothing to flush.
52370
52371         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
52372         * lib/__fpending.c: New file.
52373         * lib/__fpending.h: New file.
52374
52375 2000-08-20  Jim Meyering  <meyering@lucent.com>
52376
52377         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
52378         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
52379         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
52380
52381 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
52382
52383         Improve fileutils installation on systems where running
52384         programs (like install) can't be unlinked.
52385         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
52386         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
52387
52388 2000-08-07  Paul Eggert  <eggert@twinsun.com>
52389
52390         Standardize on "memory exhausted" instead of "Memory exhausted"
52391         or "virtual memory exhausted".
52392         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
52393         "virtual memory exhausted".
52394         * lib/same.c (same_name): Invoke xalloc_die instead of printing
52395         our own message.
52396         * lib/userspec.c (parse_user_spec): Likewise.
52397         * lib/bumpalloc.h: comment fix
52398         * lib/same.c, userspec.c: Include xalloc.h.
52399
52400         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
52401         not char *const and pointing to a constant array.
52402         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
52403         (xrealloc): Comment fix.
52404
52405         * lib/userspec.c (parse_user_spec):
52406         Don't translate a message until just before returning,
52407         to avoid unnecessary translation.
52408
52409 2000-08-07  Jim Meyering  <meyering@lucent.com>
52410
52411         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
52412         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
52413         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
52414         getgroups.c, gethostname.c, getopt.h, group-member.c,
52415         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
52416         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
52417         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
52418         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
52419         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
52420         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
52421         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
52422         yesno.c: Back out Copyright date changes for each file with no change
52423         this year.  This eases coordination with other programs using the same
52424         source code modules.  From Paul Eggert.
52425
52426 2000-08-06  Paul Eggert  <eggert@twinsun.com>
52427
52428         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
52429         not char, for compatibility with glibc 2.1.3 strftime.c.
52430
52431 2000-08-03  Greg McGary  <greg@mcgary.org>
52432
52433         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
52434         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
52435         (EXTEND_BUFFER): Use them.
52436
52437 2000-08-01  Jim Meyering  <meyering@lucent.com>
52438
52439         * lib/dirname.c (ISSLASH): Define.
52440         (BACKSLASH_IS_PATH_SEPARATOR): Define.
52441         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
52442         both `\' and `/' may be use as path separators.
52443         Based on a patch from Prashant TR.
52444
52445 2000-07-31  Paul Eggert  <eggert@twinsun.com>
52446
52447         * lib/quotearg.c (quotearg_n_options): Don't make the initial
52448         slot vector a constant, since it might get modified.
52449
52450 2000-07-31  Jim Meyering  <meyering@lucent.com>
52451
52452         * lib/xmalloc.c: Use `virtual memory exhausted', not
52453         `Memory exhausted'.
52454         * lib/obstack.c (print_and_abort): Likewise.
52455
52456 2000-07-30  Paul Eggert  <eggert@twinsun.com>
52457
52458         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
52459         buffer, so that the caller can always quote one small
52460         component of a "memory exhausted" message in slot 0.
52461         From a suggestion by Jim Meyering.
52462
52463 2000-07-30  Jim Meyering  <meyering@lucent.com>
52464
52465         * lib/makepath.c (make_path): Quote the other instance, too.
52466
52467         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
52468         (STATIC_BUF_SIZE): Define.
52469         (quotearg_n_options): Use only statically allocated storage when
52470         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
52471         than STATIC_BUF_SIZE.
52472
52473 2000-07-29  Jim Meyering  <meyering@lucent.com>
52474
52475         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
52476         * lib/dirname.c (dir_name): Likewise.
52477
52478         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
52479         `/'.
52480
52481         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
52482         (dir_name): Assert that there are no trailing slashes.
52483
52484 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
52485
52486         * lib/mbswidth.h (mbswidth): Add a flags argument.
52487         (mbswidth): New declaration.
52488         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
52489         * lib/mbswidth.c (mbswidth): Add a flags argument.
52490         (mbsnwidth): New function.
52491
52492 2000-07-24  Jim Meyering  <meyering@lucent.com>
52493
52494         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
52495
52496 2000-07-23  Paul Eggert  <eggert@twinsun.com>
52497
52498         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
52499
52500 2000-07-23  Paul Eggert  <eggert@twinsun.com>
52501
52502         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
52503         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
52504         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
52505         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
52506         invoke multibyte primitives.
52507
52508 2000-07-23  Paul Eggert  <eggert@twinsun.com>
52509
52510         * lib/quotearg.c:
52511         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
52512         so that mbstate_t is always defined.
52513
52514         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
52515         be 1 in at least one GCC installation, and this configuration
52516         error is likely to be common.  Ignoring MB_LEN_MAX hurts
52517         performance on hosts that have mbrtowc but have only unibyte
52518         locales, but I assume these hosts are rare.
52519
52520 2000-07-23  Paul Eggert  <eggert@twinsun.com>
52521
52522         * lib/mbswidth.c (_XOPEN_SOURCE):
52523         Don't define; this causes problems on Solaris 7.
52524         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
52525
52526 2000-07-23  Jim Meyering  <meyering@lucent.com>
52527
52528         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
52529         too: getgrgid, getpwuid, getuid.
52530
52531 2000-07-23  Jim Meyering  <meyering@lucent.com>
52532
52533         * lib/basename.c (base_name): Add an assertion.
52534
52535 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
52536
52537         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
52538         shadow its mbsinit function.
52539
52540 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
52541
52542         * lib/mbswidth.h: New file.
52543         * lib/mbswidth.c: New file.
52544         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
52545         (noinst_HEADERS): Add mbswidth.h.
52546
52547 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
52548
52549         * lib/config.charset: Add support for FreeBSD. Improve support for
52550         HP-UX and IRIX 6.
52551
52552 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
52553
52554         * m4/mbswidth.m4: New file.
52555         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
52556
52557 2000-07-15  Jim Meyering  <meyering@lucent.com>
52558
52559         * lib/makepath.c: Include quote.h.
52560         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
52561         corresponding argument in a `quote (...)' call.
52562         Give better diagnostics.
52563
52564         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
52565         (noinst_HEADERS): Add quote.h.
52566
52567         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
52568         from tar's src/misc.c.
52569         * lib/quote.h: New file.  Prototypes for same.
52570
52571 2000-07-14  Paul Eggert  <eggert@twinsun.com>
52572
52573         From a suggestion by Bruno Haible.
52574         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
52575         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
52576         to decide whether to define the BeOS workaround macro;
52577         this adjusts to the change to AC_MBSTATE_T.
52578
52579 2000-07-14  Jim Meyering  <meyering@lucent.com>
52580
52581         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
52582         jm_AC_TYPE_UINTMAX_T.
52583
52584 2000-07-13  Paul Eggert  <eggert@twinsun.com>
52585
52586         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
52587
52588         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
52589         quotearg_buffer_restyled): Add support for
52590         clocale_quoting_style.  Undo previous change to
52591         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
52592         and "{RIGHT QUOTATION MARK}" msgids.
52593
52594 2000-07-10  Paul Eggert  <eggert@twinsun.com>
52595
52596         From a suggestion by Bruno Haible.
52597         * m4/mbstate_t.m4 (AC_MBSTATE_T):
52598         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
52599         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
52600         and mbstate_t, to a single-part test that simply defines mbstate_t.
52601         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
52602         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
52603
52604 2000-07-10  Jim Meyering  <meyering@lucent.com>
52605
52606         * m4/strerror_r.m4: Mirror the correction made in autoconf.
52607
52608         * m4/gnu-source.m4: Output to confdefs.h directly.
52609         Suggestion from Akim Demaille.
52610
52611 2000-07-09  Paul Eggert  <eggert@twinsun.com>
52612
52613         The old behavior of quoting `like this' doesn't look good with
52614         newer, ISO-style fonts.  See:
52615         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
52616
52617         Instead, quote "like this" by default.  Let the translator
52618         tailor the locale-specific quoting behavior by providing
52619         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
52620
52621         * lib/quotearg.c (N_): New macro.
52622         (gettext_default): New function.
52623         (quotearg_buffer_restyled): Use
52624         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
52625         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
52626
52627 2000-07-09  Jim Meyering  <meyering@lucent.com>
52628
52629         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
52630         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
52631
52632         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
52633         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
52634
52635 2000-07-09  Jim Meyering  <meyering@lucent.com>
52636
52637         * lib/Most files: Update copyright dates to include 2000.
52638
52639 2000-07-08  Jim Meyering  <meyering@lucent.com>
52640
52641         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
52642         if not defined.
52643         (xgethostname): Remove now-unnecessary #ifdef.
52644         Move declaration of `err' into loop where it's used.
52645
52646 2000-07-05  Paul Eggert  <eggert@twinsun.com>
52647         and Bruno Haible  <haible@clisp.cons.org>
52648
52649         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
52650         only if the test for an object-type mbstate_t fails.  This
52651         prevents us from mistakenly reporting that mbstate_t is a
52652         system object type after we "#define mbstate_t int" to work
52653         around its lack.
52654
52655 2000-07-05  Paul Eggert  <eggert@twinsun.com>
52656         and Bruno Haible  <haible@clisp.cons.org>
52657
52658         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
52659
52660 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
52661
52662         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
52663         to strerror_r.
52664         Include <ctype.h> for use of isalpha.
52665
52666 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
52667
52668         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
52669         by allocating a larger buffer. Test the gethostname return value for
52670         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
52671         returns an error and ENAMETOOLONG isn't defined.
52672
52673 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
52674
52675         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
52676         dimension.
52677
52678 2000-07-04  Jim Meyering  <meyering@lucent.com>
52679
52680         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
52681         of the deprecated AC_CHECKING.
52682
52683 2000-07-04  Jim Meyering  <meyering@lucent.com>
52684
52685         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
52686         Reported by Bruno Haible.
52687
52688 2000-07-04  Jim Meyering  <meyering@lucent.com>
52689
52690         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
52691         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
52692         lacks mbrtowc.
52693
52694 2000-07-03  Paul Eggert  <eggert@twinsun.com>
52695
52696         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
52697         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
52698
52699 2000-07-03  Paul Eggert  <eggert@twinsun.com>
52700         and Bruno Haible  <haible@clisp.cons.org>
52701
52702         * lib/quotearg.c (mbrtowc):
52703         Assign to *pwc, and return 1 only if result is nonzero.
52704         (iswprint): Use ISPRINT when substituting our own mbrtowc.
52705
52706 2000-07-03  Jim Meyering  <meyering@lucent.com>
52707
52708         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
52709
52710 2000-07-03  Jim Meyering  <meyering@lucent.com>
52711
52712         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
52713         This is necessary to get a definition of e.g., UTMP_FILE on
52714         HP-UX 10.20.
52715         From Bob Proulx.
52716
52717 2000-07-02  Jim Meyering  <meyering@lucent.com>
52718
52719         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
52720
52721         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
52722         AC_LIBOBJ(function_name).
52723         * m4/chown.m4: Likewise.
52724         * m4/fnmatch.m4: Likewise.
52725         * m4/ftruncate.m4: Likewise.
52726         * m4/getgroups.m4: Likewise.
52727         * m4/getline.m4: Likewise.
52728         * m4/group-member.m4: Likewise.
52729         * m4/jm-macros.m4: Likewise.
52730         * m4/lstat.m4: Likewise.
52731         * m4/malloc.m4: Likewise.
52732         * m4/memcmp.m4: Likewise.
52733         * m4/nanosleep.m4: Likewise.
52734         * m4/putenv.m4: Likewise.
52735         * m4/realloc.m4: Likewise.
52736         * m4/regex.m4: Likewise.
52737         * m4/stat.m4: Likewise.
52738         * m4/strftime.m4: Likewise.
52739
52740 2000-07-02  Jim Meyering  <meyering@lucent.com>
52741
52742         * lib/quotearg.c (mbstate_t): Don't define here.
52743
52744 2000-07-02  Jim Meyering  <meyering@lucent.com>
52745
52746         * lib/nanosleep.c (SIGCONT): Define if not already defined.
52747
52748 2000-07-01  Jim Meyering  <meyering@lucent.com>
52749
52750         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
52751
52752 2000-07-01  Jim Meyering  <meyering@lucent.com>
52753
52754         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
52755         problem.
52756
52757 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
52758
52759         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
52760         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
52761
52762 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
52763
52764         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
52765         per change in ../m4/ls-mntd-fs.m4.
52766         (read_filesystem_list): Ignore symbolic links.
52767
52768 2000-06-29  Jim Meyering  <meyering@lucent.com>
52769
52770         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
52771         for declaration of strcmp.
52772
52773         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
52774
52775         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
52776         Avoid warning by casting result to `char *' to remove `const'.
52777
52778 2000-06-28  Jim Meyering  <meyering@lucent.com>
52779
52780         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
52781         included by quotearg.c, for which we perform this test.  From
52782         Bruno Haible.
52783
52784 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
52785
52786         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
52787         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
52788         <utmpx.h> exists, put readutmp.o into LIBOBJS.
52789
52790 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
52791
52792         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
52793
52794 2000-06-26  Paul Eggert  <eggert@twinsun.com>
52795
52796         savedir now sets errno on failure and invokes xmalloc to get memory.
52797         Fix a couple of other minor bugs while we're at it.
52798
52799         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
52800         (NAMLEN): Remove macro.
52801         (malloc, realloc): Remove decls.
52802         (stpcpy): Likewise.
52803         ("xalloc.h"): Include.
52804         (NAME_SIZE_DEFAULT): New macro.
52805         (savedir): Use xmalloc / xrealloc to allocate memory.
52806         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
52807         Skip "" directory entries.
52808         Use strlen to calculate directory entry length, since the old method
52809         is rarely used these days and isn't worth supporting.
52810         Don't use a pointer after freeing it.
52811         Check for integer overflow when calculating allocation size.
52812         Use memcpy to copy entries, instead of stpcpy.
52813         Set errno properly when returning NULL.
52814         Check for readdir error.
52815
52816 2000-06-26  Jim Meyering  <meyering@lucent.com>
52817
52818         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
52819
52820 2000-06-25  Jim Meyering  <meyering@lucent.com>
52821
52822         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
52823         Linux header bug when _XOPEN_SOURCE is defined to 500.
52824
52825 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
52826
52827         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
52828         deficiency.
52829
52830 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
52831
52832         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
52833         Include xalloc.h.
52834         Don't include <stdlib.h>.  Don't declare malloc, realloc.
52835
52836 2000-06-24  Jim Meyering  <meyering@lucent.com>
52837
52838         * m4/strerror_r.m4: Revive this file -- to try out an experimental
52839         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
52840         for which strerror does return char*, but which lacks a conveniently
52841         accessible declaration of the function.  If the compile-test says
52842         strerror_r doesn't work, then resort to a `run'-test that works on
52843         BeOS and segfaults on DEC Unix.
52844
52845 2000-06-24  Jim Meyering  <meyering@lucent.com>
52846
52847         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
52848
52849 2000-06-23  Paul Eggert  <eggert@twinsun.com>
52850
52851         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
52852         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
52853
52854 2000-06-23  Paul Eggert  <eggert@twinsun.com>
52855
52856         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
52857         (mbrtowc, mbstate_t): Define substitutes if
52858         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
52859         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
52860         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
52861
52862 2000-06-23  Jim Meyering  <meyering@lucent.com>
52863
52864         * m4/afs.m4: Add missing AC_MSG_RESULT.
52865         Reported by Bruno Haible.
52866
52867         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
52868         Suggestion from Bruno Haible.
52869
52870 2000-06-23  Jim Meyering  <meyering@lucent.com>
52871
52872         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
52873
52874 2000-06-21  Jim Meyering  <meyering@lucent.com>
52875
52876         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
52877
52878 2000-06-21  Jim Meyering  <meyering@lucent.com>
52879
52880         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
52881         (noinst_HEADERS): Add getstr.h.
52882
52883         * lib/getline.c (getstr): Move into a separate file.
52884         * lib/getstr.c (getstr): New file, extracted from getline.c, with
52885         the following changes: new parameter, delim2; both delim[12]
52886         parameters have type `int', not `char'.  The latter would lose
52887         with 8-bit delimiters.
52888         * lib/getstr.h: New file.
52889
52890 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
52891
52892         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
52893         than 1024, return a memory chunk of least possible size, instead
52894         of size PATH_MAX + 2. In the loop, increment the size proportionally.
52895         Use free/xmalloc instead of xrealloc to avoid copying for very long
52896         paths.
52897
52898 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
52899
52900         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
52901         the empty string.
52902
52903 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
52904
52905         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
52906         address, not strdup.  Include <stdlib.h> and don't declare free().
52907
52908 2000-06-19  Jim Meyering  <meyering@lucent.com>
52909
52910         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
52911
52912 2000-06-18  Jim Meyering  <meyering@lucent.com>
52913
52914         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
52915
52916         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
52917         `checking whether...' message to be consistent with that of the
52918         lstat test.
52919
52920 2000-06-18  Jim Meyering  <meyering@lucent.com>
52921
52922         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
52923         Besides, these days every porting target provides a mkdir function.
52924
52925         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
52926         needed. (this snippet comes from src/system.h).
52927
52928 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
52929
52930         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
52931
52932 2000-06-15  Paul Eggert  <eggert@twinsun.com>
52933
52934         * lib/human.c (adjust_value): New function.
52935         (human_readable_inexact): Apply rounding style even when
52936         printing approximate values.
52937
52938 2000-06-14  Paul Eggert  <eggert@twinsun.com>
52939
52940         * lib/human.c (human_readable_inexact): Allow an input block
52941         size that is not a multiple of the output block size, and vice versa.
52942         Reported by Piergiorgio Sartor.
52943
52944 2000-06-14  Paul Eggert  <eggert@twinsun.com>
52945
52946         * lib/getdate.y (get_date): Apply relative times after time
52947         zone indicator, not before.  Reported by Todd A. Jacobs.
52948
52949 2000-06-13  Jim Meyering  <meyering@lucent.com>
52950
52951         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
52952
52953         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
52954
52955 2000-06-12  Paul Eggert  <eggert@twinsun.com>
52956
52957         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
52958
52959 2000-06-12  Jim Meyering  <meyering@lucent.com>
52960
52961         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
52962         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
52963         optional argument.
52964         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
52965         the optional argument, `lib'.
52966
52967 2000-06-08  Jim Meyering  <meyering@lucent.com>
52968
52969         * m4/largefile.m4: Remove file (now that it's part of autoconf).
52970
52971 2000-06-04  Paul Eggert  <eggert@twinsun.com>
52972
52973         Rewrite largefile configuration so that we don't need to run
52974         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
52975         AC_CANONICAL_HOST in configure.in -- jmm]
52976
52977         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
52978         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
52979         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
52980         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
52981         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
52982         All uses changed.
52983         Instead of inspecting the output of getconf, try to compile the
52984         test program without and with the macro definition.
52985         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
52986         for getconf.  Instead, check for the needed flags by compiling
52987         test programs.
52988
52989 2000-06-04  Paul Eggert  <eggert@twinsun.com>
52990
52991         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
52992
52993 2000-06-04  Jim Meyering  <meyering@lucent.com>
52994
52995         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
52996         SunOS 4.1.4 for which gid_t is an unsigned type.
52997
52998 2000-06-03  Jim Meyering  <meyering@lucent.com>
52999
53000         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
53001         now that autoconf requires that.
53002
53003         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
53004         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
53005         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
53006
53007 2000-06-03  Jim Meyering  <meyering@lucent.com>
53008
53009         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
53010
53011 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
53012
53013         * m4/glibc21.m4: New file.
53014         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
53015
53016 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
53017
53018         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
53019         newer, don't install charset.alias.
53020         * lib/config.charset: Change the Linux/glibc rules so they become empty
53021         on glibc-2.1 or newer.
53022
53023 2000-06-02  Jim Meyering  <meyering@lucent.com>
53024
53025         * lib/mountlist.c: Back out last change.  Instead, do this...
53026         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
53027         me_dummy member using the same `ignore'-testing code.
53028         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
53029         fs_type strings.
53030         From Mark D. Roth.
53031
53032 2000-05-29  Jim Meyering  <meyering@lucent.com>
53033
53034         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
53035         mounts with the `ignore' attribute.  Based on a patch from
53036         Mark D. Roth.
53037
53038 2000-05-28  Jim Meyering  <meyering@lucent.com>
53039
53040         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
53041         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
53042         * m4/stat.m4: Likewise.
53043         * m4/lstat.m4: Likewise.
53044         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
53045
53046         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
53047         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
53048
53049 2000-05-26  Jim Meyering  <meyering@lucent.com>
53050
53051         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
53052
53053 2000-05-24  Jim Meyering  <meyering@lucent.com>
53054
53055         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
53056         autoconf requires that.
53057         * m4/lib-check.m4: Likewise.
53058         * m4/jm-macros.m4: Likewise.
53059         * m4/strftime.m4: Likewise.
53060
53061         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
53062         AC_CHECK_DECLS, now that autoconf requires that.
53063
53064 2000-05-22  Jim Meyering  <meyering@lucent.com>
53065
53066         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
53067         * m4/lstat.m4: Likewise.
53068
53069 2000-05-22  Jim Meyering  <meyering@lucent.com>
53070
53071         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
53072
53073 2000-05-20  Jim Meyering  <meyering@lucent.com>
53074
53075         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
53076         (jm_PREREQ): Use it.
53077
53078 2000-05-18  Jim Meyering  <meyering@lucent.com>
53079
53080         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
53081         back, too, since it may have been modified by allocate_entry.
53082         (hash_delete): Rewrite to use neither the assignment operator
53083         nor the comma operator in an if-expression.
53084
53085 2000-05-15  Paul Eggert  <eggert@twinsun.com>
53086
53087         * lib/closeout.c:
53088         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
53089         Remove; no longer needed.
53090         "quotearg.h": Add include.
53091         (file_name): Do not bother to explicitly initialize to NULL; it's less
53092         efficient on some hosts.
53093         (close_stdout_status): Remove test as to whether stdout was already
53094         closed; it breaks for the case "echo x | sort >&-".
53095         Quote file name colons.
53096         Do not assume that _("write error") lacks format strings.
53097
53098 2000-05-15  Jim Meyering  <meyering@lucent.com>
53099
53100         * lib/version-etc.c (version_etc_copyright): Update the copyright
53101         string used in all --version output.
53102
53103 2000-05-14  Jim Meyering  <meyering@lucent.com>
53104
53105         * lib/closeout.c (close_stdout_set_file_name): New function.
53106         (close_stdout_status): Use new file-scoped global.
53107         Return right away if fstat says the stdout file descriptor is invalid.
53108         * lib/closeout.h (close_stdout_set_file_name): Declare.
53109
53110 2000-05-10  Jim Meyering  <meyering@lucent.com>
53111
53112         * lib/closeout.c [default_exit_status]: New file-scoped variable.
53113         (close_stdout_set_status): New function.
53114         * lib/closeout.h (close_stdout_set_status): Declare.
53115
53116 2000-05-09  Jim Meyering  <meyering@lucent.com>
53117
53118         * m4/gettext.m4: Rename this...
53119         * m4/libintl.m4: ...to this.
53120
53121 2000-05-08  Jim Meyering  <meyering@lucent.com>
53122
53123         * lib/long-options.c: Don't include closeout.h.
53124         (parse_long_options): Don't call close_stdout for --version.
53125
53126 2000-05-06  Paul Eggert  <eggert@twinsun.com>
53127
53128         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
53129         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
53130         2.1.3 bug.  This avoids a clash when files like regex.c define
53131         _GNU_SOURCE.
53132
53133 2000-05-06  Jim Meyering  <meyering@lucent.com>
53134
53135         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
53136         (AC_REPLACE_FUNCS): Add strnlen.
53137
53138         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
53139         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
53140
53141         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
53142         AC_SEARCH_LIBS call for nanosleep.
53143         (LIB_NANOSLEEP): Set and AC_SUBST.
53144
53145 2000-05-06  Jim Meyering  <meyering@lucent.com>
53146
53147         * lib/strnlen.c: Undefine __strnlen and strnlen.
53148         [!weak_alias]: Define __strnlen to strnlen.
53149
53150         * lib/atexit.c: New file, from libiberty.
53151
53152 2000-05-06  Jim Meyering  <meyering@lucent.com>
53153
53154         * lib/closeout.c (close_stdout_status): Also check for errors on the
53155         stderr stream.
53156
53157 2000-05-05  Jim Meyering  <meyering@lucent.com>
53158
53159         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
53160         AC_SEARCH_LIBS call for clock_gettime.
53161         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
53162
53163         * m4/search-libs.m4: Update from autoconf.
53164
53165         su doesn't work on Solaris 2.6.
53166         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
53167         <shadow.h>.  Reported by Dragos Harabor.
53168
53169 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
53170
53171         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
53172         memcpy instead of xmalloc, xrealloc, path_concat.
53173         (locale_charset): Treat empty environment variables as absent.
53174         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
53175
53176 2000-05-04  Jim Meyering  <meyering@lucent.com>
53177
53178         * lib/getopt.c: Update from glibc.
53179         * lib/obstack.c: Likewise.
53180         * lib/obstack.h: Likewise.
53181         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
53182         file
53183
53184         * lib/regex.h: Likewise.
53185         * lib/strndup.c: Likewise.
53186         * lib/strnlen.c: New file, from glibc.
53187
53188 2000-05-03  Jim Meyering  <meyering@lucent.com>
53189
53190         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
53191
53192 2000-05-02  Paul Eggert  <eggert@twinsun.com>
53193
53194         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
53195         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
53196         compile-time test, rather than inspecting host and OS, to
53197         decide whether to define _LARGEFILE_SOURCE.
53198
53199 2000-05-01  Jim Meyering  <meyering@lucent.com>
53200
53201         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
53202
53203         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
53204         Based on a patch from Bruno Haible.
53205
53206 2000-05-01  Jim Meyering  <meyering@lucent.com>
53207
53208         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
53209
53210 2000-04-29  Jim Meyering  <meyering@lucent.com>
53211
53212         * lib/path-concat.c: Declare strdup only if it's not defined.
53213         * lib/canon-host.c: Likewise.
53214
53215 2000-04-28  Jim Meyering  <meyering@lucent.com>
53216
53217         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
53218         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
53219         is included first, then limits.h is included by locale.h by libintl.h.
53220         From John David Anglin.
53221
53222 2000-04-25  Jim Meyering  <meyering@lucent.com>
53223
53224         * lib/makepath.c (S_IRWXUGO): Define.
53225         (make_path): Always perform explicit chmod if MODE specifies any
53226         of the `special' permission bits.  Prompted by a bug report against
53227         install from Mate Wierdl and Joost van Baal.
53228
53229 2000-04-18  Jim Meyering  <meyering@lucent.com>
53230
53231         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
53232         (jm_PREREQ): Use it.
53233
53234 2000-04-18  Jim Meyering  <meyering@lucent.com>
53235
53236         * lib/README: New file.
53237
53238         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
53239         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
53240
53241 2000-04-17  Jim Meyering  <meyering@lucent.com>
53242
53243         Get it right :-)
53244         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
53245         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
53246         Suggestion from Akim Demaille.
53247
53248 2000-04-17  Jim Meyering  <meyering@lucent.com>
53249
53250         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
53251         the definition of it to rpl_strftime also defined-away the system's
53252         declaration.
53253
53254 2000-04-15  Jim Meyering  <meyering@lucent.com>
53255
53256         Use `C' to denote so-called `contiguous' files, the same way
53257         that tar does.
53258         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
53259         (ftypelet): Use S_ISCTG.
53260         From Michael Deutschmann.
53261
53262 2000-04-14  Jim Meyering  <meyering@lucent.com>
53263
53264         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
53265         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
53266         clobbered.
53267
53268 2000-04-14  Jim Meyering  <meyering@lucent.com>
53269
53270         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
53271
53272 2000-04-13  Jim Meyering  <meyering@lucent.com>
53273
53274         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
53275         AH_VERBATIM to insert required #ifndef into config.h.in.
53276         Suggestion from Akim Demaille.
53277
53278 2000-04-12  Jim Meyering  <meyering@lucent.com>
53279
53280         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
53281         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
53282         Christian Krackowizer.
53283
53284         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
53285         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
53286         (AC_SYS_LARGEFILE): Require.
53287         (AM_C_PROTOTYPES): Require.
53288
53289 2000-04-08  Jim Meyering  <meyering@lucent.com>
53290
53291         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
53292         names don't conflict.  Reported by Eli Zaretskii.
53293
53294 2000-04-07  Jim Meyering  <meyering@lucent.com>
53295
53296         * lib/putenv.c: Move inclusion of errno.h so it follows that of
53297         sys/types.h, to work around system header problems on AIX 3.2.5.
53298         From Bruno Haible.
53299
53300 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
53301
53302         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
53303         bug.  Deal with the different error behavior of Irix iconv.
53304
53305 2000-04-05  Paul Eggert  <eggert@twinsun.com>
53306
53307         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
53308         IRIX if the installer said otherwise.
53309
53310 2000-04-05  Jim Meyering  <meyering@lucent.com>
53311
53312         Portability tweaks required for ultrix4.3.
53313         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
53314         (jm_CHECK_DECLS): Add getutent to the list of functions.
53315         (_jm_DECL_HEADERS): Add utmpx.h.
53316         From John David Anglin.
53317
53318         * m4/strftime.m4: Back out the 2000-04-02 change.
53319         Instead of that change, simply undefine putenv in the test program.
53320
53321 2000-04-05  Jim Meyering  <meyering@lucent.com>
53322
53323         Portability tweaks required for ultrix4.3.
53324         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
53325         getutent.
53326         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
53327         * lib/canon-host.c: Declare strdup.
53328         * lib/path-concat.c: Likewise.
53329         From John David Anglin.
53330
53331 2000-04-04  Jim Meyering  <meyering@lucent.com>
53332
53333         Be more DOS 8.3-friendly.
53334         * lib/ref-add.sin: Renamed from ref-add.sed.in.
53335         * lib/ref-del.sin: Renamed from ref-del.sed.in.
53336         * lib/Makefile.am: Reflect renaming.
53337         Reported by Eli Zaretskii.
53338
53339         Use a temporary file name that won't clash with `charset.alias'
53340         in the DOS 8.3 name space.
53341         * lib/Makefile.am (charset_tmp): Define.
53342         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
53343         (uninstall-local): Likewise.
53344         Reported by Eli Zaretskii.
53345
53346 2000-04-03  Jim Meyering  <meyering@lucent.com>
53347
53348         * m4/gettext.m4: Fix typo in comment.
53349
53350         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
53351         textutils/configure.in).  Suggestion from Paul Eggert.
53352         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
53353
53354 2000-04-02  Paul Eggert  <eggert@twinsun.com>
53355
53356         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
53357         variable in the shell rather than using putenv, which isn't
53358         portable.  This avoids the configure-time inter-test dependency
53359         on the potentially-renamed putenv function.
53360
53361 2000-03-30  Paul Eggert  <eggert@twinsun.com>
53362
53363         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
53364         before checking struct stat.st_blksize, so that
53365         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
53366
53367 2000-03-29  Paul Eggert  <eggert@twinsun.com>
53368
53369         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
53370         since strftime.c uses HAVE_STRFTIME to decide whether to use
53371         the underlying strftime.
53372
53373 2000-03-29  Paul Eggert  <eggert@twinsun.com>
53374
53375         * lib/time/strftime.c (my_strftime): Make sure we call the system
53376         strftime, not ourselves, when invoking the underlying strftime.
53377
53378 2000-03-24  Jim Meyering  <meyering@lucent.com>
53379
53380         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
53381         (charset_alias): Define.
53382         (install-exec-local): Factor out common code.
53383         (uninstall-local): Split lines longer than 80.
53384         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
53385         (SUFFIXES): Define.
53386         (.sed.in.sed): New rule.  Don't redirect directly to $@.
53387         (CLEANFILES): Add ref-add.sed and ref-del.sed.
53388
53389 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
53390
53391         * lib/config.charset: Output a line containing "Packages using this
53392         file".
53393         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
53394         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
53395         ref-del.sed): New rules.
53396
53397 2000-03-17  Jim Meyering  <meyering@lucent.com>
53398
53399         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
53400         Otherwise, include <strings.h>
53401
53402 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
53403
53404         * lib/unicodeio.c (utf8_wctomb): New function.
53405         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
53406         format instead of in UCS-4 with platform dependent endianness.
53407
53408 2000-03-10  Jim Meyering  <meyering@lucent.com>
53409
53410         * m4/lib-check.m4: Look for getspnam in -lgen, too.
53411         From Marco Franzen.
53412
53413 2000-03-07  Paul Eggert  <eggert@twinsun.com>
53414
53415         * lib/savedir.c (savedir): Work even if directory size is
53416         negative; this can happen with some screwy NFS configurations.
53417
53418 2000-03-06  Jim Meyering  <meyering@lucent.com>
53419
53420         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
53421         if it's NULL (because we ran out of memory).  From Bruno Haible.
53422
53423 2000-03-05  Jim Meyering  <meyering@lucent.com>
53424
53425         * lib/localcharset.c ("path-concat.h"): Include.
53426         (get_charset_aliases): Use path_concat instead of ANSI string
53427         concatenation.
53428
53429         * lib/unicodeio.h (PARAMS): Define.
53430         Use it to guard prototype.
53431
53432 2000-03-04  Jim Meyering  <meyering@lucent.com>
53433
53434         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
53435         for lib/localcharset.c.
53436
53437 2000-03-04  Jim Meyering  <meyering@lucent.com>
53438
53439         * lib/Makefile.am (install-exec-local): Create $(libdir) before
53440         installing into it.
53441         (uninstall-local): Uncomment this rule so `make distcheck' works
53442         once again.
53443
53444         * lib/unicodeio.c (<errno.h>): Include it.
53445         (errno): Declare if not defined.
53446
53447         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
53448
53449         * lib/config.charset: New version, incorporating remarks from a linux
53450         i18n mailing list.  From Bruno Haible.
53451
53452 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
53453
53454         * m4/codeset.m4: New file.
53455         * m4/iconv.m4: New file.
53456         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
53457
53458 2000-03-03  Jim Meyering  <meyering@lucent.com>
53459
53460         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
53461
53462 2000-03-02  Jim Meyering  <meyering@lucent.com>
53463
53464         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
53465         the messages come out on separate lines.
53466
53467         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
53468         rather than jm_CHECK_DECLARATIONS.
53469         * m4/decl.m4: Remove now-unused file.
53470
53471         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
53472         geteuid.
53473
53474 2000-03-02  Jim Meyering  <meyering@lucent.com>
53475
53476         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
53477
53478 2000-03-01  Jim Meyering  <meyering@lucent.com>
53479
53480         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
53481         * lib/unicodeio.c: Likewise.
53482
53483 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
53484
53485         * lib/config.charset: New file.
53486         * lib/localcharset.c: New file.
53487         * lib/unicodeio.h, lib/unicodeio.c: New files.
53488         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
53489         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
53490         (noinst_HEADERS): Add unicodeio.h.
53491         (all-local, install-exec-local, charset.alias): New targets.
53492
53493 2000-02-28  Paul Eggert  <eggert@twinsun.com>
53494
53495         * lib/quotearg.c (ALERT_CHAR): New macro.
53496         (quotearg_buffer_restyled): Use it.
53497
53498 2000-02-27  Jim Meyering  <meyering@lucent.com>
53499
53500         * m4/check-decl.m4: Add getenv to the list.
53501
53502 2000-02-27  Jim Meyering  <meyering@lucent.com>
53503
53504         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
53505         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
53506
53507         * lib/backupfile.c: Guard inclusion of stdlib.h with
53508         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
53509         Declare malloc if needed.
53510
53511         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
53512         `#ifndef HAVE_DECL..'
53513         now that autoconf always defines the HAVE_DECL_ symbols.
53514         * lib/human.c: Likewise.
53515         * lib/same.c: Likewise.
53516         * lib/strtoumax.c: Likewise.
53517
53518         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
53519         declaration check was not run.
53520         * lib/hash.c: Likewise.
53521         * lib/human.c: Likewise.
53522         * lib/same.c: Likewise.
53523         * lib/strtoumax.c: Likewise.
53524
53525         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
53526         `.', then first look up the entire `.'-containing string as a login
53527         name.
53528
53529 2000-02-23  Jim Meyering  <meyering@lucent.com>
53530
53531         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
53532         in place of my hack.
53533
53534 2000-02-18  Paul Eggert  <eggert@twinsun.com>
53535
53536         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
53537         (textint): New typedef.
53538         (parser_control): Member year changed from int to textint.
53539         All uses changed.
53540         (YYSTYPE): Removed; replaced by %union with int and textint members.
53541         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
53542         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
53543         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
53544         (tSNUMBER, tUNUMBER): Now of type <textintval>.
53545         (date, number, to_year): Use width of number in digits, not its value,
53546         to determine whether it's a 2-digit year, or a 2-digit time.
53547         (yylex): Store number of digits of numeric tokens.
53548         Reported by John Kendall.
53549
53550         (parser_control): Changed from struct parser_control to typedef (for
53551         consistency).  All uses changed.
53552
53553         (tID): Removed; not used.
53554         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
53555
53556 2000-02-14  Paul Eggert  <eggert@twinsun.com>
53557
53558         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
53559         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
53560
53561 2000-02-12  Jim Meyering  <meyering@lucent.com>
53562
53563         * lib/userspec.c (ISDIGIT): Define it.
53564         (isdigit): Remove definition.
53565         (is_number): Use ISDIGIT, not isdigit.
53566         <libintl.h>: Include.
53567         (_ and N_): Define.
53568         (parse_user_spec): Mark translatable strings.
53569
53570 2000-02-10  Jim Meyering  <meyering@lucent.com>
53571
53572         With these changes, nanosleep.[ch] are finally enough like the other
53573         lib/* replacement files to compile on a few more losing systems.
53574
53575         * lib/nanosleep.h: Don't include config.h.
53576         Remove prototype from declaration of nanosleep.
53577         (PARAMS): Remove now-unneeded definition.
53578         * lib/nanosleep.c: #undef nanosleep.
53579         (rpl_nanosleep): Rename from nanosleep.
53580
53581 2000-02-10  Jim Meyering  <meyering@lucent.com>
53582
53583         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
53584         gnu_nanosleep to rpl_nanosleep.
53585
53586 2000-02-09  Jim Meyering  <meyering@lucent.com>
53587
53588         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
53589         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
53590
53591 2000-02-08  Akim Demaille  <akim@epita.fr>
53592
53593         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
53594         `[' and `]' and remove uses of `changequote'.
53595         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
53596         (AC_SYS_LARGEFILE): Likewise.
53597         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
53598         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
53599         of changequote.
53600         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
53601         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
53602         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
53603         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
53604
53605 2000-02-05  Jim Meyering  <meyering@lucent.com>
53606
53607         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
53608         Remove explicit use of AC_HEADER_TIME.  It is required by
53609         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
53610         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
53611         in autoconf whereby the expansion of the latter ended up preceding
53612         the expansion of its prerequisite, AC_HEADER_TIME.
53613         Reported by Volker Borchert.
53614
53615 2000-02-03  Jim Meyering  <meyering@lucent.com>
53616
53617         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
53618
53619 2000-02-03  Jim Meyering  <meyering@lucent.com>
53620
53621         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
53622         rather than with `#if HAVE_UTMPNAME'.
53623
53624 2000-02-02  Jim Meyering  <meyering@lucent.com>
53625
53626         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
53627         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
53628         Reported by Eli Zaretskii.
53629
53630 2000-02-01  Jim Meyering  <meyering@lucent.com>
53631
53632         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
53633
53634 2000-01-31  Jim Meyering  <meyering@lucent.com>
53635
53636         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
53637         functions.  Add the time.h and sys/time.h headers along with the
53638         AC_REQUIRE'ment of AC_HEADER_TIME.
53639
53640 2000-01-31  Jim Meyering  <meyering@lucent.com>
53641
53642         * lib/nanosleep.h (nanosleep): Guard declaration with
53643         `#if ! HAVE_DECL_NANOSLEEP'.
53644         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
53645         the declaration in that vendor's sys/timers.h.
53646         Reported by Christian Krackowizer.
53647
53648         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
53649         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
53650         (ISPRINT): Likewise.
53651         Reported by Tom Tromey.
53652
53653 2000-01-30  Jim Meyering  <meyering@lucent.com>
53654
53655         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
53656
53657         * m4/prereq.m4 (utmp_includes): Define.
53658         Check for ut_user and ut_name members in both struct utmpx
53659         and struct utmp.
53660
53661 2000-01-30  Jim Meyering  <meyering@lucent.com>
53662
53663         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
53664         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
53665         header files where only utmpx.ut_user is declared.
53666
53667         * lib/readutmp.h (UT_USER): Define.
53668
53669 2000-01-29  Jim Meyering  <meyering@lucent.com>
53670
53671         * m4/lib-check.m4: New file containing library-related checks from
53672         fileutils and sh-utils (textutils had none).
53673
53674 2000-01-28  Jim Meyering  <meyering@lucent.com>
53675
53676         * m4/perl.m4: Change format of warning message to look more like that
53677         from the missing script.  Suggestion from François Pinard.
53678
53679 2000-01-25  Jim Meyering  <meyering@lucent.com>
53680
53681         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
53682         well as time.h in the compile check.
53683         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
53684         Fix typo in cross-compiling case: s/yes/no/.
53685
53686 2000-01-23  Jim Meyering  <meyering@lucent.com>
53687
53688         * m4/jm-macros.m4: Move df-related tests here from
53689         fileutils/configure.in
53690
53691         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
53692         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
53693
53694         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
53695         s/space/ac_fsusage_space/.
53696         (jm_FILE_SYSTEM_USAGE): Take two parameters.
53697
53698         * m4/ftruncate.m4: New file (derived from part of
53699         fileutils/configure.in).
53700         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
53701         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
53702
53703         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
53704         AC_SUBST these here, rather than just in sh-util/configure.in, so
53705         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
53706         all the same.
53707         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
53708         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
53709         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
53710         (AC_SUBST(POW_LIBM)): Likewise.
53711         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
53712
53713 2000-01-23  Jim Meyering  <meyering@lucent.com>
53714
53715         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
53716         obstack.c.
53717
53718 2000-01-22  Jim Meyering  <meyering@lucent.com>
53719
53720         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
53721
53722         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
53723
53724         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
53725         configure.in
53726         (AC_CHECK_HEADERS): Likewise for sh-utils.
53727         (AC_CHECK_HEADERS): Likewise for textutils.
53728         Merge the three lists of headers.
53729
53730         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
53731         from fileutils' configure.in.
53732
53733         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
53734         code. Moved tests into their own function (_jm_DECL_HEADERS) in
53735         check-decl.m4.
53736
53737         * m4/check-decl.m4: Use #if rather than #ifdef.
53738         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
53739         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
53740         (_jm_DECL_HEADERS): Define new function.
53741         (jm_CHECK_DECLARATIONS): Require it.
53742
53743 2000-01-22  Jim Meyering  <meyering@lucent.com>
53744
53745         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
53746         [! HAVE_DECL_STRTOULL]: Declare strtoull.
53747         Required for some AIX systems.  Reported by Christian Krackowizer.
53748         [TESTING] (main): New function.
53749
53750         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
53751         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
53752         letters.
53753
53754         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
53755         iswprint.
53756
53757         * lib/strverscmp.c (ISDIGIT): Define.
53758         (strverscmp): Use ISDIGIT, not isdigit.
53759
53760 2000-01-19  Jim Meyering  <meyering@lucent.com>
53761
53762         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
53763         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
53764         defines `struct timespec' in <sys/time.h>
53765
53766         * m4/c-bs-a.m4: Remove uses of changequote altogether.
53767         Thanks to Akim for explaining.
53768
53769 2000-01-17  Paul Eggert  <eggert@twinsun.com>
53770
53771         * lib/nanosleep.c (nanosleep):
53772         Don't use SA_INTERRUPT to decide whether to call sigaction, as
53773         POSIX.1 doesn't require SA_INTERRUPT and some systems
53774         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
53775         it's been part of POSIX.1 since day 1 (in 1988).
53776
53777 2000-01-17  Jim Meyering  <meyering@lucent.com>
53778
53779         * lib/interlock: Remove unused file.  Reported by François Pinard.
53780
53781 2000-01-16  Paul Eggert  <eggert@twinsun.com>
53782
53783         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
53784         alert, backslash, formfeed, and vertical tab unnecessarily in
53785         shell quoting style.
53786
53787 2000-01-16  Jim Meyering  <meyering@lucent.com>
53788
53789         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
53790         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
53791         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
53792         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
53793
53794 2000-01-16  Jim Meyering  <meyering@lucent.com>
53795
53796         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
53797         because the latter didn't work.
53798
53799 2000-01-15  Jim Meyering  <meyering@lucent.com>
53800
53801         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
53802         (AC_REPLACE_FUNCS): Add memcpy and memset.
53803         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
53804         Add strpbrk.
53805         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
53806
53807 2000-01-12  Jim Meyering  <meyering@lucent.com>
53808
53809         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
53810         (jm_PREREQ): Use it.
53811         (jm_PREREQ_READUTMP): New macro.
53812         (jm_PREREQ): Use it.
53813
53814 2000-01-11  Paul Eggert  <eggert@twinsun.com>
53815
53816         Quote multibyte characters correctly.
53817         * m4/c-bs-a.m4: New file.
53818         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
53819         (jm_PREREQ): Use it.
53820
53821 2000-01-11  Paul Eggert  <eggert@twinsun.com>
53822
53823         * m4/uintmax_t.m4: Port to autoconf 2.13.
53824
53825 2000-01-08  Jim Meyering  <meyering@ascend.com>
53826
53827         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
53828         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
53829
53830 2000-01-04  Jim Meyering  <meyering@ascend.com>
53831
53832         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
53833         jm_STRUCT_DIRENT_D_TYPE.
53834         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
53835         jm_STRUCT_DIRENT_D_INO.
53836         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
53837         jm_STRUCT_UTIMBUF.
53838         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
53839         renamings.
53840         * m4/utime.m4: Likewise.
53841
53842         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
53843         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
53844
53845 2000-01-03  Paul Eggert  <eggert@twinsun.com>
53846
53847         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
53848         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
53849
53850 2000-01-02  Jim Meyering  <meyering@ascend.com>
53851
53852         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
53853         remember if this is necessary.
53854
53855 1999-12-26  Jim Meyering  <meyering@ascend.com>
53856
53857         * m4/jm-macros.m4: Use it here.
53858         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
53859
53860 1999-12-23  Jim Meyering  <meyering@ascend.com>
53861
53862         * m4/jm-macros.m4: Check for clock_gettime (moved from
53863         fileutils/configure.in)
53864         Check for gettimeofday.
53865
53866 1999-12-20  Jim Meyering  <meyering@ascend.com>
53867
53868         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
53869         autoconf-2.14a-1999-12-20.
53870
53871 1999-12-19  Jim Meyering  <meyering@ascend.com>
53872
53873         * m4/lstat-slash.m4: New file.
53874         * m4/jm-macros.m4: Use the new macro:
53875         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
53876
53877 1999-12-07  Jim Meyering  <meyering@ascend.com>
53878
53879         * m4/perl.m4: Require that File::Compare be available, too.
53880         Too many systems seem to lack it.
53881
53882         * m4/strftime.m4: Add checks for most of the cpp macros tested in
53883         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
53884
53885 1999-11-18  Paul Eggert  <eggert@twinsun.com>
53886
53887         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
53888         problem with the QNX 4.25 shell, which doesn't propagate exit
53889         status of failed commands inside shell assignments.
53890
53891 1999-11-17  Jim Meyering  <meyering@ascend.com>
53892
53893         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
53894
53895 1999-11-07  Jim Meyering  <meyering@ascend.com>
53896
53897         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
53898
53899 1999-11-06  Jim Meyering  <meyering@ascend.com>
53900
53901         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
53902         * m4/jm-macros.m4 (jm_MACROS): Use it here.
53903
53904 1999-11-05  Jim Meyering  <meyering@ascend.com>
53905
53906         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
53907         configure.in of textutils, fileutils, and sh-utils into this one
53908         (shared between those packages) file.
53909         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
53910         AC_STRUCT_ST_BLKSIZE.
53911
53912 1999-11-03  Jim Meyering  <meyering@ascend.com>
53913
53914         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
53915         of AC_CHECK_TYPE checks includes unistd.h.
53916         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
53917         Suggestion from Akim Demaille.
53918
53919 1999-10-30  Jim Meyering  <meyering@ascend.com>
53920
53921         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
53922         m4-quoted string.
53923         * m4/ls-mntd-fs.m4: Likewise.
53924         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
53925         * m4/jm-winsz1.m4: Likewise.
53926
53927         * m4/const.m4: Remove file, since the fix made it into the experimental
53928         version of autoconf.
53929         * m4/mktime.m4: Likewise.
53930
53931         * m4/check-type.m4: Remove file, now that the latest version of
53932         AC_CHECK_TYPE takes a third arg to specify additional #includes.
53933
53934         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
53935         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
53936         AC_CHECK_TYPE.
53937
53938 1999-10-04  Jim Meyering  <meyering@ascend.com>
53939
53940         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
53941
53942 1999-09-22  Paul Eggert  <eggert@twinsun.com>
53943
53944         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
53945         2.95.1 bug with HP-UX 10.20.
53946
53947 1999-09-17  Jim Meyering  <meyering@ascend.com>
53948
53949         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
53950         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
53951         due to missing strdup (against sh-utils-2.0).
53952
53953 1999-08-29  Jim Meyering  <meyering@ascend.com>
53954
53955         * m4/jm-macros.m4: Require jm_BISON.
53956         * m4/bison.m4: New file.
53957
53958 1999-08-17  Paul Eggert  <eggert@twinsun.com>
53959
53960         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
53961         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
53962
53963 1999-08-05  Jim Meyering  <meyering@ascend.com>
53964
53965         * m4/getline.m4: Rename test file from conftestdata to conftest.data
53966         to avoid conflicts with `conftest' on 8+3 filesystems.
53967         Suggestion from Eli Zaretskii.
53968
53969 1999-08-04  Jim Meyering  <meyering@ascend.com>
53970
53971         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
53972         fileutils and sh-utils (textutils's getline test was inadequate).
53973         (AM_FUNC_GETLINE): Run this test.
53974         (AC_CHECK_FUNCS): Check for getdelim.
53975         Reported by Bob Proulx.
53976
53977 1999-08-02  Jim Meyering  <meyering@ascend.com>
53978
53979         * m4/jm-macros.m4: Add a comment.
53980
53981 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53982
53983         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
53984         <inttypes.h> defines strtoumax as a macro (and not as a
53985         function).
53986
53987 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53988
53989         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
53990         that we can shift, multiply and divide unsigned long long
53991         values; Ultrix cc can't do it.
53992
53993 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53994
53995         * m4/mktime.m4: New file, which is a preview of what should appear
53996         in the next public autoconf release.
53997
53998 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53999
54000         * m4/lfs.m4: Remove this file.
54001         * m4/largefile.m4: New file.  It contains the old contents of
54002         lfs.m4, except that all names with prefix AC_LFS have been
54003         changed to use the prefix AC_SYS_LARGEFILE instead, to be
54004         compatible with future autoconf versions.  Also, some minor m4
54005         quoting problems have been fixed.
54006
54007 1999-08-01  Paul Eggert  <eggert@twinsun.com>
54008
54009         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
54010         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
54011         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
54012         and simplify the shell code.
54013
54014 1999-08-01  Jim Meyering  <meyering@ascend.com>
54015
54016         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
54017         m4.
54018
54019 1999-07-20  Jim Meyering  <meyering@ascend.com>
54020
54021         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
54022
54023 1999-07-15  Jim Meyering  <meyering@ascend.com>
54024
54025         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
54026
54027 1999-05-22  Jim Meyering  <meyering@ascend.com>
54028
54029         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
54030
54031 1999-05-20  Jim Meyering  <meyering@ascend.com>
54032
54033         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
54034         Add a colon after each `then' in case $4 is empty.
54035
54036 1999-05-16  Jim Meyering  <meyering@ascend.com>
54037
54038         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
54039
54040 1999-05-10  Jim Meyering  <meyering@ascend.com>
54041
54042         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
54043
54044         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
54045         AC_FUNC_MKTIME.
54046
54047 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
54048
54049         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
54050
54051 1999-05-04  Paul Eggert  <eggert@twinsun.com>
54052
54053         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
54054         not CPPFLAGS, so that linking works correctly in IRIX.
54055
54056 1999-04-30  Paul Eggert  <eggert@twinsun.com>
54057
54058         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
54059
54060 1999-04-20  Paul Eggert  <eggert@twinsun.com>
54061
54062         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
54063         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
54064         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
54065         jm_AC_TYPE_UNSIGNED_LONG_LONG.
54066         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
54067
54068         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
54069
54070 1999-04-20  Jim Meyering  <meyering@ascend.com>
54071
54072         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
54073         AC_REPLACE xstroull if necessary.  From Paul Eggert.
54074         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
54075
54076 1999-04-18  Jim Meyering  <meyering@ascend.com>
54077
54078         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
54079         * m4/jm-macros.m4: Use it.
54080
54081 1999-04-06  Jim Meyering  <meyering@ascend.com>
54082
54083         * m4/strftime.m4: Remove test for %f.
54084
54085 1999-03-29  Jim Meyering  <meyering@ascend.com>
54086
54087         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
54088         superset of the AC_TYPE_* checks in the textutils, fileutils,
54089         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
54090         AC_TYPE_PID_T.
54091
54092 1999-03-28  Jim Meyering  <meyering@ascend.com>
54093
54094         * m4/jm-macros.m4: Define GNU_PACKAGE here.
54095         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
54096         replaced e.g., in the *.sh files of the sh-utils.
54097
54098 1999-03-20  Jim Meyering  <meyering@ascend.com>
54099
54100         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
54101         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
54102         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
54103
54104 1999-03-19  Jim Meyering  <meyering@ascend.com>
54105
54106         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
54107
54108 1999-03-12  Jim Meyering  <meyering@ascend.com>
54109
54110         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
54111
54112 1999-03-07  Jim Meyering  <meyering@ascend.com>
54113
54114         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
54115         declared.
54116
54117 1999-02-17  Jim Meyering  <meyering@ascend.com>
54118
54119         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
54120         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
54121
54122 1999-02-07  Jim Meyering  <meyering@ascend.com>
54123
54124         * m4/group-member.m4: New file -- extracted from sh-utils'
54125         configure.in.
54126
54127         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
54128         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
54129
54130 1999-02-06  Jim Meyering  <meyering@ascend.com>
54131
54132         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
54133         * m4/fnmatch.m4: Likewise.
54134         * m4/getgroups.m4: Likewise.
54135         * m4/lstat.m4: Likewise.
54136         * m4/malloc.m4: Likewise.
54137         * m4/putenv.m4: Likewise.
54138         * m4/realloc.m4: Likewise.
54139         * m4/regex.m4: Likewise.
54140         * m4/stat.m4: Likewise.
54141         * m4/strftime.m4: Likewise.
54142         Suggestion from Alain Magloire.
54143
54144         * m4/chown.m4: Use `.$ac_objext', not `.o'.
54145         * m4/fnmatch.m4: Likewise.
54146         * m4/getgroups.m4: Likewise.
54147         * m4/getline.m4: Likewise.
54148         * m4/lstat.m4: Likewise.
54149         * m4/malloc.m4: Likewise.
54150         * m4/memcmp.m4: Likewise.
54151         * m4/putenv.m4: Likewise.
54152         * m4/realloc.m4: Likewise.
54153         * m4/regex.m4: Likewise.
54154         * m4/stat.m4: Likewise.
54155         * m4/strftime.m4: Likewise.
54156         Suggestion from Alain Magloire.
54157
54158         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
54159         an argument.
54160
54161         * m4/regex.m4: Add a run-time Test for proper operation of
54162         re_compile_pattern.
54163
54164 1999-01-31  Jim Meyering  <meyering@ascend.com>
54165
54166         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
54167
54168 1999-01-30  Jim Meyering  <meyering@ascend.com>
54169
54170         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
54171
54172         * m4/jm-mktime.m4: Make this a wrapper around the official
54173         AM_FUNC_MKTIME rather than my private copy, now that the official one
54174         is up to date.
54175         * m4/mktime.m4: Remove file.
54176
54177         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
54178         * m4/uptime.m4: Likewise.
54179         * m4/uintmax_t.m4: Likewise.
54180
54181 1999-01-28  Jim Meyering  <meyering@ascend.com>
54182
54183         * m4/jm-macros.m4: Use jm_AFS.
54184         * m4/afs.m4: New file (from fileutils' configure.in).
54185
54186         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
54187         * m4/chown.m4: Likewise.
54188         * m4/d-ino.m4: Likewise.
54189         * m4/d-type.m4: Likewise.
54190         * m4/fnmatch.m4: Likewise.
54191         * m4/getgroups.m4: Likewise.
54192         * m4/gettext.m4: Likewise.
54193         * m4/jm-mktime.m4: Likewise.
54194         * m4/jm-winsz2.m4: Likewise.
54195         * m4/lcmessage.m4: Likewise.
54196         * m4/ls-mntd-fs.m4: Likewise.
54197         * m4/malloc.m4: Likewise.
54198         * m4/memcmp.m4: Likewise.
54199         * m4/putenv.m4: Likewise.
54200         * m4/realloc.m4: Likewise.
54201         * m4/st_mtim.m4: Likewise.
54202         * m4/strftime.m4: Likewise.
54203
54204 1999-01-16  Jim Meyering  <meyering@ascend.com>
54205
54206         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
54207         (ARGMATCH_DIE_DECL): Define.
54208
54209 1999-01-12  Jim Meyering  <meyering@ascend.com>
54210
54211         * m4/Makefile.am.in: Rewrite to avoid using fmt.
54212         Reported by Lars Hecking.
54213
54214 1999-01-10  Jim Meyering  <meyering@ascend.com>
54215
54216         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
54217         gross kludge.
54218         * m4/inttypes_h.m4: Likewise.
54219         * m4/lstat.m4: Likewise.
54220         * m4/malloc.m4: Likewise.
54221         * m4/readdir.m4: Likewise.
54222         * m4/realloc.m4: Likewise.
54223         * m4/st_dm_mode.m4: Likewise.
54224         * m4/stat.m4: Likewise.
54225         * m4/utimbuf.m4: Likewise.
54226         * m4/utimes.m4: Likewise.
54227
54228         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
54229         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
54230         comments in config.h.in are meaningful.
54231
54232         * m4/jm-macros.m4: Require autoconf-2.13 here.
54233
54234         * m4/regex.m4: By default, don't use the included regex.c on systems
54235         with glibc 2.  Suggestion from Uli Drepper.
54236
54237 1999-01-02  Jim Meyering  <meyering@ascend.com>
54238
54239         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
54240
54241 1998-12-18  Jim Meyering  <meyering@ascend.com>
54242
54243         * m4/Makefile.am.in (Makefile.am): Simplify rule.
54244         Based on a suggestion from Lars Hecking.
54245
54246 1998-11-16  Paul Eggert  <eggert@twinsun.com>
54247
54248         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
54249
54250 1998-11-16  Jim Meyering  <meyering@ascend.com>
54251
54252         * m4/lfs.m4: Double-quote the `uname...` expression.
54253
54254 1998-11-14  Jim Meyering  <meyering@ascend.com>
54255
54256         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
54257         * m4/stat.m4: Likewise.
54258
54259 1998-11-03  Jim Meyering  <meyering@ascend.com>
54260
54261         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
54262         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
54263
54264 1998-10-18  Jim Meyering  <meyering@ascend.com>
54265
54266         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
54267
54268 1998-10-17  Jim Meyering  <meyering@ascend.com>
54269
54270         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
54271         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
54272         calls for those previously hard-coded headers.  Instead, take a new
54273         parameter.
54274         (jm_CHECK_DECLARATIONS): Reflect interface change.
54275         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
54276         (jm_CHECK_DECL_LOCALTIME_R): New macro.
54277
54278         * m4/mktime.m4: Test for spring-forward gap before long-running test.
54279
54280 1998-10-14  Jim Meyering  <meyering@ascend.com>
54281
54282         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
54283         instead of "TZ=America/Vancouver".  From Paul Eggert.
54284
54285 1998-10-11  Jim Meyering  <meyering@ascend.com>
54286
54287         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
54288         This adds a test for a recently added compatibility fix for mktime.c.
54289         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
54290
54291 1998-09-27  Jim Meyering  <meyering@ascend.com>
54292
54293         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
54294
54295         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
54296         ../configure.in, including a change from Gordon Matzigkeit to allow
54297         cross-compiling for the Hurd.
54298
54299         * m4/glibc.m4: New file/macro to test for the GNU C Library
54300         versions 1 and 2.  From Gordon Matzigkeit.
54301         Indent.
54302
54303 1998-09-21  Jim Meyering  <meyering@ascend.com>
54304
54305         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
54306
54307 1998-08-18  Paul Eggert  <eggert@twinsun.com>
54308
54309         Port nanosecond-resolution times to UnixWare 2.1.2 and
54310         pedantic Solaris 2.6.
54311
54312         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
54313         AC_STRUCT_ST_MTIM.
54314         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
54315         Generate name of ns member, instead of just 1 or undef.
54316         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
54317
54318 1998-08-15  Jim Meyering  <meyering@ascend.com>
54319
54320         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
54321         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
54322         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
54323         instead of jm_TYPE_SSIZE_T.
54324
54325 1998-08-12  Jim Meyering  <meyering@ascend.com>
54326
54327         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
54328
54329 1998-08-02  Jim Meyering  <meyering@ascend.com>
54330
54331         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
54332         in acconfig.h manually.
54333
54334 1998-07-31  Paul Eggert  <eggert@twinsun.com>
54335
54336         * m4/st_mtim.m4: New file.
54337
54338 1998-07-28  Jim Meyering  <meyering@ascend.com>
54339
54340         * m4/utimes.m4: Undef stat.
54341
54342 1998-07-25  Jim Meyering  <meyering@ascend.com>
54343
54344         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
54345         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
54346
54347 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
54348
54349         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
54350         uid and gid actually remain unchanged.
54351
54352 1998-07-07  Jim Meyering  <meyering@ascend.com>
54353
54354         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
54355
54356 1998-07-04  Jim Meyering  <meyering@ascend.com>
54357
54358         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
54359         to prove that this macro can be used in packages without regex.c.
54360
54361 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
54362
54363         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
54364         is to be used.
54365
54366 1998-07-03  Jim Meyering  <meyering@ascend.com>
54367
54368         * m4/gettext.m4: Add -lintl if it's found to be necessary.
54369
54370         * m4/gettext.m4: New file -- from gettext-0.10.35.
54371         * m4/lcmessage.m4: Likewise.
54372         * m4/progtest.m4: Likewise.
54373
54374         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
54375         * m4/jm-macros.m4: Require the new macro.
54376
54377 1998-06-29  Jim Meyering  <meyering@ascend.com>
54378
54379         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
54380         for the definition of NGROUPS (used in a system header included
54381         by sys/mount.h).
54382
54383 1998-06-28  Jim Meyering  <meyering@ascend.com>
54384
54385         * m4/ls-mntd-fs.m4: New file.
54386         * m4/fstypename.m4: New file.
54387
54388         * m4/jm-macros.m4: Require the new macro.
54389         * m4/jm-glibc-io.m4: New file.
54390
54391 1998-05-19  Jim Meyering  <meyering@ascend.com>
54392
54393         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
54394         * m4/lchown.m4: New file.
54395
54396         * m4/Makefile.am.in: New file.
54397         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
54398
54399 1998-05-14  Jim Meyering  <meyering@ascend.com>
54400
54401         * m4/Makefile.am (EXTRA_DIST): Add them.
54402         * m4/jm-macros.m4: New file.
54403         * m4/utimbuf.m4: New file.
54404
54405 1998-05-12  Jim Meyering  <meyering@ascend.com>
54406
54407         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
54408
54409 1998-05-11  Jim Meyering  <meyering@ascend.com>
54410
54411         * m4/isc-posix.m4: New file.
54412
54413 1998-05-10  Jim Meyering  <meyering@ascend.com>
54414
54415         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
54416
54417 1998-05-09  Jim Meyering  <meyering@ascend.com>
54418
54419         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
54420         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
54421         with automake.
54422
54423         * m4/ssize_t.m4: New file.
54424         * m4/mktime.m4: Remove file -- the new automake has this now.
54425
54426 1998-04-26  Jim Meyering  <meyering@ascend.com>
54427
54428         * m4/assert.m4: New file.
54429         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
54430
54431 1998-04-05  Jim Meyering  <meyering@ascend.com>
54432
54433         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
54434         (jm_PREREQ): Use it here.
54435
54436 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
54437
54438         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
54439         in acconfig.h.
54440
54441 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
54442
54443         * m4/prereq.m4: New file.
54444         * m4/error.m4: New file.
54445         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
54446
54447 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
54448
54449         * m4/getline.m4: Don't set am_cv_func_working_getline before the
54450         cache-check for the same variable -- that defeated the purpose of
54451         the test; the test program was never run.  This was a problem only
54452         on systems with losing getline functions -- HP-UX 10.20 is one.
54453         Reported by Bjorn Helgaas.
54454
54455 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
54456
54457         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
54458
54459 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
54460
54461         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
54462
54463         * m4/const.m4: New file.  Use an initializer in this declaration
54464         typedef int charset[2]; const charset x;
54465         Reported by Bob Glickstein.
54466
54467 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
54468
54469         * m4/chown.m4: Fix reversed types on -1 args to chown.
54470         From Kaveh Ghazi.
54471
54472 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
54473
54474         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
54475         Add lseek and memchr.
54476
54477         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
54478         T.E.Dickey <dickey@clark.net> said that some older preprocessors
54479         have a 20-character limit on names.
54480
54481 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
54482
54483         * m4/inttypes_h.m4: New file.
54484         * m4/uintmax_t.m4: New file.
54485         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
54486
54487
54488         -----
54489
54490         Local Variables:
54491         coding: utf-8
54492         End:
54493
54494         Copyright (C) 1997-2009 Free Software Foundation, Inc.
54495
54496         Copying and distribution of this file, with or without
54497         modification, are permitted provided the copyright notice
54498         and this notice are preserved.