Set errno to ENOSYS when a function is entirely unsupported.
[gnulib.git] / ChangeLog
1 2009-09-06  Bruno Haible  <bruno@clisp.org>
2
3         Set errno to ENOSYS when a function is entirely unsupported.
4         * lib/chown.c (rpl_chown) [!HAVE_CHOWN]: Set errno to ENOSYS instead of
5         EOPNOTSUPP.
6         * lib/lchown.c (lchown) [!HAVE_CHOWN]: Likewise.
7         * modules/chown (Depends-on): Remove errno.
8
9 2009-09-06  Bruno Haible  <bruno@clisp.org>
10
11         * doc/posix-headers/fcntl.texi (AT_*): Mention affected platforms.
12
13 2009-09-06  Bruno Haible  <bruno@clisp.org>
14
15         * lib/sys_stat.in.h: Fix preprocessor command indentation.
16
17 2009-09-06  Ben Pfaff  <blp@gnu.org>
18             Bruno Haible  <bruno@clisp.org>
19
20         Work around a glibc bug in strtok_r.
21         * lib/string.in.h (strtok_r): Replace if REPLACE_STRTOK_R is set.
22         Undefine if UNDEFINE_STRTOK_R is set.
23         * lib/strtok_r.c (strtok_r, __strtok_r) [!_LIBC]: Don't undefine.
24         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
25         REPLACE_STRTOK_R and UNDEFINE_STRTOK_R.
26         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Check against the glibc bug.
27         * modules/string (Makefile.am): Substitute REPLACE_STRTOK_R,
28         UNDEFINE_STRTOK_R.
29         * doc/posix-functions/strtok_r.texi: Mention the glibc 2.7 bug.
30
31 2009-09-06  Sergey Poznyakoff  <gray@gnu.org.ua>
32
33         exclude: minor fix
34         * lib/exclude.c: Include wctype.h
35
36 2009-09-06  Akim Demaille  <demaille@gostai.com>
37
38         bootstrap: improve error message
39         * build-aux/bootstrap (find_tool): Upon failure, report the list
40         of candidates.
41         Honor the initial value of the envvar.
42
43 2009-09-05  Eric Blake  <ebb9@byu.net>
44
45         symlinkat: new module
46         * modules/symlinkat: New file.
47         * lib/symlinkat.c: Likewise.
48         * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Likewise.
49         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witnesses.
50         * modules/unistd (Makefile.am): Use them.
51         * lib/unistd.in.h (symlinkat, readlinkat): Declare them.
52         (faccessat) [GNULIB_POSIXCHECK]: Fix typo.
53         * lib/at-func.c (FUNC_RESULT): New macro, defaulting to int.
54         * MODULES.html.sh (File system functions): Mention module.
55         * doc/posix-functions/symlinkat.texi (symlinkat): Likewise.
56         * doc/posix-functions/readlinkat.texi (readlinkat): Likewise.
57         * modules/symlinkat-tests: New test.
58         * tests/test-symlinkat.c: Likewise.
59
60         test-openat-safer: add more checks
61         * tests/test-openat-safer.c (main): Check more code paths.
62
63 2009-09-05  Jim Meyering  <meyering@redhat.com>
64
65         syntax-check: detect unnecessary inclusion of openat.h
66         * top/maint.mk (sc_prohibit_openat_without_use): New rule.
67
68 2009-09-05  Bruno Haible  <bruno@clisp.org>
69
70         Support towlower, towupper.
71         * doc/posix-functions/towlower.texi: Mention module wctype.
72         * doc/posix-functions/towupper.texi: Likewise.
73         * lib/wctype.in.h (towlower, towupper): New functions.
74         * tests/test-wctype.c: Include stdio.h, stdlib.h.
75         (ASSERT): New macro.
76         (e): New variable.
77         (main): Test also towlower, towupper. Test WEOF argument.
78         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
79
80 2009-09-05  Bruno Haible  <bruno@clisp.org>
81
82         Fix conversion behaviour when the input is invalid.
83         * lib/striconveh.c (mem_cd_iconveh_internal): Fix storing of question
84         mark occurring in first pass of indirect conversion.
85         * tests/test-striconveh.c (main): Test conversion of invalid ASCII
86         input.
87         Found by clang's static analyzer.
88
89 2009-09-05  Bruno Haible  <bruno@clisp.org>
90
91         * tests/test-striconveh.c (main): Test indirect conversion on platforms
92         where direct conversion is possible.
93
94 2009-09-04  Eric Blake  <ebb9@byu.net>
95
96         openat: fail with ENOENT on empty name
97         * lib/openat-proc.c (openat_proc_name): Special-case the empty
98         buffer.
99
100         link-follow: fix logic bug in prior patch
101         * m4/link-follow.m4 (gl_FUNC_LINK_FOLLOWS_SYMLINK): Fix bug that
102         reversed sense of yes and no in prior patch.  Avoid confusing
103         compilation failure with desired semantics.
104
105         link-follow: accomodate mingw and cross-compilation
106         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Rename...
107         (gl_FUNC_LINK_FOLLOWS_SYMLINK): ...to this.  Change
108         cross-compilation results to -1, to make linkat easier to
109         implement when cross-compiling.  Trivially support mingw.
110         * modules/link-follow (configure.ac): Call new name.
111         * NEWS: Mention this.
112
113 2009-09-03  Eric Blake  <ebb9@byu.net>
114
115         faccessat: compile replacement
116         * m4/faccessat.m4 (gl_FUNC_FACCESSAT): Build replacement when
117         needed.
118
119         fts: fix compilation error
120         * lib/fts.c (includes): Re-add "openat.h", for
121         openat_needs_fchdir.
122
123         faccessat: new module
124         * modules/faccessat: New file.
125         * lib/faccessat.c: Likewise.
126         * m4/faccessat.m4 (gl_FUNC_FACCESSAT): Likewise.
127         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
128         * modules/unistd (Makefile.am): Use it.
129         * lib/unistd.in.h (faccessat): Declare it.
130         (F_OK, X_OK, W_OK, R_OK): Provide definitions.
131         * lib/fcntl.in.h (AT_SYMLINK_FOLLOW, AT_EACCESS): Likewise.
132         * MODULES.html.sh (File system functions): Mention it.
133         * doc/posix-functions/faccessat.texi (faccessat): Likewise.
134         * doc/posix-headers/fcntl.texi (fcntl.h): Likewise.
135
136         euidaccess: prefer POSIX over non-standard implementation
137         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Check for faccessat.
138         * lib/euidaccess.c (euidaccess): Use it if available.
139
140         openat: make template easier to use
141         * lib/at-func.c (CALL_FUNC): Allow AT_FUNC_USE_F1_COND and
142         AT_FUNC_F2 to be undefined.
143         (VALIDATE_FLAG): New macro; use it to reject bad flags.
144         (AT_FUNC_USE_F1_COND): Change sense to just flag bit.
145         * lib/fchmodat.c (AT_FUNC_USE_F1_COND): Adjust.
146         * lib/fchownat.c (AT_FUNC_USE_F1_COND): Likewise.
147         * lib/openat.c (AT_FUNC_USE_F1_COND) [fstatat, unlinkat]:
148         Likewise.
149         * lib/mkdirat.c (AT_FUNC_F2, AT_FUNC_USE_F1_COND): Delete.
150         * lib/selinux-at.c (AT_FUNC_F2, AT_FUNC_USE_F1_COND)
151         [getfileconat, lgetfileconat, setfileconat, lsetfileconat]:
152         Likewise.
153
154         openat: declare in POSIX headers
155         * NEWS: Mention this.
156         * modules/openat (configure.ac): Declare witnesses.
157         (Depends-on): Add fcntl-h, sys_stat, unistd.
158         (Include): Mention correct headers.
159         * modules/fcntl-h (Depends-on): Add link-warning.
160         (Files): Add openat.m4.
161         (Makefile.am): Substitute witnesses.
162         * modules/sys_stat (Files, Makefile.am): Likewise.
163         * modules/unistd (Files, Makefile.am): Likewise.
164         * m4/openat.m4 (gl_FUNC_OPENAT, gl_FUNC_FCHOWNAT): Set witnesses.
165         (gl_OPENAT_DEFAULTS): New macro.
166         * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Use it.
167         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Likewise.
168         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Likewise.
169         (SYS_STAT_H): Remove unused variable.
170         * doc/posix-headers/fcntl.texi (fcntl.h): Update content.
171         * lib/fcntl--.h (includes): Remove unneeded header.
172         * lib/openat-safer.c (includes): Likewise.
173         * lib/openat.h (AT_FDCWD, AT_SYMLINK_NOFOLLOW, AT_REMOVEDIR)
174         (openat, fstatat, unlinkat, mkdirat, fchmodat, fchownat): Move to
175         appropriate headers.
176         (__OPENAT_PREFIX): Delete.
177         * lib/fcntl.in.h (openat): Provide declaration.
178         (AT_FDCWD): Fix Solaris bug.
179         (AT_SYMLINK_NOFOLLOW, AT_REMOVEDIR): Provide macros.
180         * lib/sys_stat.in.h (fstatat, mkdirat): Provide declaration.
181         * lib/fchmodat.c (includes):  Adjust to find declaration.
182         * lib/fchownat.c (includes): Likewise.
183         * lib/mkdirat.c (includes): Likewise.
184         * lib/fstatat.c (includes): Likewise.  Ensure original fstatat is
185         still visible.
186
187 2009-09-02  Eric Blake  <ebb9@byu.net>
188
189         errno: use consistently
190         * lib/c-stack.c (ENOTSUP): <errno.h> guarantees a definition.
191         * lib/canonicalize-lgpl.c (ENAMETOOLONG): Likewise.
192         * lib/canonicalize.c (ELOOP): Likewise.
193         * lib/inet_ntop.c (EAFNOSUPPORT): Likewise.
194         * lib/inet_pton.c (EAFNOSUPPORT): Likewise.
195         * lib/lchown.c (EOPNOTSUPP): Likewise.
196         * lib/openat-priv.h (ENOSYS, EOPNOTSUPP): Likewise.
197         * lib/savewd.c (ESTALE): Likewise.
198         * lib/settime.c (ENOSYS): Likewise.
199         * lib/utimens.c (ENOSYS): Likewise.
200         * lib/xgethostname.c (ENAMETOOLONG): Likewise.
201         * lib/chdir-safer.c (ELOOP): Likewise.
202         (chdir_no_follow): Use HAVE_READLINK, not ELOOP, as witness.
203         * modules/c-stack (Depends-on): Add errno.
204         * modules/canonicalize (Depends-on): Likewise.
205         * modules/chdir-safer (Depends-on): Likewise.
206         * modules/fdopendir (Depends-on): Likewise.
207         * modules/inet_ntop (Depends-on): Likewise.
208         * modules/inet_pton (Depends-on): Likewise.
209         * modules/lchown (Depends-on): Likewise.
210         * modules/openat (Depends-on): Likewise.
211         * modules/savewd (Depends-on): Likewise.
212         * modules/settime (Depends-on): Likewise.
213         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Check for readlink.
214
215         fts: avoid leaking fds
216         * modules/fts (Depends-on): Add cloexec.
217         * lib/fts.c (opendirat, diropen, fts_build): Set close-on-exec
218         flag.
219
220         fts: make directory fds more robust
221         * lib/fts.c (O_DIRECTORY): Let <fcntl.h> take care of this.
222         (opendirat): Specify O_DIRECTORY, and add fallbacks for safety.
223
224         backupfile, chdir-long, fts, savedir: make safer
225         * lib/backupfile.c (includes): Use "dirent--.h", since
226         numbered_backup can write to stderr during readdir.
227         * lib/savedir.c (includes): Likewise.
228         * lib/chdir-long.c (includes): Use "fcntl--.h", since openat
229         emulation can write to stderr on failure.
230         * lib/fts.c (includes) [!_LIBC]: Likewise for opendir and openat.
231         * lib/getcwd.c: Document why opendir_safer is unused.
232         * lib/glob.c: Likewise.
233         * lib/scandir.c: Likewise.
234         * lib/openat-proc.c: Likewise, for open_safer.
235         * modules/backupfile (Depends-on): Add dirent-safer.
236         * modules/savedir (Depends-on): Likewise.
237         * modules/fts (Depends-on): Add dirent-safer and openat-safer.
238         * modules/chdir-long (Depends-on): Add openat-safer.
239
240         openat-safer: new module
241         * modules/openat-safer: New file.
242         * lib/openat-safer.c: Likewise.
243         * m4/fcntl-safer.m4 (gl_OPENAT_SAFER): New macro.
244         * lib/fcntl-safer.h (openat_safer): Declare.
245         * lib/fcntl--.h (openat): Override.
246         * MODULES.html.sh (File descriptor based I/O): Mention it.
247         * lib/openat.h: Add double-inclusion guards.
248         * lib/openat.c (includes): Only include "fcntl-safer.h", not
249         "fcntl--.h", so we can implement openat.
250         * modules/openat-safer-tests: New test.
251         * tests/test-openat-safer.c: New file.
252
253         dirent-safer: new module
254         * modules/dirent-safer: New file.
255         * lib/dirent--.h: Likewise.
256         * lib/dirent-safer.h: Likewise.
257         * lib/opendir-safer.c: Likewise.
258         * m4/dirent-safer.m4: Likewise.
259         * MODULES.html.sh (Enhancements for POSIX:2008): Mention it.
260         * modules/dirent-safer-tests: New test.
261         * tests/test-dirent-safer.c: New file.
262         * lib/fdopendir.c (includes): Ensure fdopendir is also safe.
263
264         fdopendir: optimize on mingw
265         * lib/unistd.in.h (_gl_directory_name): New prototype.
266         * lib/fchdir.c (_gl_directory_name): Implement it.
267         (fchdir): Use it to simplify implementation.
268         * lib/fdopendir.c (fdopendir) [REPLACE_FCHDIR]: Use metadata from
269         fchdir, when available, to avoid calling [f]chdir().
270
271         fdopendir: split into its own module
272         * lib/openat.c (fdopendir): Move...
273         * lib/fdopendir.c: ...into new file.
274         * modules/fdopendir: New module.
275         * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): New file.
276         * modules/openat (Depends-on): Add fdopendir.
277         * m4/openat.m4 (gl_FUNC_OPENAT): No longer need to check for
278         fdopendir here.
279         * modules/savedir (Depends-on): Only need fdopendir, not full
280         openat.
281         * lib/savedir.c (include): Use <dirent.h>, not "openat.h".
282         * lib/openat.h (fdopendir): Drop prototype.
283         * lib/dirent.in.h (fdopendir): Provide prototype.
284         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Add replacements.
285         * modules/dirent (Makefile.am): Substitute them.
286         * MODULES.html.sh (File system functions): Mention it.
287         * doc/posix-functions/fdopendir.texi (fdopendir): Likewise.
288         * modules/fdopendir-tests: New file.
289         * tests/test-fdopendir.c: Likewise.
290
291         fchdir: use more consistent macro convention
292         * lib/fcntl.in.h (_gl_register_fd): Move declaration to unistd.
293         * lib/sys_stat.in.h (rpl_fstat): Declare via make-time
294         REPLACE_FCHDIR, rather than relying on config.h macros.
295         * lib/unistd.in.h (fchdir): Move all fchdir internal declarations
296         inside a single make-time REPLACE_FCHDIR block, rather than using
297         the config.h FCHDIR_REPLACEMENT.
298         * m4/fchdir.m4 (gl_FUNC_FCHDIR): REPLACE_FCHDIR was already
299         AC_SUBST'd, also AC_DEFINE it.  Don't define FCHDIR_REPLACEMENT.
300         Manage fstat replacement.
301         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Pick up
302         REPLACE_FCHDIR.
303         * modules/sys_stat (Files): Add m4/unistd_h.m4.
304         (Makefile.am): Substitute REPLACE_FCHDIR.
305         * lib/close.c (rpl_close): Use REPLACE_FCHDIR, not
306         FCHDIR_REPLACEMENT.
307         * lib/dup-safer.c (dup_safer): Likewise.
308         * lib/dup2.c (rpl_dup2): Likewise.
309         * lib/dup3.c (rpl_dup3): Likewise.
310         * lib/open.c (rpl_open): Likewise.
311
312         fchdir: simplify error handling, and support dup3
313         * modules/fchdir (Depends-on): Use strdup-posix, not strdup.  Add
314         stdbool, malloc-posix, realloc-posix.
315         * lib/fchdir.c (struct dir_info_t): Delete saved_errno.
316         (ensure_dirs_slot): Return false on allocation failure.
317         (rpl_dup2): Delete.
318         (_gl_register_dup): New function.
319         (_gl_unregister_fd, rpl_opendir, rpl_dup): Update callers.
320         (_gl_register_fd): Close fd on allocation failure.
321         * lib/fcntl.in.h (_gl_register_fd): Update signature.
322         * lib/unistd.in.h (_gl_register_dup) [FCHDIR_REPLACEMENT]: New
323         prototype.
324         (rpl_dup2_fchdir): Delete prototype.
325         * lib/open.c (open): Update caller.
326         * lib/dup2.c (dup2): Track fchdir metadata.
327         * lib/dup3.c (dup3): Likewise.
328         * m4/dup2.m4 (gl_REPLACE_DUP2): New macro.
329         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Use it.
330
331 2009-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
332
333         * gnulib-tool (func_create_testdir, func_create_megatestdir): Use
334         AC_CONFIG_HEADERS instead of AM_CONFIG_HEADER. Use AC_CONFIG_FILES and
335         don't pass arguments to AC_OUTPUT.
336
337 2009-09-02  Bruno Haible  <bruno@clisp.org>
338
339         * modules/mkdtemp (License): Relicense under LGPLv2+.
340         Reported by Paolo Bonzini.
341
342 2009-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
343
344         Replace uses of obsolete autoconf macros in Jim's modules.
345         The Autoconf macros AC_TRY_CPP, AC_TRY_COMPILE, AC_TRY_LINK and
346         AC_TRY_RUN have been obsolete since Autoconf 2.55, and each use
347         can evoke a warning from autoconf when run with -Wobsolete
348         enabled.  They were declared obsolete for good reasons (see
349         the `AC_FOO_IFELSE vs AC_TRY_FOO' node in the Autoconf manual,
350         recently renamed to `AC_ACT_IFELSE vs AC_TRY_ACT'), and we
351         should not continue using the deprecated macros.
352         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Replace
353         obsolete Autoconf macros with modern counterparts.
354         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
355         * m4/dos.m4 (gl_AC_DOS): Likewise.
356         * m4/fpending.m4 (gl_FUNC_FPENDING): Likewise.
357         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Likewise.
358         * m4/getloadavg.m4 (gl_PREREQ_GETLOADAVG): Likewise.
359         * m4/jm-winsz1.m4 (gl_WINSIZE_IN_PTEM): Likewise.
360         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Likewise.
361         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Likewise.
362         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Likewise.
363         * m4/mode_t.m4 (gl_PROMOTED_TYPE_MODE_T): Likewise.
364         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
365         Likewise.
366         * m4/rename.m4 (gl_FUNC_RENAME): Likewise.
367         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
368         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Likewise.
369         * m4/st_dm_mode.m4 (AC_STRUCT_ST_DM_MODE): Likewise.
370         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
371         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
372
373 2009-09-01  Eric Blake  <ebb9@byu.net>
374
375         fchdir: fix off-by-one bug in previous patch
376         * lib/fchdir.c (rpl_fstat): Use correct bounds.
377         (_gl_unregister_fd): Delete useless if.
378
379 2009-09-01  Daniel P. Berrange  <berrange@redhat.com>
380
381         maint.mk: sort the list of syntax-check rules
382         * top/maint.mk (syntax-check-rules): Sort syntax-check rules, so it's
383         easier to get a sense of progress when the rules are run sequentially
384         and take a long time.
385
386 2009-09-01  Simon Josefsson  <simon@josefsson.org>
387
388         * modules/arpa_inet: Use $(MKDIR_P) instead of @MKDIR_P@.
389         * modules/netinet_in: Likewise.
390         * modules/sys_file: Likewise.
391         * modules/sys_ioctl: Likewise.
392         * modules/sys_select: Likewise.
393         * modules/sys_socket: Likewise.
394         * modules/sys_stat: Likewise.
395         * modules/sys_time: Likewise.
396         * modules/sys_times: Likewise.
397         * modules/sys_utsname: Likewise.
398         * modules/sys_wait: Likewise.
399
400 2009-09-01  Jim Meyering  <meyering@redhat.com>
401
402         fts: help ensure that return values are not ignored
403         * lib/fts_.h (__GNUC_PREREQ): Define.
404         (__attribute_warn_unused_result__): Define.
405         (fts_children, fts_close, fts_open, fts_read): Declare with
406         __attribute_warn_unused_result__.
407
408         fts: fts_close now fails also when closing a dir file descriptor fails
409         * lib/fts.c (fts_close): Detect close failure, not just fchdir failure,
410         and propagate to caller, along with errno.
411
412         announce-gen: correct formatting in --help output
413         * build-aux/announce-gen (usage): Move the one-line description in
414         --help output "up", to where it belongs, just after Usage:.
415
416 2009-08-31  Eric Blake  <ebb9@byu.net>
417
418         fchdir: port to mingw
419         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Check for mingw bug.
420         * lib/open.c (open) [FCHDIR_REPLACEMENT]: If directories can't be
421         opened, then use a substitute.
422         * lib/sys_stat.in.h (fstat) [REPLACE_OPEN_DIRECTORY]: Declare
423         replacement.
424         * lib/fchdir.c (fstat) [REPLACE_OPEN_DIRECTORY]: Implement it.
425         (_gl_register_fd): No need to check stat if open already filters
426         all directories.
427         (fchdir): Fix error condition to match POSIX.
428         * modules/fchdir (Depends-on): Add sys_stat.
429         * doc/posix-functions/open.texi (open): Document the limitation.
430         * modules/fchdir-tests: New file.
431         * tests/test-fchdir.c: Likewise.
432
433         canonicalize: allow cross-testing from cygwin to mingw
434         * modules/canonicalize-tests (configure.ac): Define HAVE_SYMLINK.
435         (Makefile.am): Pass it through TESTS_ENVIRONMENT.
436         * modules/canonicalize-lgpl-tests (configure.ac, Makefile.am):
437         Likewise.
438         * tests/test-canonicalize.sh: Also skip test if 'ln -s' works, but
439         target does not support symlinks.
440         * tests/test-canonicalize-lgpl.sh: Likewise.
441
442         chown: avoid compilation warning on mingw
443         * m4/chown.m4 (gl_FUNC_CHOWN): Recognize missing chown.
444         * lib/chown.c (rpl_chown) [!HAVE_CHOWN]: Always return failure on
445         mingw.
446         * lib/lchown.c (lchown) [!HAVE_CHOWN]: Likewise.
447         * modules/chown (Depends-on): Add errno.
448
449 2009-08-31  Stefano Lattarini  <stefano.lattarini@gmail.com>  (tiny change)
450
451         * gnulib-tool: Fix test whether $CONFIG_SHELL has a working 'echo'
452         command.
453
454 2009-08-31  Jim Meyering  <meyering@redhat.com>
455
456         canonicalize: remove useless initialization
457         * lib/canonicalize.c (canonicalize_filename_mode): Remove useless
458         initialization of local, "end".
459
460 2009-08-30  Bruno Haible  <bruno@clisp.org>
461
462         Fix an unnecessary error on Solaris 10 on NFSv3 file systems.
463         * lib/set-mode-acl.c (qset_acl) [Solaris 10 new]: Treat EOPNOTSUPP like
464         ENOSYS.
465
466 2009-08-30  Bruno Haible  <bruno@clisp.org>
467
468         * tests/test-pipe-filter-ii1.sh: Prefer /usr/xpg6/bin/tr over
469         /usr/xpg4/bin/tr when it exists.
470         * tests/test-pipe-filter-gi1.sh: Likewise.
471
472 2009-08-30  Bruno Haible  <bruno@clisp.org>
473
474         Work around deficient /usr/bin/id program on Solaris.
475         * tests/test-file-has-acl.sh (ID): New variable.
476         * tests/test-set-mode-acl.sh (ID): Likewise.
477         * tests/test-copy-acl.sh (ID): Likewise.
478         * tests/test-copy-file.sh (ID): Likewise.
479
480 2009-08-30  Bruno Haible  <bruno@clisp.org>
481
482         New module 'xstriconveh'.
483         * lib/xstriconveh.h: New file.
484         * lib/xstriconveh.c: New file.
485         * modules/xstriconveh: New file.
486
487 2009-08-30  Bruno Haible  <bruno@clisp.org>
488
489         Make it easier to use mem_cd_iconveh.
490         * lib/striconveh.h (iconveh_t): New type.
491         (iconveh_open, iconveh_close): New declarations.
492         (mem_cd_iconveh, str_cd_iconveh): Replace the three iconv_t arguments
493         with a single 'const iconveh_t *' argument.
494         * lib/striconveh.c (iconveh_open, iconveh_close): New functions.
495         (mem_cd_iconveh, str_cd_iconveh): Replace the three iconv_t arguments
496         with a single 'const iconveh_t *' argument.
497         (mem_iconveh, str_iconveh): Use iconveh_open, iconveh_close.
498         * tests/test-striconveh.c (main): Update.
499         * NEWS: Mention the change.
500
501 2009-08-30  Bruno Haible  <bruno@clisp.org>
502
503         * doc/posix-functions/iconv_open.texi: Mention indirect conversion
504         problem.
505
506 2009-08-30  Bruno Haible  <bruno@clisp.org>
507
508         Work around iconv_open problem on Solaris.
509         * lib/iconv_open-solaris.gperf: New file.
510         * lib/iconv_open.c (ICONV_FLAVOR_SOLARIS): New macro.
511         * m4/iconv_open.m4 (gl_FUNC_ICONV_OPEN): Also handle Solaris.
512         * modules/iconv_open (Files): Add lib/iconv_open-solaris.gperf.
513         (Makefile.am): Add rule for iconv_open-solaris.h. Augment
514         BUILT_SOURCES, MOSTLYCLEANFILES, MAINTAINERCLEANFILES, EXTRA_DIST.
515         * doc/posix-functions/iconv_open.texi: Mention the Solaris problem.
516
517 2009-08-29  Jim Meyering  <meyering@redhat.com>
518
519         maint.mk: remove more coreutils-specific targets; XZ_OPT=-9ev
520         * top/maint.mk (cvs-check): Remove target; it was just an alias
521         to the better-named vc-diff-check.
522         (maintainer-distcheck): Remove rule.  It was used only from
523         the (alpha/beta/major) target, and all of its commands but one
524         were coreutils-specific.
525         (vc-dist): Remove rule.
526         (alpha beta major): Run "$(MAKE) distcheck" explicitly.
527         Run vc-diff-check, not vc-dist.
528         Run $(MAKE) dist with XZ_OPT=-9ev.  Note spelling, with "-".
529
530 2009-08-27  Bruno Haible  <bruno@clisp.org>
531
532         * tests/test-bitrotate.c (main): Remove test that uses a shift count
533         of 0.
534
535 2009-08-27  Bruno Haible  <bruno@clisp.org>
536
537         * tests/test-func.c (main): Don't verify sizeof __func__ on SunPRO C
538         compilers.
539         * doc/func.texi: Document the SunPRO C bug.
540
541 2009-08-27  Bruno Haible  <bruno@clisp.org>
542
543         Fix link error on Solaris.
544         * tests/test-parse-duration.c (xstrdup): Remove function.
545
546 2009-08-26  Pádraig Brady  <P@draigbrady.com>
547
548         ignore-value: handle pointer types, too
549         * lib/ignore-value.h (__attribute__): Remove definition.
550         (ignore_value): Remove use of "__attribute__ ((unused))" in favor
551         of a more concise and more-often effective "(void) i" statement.
552         (ignore_ptr): New function to suppress warnings from functions that
553         return pointers, and to make it explicit that one function doesn't
554         handle all cases.
555
556 2009-08-25  Bruno Haible  <bruno@clisp.org>
557
558         dup2: work around a Linux bug.
559         * m4/dup2.m4 (gl_FUNC_DUP2): Test for the Linux bug.
560         * lib/dup2.c (rpl_dup2): Correct the return value if it is -EBADF.
561         * doc/posix-functions/dup2.texi: Mention the Linux bug.
562         Reported by Simon Josefsson.
563
564 2009-08-25  Jim Meyering  <meyering@redhat.com>
565
566         libguestfs uses gnulib
567         * users.txt: Add libguestfs.
568
569 2009-08-24  Eric Blake  <ebb9@byu.net>
570
571         dup2, pipe2: fix some recent test failures on cygwin 1.5.x
572         * lib/pipe2.c (includes): Add binary-io.h.
573         * lib/dup2.c (rpl_dup2): Correct buggy errno value.
574
575 2009-08-24  Bruno Haible  <bruno@clisp.org>
576
577         Tolerate declared but missing accept4 syscall.
578         * lib/accept4.c (accept4): Invoke original accept4 function first, if
579         available.
580         * lib/sys_socket.in.h (accept4): If the function is already present,
581         override it.
582         * m4/accept4.m4 (gl_FUNC_ACCEPT4): Remove AC_LIBOBJ invocation.
583         * modules/accept4 (Makefile.am): Compile accept4.c always.
584         Reported by Paolo Bonzini and Eric Blake.
585
586 2009-08-23  Bruno Haible  <bruno@clisp.org>
587
588         New module 'accept4'.
589         * lib/sys_socket.in.h (accept4): New declaration.
590         * lib/accept4.c: New file.
591         * m4/accept4.m4: New file.
592         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
593         GNULIB_ACCEPT4, HAVE_ACCEPT4.
594         * modules/sys_socket (Makefile.am): Substitute GNULIB_ACCEPT4,
595         HAVE_ACCEPT4.
596         * modules/accept4: New file.
597         * doc/glibc-functions/accept4.texi: Mention the new module.
598
599 2009-08-24  Jim Meyering  <meyering@redhat.com>
600
601         progname: also set global program_invocation_name, when possible
602         Before this change, a libtool-enabled program that calls glibc's
603         error function would report the program name as
604         "/abs/dir/.libs/lt-program_name" rather than the desired program_name.
605         * modules/progname (configure.ac): Check for a declaration of
606         program_invocation_name.
607         * lib/progname.c:  Include <errno.h>.
608         (set_program_name) [HAVE_DECL_PROGRAM_INVOCATION_NAME]:
609         Set program_invocation_name.
610
611 2009-08-23  Bruno Haible  <bruno@clisp.org>
612
613         * lib/dup3.c: Include <string.h>.
614
615 2009-08-23  Bruno Haible  <bruno@clisp.org>
616
617         * lib/dup3.c (dup3): Test only once whether the system actually exists.
618         * lib/pipe2.c (pipe2): Likewise.
619         Suggested by Eric Blake.
620
621 2009-08-23  Bruno Haible  <bruno@clisp.org>
622
623         Tolerate declared but missing dup3 syscall.
624         * lib/dup3.c (dup3): Invoke original dup3 function first, if available.
625         * lib/unistd.in.h (dup3): If the function is already present,
626         override it.
627         * m4/dup3.m4 (gl_FUNC_DUP3): Remove AC_LIBOBJ invocation.
628         * modules/dup3 (Makefile.am): Compile dup3.c always.
629         Reported by Paolo Bonzini.
630
631 2009-08-23  Bruno Haible  <bruno@clisp.org>
632
633         Tolerate declared but missing pipe2 syscall.
634         * lib/pipe2.c (pipe2): Invoke original pipe2 function first, if
635         available.
636         * lib/unistd.in.h (pipe2): If the function is already present,
637         override it.
638         * m4/pipe2.m4 (gl_FUNC_PIPE2): Remove AC_LIBOBJ invocation.
639         * modules/pipe2 (Makefile.am): Compile pipe2.c always.
640         Reported by Paolo Bonzini.
641
642 2009-08-23  Bruno Haible  <bruno@clisp.org>
643
644         * lib/pipe2.c (pipe2): Move #ifs inside function.
645
646 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
647
648         quotearg: document limitations of quote_these_too
649         * lib/quotearg.c (quotearg_buffer_restyled): Add comments where
650         those limitations are created.
651         * lib/quotearg.h (set_char_quoting): Document that digits and
652         letters that are special after backslash are not permitted.
653         (quotearg_char): Cross-reference set_char_quoting documentation.
654
655 2009-08-23  Joel E. Denny  <jdenny@clemson.edu>
656
657         quotearg: implement custom_quoting_style
658         * lib/quotearg.c: (struct quoting_options): Add left_quote and
659         right_quote fields.
660         (set_custom_quoting): New public function.
661         (quotearg_buffer_restyled): Add left_quote and right_quote
662         arguments, handle them very much like locale quoting, and update
663         all uses.
664         (quotearg_n_custom): New public function.
665         (quotearg_n_custom_mem): New public function.
666         (quotearg_custom): New public function.
667         (quotearg_custom_mem): New public function.
668         * lib/quotearg.h: Prototype and document new public functions.
669         (enum quoting_style): For escape_quoting_style and
670         clocale_quoting_style, comment that QA_SPLIT_TRIGRAPHS is
671         ignored even though they're otherwise like c_quoting_style.
672         Add custom_quoting_style member and document with comparison to
673         clocale_quoting_style.
674         * tests/test-quotearg.c (custom_quotes): New array.
675         (custom_results): New array.
676         (main): Extend to test custom quoting.
677
678 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
679
680         quotearg: fix right quote escaping when it's in quote_these_too
681         * lib/quotearg.c (quotearg_buffer_restyled): Upon seeing a right
682         quote, be sure to prepend only one backslash.
683         * tests/test-quotearg.c (use_quote_double_quotes): New function.
684         (main): Test it.
685
686 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
687
688         quotearg-tests: test escaping of embedded locale quotes
689         * tests/test-quotearg.c (struct result_strings): Add member for
690         new input.
691         (LQ_ENC, RQ_ENC, RQ_ESC): New macros.
692         (inputs): Add new input.
693         (results_g): Add expected results.
694         (flag_results): Likewise.
695         (locale_results): Likewise.
696         (compare_strings): Check those.
697
698 2009-08-23  Bruno Haible  <bruno@clisp.org>
699
700         Tests for module 'dup3'.
701         * modules/dup3-tests: New file.
702         * tests/test-dup3.c: New file.
703
704         New module 'dup3'.
705         * lib/unistd.in.h (dup3): New declaration.
706         * lib/dup3.c: New file.
707         * m4/dup3.m4: New file.
708         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_DUP3 and
709         HAVE_DUP3.
710         * modules/unistd (Makefile.am): Substitute GNULIB_DUP3 and HAVE_DUP3.
711         * modules/dup3: New file.
712         * doc/glibc-functions/dup3.texi: Mention the new module.
713
714 2009-08-23  Bruno Haible  <bruno@clisp.org>
715
716         Tweak the dup2 test.
717         * tests/test-dup2.c (main): Create the test file empty. Verify that an
718         out-of-range fd yields EBADF. Verify that after writing to /dev/null,
719         the test file is still empty. Fix argument order of lseek.
720
721 2009-08-23  Bruno Haible  <bruno@clisp.org>
722
723         Avoid test link errors when the modules getopt-gnu, gettext are used.
724         * modules/getopt-posix-tests (Makefile.am): Define test_getopt_LDADD.
725         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
726
727 2009-08-23  Bruno Haible  <bruno@clisp.org>
728
729         Fix getdtablesize() on mingw.
730         * lib/getdtablesize.c (getdtablesize): Implement differently.
731         * lib/unistd.in.h (getdtablesize): Improve comment.
732
733 2009-08-23  Bruno Haible  <bruno@clisp.org>
734
735         New module 'mkostemp'.
736         Based on Ulrich Drepper's 2007-08-10 change in glibc.
737         * lib/stdlib.in.h (mksotemp): New declaration.
738         * lib/mkostemp.c: New file, from glibc with modifications.
739         * lib/tempname.h (GT_FILE): Remove outdated comment.
740         (gen_tempname): Add flags argument.
741         * lib/tempname.c (__GT_BIGFILE): Remove macro.
742         (__GT_FILE): Map to 1.
743         (small_open, large_open): Remove macros.
744         (__gen_tempname): Add flags argument. Remove code for __GT_BIGFILE.
745         * lib/mkstemp.c (mkstemp): Update.
746         * lib/mkdtemp.c (mkdtemp): Likewise.
747         * m4/mkostemp.m4: New file.
748         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_MKOSTEMP,
749         HAVE_MKOSTEMP.
750         * modules/stdlib (Makefile.am): Substitute GNULIB_MKOSTEMP,
751         HAVE_MKOSTEMP.
752         * modules/mkostemp: New file, based on modules/mkstemp.
753         * doc/glibc-functions/mkostemp.texi: Mention the new module.
754         * NEWS: Mention the change.
755
756 2009-08-23  Bruno Haible  <bruno@clisp.org>
757
758         * lib/pipe2.c (pipe2): Support O_TEXT, O_BINARY on all platforms.
759         Reported by Eric Blake.
760
761 2009-08-23  Bruno Haible  <bruno@clisp.org>
762
763         * lib/pipe2.c (pipe2): Fix test of fcntl's return value.
764         Reported by Eric Blake.
765
766 2009-08-23  Bruno Haible  <bruno@clisp.org>
767
768         * modules/fchdir (Depends-on): Use fcntl-h instead of fcntl.
769         * modules/pipe2 (Depends-on): Likewise.
770
771 2009-08-23  Eric Blake  <ebb9@byu.net>
772
773         fcntl-h: add O_TTY_INIT support
774         * lib/fcntl.in.h (O_TTY_INIT): Support another POSIX macro.
775         * tests/test-fcntl-h.c (o): Test it.
776         * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
777
778         fcntl-h: rename from fcntl, in preparation for fcntl(2)
779         * modules/fcntl: Move <fcntl.h> header replacement...
780         * modules/fcntl-h: ...to new name, so as not to collide with
781         like-named function.
782         * tests/test-fcntl.c: Rename...
783         * tests/test-fcntl-h.c: ...to this.  Test FD_CLOEXEC.
784         * modules/fcntl-tests: Rename...
785         * modules/fcntl-h-tests: ...to this.  Update test file name.
786         * modules/chdir-long (Depends-on): Update clients.
787         * modules/chdir-safer (Depends-on): Likewise.
788         * modules/fcntl-safer (Depends-on): Likewise.
789         * modules/fts (Depends-on): Likewise.
790         * modules/mkancesdirs (Depends-on): Likewise.
791         * modules/mkdir-p (Depends-on): Likewise.
792         * modules/open (Depends-on): Likewise.
793         * modules/savewd (Depends-on): Likewise.
794         * MODULES.html.sh (systems lacking POSIX:2008): Update name.
795         * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
796
797 2009-08-22  Bruno Haible  <bruno@clisp.org>
798
799         * modules/binary-io (License): Relicense under LGPL.
800         * modules/pipe2 (License): Likewise.
801
802 2009-08-22  Bruno Haible  <bruno@clisp.org>
803
804         * lib/pipe-filter-ii.c (pipe_filter_ii_execute): Fix test of fcntl's
805         return value.
806         * lib/pipe-filter-gi.c (filter_init): Likewise.
807         Reported by Eric Blake.
808
809 2009-08-22  Bruno Haible  <bruno@clisp.org>
810
811         * lib/pipe.c (create_pipe): Use pipe2 instead of _pipe.
812         * modules/pipe (Depends-on): Add pipe2.
813
814 2009-08-22  Bruno Haible  <bruno@clisp.org>
815
816         Tests for module 'pipe2'.
817         * modules/pipe2-tests: New file.
818         * tests/test-pipe2.c: New file.
819
820         New module 'pipe2'.
821         * lib/unistd.in.h (pipe2): New declaration.
822         * lib/pipe2.c: New file.
823         * m4/pipe2.m4: New file.
824         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_PIPE2 and
825         HAVE_PIPE2.
826         * modules/unistd (Makefile.am): Substitute GNULIB_PIPE2 and HAVE_PIPE2.
827         * modules/pipe2: New file.
828         * doc/glibc-functions/pipe2.texi: Mention the new module.
829
830 2009-08-22  Bruno Haible  <bruno@clisp.org>
831
832         Reference some new glibc functions.
833         * doc/glibc-functions/accept4.texi: New file.
834         * doc/glibc-functions/dup3.texi: New file.
835         * doc/glibc-functions/mkostemp.texi: New file.
836         * doc/glibc-functions/pipe2.texi: New file.
837         * doc/gnulib.texi (Glibc stdlib.h): Refer to mkostemp.
838         (Glibc sys/socket.h): Refer to accept4.
839         (Glibc unistd.h): Refer to dup3, pipe2.
840         Reported by Eric Blake.
841
842 2009-08-22  Jim Meyering  <meyering@redhat.com>
843             Bruno Haible  <bruno@clisp.org>
844
845         annotate automake snippets with $(AM_V_GEN) and $(AM_V_at)
846         This makes it so packages using automake-1.11's silent-rules option
847         can print e.g., a single "GEN    configmake.h" line, rather than
848         the 30+ statements that perform the job.  If you want to see the
849         actual commands, you can still run "make V=1".
850         * modules/alloca-opt: Add $(AM_V_GEN) and $(AM_V_at) prefixes
851         so that make output is abbreviated when those variables are defined
852         appropriately.
853         * modules/argz: Likewise.
854         * modules/arpa_inet: Likewise.
855         * modules/byteswap: Likewise.
856         * modules/configmake: Likewise.
857         * modules/dirent: Likewise.
858         * modules/errno: Likewise.
859         * modules/fcntl: Likewise.
860         * modules/float: Likewise.
861         * modules/fnmatch: Likewise.
862         * modules/getopt-posix: Likewise.
863         * modules/glob: Likewise.
864         * modules/iconv_open: Likewise.
865         * modules/inttypes: Likewise.
866         * modules/localcharset: Likewise.
867         * modules/locale: Likewise.
868         * modules/math: Likewise.
869         * modules/netdb: Likewise.
870         * modules/netinet_in: Likewise.
871         * modules/poll: Likewise.
872         * modules/posix_spawnp-tests: Likewise.
873         * modules/sched: Likewise.
874         * modules/search: Likewise.
875         * modules/selinux-h: Likewise.
876         * modules/signal: Likewise.
877         * modules/spawn: Likewise.
878         * modules/stdarg: Likewise.
879         * modules/stdbool: Likewise.
880         * modules/stddef: Likewise.
881         * modules/stdint: Likewise.
882         * modules/stdio: Likewise.
883         * modules/stdlib: Likewise.
884         * modules/string: Likewise.
885         * modules/strings: Likewise.
886         * modules/sys_file: Likewise.
887         * modules/sys_ioctl: Likewise.
888         * modules/sys_select: Likewise.
889         * modules/sys_socket: Likewise.
890         * modules/sys_stat: Likewise.
891         * modules/sys_time: Likewise.
892         * modules/sys_times: Likewise.
893         * modules/sys_utsname: Likewise.
894         * modules/sys_wait: Likewise.
895         * modules/sysexits: Likewise.
896         * modules/time: Likewise.
897         * modules/unistd: Likewise.
898         * modules/wchar: Likewise.
899         * modules/wctype: Likewise.
900
901 2009-08-22  Jim Meyering  <meyering@redhat.com>
902
903         announce-gen: detect write failure
904         * build-aux/announce-gen: Add Coda at end.
905         Remove equivalent-but-more-verbose block at top.
906
907 2009-08-19  Akim Demaille  <demaille@gostai.com>
908
909         bootstrap: --help to stdout.
910         * bootstrap (usage): Don't send --help to stderr.
911         Use a here doc instead of a long string.
912
913 2009-08-21  Eric Blake  <ebb9@byu.net>
914
915         test-popen-safer: split from test-popen
916         * tests/test-popen.c (main): Move...
917         * tests/test-popen.h: ...into new file.
918         * tests/test-popen-safer2.c: New file.
919         * modules/popen-tests (Files): Add test-popen.h.
920         * modules/popen-safer-tests (Files): Add test-popen-safer2.c.
921         Suggested by Bruno Haible.
922
923         test-fcntl-safer: split from test-open
924         * tests/test-open.c (main): Move...
925         * tests/test-open.h: ...into new file.
926         * tests/test-fcntl-safer.c: New file.
927         * modules/open-tests (Files): Add test-open.h.
928         * modules/fcntl-safer-tests: New file.
929         Suggested by Bruno Haible.
930
931         test-fopen-safer: split from test-fopen
932         * tests/test-fopen.c (main): Move...
933         * tests/test-fopen.h: ...into new file.
934         * tests/test-fopen-safer.c: New file.
935         * modules/fopen-tests (Files): Add test-fopen.h.
936         * modules/fopen-safer-tests: New file.
937         Suggested by Bruno Haible.
938
939 2009-08-21  Paolo Bonzini  <bonzini@gnu.org>
940
941         popen-safer: test O_CLOEXEC at run-time.
942         * lib/popen-safer.c: Test O_CLOEXEC at run-time.
943
944 2009-08-21  Paolo Bonzini  <bonzini@gnu.org>
945
946         fcntl: move more flags to the header
947         * lib/cloexec.c: Do not define FD_CLOEXEC here.
948         * lib/popen-safer.c: Do not alias O_NOINHERIT to O_CLOEXEC here.
949         * lib/fcntl.in.h: Do both things here.
950
951 2009-08-21  Jim Meyering  <meyering@redhat.com>
952
953         consistently remove $@-t before redirecting to it
954         * modules/argz: Remove $@-t and $@ before redirecting to the former.
955         * modules/alloca-opt: Likewise.
956         * modules/byteswap: Likewise.
957         * modules/fnmatch: Likewise.
958         * modules/getopt-posix: Likewise.
959         * modules/glob: Likewise.
960         * modules/poll: Likewise.
961         * modules/posix_spawnp-tests: Likewise.
962         * modules/sys_socket: Likewise.
963         * modules/sysexits: Likewise.
964
965 2009-08-21  Eric Blake  <ebb9@byu.net>
966
967         popen: simplify access to original popen
968         * lib/popen.c (rpl_popen): No need to worry about popen being a
969         macro.
970         Reported by Bruno Haible.
971
972 2009-08-20  Eric Blake  <ebb9@byu.net>
973
974         build: avoid some compiler warnings
975         * lib/selinux-at.h: Use dir_fd, not dirfd, to avoid shadowing.
976         * lib/exclude.c (fnmatch_pattern_has_wildcards): Use correct
977         type.
978         (new_exclude_segment, excluded_file_pattern_p)
979         (excluded_file_name_p): Reduce scope.
980         * lib/vasnprintf.c (decimal_point_char): Avoid warning on
981         old-style declaration.
982
983 2009-08-20  Simon Josefsson  <simon@josefsson.org>
984
985         * tests/test-exclude1.sh: Handle Windows EOL.
986         * tests/test-exclude2.sh: Likewise.
987         * tests/test-exclude3.sh: Likewise.
988         * tests/test-exclude4.sh: Likewise.
989         * tests/test-exclude5.sh: Likewise.
990         * tests/test-exclude6.sh: Likewise.
991         * tests/test-exclude7.sh: Likewise.
992
993 2009-08-19  Akim Demaille  <demaille@gostai.com>
994
995         bootstrap: find sha1sum when named gsha1sum.
996         * bootstrap (find_tool): New.
997         ($SHA1SUM): New.
998         Use it.
999
1000 2009-08-20  Jim Meyering  <meyering@redhat.com>
1001
1002         maint.mk: _header_without_use: fix a quoting bug and remove a bash'ism
1003         * top/maint.mk (_header_without_use): Use "\\\\", not "\\" in the sed
1004         expression that converts "." in a file name to "\." in the resulting
1005         regexp.  Start with a dummy statement, so that prior shell variable
1006         definitions are expanded portably.  Reported by Simon Josefsson.
1007
1008 2009-08-20  Paolo Bonzini  <bonzini@gnu.org>
1009
1010         Fix polling for writeability of a screen buffer.
1011         * lib/poll.c: Distinguish input and screen buffers for the
1012         Win32 implementation.
1013         * lib/select.c: Likewise.
1014
1015 2009-08-19  Eric Blake  <ebb9@byu.net>
1016
1017         popen-safer: prevent popen from clobbering std descriptors
1018         * modules/popen-safer: New file.
1019         * lib/popen-safer.c: Likewise.
1020         * m4/stdio-safer.m4 (gl_POPEN_SAFER): New macro.
1021         * lib/stdio--.h (popen): Provide override.
1022         * lib/stdio-safer.h (popen_safer): Provide declaration.
1023         * tests/test-popen.c (includes): Partially test this.
1024         * modules/popen-safer-tests: New file, for more tests.
1025         * tests/test-popen-safer.c: Likewise.
1026         * MODULES.html.sh (file stream based Input/Output): Mention it.
1027
1028         tests: test some of the *-safer modules
1029         * modules/fopen-safer (Depends-on): Add fopen.
1030         * modules/fcntl-safer (Depends-on): Add fcntl.
1031         * modules/stdlib-safer (Depends-on): Add stdlib.
1032         (configure.ac): Set indicator.
1033         * modules/unistd-safer (configure.ac): Likewise.
1034         * modules/tmpfile-safer (configure.ac): Likewise.
1035         (Depends-on): Add tmpfile.
1036         * lib/stdio--.h (fopen, tmpfile): Don't override unless module is
1037         active.
1038         * tests/test-fopen.c (includes): Test safer versions when they are
1039         in use.
1040         * tests/test-open.c (includes): Likewise.
1041
1042         popen: fix cygwin 1.5 bug when stdin closed
1043         * doc/posix-functions/popen.texi (popen): Document cygwin bugs.
1044         * modules/popen: New file.
1045         * modules/popen-tests: Likewise.
1046         * tests/test-popen.c: Likewise.
1047         * m4/popen.m4: Likewise.
1048         * lib/popen.c: Likewise.
1049         * lib/stdio.in.h (popen): New declaration.
1050         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add popen.
1051         * modules/stdio (Makefile.am): Likewise.
1052         * MODULES.html.sh (systems lacking POSIX:2008): Mention it.
1053
1054 2009-08-17  Joel E. Denny  <jdenny@clemson.edu>
1055
1056         maint.mk: give full control over update-copyright exclusions
1057         * top/maint.mk (VC_LIST_EXCEPT): Instead of ChangeLog, use
1058         ${VC_LIST_EXCEPT_DEFAULT-ChangeLog} as the default exclusion.
1059         (update-copyright): Don't force inclusion of top-level
1060         ChangeLog.  Don't force exclusion of all COPYING files, but make
1061         them the default exclusion instead.
1062
1063 2009-08-16  Bruno Haible  <bruno@clisp.org>
1064
1065         Fix test failures on Solaris 10.
1066         * tests/uniconv/test-u8-conv-from-enc.c (main): Disable autodetect_jp
1067         tests when Solaris iconv() is used.
1068         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
1069         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
1070         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
1071         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
1072         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
1073
1074 2009-08-16  Bruno Haible  <bruno@clisp.org>
1075
1076         Fix test failures on Solaris 10.
1077         * tests/test-pipe-filter-ii1.sh: Determine the filename of a working
1078         'tr' program and pass it as first argument.
1079         * tests/test-pipe-filter-gi1.sh: Likewise.
1080         * tests/test-pipe-filter-ii1.c (main): Except the filename of a 'tr'
1081         program as first argument.
1082         * tests/test-pipe-filter-gi1.c (main): Likewise.
1083
1084 2009-08-16  Eric Blake  <ebb9@byu.net>
1085
1086         fpurge: fix previous commits
1087         * modules/fpurge (Makefile.am): Make replacement conditional,
1088         partially reverting 2007-04-29 change; missed in previous
1089         attempt.
1090         * m4/fpurge.m4 (gl_FUNC_FPURGE): Also compile fpurge.c when fpurge
1091         is missing.
1092
1093 2009-08-16  Bruno Haible  <bruno@clisp.org>
1094
1095         Clarify fpurge's effect on the file position.
1096         * lib/stdio.in.h (fpurge): Specify the file position after fpurge.
1097         * tests/test-fpurge.c (main): Make a second pass for checking the file
1098         position.
1099
1100 2009-08-16  Bruno Haible  <bruno@clisp.org>
1101
1102         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't compile fpurge.c if only the
1103         declaration of fpurge is missing.
1104         * tests/test-fpurge.c (main): Check that the file has not more contents
1105         than expected. Close the file before removing it.
1106
1107 2009-08-15  Eric Blake  <ebb9@byu.net>
1108
1109         fpurge: don't wrap working cygwin implementation
1110         * lib/fpurge.c (fpurge): Fix comment typo.
1111         * m4/fpurge.m4 (gl_FUNC_FPURGE): Detect BSD bug, allowing cygwin
1112         1.7 to avoid replacement.
1113         * tests/test-fpurge.c (main): Enhance test.
1114
1115 2009-08-15  Eric Blake  <ebb9@byu.net>
1116         and Jim Meyering  <meyering@redhat.com>
1117
1118         test-update-copyright: skip if perl is insufficient
1119         * tests/test-update-copyright.sh: Failure to run maintainer tool
1120         should not cause testsuite failure on cygwin 1.5.
1121
1122 2009-08-14  Eric Blake  <ebb9@byu.net>
1123
1124         doc: mention more functions added in cygwin 1.7.0
1125         * doc/posix-headers/limits.texi (limits.h): Update for recent
1126         cygwin additions.
1127         * doc/posix-headers/wordexp.texi (wordexp.h): Likewise.
1128         * doc/posix-functions/wordexp.texi (wordexp): Likewise.
1129         * doc/posix-functions/wordfree.texi (wordfree): Likewise.
1130         * doc/posix-functions/setlocale.texi (setlocale): Likewise.
1131         * doc/posix-functions/nl_langinfo.texi (nl_langinfo): Likewise.
1132
1133 2009-08-14  Eric Blake  <ebb9@byu.net>
1134
1135         maint.mk: simplify update-copyright rule
1136         * top/maint.mk (update-copyright-local): Delete, and document how
1137         to do it in cfg.mk instead.
1138         (update-copyright-exclude-regexp): Delete, and document how to do
1139         it in .x-update-copyright instead.
1140         (update-copyright): Simplify, thanks to VC_LIST_EXCEPT.  Don't
1141         exclude ChangeLog.
1142
1143 2009-08-14  Bruno Haible  <bruno@clisp.org>
1144
1145         * m4/wchar.m4 (gl_WCHAR_H): Undo invalid optimization in last commit.
1146
1147 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
1148
1149         maint.mk: support update-copyright-env
1150         * top/maint.mk (update-copyright-env): Define place-holder.
1151         (update-copyright): Expand $(update-copyright-env) before
1152         invoking update-copyright.
1153
1154 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
1155
1156         update-copyright: implement forced reformatting
1157         * build-aux/update-copyright: Implement and document
1158         UPDATE_COPYRIGHT_FORCE.
1159         * tests/test-update-copyright.sh: Test it.
1160
1161 2009-08-14  Eric Blake  <ebb9@byu.net>
1162         and Bruno Haible  <bruno@clisp.org>
1163
1164         stddef: fix NetBSD 5.0 NULL bug, rather than working around it
1165         * tests/test-locale.c: Revert previous patch related to NULL.
1166         * tests/test-stdio.c: Likewise.
1167         * tests/test-stdlib.c: Likewise.
1168         * tests/test-string.c: Likewise.
1169         * tests/test-unistd.c: Likewise.
1170         * modules/time-tests (Depends-on): Add verify.
1171         * modules/wchar-tests (Depends-on): Likewise.
1172         * tests/test-time.c: Test for NULL compliance.
1173         * tests/test-wchar.c: Likewise.
1174         * modules/locale (Depends-on): Add stddef.
1175         * modules/stdio (Depends-on): Likewise.
1176         * modules/stdlib (Depends-on): Likewise.
1177         * modules/string (Depends-on): Likewise.
1178         * modules/time (Depends-on): Likewise.
1179         * modules/unistd (Depends-on): Likewise.
1180         * modules/wchar (Depends-on): Likewise.
1181         * lib/locale.in.h (includes): Use <stddef.h> to fix NULL.
1182         * lib/stdlib.in.h (includes): Likewise.
1183         * lib/string.in.h (includes): Likewise.
1184         * lib/time.in.h (includes): Likewise.
1185         * lib/unistd.in.h (includes): Likewise.
1186         * m4/locale_h.m4 (gl_LOCALE_H): Replace locale.h if stddef.h was
1187         replaced.
1188         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
1189         * m4/stddef_h.m4: New file.
1190         * modules/stddef: Likewise.
1191         * lib/stddef.in.h: Likewise.
1192         * modules/stddef-tests: Likewise.
1193         * tests/test-stddef.c: Likewise.
1194         * MODULES.html.sh (Basic types <stddef.h>): Mention new module.
1195         * doc/posix-headers/stddef.texi (stddef.h): Document the bug.
1196         * doc/posix-headers/locale.texi (locale.h): Likewise.
1197         * doc/posix-headers/stdio.texi (stdio.h): Likewise.
1198         * doc/posix-headers/stdlib.texi (stdlib.h): Likewise.
1199         * doc/posix-headers/string.texi (string.h): Likewise.
1200         * doc/posix-headers/time.texi (time.h): Likewise.
1201         * doc/posix-headers/unistd.texi (unistd.h): Likewise.
1202         * doc/posix-headers/wchar.texi (wchar.h): Likewise.
1203
1204 2009-08-14  Eric Blake  <ebb9@byu.net>
1205
1206         doc: improve git diff of texinfo files
1207         * .gitattributes: Add rule for *.texi files, with hint on how to
1208         use it.
1209         Copied from m4, and based on a report by Bruno Haible.
1210
1211 2009-08-14  Bruno Haible  <bruno@clisp.org>
1212
1213         Disable multithread support by default on Cygwin 1.5.x for real.
1214         * m4/threadlib.m4 (gl_THREADLIB_EARLY_BODY): Fix last commit.
1215
1216 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
1217
1218         update-copyright: much ado about intervals
1219         * build-aux/update-copyright: Implement and document
1220         UPDATE_COPYRIGHT_USE_INTERVALS to control expansion and collapse
1221         of copyright year intervals.
1222         Also, document UPDATE_COPYRIGHT_YEAR.
1223         * tests/test-update-copyright.sh: Test it.
1224
1225         update-copyright: convert 2-digit to 4-digit years
1226         * build-aux/update-copyright: Implement and document.
1227         * tests/test-update-copyright.sh: Update.
1228
1229 2009-08-14  Jim Meyering  <meyering@redhat.com>
1230
1231         test-exclude: avoid coreutils "make check" failure
1232         * tests/test-exclude.c (ARGMATCH_DIE_DECL) [ARGMATCH_DIE_DECL]: Define,
1233         just as in test-argmatch.c.
1234
1235 2009-08-13  Eric Blake  <ebb9@byu.net>
1236
1237         test-dup2: fix bad assumption
1238         * tests/test-dup2.c (main): Tolerate leaked fds from environment.
1239         Reported by Peter Breitenlohner <peb@mppmu.mpg.de>.
1240
1241         test-version-etc: fix CRLF portability issue
1242         * tests/test-version-etc.sh: Use tr, not sed, as not all sed
1243         recognize \r.
1244         * tests/test-argp-version-etc-1.sh: Likewise.
1245
1246         getopt: update client modules
1247         * modules/argp (Depends-on): Use getopt-gnu.
1248         * modules/git-merge-changelog (Depends-on): Likewise.
1249         * modules/long-options (Depends-on): Likewise.
1250         * modules/xstrtol (Depends-on): Likewise.
1251
1252 2009-08-13  Simon Josefsson  <simon@josefsson.org>
1253
1254         * tests/test-version-etc.sh: Don't fail on different
1255         project/version.  Don't fail on CRLF differences.  Rewrite to use
1256         multiple -e instead of multiple sed forks, suggested by Eric Blake
1257         <ebb9@byu.net>.
1258         * tests/test-argp-version-etc-1.sh: Likewise.
1259
1260 2009-08-13  Simon Josefsson  <simon@josefsson.org>
1261
1262         * tests/test-version-etc.sh: Don't fail on different
1263         project/version.
1264
1265 2009-08-12  Bruno Haible  <bruno@clisp.org>
1266
1267         Tests for modules 'getopt-posix', 'getopt-gnu'.
1268         * modules/getopt-posix-tests: New file.
1269         * tests/test-getopt.c: New file.
1270         * tests/test-getopt.h: New file.
1271         * tests/test-getopt_long.h: New file.
1272
1273         New modules 'getopt-posix', 'getopt-gnu'.
1274         * modules/getopt-gnu: New file, renamed from modules/getopt.
1275         * modules/getopt-posix: New file.
1276         * modules/getopt: Turn into an obsolete alias for getopt-gnu.
1277         * m4/getopt.m4 (gl_FUNC_GETOPT_POSIX, gl_FUNC_GETOPT_GNU): New macros.
1278         (gl_GETOPT): Remove macro.
1279         (gl_GETOPT_CHECK_HEADERS): Do some checks only for gl_FUNC_GETOPT_GNU.
1280         Disable the test against BSD systems that declare optreset. Test
1281         against mingw bug. Test against lack of support of optional arguments
1282         on many platforms.
1283         * doc/glibc-headers/getopt.texi: Update module name and list of
1284         relevant platforms.
1285         * doc/posix-functions/getopt.texi: Mention modules 'getopt-posix' and
1286         'getopt-gnu' and more portability problems.
1287         * NEWS: Mention the changes.
1288
1289 2009-08-12  Bruno Haible  <bruno@clisp.org>
1290
1291         Ensure that optarg etc. get declared by <unistd.h>.
1292         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Require
1293         AC_USE_SYSTEM_EXTENSIONS.
1294         * modules/getopt (Depends-on): Add 'extensions'.
1295
1296 2009-08-12  Bruno Haible  <bruno@clisp.org>
1297
1298         Avoid test link errors.
1299         * modules/pipe-filter-ii-tests (Makefile.am): Define
1300         test_pipe_filter_ii1_LDADD and test_pipe_filter_ii2_main_LDADD.
1301         * modules/pipe-filter-gi-tests (Makefile.am): Define
1302         test_pipe_filter_gi1_LDADD and test_pipe_filter_gi2_main_LDADD.
1303         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
1304
1305 2009-08-12  Bruno Haible  <bruno@clisp.org>
1306
1307         * m4/getopt.m4 (gl_REPLACE_GETOPT): New macro, was called
1308         gl_GETOPT_SUBSTITUTE before.
1309         (gl_GETOPT): Use it.
1310         * m4/argp.m4 (gl_ARGP): Update.
1311         Reported by Sergey Poznyakoff.
1312
1313         * m4/getopt.m4: Reorder macros.
1314         (gl_GETOPT): Inline gl_GETOPT_SUBSTITUTE.
1315         (gl_GETOPT_SUBSTITUTE): Remove macro.
1316
1317 2009-08-12  Sergey Poznyakoff  <gray@gnu.org.ua>
1318
1319         Minor improvement in gitlog-to-changelog
1320
1321         * build-aux/gitlog-to-changelog: New option `--format' makes
1322         output format string configurable.
1323
1324 2009-08-12  Sergey Poznyakoff  <gray@gnu.org.ua>
1325
1326         Optimize exclude: use hash tables for non-wildcard patterns.
1327
1328         * lib/exclude.c: Include hash.h and mbuiter.h
1329         (struct exclude_pattern, exclude_segment): New data types.
1330         (struct exclude): Rewrite.
1331         (fnmatch_pattern_has_wildcards): New function.
1332         (new_exclude_segment, free_exclude_segment): New functions.
1333         (excluded_file_pattern_p, excluded_file_name_p): New functions.
1334         (excluded_file_name, add_exclude): Rewrite using new struct exclude.
1335         * lib/exclude.h (is_fnmatch_pattern): New prototype.
1336         * modules/exclude: Depend on hash and mbuiter.
1337
1338         * modules/exclude-tests: New file.
1339         * tests/test-exclude.c: New file.
1340         * tests/test-exclude1.sh: New file.
1341         * tests/test-exclude2.sh: New file.
1342         * tests/test-exclude3.sh: New file.
1343         * tests/test-exclude4.sh: New file.
1344         * tests/test-exclude5.sh: New file.
1345         * tests/test-exclude6.sh: New file.
1346         * tests/test-exclude7.sh: New file.
1347
1348 2009-08-12  Bruno Haible  <bruno@clisp.org>
1349
1350         Ensure that getopt() gets declared by <unistd.h>.
1351         * lib/unistd.in.h: Conditionally include getopt.h.
1352         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Require gl_UNISTD_H_DEFAULTS.
1353         Set GNULIB_UNISTD_H_GETOPT.
1354         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
1355         GNULIB_UNISTD_H_GETOPT.
1356         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_GETOPT.
1357
1358 2009-08-12  Bruno Haible  <bruno@clisp.org>
1359
1360         Clarify logic.
1361         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS, gl_GETOPT_IFELSE): Use
1362         gl_replace_getopt instead of GETOPT_H.
1363
1364 2009-08-12  Bruno Haible  <bruno@clisp.org>
1365
1366         * m4/getopt.m4: Add comments.
1367
1368 2009-08-12  Bruno Haible  <bruno@clisp.org>
1369
1370         Disable multithread support by default on Cygwin 1.5.x.
1371         * m4/threadlib.m4 (gl_THREADLIB_EARLY_BODY): On Cygwin 1.5.x and older,
1372         set gl_use_threads=no if not specified otherwise.
1373
1374 2009-08-11  Bruno Haible  <bruno@clisp.org>
1375
1376         Avoid compilation error on NetBSD 5.0.
1377         * tests/test-locale.c: Write sizeof (NULL) instead of sizeof NULL.
1378         * tests/test-stdio.c: Likewise.
1379         * tests/test-stdlib.c: Likewise.
1380         * tests/test-string.c: Likewise.
1381         * tests/test-unistd.c: Likewise.
1382         Reported by Greg Troxel <gdt@ir.bbn.com>
1383         at <https://savannah.gnu.org/support/?106973>.
1384
1385 2009-08-11  Bruno Haible  <bruno@clisp.org>
1386
1387         * modules/dup2-tests (Depends-on): Remove close.
1388
1389         Undo 2009-07-19 commit.
1390         * modules/acl-tests (Depends-on): Remove close.
1391         * modules/binary-io-tests (Depends-on): Likewise.
1392         * modules/closein-tests (Depends-on): Likewise.
1393         * modules/flock-tests (Depends-on): Likewise.
1394         * modules/fsync-tests (Depends-on): Likewise.
1395         * modules/lseek-tests (Depends-on): Likewise.
1396         * modules/pipe-tests (Depends-on): Likewise.
1397         * modules/posix_spawn-tests (Depends-on): Likewise.
1398         * modules/posix_spawnp-tests (Depends-on): Likewise.
1399         * modules/stat-time-tests (Depends-on): Likewise.
1400         * modules/yesno-tests (Depends-on): Likewise.
1401
1402 2009-08-10  Bruno Haible  <bruno@clisp.org>
1403
1404         * lib/vasnprintf.c (DCHAR_SET): Undefine at the end.
1405
1406 2009-08-10  Bruno Haible  <bruno@clisp.org>
1407
1408         Fix a gcc warning.
1409         * lib/write.c (rpl_write): Cast result of _get_osfhandle.
1410
1411 2009-08-10  Bruno Haible  <bruno@clisp.org>
1412
1413         Don't optimize AC_LIBOBJs, as they may appear in different contexts.
1414         * m4/close.m4 (gl_REPLACE_CLOSE): Execute AC_LIBOBJ unconditionally,
1415         not only the first time.
1416         * m4/fclose.m4 (gl_REPLACE_FCLOSE): Likewise.
1417         * m4/open.m4 (gl_REPLACE_OPEN): Likewise.
1418         * m4/strstr.m4 (gl_FUNC_STRSTR): Execute AC_LIBOBJ when REPLACE_STRSTR
1419         is 1, not only the the first time.
1420
1421 2009-08-10  Bruno Haible  <bruno@clisp.org>
1422
1423         Make it possible to use module 'gethostname' without module 'close'.
1424         * lib/unistd.in.h (close): Evoke a link error only if
1425         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS is set.
1426         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
1427         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1428         * modules/unistd (Makefile.am): Substitute
1429         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1430         * lib/sys_ioctl.in.h (ioctl): Evoke a link error only if
1431         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS is set.
1432         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H_DEFAULTS): Initialize
1433         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1434         * modules/sys_ioctl (Makefile.am): Substitute
1435         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1436         * modules/socket (configure.ac): On native Windows, set
1437         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS and
1438         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1439         Reported by Sam Steingold <sds@gnu.org>.
1440
1441 2009-08-10  Bruno Haible  <bruno@clisp.org>
1442
1443         * m4/close.m4 (gl_FUNC_CLOSE): Add comment.
1444         * modules/ioctl (configure.ac): Likewise.
1445
1446 2009-08-10  Bruno Haible  <bruno@clisp.org>
1447
1448         Avoid collision between gnulib wrapper and libintl wrapper.
1449         * lib/stdio-write.c (printf): Don't define if a printf wrapper is
1450         already defined in intl/printf.c.
1451         (vprintf): Test REPLACE_VPRINTF_POSIX, not REPLACE_VFPRINTF_POSIX.
1452         (vfprintf): Test REPLACE_VFPRINTF_POSIX, not REPLACE_VPRINTF_POSIX.
1453
1454 2009-08-09  Bruno Haible  <bruno@clisp.org>
1455
1456         Make <sys/select.h> really self-contained, also on Solaris 10.
1457         * lib/sys_select.in.h: Include <string.h>.
1458         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Test also against
1459         Solaris 10 problem.
1460         * tests/test-sys_select.c (main): Add check that FD_ZERO can be used.
1461         * doc/posix-headers/sys_select.texi: Mention the Solaris 10 problem.
1462         Reported by Jim Meyering.
1463
1464 2009-08-09  Bruno Haible  <bruno@clisp.org>
1465
1466         Avoid warnings from 'aclocal' that are due to a use of macro name
1467         AM_XGETTEXT_OPTION that is not defined in automake.
1468         * modules/argp (configure.ac): Hide use of AM_XGETTEXT_OPTION from
1469         automake.
1470         * modules/error (configure.ac): Likewise.
1471         * modules/propername (configure.ac): Likewise.
1472         * modules/vasprintf (configure.ac): Likewise.
1473         * modules/verror (configure.ac): Likewise.
1474         * modules/xprintf (configure.ac): Likewise.
1475         * modules/xvasprintf (configure.ac): Likewise.
1476
1477 2009-08-08  Bruno Haible  <bruno@clisp.org>
1478
1479         Avoid compilation error in C++ mode.
1480         * lib/gettimeofday.c (rpl_gettimeofday): Cast timezone argument.
1481         Reported by Sam Steingold <sds@gnu.org>.
1482
1483 2009-08-08  Bruno Haible  <bruno@clisp.org>
1484
1485         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Define HOST_NAME_MAX also
1486         for the various Unix platforms.
1487         * doc/posix-headers/limits.texi: Update platforms list regarding
1488         HOST_NAME_MAX.
1489         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
1490
1491 2009-08-07  Jim Meyering  <meyering@redhat.com>
1492
1493         selinux-at: fix typo in a comment
1494         * lib/selinux-at.h: s/getfileconat/getfilecon/ in a comment.
1495         Spotted by Paolo Bonzini.
1496
1497         selinux-at: remove redundant m4 code, add documentation
1498         * modules/selinux-at (configure.ac): Remove redundant code.
1499         LIB_SELINUX is already set via the dependent module, selinux-h.
1500         (Include): Add quotes around selinux-at.h.
1501         * lib/selinux-at.h: Add documentation.
1502         Reported by Bruno Haible in
1503         http://marc.info/?l=gnulib-bug&m=124958988300749
1504
1505 2009-08-07  Bruno Haible  <bruno@clisp.org>
1506
1507         Avoid link error on MacOS X 10.3 and 10.4.
1508         * lib/argp-ba.c (argp_program_bug_address): Explicitly zero-initialize
1509         on non-ELF systems.
1510         * lib/argp-pv.c (argp_program_version): Likewise.
1511         Reported by Simon Josefsson.
1512
1513 2009-08-07  Simon Josefsson  <simon@josefsson.org>
1514
1515         * tests/test-version-etc.sh: Use $EXEEXT.
1516
1517 2009-08-06  Joel E. Denny  <jdenny@clemson.edu>
1518
1519         update-copyright: update documentation to point to maint.mk
1520         * build-aux/update-copyright: Here.
1521
1522 2009-08-06  Jim Meyering  <meyering@redhat.com>
1523
1524         maint.mk: support update-copyright-local
1525         * top/maint.mk (update-copyright-local): Define place-holder.
1526         (update-copyright): Depend on $(update-copyright-local).
1527
1528 2009-08-06  Jim Meyering  <meyering@redhat.com>
1529
1530         selinux-at: new module
1531         Initially written for coreutils, this module will soon be
1532         used by findutils, too.
1533         * MODULES.html.sh [Misc]: Add selinux-at.
1534         * lib/selinux-at.h: New file, from coreutils.
1535         * lib/selinux-at.c: Likewise.
1536         * modules/selinux-at: Likewise.
1537         (License): Change from LGPL to GPL, since it depends
1538         on the GPL'd openat module.
1539
1540         doc: update README
1541         * README: Remove references to cogito.
1542         Remove cvs-repo-updating instructions from 2007.
1543         Don't imply that CVS is better if you have limited disk space.
1544
1545 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1546
1547         update-copyright: support C-style comments
1548         * build-aux/update-copyright: Implement and document.
1549         * tests/test-update-copyright.sh: Test.
1550
1551 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1552
1553         update-copyright: support omitted "(C)"
1554         * build-aux/update-copyright: Implement and document.  Also,
1555         allow variable whitespace before "(C)".
1556         * tests/test-update-copyright.sh: Test.
1557
1558 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1559
1560         update-copyright: don't trip on non-FSF copyright statements
1561         * build-aux/update-copyright: Fix so that the first correctly
1562         formatted FSF copyright statement is recognized no matter what
1563         appears before it.  Update documentation.
1564         * tests/test-update-copyright.sh: Test that.
1565
1566 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1567
1568         update-copyright: clean up code a little
1569         * build-aux/update-copyright: Append "_re" to the name of any
1570         variable holding a regular expression.
1571         Replace "old" and "new" with "stmt" in variable names.
1572         Do not accept 2-digit UPDATE_COPYRIGHT_YEAR, which was not
1573         handled correctly.
1574         Format code more consistently.
1575
1576 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1577
1578         update-copyright-tests: improve portability
1579         * tests/test-update-copyright.sh: Use cmp if diff cannot handle
1580         -u or /dev/null.  Suggested by Jim Meyering and Eric Blake.
1581
1582 2009-08-03  Joel E. Denny  <jdenny@clemson.edu>
1583
1584         update-copyright: support @copyright{} and &copy;
1585         * build-aux/update-copyright: Implement and document.
1586         * tests/test-update-copyright.sh: Test.
1587
1588 2009-08-04  Jim Meyering  <meyering@redhat.com>
1589
1590         update-copyright-tests: correctly test EOL=\r\n handling
1591         * tests/test-update-copyright.sh: Put \r at the end of some lines
1592         for the dos-eol tests.  Based on a patch by Joel E. Denny.
1593
1594         maint.mk: make update-copyright exclusion list more configurable
1595         * top/maint.mk (update-copyright): Default to excluding COPYING,
1596         but allow an override, in case someone does want to update that file.
1597
1598         maint.mk: don't update copyright date in COPYING
1599         * top/maint.mk (update-copyright): Exclude COPYING.
1600
1601         maint.mk: add a copyright-updating rule
1602         * top/maint.mk (update-copyright): New rule.
1603         Derived from coreutils/Makefile.am.
1604
1605         update-copyright: rename some variables
1606         * build-aux/update-copyright: Rename a few variables for clarity.
1607         Tweak syntax.  List Joel E. Denny as coauthor.
1608
1609 2009-08-03  Joel E. Denny  <jdenny@clemson.edu>
1610
1611         update-copyright: fix bug for 2-digit last year and add tests
1612         * build-aux/update-copyright: Fix bug.
1613         Use UPDATE_COPYRIGHT_YEAR from environment as current year if
1614         specified.
1615         * modules/update-copyright-tests: New
1616         * tests/test-update-copyright.sh: New.
1617
1618 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
1619
1620         update-copyright: handle leading tabs in line prefix
1621         * build-aux/update-copyright: Count leading tabs as 8 spaces
1622         when computing margin.  This helps with the formatting of
1623         ChangeLogs, for example.
1624         Fix documentation a little.
1625
1626 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
1627
1628         update-copyright: support EOL=\r\n
1629         * build-aux/update-copyright: Implement that.
1630
1631 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
1632
1633         update-copyright: automatically format copyright statements
1634         * build-aux/update-copyright: Implement that.
1635         Also, be a little more predictable and safer by always failing
1636         when the full copyright format is not perfectly recognized as an
1637         unbroken whole.  Discussed at
1638         <http://lists.gnu.org/archive/html/bug-gnulib/2009-07/msg00131.html>.
1639         Rewrite documentation.
1640
1641 2009-08-03  Bruno Haible  <bruno@clisp.org>
1642
1643         * m4/iconv.m4 (AM_ICONV): Fix displayed message with autoconf-2.64.
1644
1645 2009-08-02  Bruno Haible  <bruno@clisp.org>
1646
1647         Tests for module 'uname'.
1648         * modules/uname-tests: New file.
1649         * tests/test-uname.c: New file.
1650
1651         New module 'uname'.
1652         * lib/uname.c: New file.
1653         * m4/uname.m4: New file.
1654         * modules/uname: New file.
1655         * doc/posix-functions/uname.texi: Mention the new module.
1656
1657 2009-08-02  Bruno Haible  <bruno@clisp.org>
1658
1659         Tests for module 'sys_utsname'.
1660         * modules/sys_utsname-tests: New file.
1661         * tests/test-sys_utsname.c: New file.
1662
1663         New module 'sys_utsname'.
1664         * lib/sys_utsname.in.h: New file, based on glibc's <sys/utsname.h>.
1665         * m4/sys_utsname_h.m4: New file.
1666         * modules/sys_utsname: New file.
1667         * doc/posix-headers/sys_utsname.texi: Mention the new module.
1668
1669 2009-08-02  Bruno Haible  <bruno@clisp.org>
1670
1671         Implicitly initialize the sockets library.
1672         * lib/gethostname.c: Include sockets.h.
1673         (rpl_gethostname): Invoke gl_sockets_startup.
1674         * lib/socket.c: Include sockets.h.
1675         (rpl_socket): Invoke gl_sockets_startup.
1676         * modules/gethostname (Depends-on): Add sockets.
1677         * modules/socket (Depends-on): Likewise.
1678         * tests/test-poll.c: Don't include sockets.h.
1679         (main): Don't invoke gl_sockets_startup.
1680         * tests/test-select.c: Don't include sockets.h.
1681         (main): Don't invoke gl_sockets_startup.
1682
1683 2009-08-02  Bruno Haible  <bruno@clisp.org>
1684
1685         Allow multiple calls to gl_sockets_startup.
1686         * lib/sockets.c (initialized_sockets_version): New variable.
1687         (gl_sockets_startup): Do nothing if already called for this or a higher
1688         version.
1689         (gl_sockets_cleanup): Reset initialized_sockets_version.
1690
1691 2009-08-03  Simon Josefsson  <simon@josefsson.org>
1692
1693         * tests/test-argp-version-etc-1.sh: Use EXEEXT.  Don't fail on
1694         different project/version.
1695
1696 2009-08-02  Paolo Bonzini  <bonzini@gnu.org>
1697             Bruno Haible  <bruno@clisp.org>
1698
1699         Tests for module 'pipe-filter-gi'.
1700         * modules/pipe-filter-gi-tests: New file.
1701         * tests/test-pipe-filter-gi1.sh: New file.
1702         * tests/test-pipe-filter-gi1.c: New file.
1703         * tests/test-pipe-filter-gi2.sh: New file.
1704         * tests/test-pipe-filter-gi2-main.c: New file.
1705         * tests/test-pipe-filter-gi2-child.c: New file.
1706
1707         New module 'pipe-filter-gi'.
1708         * lib/pipe-filter-gi.c: New file.
1709         * modules/pipe-filter-gi: New file.
1710
1711 2009-08-02  Bruno Haible  <bruno@clisp.org>
1712             Paolo Bonzini  <bonzini@gnu.org>
1713
1714         Tests for module 'pipe-filter-ii'.
1715         * modules/pipe-filter-ii-tests: New file.
1716         * tests/test-pipe-filter-ii1.sh: New file.
1717         * tests/test-pipe-filter-ii1.c: New file.
1718         * tests/test-pipe-filter-ii2.sh: New file.
1719         * tests/test-pipe-filter-ii2-main.c: New file.
1720         * tests/test-pipe-filter-ii2-child.c: New file.
1721
1722         New module 'pipe-filter-ii'.
1723         * lib/pipe-filter.h: New file.
1724         * lib/pipe-filter-ii.c: New file.
1725         * lib/pipe-filter-aux.h: New file.
1726         * modules/pipe-filter-ii: New file.
1727
1728 2009-08-02  Simon Josefsson  <simon@josefsson.org>
1729
1730         * lib/gc-libgcrypt.c: Change copyright to FSF.
1731         * lib/gc-gnulib.c: Likewise.
1732
1733 2009-08-02  Martin Lambers  <marlam@marlam.de>  (tiny change)
1734
1735         * lib/gethostname.c: Include limits.h.
1736
1737 2009-08-02  Simon Josefsson  <simon@josefsson.org>
1738             Bruno Haible  <bruno@clisp.org>
1739
1740         Ensure HOST_NAME_MAX as part of the gethostname module.
1741         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): On native Windows platforms,
1742         define also HOST_NAME_MAX.
1743         * tests/test-gethostname.c: Include <limits.h>.
1744         (main): Check also HOST_NAME_MAX.
1745         * doc/posix-headers/limits.texi: Document the mingw problem.
1746
1747 2009-08-02  Bruno Haible  <bruno@clisp.org>
1748
1749         * lib/gethostname.c (gethostname): Fix handling of large len argument.
1750         Add comments.
1751
1752 2009-03-31  Simon Josefsson  <simon@josefsson.org>
1753
1754         * lib/gethostname.c: Add Windows wrapper.
1755         * m4/gethostname.m4: Look for gethostname in -lws2_32.
1756         * modules/gethostname: Depend on sys_socket & errno, for also
1757         added lib/w32sock.h.  Add GETHOSTNAME_LIB link directive.
1758         * modules/gethostname-tests: Link to @GETHOSTNAME_LIB@.
1759
1760 2009-07-31  Jim Meyering  <meyering@redhat.com>
1761
1762         getloadavg: fix symbol name in comment
1763         * lib/getloadavg.c: Correct a typo I introduced when adding
1764         comments to Matt's change: s/NLIST_POINTER/N_NAME_POINTER/.
1765         Matt Kraai spotted the problem.
1766
1767 2009-07-29  Matt Kraai  <mkraai@beckman.com>
1768
1769         getloadavg: check whether n_name is a pointer, for QNX 6.4.1
1770         * lib/getloadavg.c (getloadavg): Use the strcpy-into-nlist.n_name
1771         code also if ! defined N_NAME_POINTER.
1772         * m4/getloadavg.m4 (gl_GETLOADAVG): Add a link-test for N_NAME_POINTER.
1773         This is required on QNX 6.4.1, where /usr/include/nlist.h exists,
1774         but the n_name member is a 12-byte array.
1775
1776 2009-07-29  Joel E. Denny  <jdenny@clemson.edu>
1777
1778         update-copyright: generalize comment handling
1779         * build-aux/update-copyright: Handle copyright statements
1780         within more comment styles.
1781         Document usage.
1782         Report any file with an external copyright holder or parse failure.
1783
1784 2009-07-29  Jim Meyering  <meyering@redhat.com>
1785
1786         mktime: correct setting of REPLACE_MKTIME
1787         * m4/mktime.m4 (gl_FUNC_MKTIME): Set REPLACE_MKTIME=0, when required.
1788
1789         update-copyright: new module
1790         * modules/update-copyright: New file.
1791         * build-aux/update-copyright: New file.
1792         * MODULES.html.sh (maint+release support): Add update-copyright.
1793
1794 2009-07-27  Bruno Haible  <bruno@clisp.org>
1795
1796         Fix compilation error when <ctime> is used and mktime is replaced.
1797         * lib/time.in.h (mktime): New declaration.
1798         * m4/mktime.m4 (gl_FUNC_MKTIME): Require gl_HEADER_TIME_H_DEFAULTS. Set
1799         REPLACE_MKTIME instead of defining mktime in config.h.
1800         * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize REPLACE_MKTIME.
1801         * modules/time (Makefile.am): Substitute REPLACE_MKTIME.
1802         Reported by Ross McFarland <rwmcfa1@neces.com>.
1803
1804 2009-07-27  Bruno Haible  <bruno@clisp.org>
1805
1806         * lib/math.in.h (cosl, logl, sinl): Undefine before declaring it.
1807         Reported by Matt Kraai <mkraai@beckman.com>.
1808
1809 2009-07-25  Jim Meyering  <meyering@redhat.com>
1810
1811         maint.mk: avoid warnings about missing files
1812         * top/maint.mk (PREV_VERSION): Suppress stderr, to hide a
1813         diagnostic when .prev-version does not exist.
1814         (_cfg_mk): Define, so it can be empty when cfg.mk does not exist.
1815         (syntax-check-rules): Use $(_cfg_mk) to avoid a diagnostic about
1816         nonexistent cfg.mk.
1817         Suggestions from Simon Josefsson.
1818
1819 2009-07-25  Bruno Haible  <bruno@clisp.org>
1820
1821         * lib/math.in.h (cosl, logl, sinl): Don't declare if they are already
1822         defined as macros. Needed on QNX 6.4.1.
1823         Reported by Matt Kraai <mkraai@beckman.com>.
1824
1825 2009-07-23  Jim Meyering  <meyering@redhat.com>
1826
1827         maint.mk: invoke "make dist" with a working value of XZ_OPT
1828         * top/maint.mk (vc-dist): Use no "-" in the value of XZ_OPT.
1829
1830 2009-07-22  Matt Kraai  <mkraai@beckman.com>  (tiny change)
1831
1832         Make fseeko.c compile on QNX.
1833         * lib/fseeko.c (rpl_fseeko): Use the numerical value of _MWRITE.
1834
1835 2009-07-22  Peter Simons  <simons@cryp.to>
1836
1837         C++: wrap md2,md5,sha1,etc. function declarations in extern "C" scope
1838         * lib/md2.h [__cplusplus]: Wrap declarations in extern "C" scope.
1839         * lib/md4.h: Likewise.
1840         * lib/md5.h: Likewise.
1841         * lib/sha1.h: Likewise.
1842         * lib/sha256.h: Likewise.
1843         * lib/sha512.h: Likewise.
1844
1845         tests-sha1: don't assign literal string to 'char *' variable
1846         * tests/test-sha1.c (main): Declare locals with "const" to match
1847         attributes of the right hand side.
1848
1849 2009-07-21  Eric Blake  <ebb9@byu.net>
1850
1851         dup2: fix more mingw problems
1852         * lib/dup2.c (rpl_dup2) [_WIN32]: Avoid hanging when duplicating
1853         fd to itself.
1854         * doc/posix-functions/dup2.texi (dup2): Document the bug.
1855         * lib/unistd.in.h (dup2) [REPLACE_FCHDIR]: Avoid name collision.
1856         * lib/fchdir.c (dup2): Manage preprocessor macros correctly.
1857         (rpl_dup2_fchdir): Rename from rpl_dup2, and let dup2 module take
1858         care of mingw bugs.
1859
1860 2009-07-21  Jim Meyering  <meyering@redhat.com>
1861
1862         vc-list-files: avoid failure when /bin/sh is dash
1863         * build-aux/vc-list-files: Avoid a shell portability problem with dash.
1864         On some Debian based systems, /bin/sh is a symlink to dash, and running
1865         this command would omit the "/" following each 'tests' prefix:
1866           dash -x build-aux/vc-list-files -C . tests
1867         That is because bash and dash work differently:
1868           $ for i in bash dash; do $i -c 'a=odd; a=ok b=$a; echo '$i' $b'; done
1869           bash ok
1870           dash odd
1871
1872 2009-07-21  Eric Blake  <ebb9@byu.net>
1873
1874         dup2-tests: test previous patch
1875         * modules/dup2-tests: New file.
1876         * tests/test-dup2.c: Likewise.
1877         * tests/test-open.c (main): Avoid unspecified behavior.
1878         * tests/test-pipe.c (child_main): Use dup2 semantics to simplify
1879         test.
1880
1881         dup2: work around mingw and cygwin 1.5 bug
1882         * m4/dup2.m4 (gl_FUNC_DUP2): Detect mingw bug.
1883         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
1884         * modules/unistd (Makefile.am): Substitute it.
1885         * lib/unistd.in.h (dup2): Declare the replacement.
1886         * lib/dup2.c (dup2) [REPLACE_DUP2]: Implement it.
1887         * doc/posix-functions/dup2.texi (dup2): Document the bugs.
1888         * lib/fchdir.c (rpl_dup2): Don't collide with mingw replacement.
1889         * modules/execute (Depends-on): Add dup2.
1890         * modules/fseterr (Depends-on): Likewise.
1891         * modules/pipe (Depends-on): Likewise.
1892         * modules/posix_spawn-internal (Depends-on): Likewise.
1893
1894 2009-07-21  Bruno Haible  <bruno@clisp.org>
1895
1896         * modules/.gitattributes: New file.
1897
1898 2009-07-20  Bruno Haible  <bruno@clisp.org>
1899
1900         * tests/test-pipe.c (BACKUP_STDERR_FILENO): New macro.
1901         (main): Use it.
1902
1903 2009-07-20  Eric Blake  <ebb9@byu.net>
1904
1905         test-pipe: make a bit more robust.
1906         * tests/test-pipe.c (myerr): Allow error messages regardless of
1907         what we do to stderr.
1908         (test_pipe): Rearrange to avoid deadlock.
1909         (child_main): Try a larger read, to ensure we avoided deadlock.
1910         * lib/pipe.c (create_pipe) [_WIN32]: Fix comment.
1911         * lib/pipe.h (create_pipe_bidi): Document potential for deadlock
1912         if misused.
1913
1914 2009-07-19  Jim Meyering  <meyering@redhat.com>
1915
1916         fts: avoid false-positive cycle-detection
1917         * lib/fts.c (fts_read): Reinitialize cycle-detection data structures
1918         for each new command line argument.
1919
1920 2009-07-19  Bruno Haible  <bruno@clisp.org>
1921
1922         Fix build error on mingw with the modules sys_select and unistd.
1923         * modules/acl-tests (Depends-on): Add close.
1924         * modules/binary-io-tests (Depends-on): Likewise.
1925         * modules/closein-tests (Depends-on): Likewise.
1926         * modules/flock-tests (Depends-on): Likewise.
1927         * modules/fsync-tests (Depends-on): Likewise.
1928         * modules/lseek-tests (Depends-on): Likewise.
1929         * modules/pipe-tests (Depends-on): Likewise.
1930         * modules/posix_spawn-tests (Depends-on): Likewise.
1931         * modules/posix_spawnp-tests (Depends-on): Likewise.
1932         * modules/stat-time-tests (Depends-on): Likewise.
1933         * modules/yesno-tests (Depends-on): Likewise.
1934
1935 2009-07-19  Bruno Haible  <bruno@clisp.org>
1936
1937         Unify conditionals.
1938         * lib/pipe.h: Detect native Win32 by looking at _WIN32 and __WIN32__
1939         macros, not at the compiler macros.
1940         * lib/pipe.c: Likewise.
1941         * lib/execute.c: Likewise.
1942         * lib/spawni.c: Likewise.
1943
1944 2009-07-19  Bruno Haible  <bruno@clisp.org>
1945
1946         Fix handling of closed stdin/stdout/stderr on mingw.
1947         * lib/w32spawn.h: Include unistd.h.
1948         (dup_noinherit): Return -1 if the old handle is invalid. Allocate new
1949         file descriptor with O_NOINHERIT flag.
1950         (fd_safer_noinherit): New function, based on fd-safer.c.
1951         (dup_safer_noinherit): New function, based on dup-safer.c.
1952         (undup_safer_noinherit): New function.
1953         * lib/execute.c (execute) [WIN32]: Use dup_safer_noinherit instead of
1954         dup_noinherit. Use undup_safer_noinherit instead of dup2 and close.
1955         * lib/pipe.c (create_pipe) [WIN32]: Likewise. Use fd_safer_noinherit
1956         instead of fd_safer.
1957         * tests/test-pipe.c: Include <windows.h>.
1958         (child_main) [WIN32]: Test the handle of STDERR_FILENO, not its close() result.
1959
1960         * tests/test-pipe.c (child_main, parent_main): New functions, extracted
1961         from main.
1962         (test_pipe): Pass an extra argument for disambiguation.
1963         (main): Invoke parent_main or child_main.
1964
1965         * tests/test-pipe.c (test_pipe): Pass slave_process = true argument
1966         consistently.
1967
1968 2009-07-18  Eric Blake  <ebb9@byu.net>
1969
1970         test-pipe: fix mingw build
1971         * tests/test-pipe.c (main): Avoid fcntl on mingw.
1972
1973 2009-07-18  Bruno Haible  <bruno@clisp.org>
1974
1975         * modules/pipe-tests (Makefile.am): Fix typo.
1976
1977 2009-07-18  Eric Blake  <ebb9@byu.net>
1978
1979         error: fix mingw build
1980         * lib/error.c (error, error_at_line): Avoid fcntl on mingw.
1981         Reported by Bruno Haible.
1982
1983         error: avoid undefined use of stdout
1984         * lib/error.c (error, error_at_line): Check that fd 1 is open
1985         before flushing stdout.  Avoids a crash on cygwin when libsigsegv
1986         is handling faults and the close_stdout module wants to report the
1987         detection of closed stdout as an error.
1988
1989 2009-07-17  Eric Blake  <ebb9@byu.net>
1990
1991         pipe: be robust in face of closed fds
1992         * lib/pipe.c (create_pipe): Closed standard descriptors in parent
1993         should cause child to misbehave.
1994         * modules/pipe-tests: New module.
1995         * tests/test-pipe.c: New file.
1996         * tests/test-pipe.sh: New file.
1997         Reported by Akim Demaille.
1998
1999 2009-07-14  Bruno Haible  <bruno@clisp.org>
2000
2001         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Guess it works on glibc systems.
2002         Reported by anonymous kc.
2003
2004 2009-07-07  Jim Meyering  <meyering@redhat.com>
2005
2006         maint.mk: don't look for translatable strings in *.m4 or *.mk
2007         * top/maint.mk (sc_po_check): Skip *.m4 and *.mk files,
2008         when searching for translatable strings.
2009
2010 2009-07-05  Jim Meyering  <meyering@redhat.com>
2011
2012         remove superfluous parentheses in STREQ definition
2013         * tests/test-argv-iter.c (STREQ): Remove redundant parentheses.
2014         * lib/getugroups.c (STREQ): Likewise.
2015         * lib/fnmatch.c (STREQ): Likewise.
2016         Spotted by Bruno Haible.
2017
2018 2009-07-04  Jim Meyering  <meyering@redhat.com>
2019
2020         argv-iter: new module
2021         * MODULES.html.sh: Add argv-iter.
2022         * lib/argv-iter.c, lib/argv-iter.h: New files.
2023         * modules/argv-iter: New file.
2024         * modules/argv-iter-tests: New file.
2025         * tests/test-argv-iter.c: Test it.
2026
2027 2009-07-04  Bruno Haible  <bruno@clisp.org>
2028
2029         Fix assertion.
2030         * lib/git-merge-changelog.c (compute_mapping): In the case where file1
2031         contains more exact copies of a given entry than file2, leave the extra
2032         copies unpaired rather than aborting.
2033         Reported by Eric Blake.
2034
2035 2009-07-02  Bruno Haible  <bruno@clisp.org>
2036
2037         Speedup git-merge-changelog for git cherry-pick.
2038         * lib/git-merge-changelog.c (struct entries_mapping): New type.
2039         (entries_mapping_get): New function, extracted from compute_mapping.
2040         (entries_mapping_reverse_get): New function.
2041         (compute_mapping): Add a 'full' argument. Return the result in a
2042         'struct entries_mapping'.
2043         (main): Update. Access the mappings through entries_mapping_get.
2044         Reported by Eric Blake.
2045
2046 2009-07-02  Bruno Haible  <bruno@clisp.org>
2047
2048         * lib/git-merge-changelog.c (compute_mapping): Fix determination of
2049         best_i.
2050
2051 2009-07-02  Bruno Haible  <bruno@clisp.org>
2052
2053         Speed up approximate search for matching ChangeLog entries.
2054         * lib/git-merge-changelog.c (entry_fstrcmp): Add a lower_bound
2055         argument. Call fstrcmp_bounded instead of fstrcmp.
2056         (compute_mapping, try_split_merged_entry, main): Update callers.
2057
2058 2009-07-02  Bruno Haible  <bruno@clisp.org>
2059
2060         * lib/git-merge-changelog.c (main): Add comment about git cherry-pick.
2061
2062 2009-06-30  Bruno Haible  <bruno@clisp.org>
2063
2064         Reduce the number of uc_is_cased calls.
2065         * lib/unicase.h (casing_suffix_context_t): Add
2066         'first_char_except_ignorable' field.
2067         * lib/unicase/context.h (SCC_FINAL_SIGMA_MASK): Remove macro.
2068         (SCC_MORE_ABOVE_MASK, SCC_BEFORE_DOT_MASK): Update.
2069         * lib/unicase/empty-suffix-context.c (unicase_empty_suffix_context):
2070         Update initializer.
2071         * lib/unicase/u-casemap.h (FUNC): Don't invoke uc_is_cased on
2072         case-ignorable characters.
2073         * lib/unicase/u-ct-totitle.h (FUNC): Likewise.
2074         * lib/unicase/u-suffix-context.h (FUNC2): Don't call uc_is_cased here.
2075         * modules/unicase/u8-suffix-context (Depends-on): Remove unicase/cased.
2076         * modules/unicase/u16-suffix-context (Depends-on): Likewise.
2077         * modules/unicase/u32-suffix-context (Depends-on): Likewise.
2078
2079 2009-06-30  Bruno Haible  <bruno@clisp.org>
2080
2081         Tests for module 'unicase/ignorable'.
2082         * modules/unicase/ignorable-tests: New file.
2083         * tests/unicase/test-ignorable.c: New file, generated by
2084         gen-uni-tables.
2085
2086         Tests for module 'unicase/cased'.
2087         * modules/unicase/cased-tests: New file.
2088         * tests/unicase/test-cased.c: New file, generated by gen-uni-tables.
2089         * tests/unicase/test-predicate-part1.h: New file, derived from
2090         tests/unictype/test-predicate-part1.h.
2091         * tests/unicase/test-predicate-part2.h: New file, same as
2092         tests/unictype/test-predicate-part2.h.
2093
2094         Fix evaluation of "Before C" condition of FINAL_SIGMA.
2095         * lib/gen-uni-tables.c (is_cased, is_case_ignorable): New functions.
2096         (output_casing_properties): New function.
2097         (main): Call it.
2098         * lib/unicase/cased.h: New file, generated by gen-uni-tables.
2099         * lib/unicase/cased.c: Include unictype/bitmap.h.
2100         (uc_is_cased): Define through a bitmap lookup.
2101         * lib/unicase/ignorable.h: New file, generated by gen-uni-tables.
2102         * lib/unicase/ignorable.c: Include unictype/bitmap.h.
2103         (uc_is_case_ignorable): Define through a bitmap lookup.
2104         * modules/unicase/cased (Files): Add lib/unicase/cased.h,
2105         lib/unictype/bitmap.h.
2106         (Depends-on): Add inline. Clean up.
2107         * modules/unicase/ignorable (Files): Add lib/unicase/ignorable.h,
2108         lib/unictype/bitmap.h.
2109         (Depends-on): Add inline. Clean up.
2110         * tests/unicase/test-u8-tolower.c (main): Add more tests of FINAL_SIGMA
2111         recognition.
2112         * tests/unicase/test-u16-tolower.c (main): Likewise.
2113         * tests/unicase/test-u32-tolower.c (main): Likewise.
2114
2115 2009-06-30  Bruno Haible  <bruno@clisp.org>
2116
2117         * lib/unicase/u8-casemap.c: Don't include uniwbrk.h.
2118         * lib/unicase/u16-casemap.c: Likewise.
2119         * lib/unicase/u32-casemap.c: Likewise.
2120
2121 2009-06-29  Bruno Haible  <bruno@clisp.org>
2122
2123         Define u32_casefold as a wrapper around u32_ct_casefold.
2124         * lib/unicase/u32-casefold.c: Update.
2125         * modules/unicase/u32-casefold (Depends-on): Add
2126         unicase/u32-ct-casefold, unicase/empty-prefix-context,
2127         unicase/empty-suffix-context. Clean up.
2128
2129         Define u16_casefold as a wrapper around u16_ct_casefold.
2130         * lib/unicase/u16-casefold.c: Update.
2131         * modules/unicase/u16-casefold (Depends-on): Add
2132         unicase/u16-ct-casefold, unicase/empty-prefix-context,
2133         unicase/empty-suffix-context. Clean up.
2134
2135         Define u8_casefold as a wrapper around u8_ct_casefold.
2136         * lib/unicase/u-casefold.h (FUNC): Delegate to U_CT_CASEFOLD.
2137         * lib/unicase/u8-casefold.c: Update.
2138         * modules/unicase/u8-casefold (Depends-on): Add unicase/u8-ct-casefold,
2139         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
2140
2141         Define u32_totitle as a wrapper around u32_ct_totitle.
2142         * lib/unicase/u32-totitle.c: Update.
2143         * modules/unicase/u32-totitle (Depends-on): Add unicase/u32-ct-totitle,
2144         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
2145
2146         Define u16_totitle as a wrapper around u16_ct_totitle.
2147         * lib/unicase/u16-totitle.c: Update.
2148         * modules/unicase/u16-totitle (Depends-on): Add unicase/u16-ct-totitle,
2149         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
2150
2151         Define u8_totitle as a wrapper around u8_ct_totitle.
2152         * lib/unicase/u-totitle.h (is_cased, is_case_ignorable): Remove
2153         functions.
2154         (FUNC): Delegate to U_CT_TOTITLE.
2155         * lib/unicase/u8-totitle.c: Update.
2156         * modules/unicase/u8-totitle (Depends-on): Add unicase/u8-ct-totitle,
2157         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
2158
2159         * lib/unicase/u32-tolower.c (u32_tolower): Update u32_casemap
2160         invocation.
2161         * modules/unicase/u32-tolower (Depends-on): Add
2162         unicase/empty-prefix-context, unicase/empty-suffix-context.
2163
2164         * lib/unicase/u16-tolower.c (u16_tolower): Update u16_casemap
2165         invocation.
2166         * modules/unicase/u16-tolower (Depends-on): Add
2167         unicase/empty-prefix-context, unicase/empty-suffix-context.
2168
2169         * lib/unicase/u8-tolower.c (u8_tolower): Update u8_casemap invocation.
2170         * modules/unicase/u8-tolower (Depends-on): Add
2171         unicase/empty-prefix-context, unicase/empty-suffix-context.
2172
2173         * lib/unicase/u32-toupper.c (u32_toupper): Update u32_casemap
2174         invocation.
2175         * modules/unicase/u32-toupper (Depends-on): Add
2176         unicase/empty-prefix-context, unicase/empty-suffix-context.
2177
2178         * lib/unicase/u16-toupper.c (u16_toupper): Update u16_casemap
2179         invocation.
2180         * modules/unicase/u16-toupper (Depends-on): Add
2181         unicase/empty-prefix-context, unicase/empty-suffix-context.
2182
2183         * lib/unicase/u8-toupper.c (u8_toupper): Update u8_casemap invocation.
2184         * modules/unicase/u8-toupper (Depends-on): Add
2185         unicase/empty-prefix-context, unicase/empty-suffix-context.
2186
2187         New module 'unicase/u32-ct-casefold'.
2188         * lib/unicase/u32-ct-casefold.c: New file.
2189         * modules/unicase/u32-ct-casefold: New file.
2190
2191         New module 'unicase/u16-ct-casefold'.
2192         * lib/unicase/u16-ct-casefold.c: New file.
2193         * modules/unicase/u16-ct-casefold: New file.
2194
2195         New module 'unicase/u8-ct-casefold'.
2196         * lib/unicase/u8-ct-casefold.c: New file.
2197         * lib/unicase/u-ct-casefold.h: New file, derived from
2198         lib/unicase/u-casefold.h.
2199         * modules/unicase/u8-ct-casefold: New file.
2200
2201         New module 'unicase/u32-ct-totitle'.
2202         * lib/unicase/u32-ct-totitle.c: New file.
2203         * modules/unicase/u32-ct-totitle: New file.
2204
2205         New module 'unicase/u16-ct-totitle'.
2206         * lib/unicase/u16-ct-totitle.c: New file.
2207         * modules/unicase/u16-ct-totitle: New file.
2208
2209         New module 'unicase/u8-ct-totitle'.
2210         * lib/unicase/u8-ct-totitle.c: New file.
2211         * lib/unicase/u-ct-totitle.h: New file, derived from
2212         lib/unicase/u-totitle.h.
2213         * modules/unicase/u8-ct-totitle: New file.
2214
2215         New module 'unicase/u32-ct-tolower'.
2216         * lib/unicase/u32-ct-tolower.c: New file.
2217         * modules/unicase/u32-ct-tolower: New file.
2218
2219         New module 'unicase/u16-ct-tolower'.
2220         * lib/unicase/u16-ct-tolower.c: New file.
2221         * modules/unicase/u16-ct-tolower: New file.
2222
2223         New module 'unicase/u8-ct-tolower'.
2224         * lib/unicase/u8-ct-tolower.c: New file.
2225         * modules/unicase/u8-ct-tolower: New file.
2226
2227         New module 'unicase/u32-ct-toupper'.
2228         * lib/unicase/u32-ct-toupper.c: New file.
2229         * modules/unicase/u32-ct-toupper: New file.
2230
2231         New module 'unicase/u16-ct-toupper'.
2232         * lib/unicase/u16-ct-toupper.c: New file.
2233         * modules/unicase/u16-ct-toupper: New file.
2234
2235         New module 'unicase/u8-ct-toupper'.
2236         * lib/unicase/u8-ct-toupper.c: New file.
2237         * modules/unicase/u8-ct-toupper: New file.
2238
2239         Add context arguments to u*_casemap functions.
2240         * lib/unicase/unicasemap.h: Include unicase.h.
2241         (u8_casemap, u16_casemap, u32_casemap): Add prefix_context and
2242         suffix_context arguments.
2243         * lib/unicase/u-casemap.h (is_cased, is_case_ignorable): Remove
2244         functions.
2245         (FUNC): Add prefix_context and suffix_context arguments. Use
2246         uc_is_cased and uc_is_case_ignorable.
2247         * lib/unicase/u8-casemap.c: Include caseprop.h and context.h.
2248         * lib/unicase/u16-casemap.c: Likewise.
2249         * lib/unicase/u32-casemap.c: Likewise.
2250         * modules/unicase/u8-casemap (Files): Add lib/unicase/context.h.
2251         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
2252         * modules/unicase/u16-casemap (Files): Add lib/unicase/context.h.
2253         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
2254         * modules/unicase/u32-casemap (Files): Add lib/unicase/context.h.
2255         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
2256
2257         New module 'unicase/u32-suffix-context'.
2258         * lib/unicase/u32-suffix-context.c: New file.
2259         * modules/unicase/u32-suffix-context: New file.
2260
2261         New module 'unicase/u16-suffix-context'.
2262         * lib/unicase/u16-suffix-context.c: New file.
2263         * modules/unicase/u16-suffix-context: New file.
2264
2265         New module 'unicase/u8-suffix-context'.
2266         * lib/unicase/u8-suffix-context.c: New file.
2267         * lib/unicase/u-suffix-context.h: New file.
2268         * modules/unicase/u8-suffix-context: New file.
2269
2270         New module 'unicase/empty-suffix-context'.
2271         * lib/unicase/empty-suffix-context.c: New file.
2272         * modules/unicase/empty-suffix-context: New file.
2273
2274         New module 'unicase/u32-prefix-context'.
2275         * lib/unicase/u32-prefix-context.c: New file.
2276         * modules/unicase/u32-prefix-context: New file.
2277
2278         New module 'unicase/u16-prefix-context'.
2279         * lib/unicase/u16-prefix-context.c: New file.
2280         * modules/unicase/u16-prefix-context: New file.
2281
2282         New module 'unicase/u8-prefix-context'.
2283         * lib/unicase/u8-prefix-context.c: New file.
2284         * lib/unicase/u-prefix-context.h: New file.
2285         * lib/unicase/context.h: New file.
2286         * modules/unicase/u8-prefix-context: New file.
2287
2288         New module 'unicase/empty-prefix-context'.
2289         * lib/unicase/empty-prefix-context.c: New file.
2290         * modules/unicase/empty-prefix-context: New file.
2291
2292         New module 'unicase/ignorable'.
2293         * lib/unicase/ignorable.c: New file.
2294         * modules/unicase/ignorable: New file.
2295
2296         New module 'unicase/cased'.
2297         * lib/unicase/caseprop.h: New file.
2298         * lib/unicase/cased.c: New file.
2299         * modules/unicase/cased: New file.
2300
2301         New functions for case mapping of substrings.
2302         * lib/unicase.h (casing_prefix_context_t): New type.
2303         (unicase_empty_prefix_context): New variable.
2304         (u8_casing_prefix_context, u16_casing_prefix_context,
2305         u32_casing_prefix_context, u8_casing_prefixes_context,
2306         u16_casing_prefixes_context, u32_casing_prefixes_context): New
2307         declarations.
2308         (casing_suffix_context_t): New type.
2309         (unicase_empty_suffix_context): New variable.
2310         (u8_casing_suffix_context, u16_casing_suffix_context,
2311         u32_casing_suffix_context, u8_casing_suffixes_context,
2312         u16_casing_suffixes_context, u32_casing_suffixes_context,
2313         u8_ct_toupper, u16_ct_toupper, u32_ct_toupper, u8_ct_tolower,
2314         u16_ct_tolower, u32_ct_tolower, u8_ct_totitle, u16_ct_totitle,
2315         u32_ct_totitle, u8_ct_casefold, u16_ct_casefold, u32_ct_casefold): New
2316         declarations.
2317
2318 2009-06-28  Jim Meyering  <meyering@redhat.com>
2319
2320         boostrap: indent only with spaces
2321         * build-aux/bootstrap: Indent only with spaces, never TABs.
2322
2323         bootstrap: split long lines
2324         * build-aux/bootstrap: Keep line length < 80.
2325
2326         bootstrap: sync from coreutils
2327         * build-aux/bootstrap: Honor variables like $ACLOCAL, etc.,
2328         just as autoreconf does.  Verify a list of prerequisite
2329         package-name,version-number pairs if defined in bootstrap.conf.
2330         Refer to README-prereq, if prerequisites are not satisfied.
2331
2332 2009-06-27  Eric Blake  <ebb9@byu.net>
2333
2334         tests: add test for bogus NULL definition
2335         * tests/test-stdio.c: Ensure POSIX 2008 requirement on NULL.
2336         * tests/test-stdlib.c: Likewise.
2337         * tests/test-string.c: Likewise.
2338         * tests/test-locale.c: Likewise.
2339         * tests/test-unistd.c: Likewise.
2340         * modules/stdio-tests (Depends-on): Add verify.
2341         * modules/stdlib-tests (Depends-on): Likewise.
2342         * modules/string-tests (Depends-on): Likewise.
2343         * modules/locale-tests (Depends-on): Likewise.
2344         * modules/unistd-tests (Depends-on): Likewise.
2345
2346 2009-06-27  Paolo Bonzini  <bonzini@gnu.org>
2347
2348         * m4/selinux-context-h (gl_HEADERS_SELINUX_CONTEXT_H): Remove
2349         self-explaining comment.
2350         * m4/selinux-selinux-h: Update serial.
2351         (gl_LIBSELINUX): New macro, adding a warning for missing development
2352         packages to code extracted from...
2353         (gl_HEADERS_SELINUX_SELINUX_H): ... this one.  Require gl_LIBSELINUX.
2354         Add warning for missing development packages here, too.
2355
2356 2009-06-26  Paolo Bonzini  <bonzini@gnu.org>
2357
2358         * build-aux/bootstrap: Do not use GIT_CONFIG_LOCAL.
2359
2360 2009-06-25  Eric Blake  <ebb9@byu.net>
2361
2362         version-etc: fix regression
2363         * lib/version-etc.h (ATTRIBUTE_SENTINEL): Define for new enough
2364         gcc.
2365         (version_etc): Use it, to catch bugs with trailing NULL.
2366         * lib/version-etc.c (version_etc_arn): Delete unused argument.
2367         (version_etc_va): Fix logic bug.
2368         * modules/version-etc-tests: Add test.
2369         * tests/test-version-etc.c: New file.
2370         * tests/test-version-etc.sh: Likewise.
2371
2372 2009-06-25  Sam Steingold  <sds@gnu.org>
2373
2374         * mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): Include <stdlib.h>, for the
2375         mbtowc declaration.
2376
2377 2009-06-25  Eric Blake  <ebb9@byu.net>
2378
2379         fpurge: migrate into <stdio.h>
2380         * lib/fpurge.h: Delete...
2381         * lib/stdio.in.h (fpurge): ...and declare here, instead.
2382         * lib/fpurge.c (fpurge): Change declaring header.
2383         * modules/fpurge (Files): Drop deleted file.
2384         (Depends-on): Add stdio.
2385         (configure.ac): Set witness.
2386         * modules/stdio (Makefile.am): Support fpurge macros.
2387         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
2388         * m4/fpurge.m4 (gl_FUNC_FPURGE): Set appropriate variables.
2389         * lib/fflush.c: Update client.
2390         * tests/test-fpurge.c: Likewise.
2391         * NEWS: Mention the change.
2392
2393 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
2394
2395        * lib/argp-version-etc.c (program_authors): Add const
2396        qualifier.
2397        * lib/version-etc.c: Fix typos in the comments.
2398        * modules/argp-version-etc: Depends on version-etc.
2399
2400 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
2401
2402         argp-version-etc: new module.
2403
2404         * lib/argp-version-etc.c: New file.
2405         * lib/argp-version-etc.h: New file.
2406         * modules/argp-version-etc: New file.
2407         * modules/argp-version-etc-tests: New file.
2408         * tests/test-argp-version-etc.c: New test.
2409         * tests/test-argp-version-etc-1.sh: New test.
2410
2411 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
2412
2413         Provide additional interfaces and documentation for version-etc
2414         module.
2415
2416         * lib/version-etc.c (version_etc_arn, version_etc_ar): New
2417         interfaces.
2418         * lib/version-etc.h (version_etc_arn, version_etc_ar): New
2419         prototypes.
2420
2421 2009-06-24  Bruno Haible  <bruno@clisp.org>
2422
2423         * m4/lib-link.m4 (AC_LIB_HAVE_LINKFLAGS): Fix description of
2424         HAVE_LIB${NAME} macro.
2425         Reported by Sam Steingold <sds@gnu.org>.
2426
2427 2009-06-23  Simon Josefsson  <simon@josefsson.org>
2428
2429         * modules/hash-tests (test_hash_LDADD): Link to libintl when
2430         needed.
2431
2432 2009-06-21  Bruno Haible  <bruno@clisp.org>
2433
2434         Make two consecutive identical invocations of AC_LIB_HAVE_LINKFLAGS
2435         work.
2436         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Reset HAVE_LIB${NAME}
2437         together with LIB${NAME}, LTLIB${NAME}.
2438         Reported by Sam Steingold <sds@gnu.org>.
2439
2440 2009-06-20  Jim Meyering  <meyering@redhat.com>
2441
2442         tests: make sc_require_test_exit_idiom more generic
2443         * top/maint.mk (Exit_witness_file): New overridable variable.
2444         (sc_require_test_exit_idiom): Don't hard-code tests/test-lib.sh.
2445         Relax test for /^Exit \$fail$$/ to just /^Exit ./.
2446
2447 2009-06-19  Jim Meyering  <meyering@redhat.com>
2448
2449         hash: reverse order of src/dst parameters in an internal interface
2450         * lib/hash.c (transfer_entries): Reverse order of parameters to
2451         put DST before SRC.  Adjust callers.
2452
2453         tests: test-hash: avoid wholesale duplication
2454         * tests/test-hash.c (main): Don't copy/paste a 60-line loop.
2455         Instead, use a loop and add a single conditional.
2456
2457         tests: test-hash: allow seed selection via a command line argument
2458         * tests/test-hash.c (get_seed): New function.
2459         (main): Use it.
2460
2461 2009-06-19  Eric Blake  <ebb9@byu.net>
2462
2463         hash: avoid memory leak on allocation failure
2464         * lib/hash.c: (hash_rehash): Avoid memory leak on allocation
2465         failure.  Factor repeated algorithm...
2466         (transfer_entries): ...into new helper routine.
2467         (hash_delete): React to hash_rehash return value.
2468
2469         hash: reduce memory pressure in hash_rehash no-op case
2470         * lib/hash.c (next_prime): Avoid overflow.
2471         (hash_initialize): Factor bucket size computation...
2472         (compute_bucket_size): ...into new helper function.
2473         (hash_rehash): Use new function and open coding to reduce memory
2474         pressure, and avoid a memory leak in USE_OBSTACK code.
2475         Reported by Jim Meyering.
2476
2477 2009-06-18  Eric Blake  <ebb9@byu.net>
2478
2479         hash: make rotation more obvious
2480         * modules/hash (Depends-on): Add bitrotate and stdint.
2481         * lib/bitrotate.h (rotl_sz, rotr_sz): New functions.
2482         * lib/hash.c (headers): Drop limits.h.  Add stdint.h.
2483         (SIZE_MAX): Rely on headers for definition.
2484         (hash_string) [USE_DIFF_HASH]: Use rotl_sz.
2485         (raw_hasher): Use rotr_sz.
2486         Suggested by Jim Meyering.
2487
2488         hash: fix memory leak in last patch
2489         * lib/hash.c (hash_rehash): Avoid memory leak.
2490
2491         hash: avoid no-op rehashing
2492         * lib/hash.c (hash_rehash): Recognize useless rehash attempts.
2493
2494         hash: provide default callback functions
2495         * lib/hash.c (raw_hasher, raw_comparator): New functions.
2496         (hash_initialize): Use them as defaults.
2497         * tests/test-hash.c (main): Test this.
2498
2499         hash: minor optimization
2500         * lib/hash.c (hash_lookup, hash_find_entry): Avoid function call
2501         when possible.
2502         (hash_initialize): Document this promise.
2503         (hash_do_for_each, hash_clear, hash_free): Use C89 syntax.
2504         * tests/test-hash.c (hash_compare_strings): Test this.
2505
2506 2009-06-18  Bruno Haible  <bruno@clisp.org>
2507
2508         * m4/strstr.m4 (gl_FUNC_STRSTR): Skip linear time test if strstr is
2509         going to be replaced anyway.
2510
2511 2009-06-18  Bruno Haible  <bruno@clisp.org>
2512
2513         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Invoke AC_LIBOBJ only
2514         in one place.
2515         (gl_FUNC_STRCASESTR): Skip linear time test if strcasestr is going to
2516         be replaced anyway.
2517
2518 2009-06-18  Eric Blake  <ebb9@byu.net>
2519
2520         hash: check for resize before insertion
2521         * lib/hash.c (hash_insert): Check whether bucket usage exceeds
2522         threshold before insertion, so that a pathological hash_rehash
2523         that fills every bucket can still trigger another rehash.
2524
2525 2009-06-18  Jim Meyering  <meyering@redhat.com>
2526
2527         hash-tests: add a loop around the small tests
2528         * tests/test-hash.c (main): Repeat small tests with selected
2529         small initial table sizes.
2530
2531 2009-06-17  Eric Blake  <ebb9@byu.net>
2532
2533         hash: minor cleanups
2534         * lib/hash.h (hash_entry): Make opaque, by moving...
2535         * lib/hash.c (hash_entry): ...here.
2536         (hash_insert): Clarify restrictions on what can be inserted.
2537         (hash_get_next): Clarify when it is safe to remove an element
2538         during traversal.
2539         (check_tuning): Skip verification when tuning is known safe.
2540         (hash_initialize): Clarify restrictions on tuning.
2541
2542 2009-06-17  Jim Meyering  <jim@meyering.net>
2543         and Eric Blake  <ebb9@byu.net>
2544
2545         hash-tests: new module
2546         * modules/hash-tests: New file.
2547         * tests/test-hash.c: New file.
2548
2549 2009-06-17  Eric Blake  <ebb9@byu.net>
2550
2551         strstr-simple: document new module
2552         * MODULES.html.sh: Document new module.
2553
2554         strstr, strcasestr: replace on platforms with broken memchr
2555         * modules/strstr: Split into...
2556         * modules/strstr-simple: ...new module that does not care about
2557         performance, but does care about glibc bug.
2558         * m4/strstr.m4 (gl_FUNC_STRSTR): Split...
2559         (gl_FUNC_STRSTR_SIMPLE): ...into new macro, which replaces strstr
2560         if platform memchr is broken, per Debian bug 521737.
2561         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): React to broken
2562         memchr.
2563         * m4/memchr.m4 (gl_FUNC_MEMCHR): Only expand once.
2564         * doc/posix-functions/strstr.texi (strstr): Document the fix.
2565         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
2566         * modules/mountlist (Depends-on): Add strstr-simple.
2567         * modules/gen-uni-tables (Depends-on): Likewise.
2568         * modules/argz (Depends-on): Add strstr.
2569
2570 2009-06-17  Bruno Haible  <bruno@clisp.org>
2571
2572         * modules/posix_spawn-internal (Depends-on): Add errno.
2573
2574 2009-06-17  Bruno Haible  <bruno@clisp.org>
2575
2576         Define missing ESTALE on Interix 3.5.
2577         * lib/errno.in.h (ESTALE): Assign a value if missing.
2578         * lib/strerror.c (rpl_strerror): Handle missing ESTALE and ECANCELED.
2579         * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Also test whether ESTALE is
2580         missing.
2581         * doc/posix-headers/errno.texi: Mention the Interix bug.
2582         Reported by Jay Krell <jay.krell@cornell.edu> via Eric Blake.
2583
2584 2009-06-15  Eric Blake  <ebb9@byu.net>
2585
2586         memchr, memchr2: add valgrind exception
2587         * lib/memchr.valgrind: New file.
2588         * lib/memchr2.valgrind: New file.
2589         * modules/memchr (Files): Distribute valgrind file.
2590         * modules/memchr2 (Files): Likewise.
2591
2592         docs: memchr is no longer obsolete
2593         * MODULES.html.sh: Move memchr from obsolete to string.h section.
2594         * lib/string.in.h (memchr): Simplify logic.
2595
2596 2009-06-14  Jim Meyering  <meyering@redhat.com>
2597
2598         link-follow: fix the "checking..." message to not mention trailing slash
2599         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): This test has
2600         never considered trailing slashes.
2601
2602 2009-06-14  Bruno Haible  <bruno@clisp.org>
2603
2604         * m4/memchr.m4: Mention also the bug on IA-64.
2605         * doc/posix-functions/memchr.texi: Likewise.
2606
2607 2009-06-12  Eric Blake  <ebb9@byu.net>
2608
2609         memchr: detect broken x86_64 and alpha implementations
2610         * modules/memchr-tests (Depends-on): Move mmap detection...
2611         * modules/memchr (Depends-on): ...here.
2612         (configure.ac): Set indicator.
2613         * lib/string.in.h (memchr): Declare replacement.
2614         * modules/string (Makefile.am): Trigger replacement.
2615         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
2616         * m4/memchr.m4 (gl_FUNC_MEMCHR): Use mmap to detect platform
2617         bugs.
2618         * doc/posix-functions/memchr.texi (memchr): Document the bug.
2619         * modules/getpagesize (License): Relax license.
2620
2621 2009-06-11  Bruno Haible  <bruno@clisp.org>
2622
2623         * lib/idpriv.h: Add more references.
2624
2625 2009-06-08  Bruno Haible  <bruno@clisp.org>
2626
2627         Tests for module 'idpriv-droptemp'.
2628         * modules/idpriv-droptemp-tests: New file.
2629         * tests/test-idpriv-droptemp.sh: New file.
2630         * tests/test-idpriv-droptemp.su.sh: New file.
2631         * tests/test-idpriv-droptemp.c: New file.
2632
2633         New module 'idpriv-droptemp'.
2634         * lib/idpriv-droptemp.c: New file.
2635         * modules/idpriv-droptemp: New file.
2636
2637 2009-06-08  Bruno Haible  <bruno@clisp.org>
2638
2639         Tests for module 'idpriv-drop'.
2640         * modules/idpriv-drop-tests: New file.
2641         * tests/test-idpriv-drop.sh: New file.
2642         * tests/test-idpriv-drop.su.sh: New file.
2643         * tests/test-idpriv-drop.c: New file.
2644
2645         New module 'idpriv-drop'.
2646         * lib/idpriv.h: New file.
2647         * lib-idpriv-drop.c: New file.
2648         * m4/idpriv.m4: New file.
2649         * modules/idpriv-drop: New file.
2650
2651 2009-06-08  Bruno Haible  <bruno@clisp.org>
2652
2653         * modules/unistdio/u8-vasnprintf (Depends-on): Add memchr.
2654         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
2655         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
2656         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
2657         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
2658         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
2659         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
2660
2661 2009-06-08  Eric Blake  <ebb9@byu.net>
2662
2663         test-strstr: use memory fence, when possible
2664         * tests/test-strstr.c (main): Use memory fence, in order to be
2665         more likely to trigger Debian bug 521737.
2666         * modules/strstr-tests (Files): Pull in additional files.
2667
2668         memchr: no longer obsolete, for wider field testing
2669         * modules/memchr (Status, Notice): Delete, this module is no
2670         longer obsolete.
2671         * modules/vasnprintf (Depends-on): Add memchr.
2672
2673 2009-06-07  Jim Meyering  <meyering@redhat.com>
2674
2675         hash: declare some functions with the warn_unused_result attribute
2676         * lib/hash.h (__attribute__, ATTRIBUTE_WUR): Define.
2677
2678 2009-06-07  Bruno Haible  <bruno@clisp.org>
2679
2680         * tests/test-alignof.c: Don't test int64_t if it does not exist.
2681         Reported by Eric Blake.
2682
2683 2009-06-06  Eric Blake  <ebb9@byu.net>
2684
2685         test-alignof: fix typo with long double
2686         * tests/test-alignof.c (CHECK): Use longdouble typedef to avoid
2687         compiler error.
2688
2689 2009-06-06  Neil Jerram  <neil@ossau.uklinux.net>  (tiny change)
2690
2691         Escape non-texinfo { and }s.
2692         * doc/ld-output-def.texi (Visual Studio Compatibility): Fix
2693         markup error.
2694
2695 2009-06-04  Jim Meyering  <meyering@redhat.com>
2696
2697         gitlog-to-changelog: don't infloop on an empty commit log
2698         * build-aux/gitlog-to-changelog: Warn about an empty log message.
2699         Reported by Boris Petersen <transacid@centerim.org>.
2700
2701 2009-06-03  Mike Frysinger  <vapier@gentoo.org>
2702
2703         version-etc: extend for packagers
2704         Add three new configure options, intended for packagers:
2705           --with-packager="packager name"
2706           --with-packager-version="packager-specific version"
2707           --with-packager-bug-reports="packager bug reporting"
2708         An example with coreutils:
2709           $ ./configure \
2710             --with-packager=Gentoo \
2711             --with-packager-bug-report=http://bugs.gentoo.org/ \
2712             --with-packager-version="patchset 1.6"
2713           $ ./src/ls --version | head -n3
2714           ls (GNU coreutils) 7.1-dirty
2715           Packaged by Gentoo (patchset 1.6)
2716           Copyright (C) 2009 Free Software Foundation, Inc.
2717         Note that the bug reporting info via --help doesn't show up because
2718         coreutils uses its own custom emit_bug_reporting_address() implementation
2719         in src/system.h.  If it didn't, it'd look like:
2720           $ ./src/ls --help | tail -n4
2721           Report bugs to <bug-coreutils@gnu.org>.
2722           Report Gentoo bugs to <http://bugs.gentoo.org/>.
2723           GNU coreutils home page: <http://www.gnu.org/software/coreutils/>.
2724           General help using GNU software: <http://www.gnu.org/gethelp/>.
2725         * lib/version-etc.c: Print new information, if provided.
2726         * m4/version-etc.m4: New file.
2727         * modules/version-etc (Files): Add m4/version-etc.m4.
2728         (configure.ac): Add gl_VERSION_ETC.
2729
2730 2009-05-31  Bruno Haible  <bruno@clisp.org>
2731
2732         * tests/test-alignof.c: Include <stdint.h>. Check also 'long double'
2733         and 'int64_t'.
2734         * modules/alignof-tests (Dependencies): Add stdint.
2735         Reported by Eric Blake.
2736
2737 2009-05-31  Bruno Haible  <bruno@clisp.org>
2738
2739         * lib/alignof.h (alignof_slot, alignof_type, alignof): Document
2740         restriction due to compiler bugs.
2741         Reported by Eric Blake.
2742
2743 2009-05-31  Simon Josefsson  <simon@josefsson.org>
2744             Bruno Haible  <bruno@clisp.org>
2745
2746         Fix test-alignof failure.
2747         * lib/alignof.h (alignof_slot): New macro.
2748         (alignof_type): New macro, with the same semantics as the previous
2749         'alignof'.
2750         (alignof): Alias to alignof_slot.
2751         * tests/test-alignof.c (CHECK): Check alignof_slot, not alignof. Also
2752         check that the results are usable as constant expressions.
2753
2754 2009-05-31  Bruno Haible  <bruno@clisp.org>
2755
2756         * tests/zerosize-ptr.h (zerosize_ptr): Specify more details.
2757         * tests/test-memchr.c (main): Check that memchr does not read past the
2758         first occurrence of the byte.
2759         * tests/test-strstr.c (main): Update comment.
2760         Suggested by Eric Blake.
2761
2762 2009-05-30  Bruno Haible  <bruno@clisp.org>
2763
2764         * doc/ld-output-def.texi (Visual Studio Compatibility): Explain in more
2765         detail how to use dumpbin.
2766         Reported by David Byron <dbyron@dbyron.com>.
2767
2768 2009-06-02  Simon Josefsson  <simon@josefsson.org>
2769
2770         * tests/test-parse-duration.sh: Don't use non-portable 'read -u3'.
2771
2772 2009-06-02  Simon Josefsson  <simon@josefsson.org>
2773
2774         * m4/manywarnings.m4: Add GCC 4.4 warnings.
2775
2776 2009-05-28  Bruno Haible  <bruno@clisp.org>
2777
2778         * gnulib-tool (func_import): Don't do HAVE_CONFIG_H replacements on
2779         build-aux/ files.
2780
2781 2009-05-28  Simon Josefsson  <simon@josefsson.org>
2782
2783         * gnulib-tool (func_import): Transform license on build-aux/ files too.
2784
2785 2009-05-27  Simon Josefsson  <simon@josefsson.org>
2786
2787         * gnulib-tool (sed_transform_main_lib_file)
2788         (sed_transform_testsrelated_lib_file): : Don't use non-POSIX
2789         regexps.
2790
2791 2009-05-26  Simon Josefsson  <simon@josefsson.org>
2792
2793         * tests/test-strstr.c: Add another self-test.
2794         * tests/test-strstr.c: Rewrite to use malloc/strcpy instead of
2795         strdup.  Suggested by Eric Blake  <ebb9@byu.net>.
2796
2797 2009-05-23  Bruno Haible  <bruno@clisp.org>
2798
2799         * doc/havelib.texi (AC_LIB_HAVE_LINKFLAGS): Update for 2009-04-26
2800         change.
2801
2802 2009-05-21  Bruno Haible  <bruno@clisp.org>
2803
2804         Simplify use of mode_t varargs.
2805         * lib/open.c (open): Use PROMOTED_MODE_T instead of a conditional that
2806         uses 'mode_t' or 'int'.
2807         * lib/openat.c (openat): Likewise.
2808         * lib/open-safer.c (open_safer): Likewise.
2809         * m4/mode_t.m4: New file.
2810         * m4/open.m4 (gl_PREREQ_OPEN): Require gl_PROMOTED_TYPE_MODE_T.
2811         * m4/openat.m4 (gl_PREREQ_OPENAT): Likewise.
2812         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Likewise.
2813         * modules/open (Files): Add m4/mode_t.m4.
2814         * modules/openat (Files): Likewise.
2815         * modules/fcntl-safer (Files): Likewise.
2816         Suggested by Eric Blake.
2817
2818 2009-05-21  Pádraig Brady  <P@draigbrady.com>
2819
2820         * doc/glibc-functions/fallocate.texi: New file.
2821         * doc/gnulib.texi: Include it.
2822
2823 2009-05-21  Eric Blake  <ebb9@byu.net>
2824             Bruno Haible  <bruno@clisp.org>
2825
2826         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Remove redundant m4_quote
2827         invocations.
2828         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
2829
2830 2009-05-21  Eric Blake  <ebb9@byu.net>
2831             Bruno Haible  <bruno@clisp.org>
2832
2833         Second attempt to work around an AIX 5.3, 6.1 compiler bug with
2834         include_next. Fix of 2008-11-20 commit.
2835         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Also set
2836         NEXT_AS_FIRST_DIRECTIVE_FOO_H.
2837         * lib/math.in.h: Use NEXT_AS_FIRST_DIRECTIVE_MATH_H instead of
2838         NEXT_MATH_H.
2839         * modules/math (Makefile.am): Substitute NEXT_AS_FIRST_DIRECTIVE_MATH_H
2840         instead of NEXT_MATH_H.
2841
2842 2009-05-21  Bruno Haible  <bruno@clisp.org>
2843
2844         Avoid redefinition warnings for SIZE_MAX.
2845         * m4/size_max.m4 (gl_SIZE_MAX): Avoid redefining SIZE_MAX in config.h.
2846         Reported by Simon Josefsson.
2847
2848 2009-05-21  Bruno Haible  <bruno@clisp.org>
2849
2850         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_CACHE_CHECK instead of
2851         AC_CACHE_VAL.
2852
2853 2009-05-20  Bruno Haible  <bruno@clisp.org>
2854
2855         Make zeroptr.h work on mingw.
2856         * tests/zerosize-ptr.h: Test for the presence of <sys/mman.h> and
2857         mprotect.
2858         * modules/memchr-tests (configure.ac): Also test for sys/mman.h.
2859         * modules/memchr2-tests (configure.ac): Likewise.
2860         * modules/memcmp-tests (configure.ac): Likewise.
2861         * modules/memmem-tests (configure.ac): Likewise.
2862         * modules/memrchr-tests (configure.ac): Likewise.
2863         Reported by Simon Josefsson.
2864
2865 2009-05-20  Simon Josefsson  <simon@josefsson.org>
2866
2867         * tests/test-glob.c: Include string.h for strcmp prototype.
2868
2869 2009-05-20  Simon Josefsson  <simon@josefsson.org>
2870
2871         * modules/getdelim (Depends-on): Add explicit stdint, although it
2872         was implicitly already pulled in via realloc-posix.
2873         * lib/getdelim.c: Get SIZE_MAX from stdint.h.
2874
2875 2009-05-20  Simon Josefsson  <simon@josefsson.org>
2876
2877         MinGW and IRIX does not have sa_family_t type.  Reported by "Tom
2878         G. Christensen" <tgc@jupiterrise.com>.
2879         * m4/sys_socket_h.m4: Check for sa_family_t.
2880         * lib/sys_socket.in.h: Typedef sa_family_t when needed.
2881         * modules/sys_socket: Substitute HAVE_SA_FAMILY_T.
2882         * tests/test-sys_socket.c: Check that sa_family_t works.
2883
2884 2009-05-18  Eric Blake  <ebb9@byu.net>
2885
2886         maint.mk: allow gnulib_dir in VPATH build
2887         * top/maint.mk (gnulib_dir): Make relative to $(srcdir).
2888
2889 2009-05-15  Jim Meyering  <meyering@redhat.com>
2890
2891         maint.mk: Give gnulib_dir a default definition.
2892         * top/maint.mk (gnulib_dir): Define to 'gnulib', by default.
2893         Thus, most packages no longer need to specify this variable in cfg.mk
2894
2895 2009-05-14  Tom Prince  <tom.prince@ualberta.net>  (tiny change)
2896
2897         rename.m4: fix typos that would make non-mingw cross-configure fail
2898         * m4/rename.m4 (gl_FUNC_RENAME): Fix typos.
2899
2900 2009-05-13  Eric Blake  <ebb9@byu.net>
2901
2902         mmap-anon: avoid out-of-order autoconf expansion
2903         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Use correct
2904         SYSTEM_EXTENSIONS macro to silence warnings from autoconf 2.63b.
2905         * modules/memchr-tests (Depends-on): Add extensions.
2906         * modules/memchr2-tests (Depends-on): Add extensions.
2907         * modules/memcmp-tests (Depends-on): Add extensions.
2908         * modules/memmem-tests (Depends-on): Add extensions.
2909         * modules/memrchr-tests (Depends-on): Add extensions.
2910
2911 2009-05-13  Bruno Haible  <bruno@clisp.org>
2912
2913         Make some tests ISO C 99 compliant.
2914         * tests/zerosize-ptr.h: New file.
2915         * tests/test-memchr.c: Include zerosize-ptr.h.
2916         (main): Use a zero-size object pointer instead of NULL.
2917         * tests/test-memchr2.c: Include zerosize-ptr.h.
2918         (main): Use a zero-size object pointer instead of NULL.
2919         * tests/test-memcmp.c: Include zerosize-ptr.h.
2920         (main): Use a zero-size object pointer instead of NULL.
2921         * tests/test-memmem.c: Include zerosize-ptr.h.
2922         (main): Use a zero-size object pointer instead of NULL.
2923         * tests/test-memrchr.c: Include zerosize-ptr.h.
2924         (main): Use a zero-size object pointer instead of NULL.
2925         * modules/memchr-tests (Files): Add tests/zerosize-ptr.h,
2926         m4/mmap-anon.m4.
2927         (Depends-on): Add getpagesize.
2928         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
2929         * modules/memchr2-tests (Files): Add tests/zerosize-ptr.h,
2930         m4/mmap-anon.m4.
2931         (Depends-on): Add getpagesize.
2932         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
2933         * modules/memcmp-tests (Files): Add tests/zerosize-ptr.h,
2934         m4/mmap-anon.m4.
2935         (Depends-on): Add getpagesize.
2936         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
2937         * modules/memmem-tests (Files): Add tests/zerosize-ptr.h,
2938         m4/mmap-anon.m4.
2939         (Depends-on): Add getpagesize.
2940         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
2941         * modules/memrchr-tests (Files): Add tests/zerosize-ptr.h,
2942         m4/mmap-anon.m4.
2943         (Depends-on): Add getpagesize.
2944         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
2945
2946 2009-05-12  Bruno Haible  <bruno@clisp.org>
2947
2948         Tests for module 'alignof'.
2949         * modules/alignof-tests: New file.
2950         * tests/test-alignof.c: New file.
2951
2952 2009-05-12  Bruno Haible  <bruno@clisp.org>
2953
2954         Fix alignof macro.
2955         * lib/alignof.h (alignof): Remove special cases for AIX and HP-UX
2956         vendor compilers that are always correct.
2957
2958 2009-05-12  Bruno Haible  <bruno@clisp.org>
2959
2960         Make the MAP_ANONYMOUS detection work on HP-UX 11.
2961         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check whether mmap exists, but
2962         not whether its fully works.
2963
2964 2009-05-12  Bruno Haible  <bruno@clisp.org>
2965
2966         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Add comments.
2967
2968 2009-05-12  Jim Meyering  <meyering@redhat.com>
2969
2970         * top/maint.mk: Adjust backslash alignment.
2971
2972 2009-05-11  Simon Josefsson  <simon@josefsson.org>
2973
2974         * top/maint.mk: Make $(srcdir)/build-aux configurable.
2975
2976 2009-05-11  Eric Blake  <ebb9@byu.net>
2977
2978         argp: avoid undefined behavior
2979         * lib/argp-fmtstream.c (weak_alias): Pass correct types to ctype
2980         macros.
2981
2982 2009-05-08  Simon Josefsson  <simon@josefsson.org>
2983
2984         * tests/test-vc-list-files-git.sh: Do git config of user.email and
2985         user.name to prevent git commit from complaining.
2986
2987 2009-05-10  Bruno Haible  <bruno@clisp.org>
2988
2989         * gnulib-tool (func_import, func_create_testdir, copy-file): Change
2990         sed_rewrite_old_files, sed_rewrite_new_files, sed_rewrite_files so that
2991         it rewrites every file name only once.
2992         Reported by Simon Josefsson. Helped by Ralf Wildenhues.
2993
2994 2009-05-08  Bruno Haible  <bruno@clisp.org>
2995
2996         * lib/sys_socket.in.h (_SS_PADSIZE): Use a conditional expression
2997         instead of 'max'.
2998
2999 2009-05-08  Simon Josefsson  <simon@josefsson.org>
3000
3001         * m4/sys_socket_h.m4: Test for ws2tcpip.h earlier, needed for
3002         sockaddr_storage test.
3003
3004 2009-05-07  Simon Josefsson  <simon@josefsson.org>
3005
3006         * modules/sys_socket (Makefile.am): Substitute
3007         HAVE_STRUCT_SOCKADDR_STORAGE.  Depend on alignof.
3008         * m4/sys_socket_h.m4: Check for sockaddr_storage.
3009         * lib/sys_socket.in.h (sockaddr_storage): Define when needed.
3010         * tests/test-sys_socket.c: Check sockaddr_storage.
3011
3012 2009-05-08  Bruno Haible  <bruno@clisp.org>
3013
3014         New module 'alignof'.
3015         * lib/alignof.h: New file.
3016         * modules/alignof: New file.
3017
3018 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
3019             Bruno Haible  <bruno@clisp.org>
3020
3021         Fix test-file-has-acl on FreeBSD.
3022         * tests/test-file-has-acl.sh: Also test a directory. On FreeBSD, the
3023         mask is implicitly added.
3024         * tests/test-file-has-acl.c: Include <signal.h>.
3025         (main): Terminate the test after 5 seconds.
3026         * modules/acl-tests (configure.ac): Check for alarm function.
3027
3028 2009-05-04  Bruno Haible  <bruno@clisp.org>
3029
3030         Exploit new semantics of AC_DEFUN_ONCE available since 2009-01-26.
3031         * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Remove outdated comment.
3032         * modules/errno (configure.ac): Drop AC_REQUIRE.
3033         * m4/multiarch.m4 (gl_MULTIARCH): Remove outdated comment.
3034         * modules/multiarch (configure.ac): Drop AC_REQUIRE.
3035
3036 2009-05-04  Simon Josefsson  <simon@josefsson.org>
3037
3038         * modules/glob-tests: New module.
3039         * tests/test-glob.c: Add.
3040
3041 2009-05-04  Simon Josefsson  <simon@josefsson.org>
3042
3043         * modules/fnmatch-tests: New module.
3044         * tests/test-fnmatch.c: Add.
3045
3046 2009-05-04  Eric Blake  <ebb9@byu.net>
3047
3048         maint: make the new no-submodule-changes rule VPATH-safe
3049         * top/maint.mk (no-submodule-changes): Don't assume a srcdir build.
3050
3051 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
3052             Bruno Haible  <bruno@clisp.org>
3053
3054         acl: Fix infinite loop on FreeBSD.
3055         * lib/acl_entries.c (acl_entries) [Linux, FreeBSD]: Fix interpretation
3056         of return value from acl_get_entry.
3057         * lib/file-has-acl.c (acl_access_nontrivial) [Linux, FreeBSD]:
3058         Likewise.
3059
3060 2009-05-03  Bruno Haible  <bruno@clisp.org>
3061
3062         * lib/acl-internal.h (acl_entries): Clarify return value.
3063         * lib/acl_entries.c (acl_entries): Likewise.
3064
3065 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
3066
3067         Bug fix in acl module.
3068         * lib/set-mode-acl.c: Use correct struct with ACL_SETACL.
3069
3070 2009-05-03  Bruno Haible  <bruno@clisp.org>
3071
3072         Create gperf-generated file in the source dir, not in the build dir.
3073         * modules/iconv_open (iconv_open-aix.h, iconv_open-hpux.h,
3074         iconv_open-irix.h, iconv_open-osf.h): Create file in the source tree.
3075         * modules/unicase/locale-language (unicase/locale-languages.h):
3076         Likewise.
3077         * modules/unicase/special-casing (unicase/special-casing-table.h):
3078         Likewise.
3079         * modules/unictype/property-byname (unictype/pr_byname.h): Likewise.
3080         * modules/unictype/scripts (unictype/scripts_byname.h): Likewise.
3081         * modules/uninorm/composition (uninorm/composition-table.h): Likewise.
3082         Reported by Ralf Wildenhues.
3083
3084 2009-05-03  Bruno Haible  <bruno@clisp.org>
3085
3086         * modules/fnmatch (Description, configure.ac): Taken from
3087         fnmatch-posix.
3088         * modules/fnmatch-posix: Turn into a symbolic reference to the
3089         'fnmatch' module, and deprecate.
3090         * doc/posix-functions/fnmatch.texi: Mention the fnmatch module.
3091
3092 2009-05-03  Bruno Haible  <bruno@clisp.org>
3093
3094         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF,
3095         gl_PREREQ_VASNPRINTF_LONG_DOUBLE): Define through AC_DEFUN_ONCE.
3096         Reported by Ralf Wildenhues.
3097
3098 2009-05-04  Simon Josefsson  <simon@josefsson.org>
3099
3100         * m4/fnmatch.m4: Fix fnmatch re-define.
3101
3102 2009-04-27  David Bartley  <dtbartle@csclub.uwaterloo.ca>
3103
3104         priv-set: new module and tests; adapt write-any-file
3105         * lib/priv-set.c: New file.
3106         * lib/priv-set.h: New file.
3107         * lib/unlinkdir.c: Make cannot_unlink_dir thread-safe.
3108         * lib/write-any-file.c: Simplify by using priv-set module.
3109         * m4/priv-set.m4: New file.
3110         * modules/priv-set: New file.
3111         * modules/unlinkdir: Add dependency on priv-set module.
3112         * modules/write-any-file: Likewise.
3113
3114         Tests for module 'priv-set'.
3115         * modules/priv-set-tests: New file.
3116         * tests/test-priv-set.c: New file.
3117
3118 2009-05-03  Jim Meyering  <meyering@redhat.com>
3119             Bruno Haible  <bruno@clisp.org>
3120
3121         * lib/propername.c (proper_name_utf8): Ignore no-op translations;
3122         use the converted UTF-8 variant of the name instead.
3123
3124 2009-05-03  Jim Meyering  <meyering@redhat.com>
3125
3126         tests: tighten some getdate tests
3127         * tests/test-getdate.c (main): Tighten tests: require equality,
3128         not just greater than.  Set TZ envvar to UTC0.
3129
3130 2009-05-03  Giuseppe Scrivano  <gscrivano@gnu.org>
3131
3132         getdate: correctly interpret "next monday" when run on a Monday
3133         * lib/getdate.y (get_date): Correct the calculation of tm_mday so
3134         that e.g., "next tues" (when run on a tuesday) results in a date
3135         that is one week in the future, and not today's date.
3136         I.e., add a week when the wday is the same as the current one.
3137         Reported by Tom Broadhurst in http://savannah.gnu.org/bugs/?25406,
3138         and earlier by Martin Bernreuther and Jan Minář.
3139         * tests/test-getdate.c (main): Check that "next DAY" is always in
3140         the future and that "last DAY" is always in the past.
3141
3142 2009-05-02  Jim Meyering  <meyering@redhat.com>
3143
3144         build: ensure that a release build fails when a submodule is unclean
3145         * top/maint.mk (no-submodule-changes): New rule.
3146         (alpha beta major): Depend on it.
3147
3148 2009-05-02  Bruno Haible  <bruno@clisp.org>
3149
3150         Remove incompatibility between modules fnmatch-posix and fnmatch-gnu.
3151         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX, gl_FUNC_FNMATCH_GNU): Use a
3152         shell variable gl_fnmatch_required to detect which variant is
3153         requested.
3154         (_AC_FUNC_FNMATCH_IF, _AC_LIBOBJ_FNMATCH): Remove macros. Inlined into
3155         gl_FUNC_FNMATCH_POSIX.
3156         * gnulib-tool (func_create_testdir, func_create_megatestdir): Don't
3157         exclude fnmatch-posix.
3158
3159 2009-05-02  Bruno Haible  <bruno@clisp.org>
3160
3161         Relicense mbsrtowcs and strnlen1 under LGPLv2+.
3162         * modules/mbsrtowcs (License): Change to LGPLv2+.
3163         * modules/strnlen1 (License): Likewise.
3164         Reported by Simon Josefsson.
3165
3166 2009-05-02  Bruno Haible  <bruno@clisp.org>
3167
3168         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Say "guessing no" instead of
3169         "cross".
3170         (gl_FUNC_FNMATCH_POSIX, gl_FUNC_FNMATCH_GNU): Update. Don't assume that
3171         gnulib-tool was called with option --source-base=lib.
3172
3173 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3174
3175         Use automake *-local hooks without commands, for extensibility.
3176         * modules/localcharset (Makefile.am): Rename install-exec-local
3177         rule to install-exec-localcharset, and make it a prerequisite of
3178         install-exec-local.  Likewise, rename the uninstall-local rule to
3179         uninstall-localcharset, and make it a prerequisite of the former.
3180
3181 2009-05-01  Bruno Haible  <bruno@clisp.org>
3182
3183         * lib/wchar.in.h (wcsnrtombs): Define if REPLACE_WCSNRTOMBS is 1.
3184         * m4/wcsnrtombs.m4 (gl_FUNC_WCSRTOMBS): Invoke gl_MBSTATE_T_BROKEN, and
3185         set REPLACE_WCSNRTOMBS if mbstate_t must be replaced.
3186         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCSNRTOMBS.
3187         * modules/wchar (Makefile.am): Substitute REPLACE_WCSNRTOMBS.
3188         * modules/wcsnrtombs (Files): Add m4/mbrtowc.m4, m4/locale-ja.m4,
3189         m4/locale-zh.m4, m4/codeset.m4.
3190
3191         * m4/wcsrtombs.m4 (gl_FUNC_WCSNRTOMBS): Invoke gl_MBSTATE_T_BROKEN, and
3192         set REPLACE_WCSRTOMBS if mbstate_t must be replaced.
3193         * modules/wcsrtombs (Files): Add m4/mbrtowc.m4, m4/locale-ja.m4,
3194         m4/locale-zh.m4.
3195
3196         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Invoke gl_MBSTATE_T_BROKEN, and set
3197         REPLACE_WCRTOMB if mbstate_t must be replaced.
3198         * modules/wcrtomb (Files): Add m4/mbrtowc.m4.
3199         Reported by Jens Rehsack <rehsack@googlemail.com> via Eric Blake.
3200
3201 2009-05-01  Bruno Haible  <bruno@clisp.org>
3202
3203         Avoid compiler warnings when redefining macros defined by <libintl.h>.
3204         * lib/gettext.h [!ENABLE_NLS] (gettext, dgettext, dcgettext, ngettext,
3205         dngettext, dcngettext, textdomain, bindtextdomain,
3206         bind_textdomain_codeset): Undefine before redefining.
3207
3208 2009-04-30  Bruno Haible  <bruno@clisp.org>
3209
3210         Fix bug introduced on 2009-04-25.
3211         * lib/math.in.h (gl_signbitf_OPTIMIZED_MACRO,
3212         gl_signbitd_OPTIMIZED_MACRO, gl_signbitl_OPTIMIZED_MACRO): New macros.
3213         * lib/signbitf.c (gl_signbitd): Undefine if gl_signbitf_OPTIMIZED_MACRO
3214         is defined.
3215         * lib/signbitd.c (gl_signbitd): Undefine if gl_signbitd_OPTIMIZED_MACRO
3216         is defined.
3217         * lib/signbitl.c (gl_signbitd): Undefine if gl_signbitl_OPTIMIZED_MACRO
3218         is defined.
3219         Reported by Elbert_Pol <elbert.pol@gmail.com>.
3220
3221 2009-04-28  Bruno Haible  <bruno@clisp.org>
3222
3223         Comment tweaks.
3224         * lib/unistr.h (u*_cmp2): Clarify what memcmp2 is.
3225         * lib/uninorm.h (u*_normxfrm): Fix description of return value.
3226         * lib/unicase.h (u*_casexfrm): Likewise.
3227         Reported by Paolo Bonzini.
3228
3229 2009-04-28  Bruno Haible  <bruno@clisp.org>
3230
3231         Fix a compilation error.
3232         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Fix initializer.
3233         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
3234         Reported by Jim Meyering.
3235
3236 2009-04-27  Bruno Haible  <bruno@clisp.org>
3237
3238         New module 'libunistring'.
3239         * modules/libunistring: New file.
3240         * m4/libunistring.m4: New file.
3241         * MODULES.html.sh (Unicode string functions): Add it.
3242
3243 2009-04-27  Eric Blake  <ebb9@byu.net>
3244
3245         maint.mk: allow package-specific header to provide <config.h>
3246         * top/maint.mk (sc_require_config_h): New variable.
3247         (sc_require_config_h, sc_require_config_h_first): Use it.
3248
3249 2009-04-27  Simon Josefsson  <simon@josefsson.org>
3250
3251         * top/maint.mk (sc_avoid_if_before_free): Except
3252         useless-if-before-free script.
3253
3254 2009-04-27  Eric Blake  <ebb9@byu.net>
3255
3256         maintainer-makefile: depend on all required helper scripts
3257         * modules/maintainer-makefile (Depends-on): Add vc-list-files and
3258         useless-if-before-free.
3259         * top/maint.mk (VC_LIST, sc_avoid_if_before_free): Use local
3260         version, rather than assuming gnulib checkout is available.
3261         Reported by Simen Josefsson.
3262
3263 2009-04-26  Bruno Haible  <bruno@clisp.org>
3264
3265         Make the lib vs. lib64 recognition work on openSUSE 11 with "gcc -m32".
3266         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): Ignore paths that end in
3267         "../" or "..".
3268
3269 2009-04-26  Bruno Haible  <bruno@clisp.org>
3270
3271         * m4/lib-link.m4 (AC_LIB_HAVE_LINKFLAGS): Accept a fifth argument.
3272         * m4/libsigsegv.m4 (gl_LIBSIGSEGV): Simplify by using
3273         AC_LIB_HAVE_LINKFLAGS.
3274
3275 2009-04-26  Bruno Haible  <bruno@clisp.org>
3276
3277         Simplify calling convention of u*_conv_from_encoding.
3278         * lib/uniconv.h (u8_conv_from_encoding, u16_conv_from_encoding,
3279         u32_conv_from_encoding): Expect a resultbuf argument and return the
3280         result directly as a pointer.
3281         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Likewise.
3282         * lib/uniconv/u-conv-from-enc.h (FUNC): Likewise.
3283         * lib/uniconv/u-strconv-from-enc.h (FUNC): Update.
3284         * lib/unicase/ulc-casecmp.c (ulc_u8_casefold): Update.
3285         * lib/unicase/ulc-casexfrm.c (ulc_casexfrm): Update.
3286         * lib/unilbrk/ulc-possible-linebreaks.c (ulc_possible_linebreaks):
3287         Update.
3288         * lib/unilbrk/ulc-width-linebreaks.c (ulc_width_linebreaks): Update.
3289         * lib/uniwbrk/ulc-wordbreaks.c (ulc_wordbreaks): Update.
3290         * lib/vasnprintf.c (VASNPRINTF): Update.
3291         * tests/uniconv/test-u8-conv-from-enc.c (main): Update.
3292         * tests/uniconv/test-u16-conv-from-enc.c (main): Update.
3293         * tests/uniconv/test-u32-conv-from-enc.c (main): Update.
3294         * NEWS: Mention the change.
3295
3296 2009-04-26  Bruno Haible  <bruno@clisp.org>
3297
3298         Simplify calling convention of u*_conv_to_encoding.
3299         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
3300         u32_conv_to_encoding): Expect a resultbuf argument and return the
3301         result directly as a pointer.
3302         * lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
3303         * lib/uniconv/u-conv-to-enc.h (FUNC): Likewise. Preserve errno while
3304         freeing scaled_offsets if mem_iconveha failed.
3305         * lib/unicase/u-casexfrm.h (FUNC): Update.
3306         * lib/uninorm/u-normxfrm.h (FUNC): Update.
3307         * lib/vasnprintf.c (VASNPRINTF): Update.
3308         * tests/uniconv/test-u8-conv-to-enc.c (main): Update.
3309         * tests/uniconv/test-u16-conv-to-enc.c (main): Update.
3310         * tests/uniconv/test-u32-conv-to-enc.c (main): Update.
3311         * NEWS: Mention the change.
3312
3313 2009-04-26  Bruno Haible  <bruno@clisp.org>
3314
3315         Avoid test failures on AIX and OSF/1.
3316         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Avoid calling
3317         malloc(0).
3318         * lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
3319         * lib/unilbrk/ulc-possible-linebreaks.c (ulc_possible_linebreaks):
3320         Likewise.
3321         * lib/unilbrk/ulc-width-linebreaks.c (ulc_width_linebreaks): Likewise.
3322         * lib/uniwbrk/ulc-wordbreaks.c (ulc_wordbreaks): Likewise.
3323         * lib/uniconv/u-conv-to-enc.h (FUNC): Likewise. Fix memory leak.
3324         * lib/unistr/u-cpy-alloc.h (FUNC): Call malloc(1) instead of malloc(0).
3325         * doc/posix-functions/malloc.texi: Document the portability problem
3326         related to malloc(0).
3327
3328 2009-04-26  Bruno Haible  <bruno@clisp.org>
3329
3330         * modules/unistr/u8-cpy-alloc (Depends-on): Add malloc-posix.
3331         * modules/unistr/u16-cpy-alloc (Depends-on): Likewise.
3332         * modules/unistr/u32-cpy-alloc (Depends-on): Likewise.
3333
3334 2009-04-25  Bruno Haible  <bruno@clisp.org>
3335
3336         Avoid link error when creating a namespace clean library.
3337         * lib/math.in.h (gl_signbitf, gl_signbitd, gl_signbitl): Don't define
3338         as macro with arguments if already defined as an alias.
3339         * lib/signbitf.c (gl_signbitf): Don't undefine.
3340         * lib/signbitd.c (gl_signbitd): Don't undefine.
3341         * lib/signbitl.c (gl_signbitl): Don't undefine.
3342
3343 2009-04-25  Jim Meyering  <meyering@redhat.com>
3344
3345         vc-list-files: fix another quoting bug
3346         * build-aux/vc-list-files: Avoid sed backslash expansion
3347         of pathological directory names.
3348
3349 2009-04-25  Eric Blake  <ebb9@byu.net>
3350
3351         vc-list-files: fix shell quoting error
3352         * build-aux/vc-list-files: Protect against $ in $dir.  Normalize
3353         timestamp.
3354
3355 2009-04-25  Jim Meyering  <meyering@redhat.com>
3356
3357         vc-list-files: restore lost functionality with subdir argument
3358         * build-aux/vc-list-files: When given a non-"." sub-directory
3359         argument, substitute the $dir/ prefix back onto each resulting name.
3360         Otherwise, coreutils' root_tests check would fail.
3361
3362 2009-04-24  Eric Blake  <ebb9@byu.net>
3363
3364         vc-list-files: ignore git symlinks
3365         * build-aux/vc-list-files (.git): Use ls-tree and a filter, rather
3366         than ls-files, to ignore git symlinks.
3367
3368         maint.mk: import improvements from m4
3369         * top/maint.mk (VC-tag): Use signing key from cfg.mk.
3370         (move_if_change): Delete unused macro.
3371         (news-date-check, vc-diff-check): Support VPATH builds.
3372         (announcement): Likewise.  Split --bootstrap-tools list...
3373         (boostrap-tools): ...into separate list, which can be overridden
3374         in cfg.mk.
3375         (sc_avoid_if_before_free): Point to $(gnulib_dir), rather than
3376         requiring dependency on useless-if-before-free module.
3377         (VC_LIST, VC_LIST_EXCEPT): Likewise for vc-list-files module.
3378         Support VPATH builds.
3379
3380 2009-04-24  Jim Meyering  <meyering@redhat.com>
3381
3382         maint.mk: remove coreutils-specific rules and variables
3383         * top/maint.mk (bin, taint-distcheck, coreutils-path-check, t): Remove.
3384         (fake_home, install-transform-check, my-instcheck, pfx, TMPDIR): Remove.
3385         (t_prefix, t_taint, tp, warn_cflags, write_loser, my-distcheck): Remove.
3386
3387         maint.mk: remove obsolete rule
3388         * top/maint.mk (rel-check): Remove rule.
3389         (WGET, WGETFLAGS): Remove now-unused variables.
3390
3391 2009-04-24  Simon Josefsson  <simon@josefsson.org>
3392
3393         * top/maint.mk (makefile-check): Renamed to sc_makefile_check for
3394         consistency.
3395
3396         * modules/vc-list-files-tests (TESTS_ENVIRONMENT): Use
3397         '$(PATH_SEPARATOR)' instead of ':'.
3398
3399 2009-04-24  Simon Josefsson  <simon@josefsson.org>
3400
3401         * lib/getopt1.c (main): Use 'const' for static array.
3402
3403 2009-04-24  Simon Josefsson  <simon@josefsson.org>
3404
3405         * top/maint.mk: Sync with coreutils.
3406         * NEWS: Explain incompatibilities.
3407
3408 2009-04-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
3409             Bruno Haible  <bruno@clisp.org>
3410
3411         Fix cross-compilation results.
3412         * m4/btowc.m4 (gl_FUNC_BTOWC): Use no-op statement, rather than empty
3413         statement, as third argument of AC_TRY_RUN.
3414         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE, gl_MBRTOWC_SANITYCHECK,
3415         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL):
3416         Likewise.
3417         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Likewise.
3418         * m4/wcsrtombs.m4 (gl_WCSRTOMBS_TERMINATION, gl_WCSRTOMBS_NULL):
3419         Likewise.
3420         * m4/wctob.m4 (gl_FUNC_WCTOB): Likewise.
3421         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Likewise. Update for AIX 4.3.
3422         * doc/posix-functions/wcrtomb.texi: Mention the bug on AIX 4.3.
3423
3424 2009-04-20  Bruno Haible  <bruno@clisp.org>
3425
3426         Avoid test failure on mingw.
3427         * tests/uniwidth/test-uc_width2.sh: Convert newlines in output.
3428
3429 2009-04-20  Bruno Haible  <bruno@clisp.org>
3430
3431         Avoid compilation error on mingw.
3432         * modules/localename-tests (Depends-on): Add locale.
3433
3434 2009-04-19  Bruno Haible  <bruno@clisp.org>
3435
3436         Support for building a shared library on Windows platforms.
3437         * tests/uninorm/test-nfc.c (n): Don't define if WOE32DLL.
3438         (main): Test the presence of UNINORM_NFC here.
3439         * tests/uninorm/test-nfd.c (n): Don't define if WOE32DLL.
3440         (main): Test the presence of UNINORM_NFD here.
3441         * tests/uninorm/test-nfkc.c (n): Don't define if WOE32DLL.
3442         (main): Test the presence of UNINORM_NFKC here.
3443         * tests/uninorm/test-nfkd.c (n): Don't define if WOE32DLL.
3444         (main): Test the presence of UNINORM_NFKD here.
3445
3446 2009-04-19  Bruno Haible  <bruno@clisp.org>
3447
3448         Avoid a compiler warning.
3449         * tests/uninorm/test-u32-normalize-big.c (read_normalization_test_file):
3450         Change type of variable 'sequence'.
3451
3452 2009-04-19  Bruno Haible  <bruno@clisp.org>
3453
3454         * modules/configmake (Makefile.am): When the contents of configmake.h
3455         does not change, arrange to preserve its modification time.
3456
3457 2009-04-17  Simon Josefsson  <simon@josefsson.org>
3458
3459         * top/maint.mk (PO_DOMAIN): New variable, allows overriding of
3460         gettext domain.
3461
3462 2009-04-16  Jim Meyering  <meyering@redhat.com>
3463
3464         useless-if-before-free: improve conversion code
3465         * build-aux/useless-if-before-free: Adjust code-in-comment to match
3466         "...!= 0" as well as "...!= NULL".  emacs has one of the former.
3467
3468 2009-04-14  Bruno Haible  <bruno@clisp.org>
3469
3470         * modules/fcntl (Depends-on): Add extensions.
3471         * m4/fcntl_h.m4 (gl_FCNTL_H): Add a comment.
3472
3473 2009-04-12  Ben Pfaff  <blp@gnu.org>
3474
3475         Make fcntl module detect O_NOATIME, O_NOFOLLOW on GNU/Linux.
3476         * m4/fcntl_h.m4 (gl_FCNTL_H): Require AC_USE_SYSTEM_EXTENSIONS.
3477
3478 2009-03-20  Ben Pfaff  <blp@gnu.org>
3479
3480         Make rename replace existing destinations on Windows.
3481         * m4/rename.m4: Add test for Mingw.
3482         * lib/rename.c: Add rename replacement that uses MoveFileEx with
3483         MOVEFILE_REPLACE_EXISTING to replace existing destination files.
3484         * doc/posix-functions/rename.texi: Document.
3485
3486 2009-04-10  Bruno Haible  <bruno@clisp.org>
3487
3488         New include file "iconveh.h".
3489         * lib/iconveh.h: New file, extracted from lib/striconveh.h.
3490         * lib/striconveh.h: Include it.
3491         (enum iconv_ilseq_handler): Remove definition.
3492         * lib/striconveha.h: Include <stddef.h> and iconveh.h instead of
3493         striconveh.h.
3494         * lib/striconveha.c: Include striconveh.h.
3495         * lib/uniconv.h: Include iconveh.h instead of striconveh.h.
3496         * modules/striconveh (Files): Add lib/iconveh.h.
3497         * modules/uniconv/base (Files): Add lib/iconveh.h. Remove
3498         lib/striconveh.h.
3499
3500 2009-04-10  Bruno Haible  <bruno@clisp.org>
3501
3502         * lib/uniconv.h: Update comment.
3503
3504 2009-04-10  Bruno Haible  <bruno@clisp.org>
3505
3506         * lib/unistr/u8-mbtouc-aux.c: Inside libunistring, define the function
3507         always.
3508         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
3509         * lib/unistr/u16-mbtouc-aux.c: Likewise.
3510         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
3511         * lib/unistr/u8-mbtouc.c: Inside libunistring, include
3512         "unistring-notinline.h", so that the function gets defined always.
3513         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
3514         * lib/unistr/u8-uctomb.c: Likewise.
3515         * lib/unistr/u16-mbtouc.c: Likewise.
3516         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
3517         * lib/unistr/u16-uctomb.c: Likewise.
3518         * lib/unistr/u32-mbtouc.c: Likewise.
3519         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
3520         * lib/unistr/u32-uctomb.c: Likewise.
3521
3522 2009-04-10  Bruno Haible  <bruno@clisp.org>
3523
3524         Mark 'utime' obsolete.
3525         * modules/utime (Status, Notice): New sections.
3526         Suggested by Jim Meyering.
3527
3528         Fix cross-compile guess for utime test.
3529         * m4/utime.m4 (AC_FUNC_UTIME_NULL): Add definition from newest unstable
3530         autoconf.
3531         * doc/posix-functions/utime.texi: Give more precisions.
3532         Reported by Jan <ipif@ymail.com>.
3533
3534 2009-04-09  Kamil Dudka  <kdudka@redhat.com>
3535
3536         filevercmp: correct today's change
3537         * lib/filevercmp.c: Also handle coreutils' test inputs.
3538         * tests/test-filevercmp.c: Add inputs from one of coreutils' test scripts.
3539
3540         Fix regression in 'filevercmp' module. Thanks Sven Joachim
3541         for reporting it.
3542         * lib/filevercmp.c: Special handle for "", "." and "..".
3543         * tests/test-filevercmp.c: Enlarge the set suite.
3544
3545 2009-04-07  Jim Meyering  <meyering@redhat.com>
3546
3547         useless-if-before-free: show how to remove braced useless free, too
3548         * build-aux/useless-if-before-free: still only in a comment, though.
3549
3550 2009-04-07  Reuben Thomas  <rrt@sc3d.org>
3551
3552         maint.mk: import changes to syntax-check macros from coreutils
3553         * top/maint.mk (_prohibit_regexp, _header_without_use): Define.
3554         Use them in the relevant macros.
3555
3556 2009-04-06  Bruno Haible  <bruno@clisp.org>
3557
3558         Fix unportable use of bit-fields.
3559         * lib/unicase/special-casing.h (struct special_casing_rule): Change the
3560         bit-field type from 'int' to 'signed int'. Otherwise Solaris cc,
3561         AIX xlc, and OSF/1 cc interpret it as 'unsigned int'.
3562
3563 2009-04-06  Bruno Haible  <bruno@clisp.org>
3564
3565         Avoid test failures on AIX and OSF/1.
3566         * tests/unicase/test-u8-casefold.c (check): Account for the possibility
3567         that malloc(0) = NULL.
3568         * tests/unicase/test-u8-tolower.c (check): Likewise.
3569         * tests/unicase/test-u8-totitle.c (check): Likewise.
3570         * tests/unicase/test-u8-toupper.c (check): Likewise.
3571         * tests/unicase/test-u16-casefold.c (check): Likewise.
3572         * tests/unicase/test-u16-tolower.c (check): Likewise.
3573         * tests/unicase/test-u16-totitle.c (check): Likewise.
3574         * tests/unicase/test-u16-toupper.c (check): Likewise.
3575         * tests/unicase/test-u32-casefold.c (check): Likewise.
3576         * tests/unicase/test-u32-tolower.c (check): Likewise.
3577         * tests/unicase/test-u32-totitle.c (check): Likewise.
3578         * tests/unicase/test-u32-toupper.c (check): Likewise.
3579         * tests/uninorm/test-u8-nfc.c (check): Likewise.
3580         * tests/uninorm/test-u8-nfd.c (check): Likewise.
3581         * tests/uninorm/test-u8-nfkc.c (check): Likewise.
3582         * tests/uninorm/test-u8-nfkd.c (check): Likewise.
3583         * tests/uninorm/test-u16-nfc.c (check): Likewise.
3584         * tests/uninorm/test-u16-nfd.c (check): Likewise.
3585         * tests/uninorm/test-u16-nfkc.c (check): Likewise.
3586         * tests/uninorm/test-u16-nfkd.c (check): Likewise.
3587         * tests/uninorm/test-u32-nfc.c (check): Likewise.
3588         * tests/uninorm/test-u32-nfd.c (check): Likewise.
3589         * tests/uninorm/test-u32-nfkc.c (check): Likewise.
3590         * tests/uninorm/test-u32-nfkd.c (check): Likewise.
3591
3592 2009-04-05  Bruno Haible  <bruno@clisp.org>
3593
3594         Work around an autoconf limitation.
3595         * gnulib-tool (func_emit_lib_Makefile_am): Omit the "Reproduce by"
3596         comment line if it would be longer than 3 KB.
3597
3598 2009-04-05  Bruno Haible  <bruno@clisp.org>
3599
3600         Avoid test failure with libiconv-1.13.
3601         * tests/test-striconveh.c (main): Allow result of libiconv 1.13 as one
3602         of the expected test results.
3603
3604 2009-04-05  Bruno Haible  <bruno@clisp.org>
3605
3606         * gnulib-tool (func_emit_lib_Makefile_am): Don't add the library to
3607         noinst_LTLIBRARIES if the Makefile.am in the same directory specifies
3608         that it should be installed.
3609
3610 2009-04-05  Bruno Haible  <bruno@clisp.org>
3611
3612         * gnulib-tool: New option --copy-file.
3613         (func_usage): Document it.
3614         (func_dest_tmpfilename): Moved out of func_import.
3615         (func_add_file, func_update_file): New functions, extracted from
3616         func_import.
3617         (func_import): Update.
3618
3619 2009-04-05  Karl Berry  <karl@gnu.org>
3620
3621         * README: prominently mention gnulib-tool.
3622         Rearrange sections so getting the code is near the top.
3623
3624 2009-04-05  Bruno Haible  <bruno@clisp.org>
3625
3626         * lib/unicase.h: Mention u*_cmp2.
3627         * lib/unicase/u-casecmp.h (FUNC): Invoke U_CMP2 instead of U_CMP.
3628         * lib/unicase/u8-casecmp.c: Use u8_cmp2 instead of u8_cmp.
3629         * lib/unicase/ulc-casecmp.c: Likewise.
3630         * lib/unicase/u16-casecmp.c: Use u16_cmp2 instead of u16_cmp.
3631         * lib/unicase/u32-casecmp.c: Use u32_cmp2 instead of u32_cmp.
3632         * modules/unicase/u8-casecmp (Depends-on): Add unistr/u8-cmp2, remove
3633         unistr/u8-cmp.
3634         * modules/unicase/ulc-casecmp (Depends-on): Likewise.
3635         * modules/unicase/u16-casecmp (Depends-on): Add unistr/u16-cmp2, remove
3636         unistr/u16-cmp.
3637         * modules/unicase/u32-casecmp (Depends-on): Add unistr/u32-cmp2, remove
3638         unistr/u32-cmp.
3639
3640         * lib/uninorm.h: Mention u*_cmp2.
3641         * lib/uninorm/u-normcmp.h (FUNC): Invoke U_CMP2 instead of U_CMP.
3642         * lib/uninorm/u8-normcmp.c: Use u8_cmp2 instead of u8_cmp.
3643         * lib/uninorm/u16-normcmp.c: Use u16_cmp2 instead of u16_cmp.
3644         * lib/uninorm/u32-normcmp.c: Use u32_cmp2 instead of u32_cmp.
3645         * modules/uninorm/u8-normcmp (Depends-on): Add unistr/u8-cmp2, remove
3646         unistr/u8-cmp.
3647         * modules/uninorm/u16-normcmp (Depends-on): Add unistr/u16-cmp2, remove
3648         unistr/u16-cmp.
3649         * modules/uninorm/u32-normcmp (Depends-on): Add unistr/u32-cmp2, remove
3650         unistr/u32-cmp.
3651
3652         New module 'unistr/u32-cmp2'.
3653         * lib/unistr/u32-cmp2.c: New file.
3654         * modules/unistr/u32-cmp2: New file.
3655
3656         New module 'unistr/u16-cmp2'.
3657         * lib/unistr/u16-cmp2.c: New file.
3658         * modules/unistr/u16-cmp2: New file.
3659
3660         New module 'unistr/u8-cmp2'.
3661         * lib/unistr.h (u8_cmp2, u16_cmp2, u32_cmp2): New declarations.
3662         * lib/unistr/u8-cmp2.c: New file.
3663         * lib/unistr/u-cmp2.h: New file.
3664         * modules/unistr/u8-cmp2: New file.
3665
3666 2009-04-05  Bruno Haible  <bruno@clisp.org>
3667
3668         * lib/unictype.h (uc_property_is_valid): New macro.
3669         * tests/unictype/test-pr_byname.c (main): Use it.
3670
3671         * lib/unistr.h: Doc fixes.
3672         * lib/uniconv.h: Doc fixes.
3673         * lib/unictype.h: Doc fixes.
3674
3675 2009-04-03  Paul Eggert  <eggert@cs.ucla.edu>
3676
3677         Port coreutils 7.2 to Solaris 8.
3678
3679         * modules/arpa_inet (arpa/inet.h): Depend on arpa_inet.in.h.
3680         * m4/inet_ntop.m4 (gl_INET_NTOP): Search for inet_ntop in -lnsl,
3681         for Solaris 8.  This is a bit of a hack, as it means it's the
3682         caller's responsibility to add -lnsl if needed, but most likely it
3683         won't be needed since only getaddrinfo uses this and getaddrinfo
3684         isn't needed on Solaris 8.
3685
3686         * modules/fnmatch (Depends-on): Add mbsrtowcs, to fix a porting
3687         problem to Solaris 8 encountered with coreutils 7.2, which
3688         resulted in a message "fnmatch.c:292: warning: passing argument 4
3689         of 'mbsrtowcs' from incompatible pointer type".  Also, add mbsinit
3690         at the suggestion of Bruno Haible, since fnmatch uses mbsinit.
3691
3692 2009-04-03  Simon Josefsson  <simon@josefsson.org>
3693
3694         * m4/ld-version-script.m4: Add FIXME comment.
3695
3696 2009-04-02  Simon Josefsson  <simon@josefsson.org>
3697
3698         * doc/ld-output-def.texi: Use DLL_VERSION instead of confusing
3699         SOVERSION variable.
3700
3701 2009-04-02  Bruno Haible  <bruno@clisp.org>
3702
3703         * Makefile (info, html, dvi, pdf): Combine the rules.
3704         Suggested by Jim Meyering.
3705
3706 2009-04-01  Bruno Haible  <bruno@clisp.org>
3707
3708         * Makefile (info, html, dvi, pdf): New targets.
3709         Reported by Reuben Thomas <rrt@sc3d.org>.
3710
3711 2009-04-01  Bruno Haible  <bruno@clisp.org>
3712
3713         * doc/gnulib-tool.texi (Invoking gnulib-tool): Document how gnulib-tool
3714         can be put into PATH.
3715         Reported by Reuben Thomas <rrt@sc3d.org>. Suggested by Karl Berry.
3716
3717 2009-04-01  Bruno Haible  <bruno@clisp.org>
3718
3719         * doc/lib-symbol-visibility.texi: Follow texinfo style conventions.
3720
3721 2009-04-01  Bruno Haible  <bruno@clisp.org>
3722
3723         Rename module 'visibility'.
3724         * modules/lib-symbol-visibility: Renamed from modules/visibility.
3725         * doc/lib-symbol-visibility.texi: Renamed from visibility.texi.
3726         * doc/gnulib.texi: Update.
3727         * MODULES.html.sh (Misc): Update.
3728         * NEWS: Mention the change.
3729
3730 2009-04-01  Simon Josefsson  <simon@josefsson.org>
3731
3732         * modules/lib-msvc-compat: New module.  Thanks to Bruno Haible
3733         <bruno@clisp.org>, Ralf Wildenhues <Ralf.Wildenhues@gmx.de>, and
3734         Eric Blake <ebb9@byu.net> for review.
3735         * MODULES.html.sh: Add lib-msvc-compat.
3736         * doc/gnulib.texi: Link to new section.
3737         * m4/ld-output-def.m4: New file.
3738         * doc/ld-output-def.texi: New file.
3739
3740 2009-04-01  Simon Josefsson  <simon@josefsson.org>
3741
3742         Rename ld-version-script to lib-symbol-versions.  Suggested by
3743         Bruno Haible <bruno@clisp.org>.
3744         * modules/ld-version-script: Renamed to lib-symbol-versions.
3745         * doc/ld-version-script.texi: Fix module name.
3746         * MODULES.html.sh: Add lib-symbol-versions.
3747
3748 2009-03-31  Simon Josefsson  <simon@josefsson.org>
3749
3750         * modules/u64-tests: New file.
3751         * tests/test-u64.c: New file.
3752
3753 2009-03-04  Simon Josefsson  <simon@josefsson.org>
3754
3755         * MODULES.html.sh: Mention u64.
3756         * modules/u64: New module.
3757         * modules/crypto/sha512: Depend on u64 module instead of providing
3758         u64.h.
3759
3760 2009-03-27  Eric Blake  <ebb9@byu.net>
3761
3762         test-strerror: make debugging EAI_SYSTEM easier
3763         * modules/getaddrinfo-tests (Depends-on): Add strerror.
3764         * test-getaddrinfo.c (simple) [ENABLE_DEBUGGING]: Report errno if
3765         failure was EAI_SYSTEM.
3766
3767 2009-03-25  Bruno Haible  <bruno@clisp.org>
3768
3769         Fix a problem with --enable-relocatable on Solaris 7.
3770         * modules/relocatable-prog-wrapper (Depends-on): Add environ. Needed
3771         since 2008-02-24.
3772
3773 2009-03-25  Eric Blake  <ebb9@byu.net>
3774
3775         test-sockets: avoid gcc warning
3776         * tests/test-sockets.c (main): Silence compiler warning.
3777
3778 2009-03-25  Paul Eggert  <eggert@cs.ucla.edu>
3779
3780         New modules nproc, pthread, contributed by Glen Lenker.
3781
3782         * MODULES.html.sh: Add pthread, nproc.
3783         * lib/nproc.c: New file.
3784         * lib/nproc.h: New file.
3785         * lib/pthread.in.h: New file.
3786         * m4/pthread.m4: New file.
3787         * modules/nproc: New file.
3788         * modules/pthread: New file.
3789
3790 2009-03-24  Simon Josefsson  <simon@josefsson.org>
3791
3792         * modules/unicase/locale-language-tests (test_locale_language_LDADD):
3793         New variable.
3794
3795 2009-03-24  Kamil Dudka  <kdudka@redhat.com>
3796
3797         filevercmp: handle simple~ and numbered.~3~ backup suffixes
3798         * lib/filevercmp.c: Handle simple~ and numbered.~3~ backup suffixes.
3799         * tests/test-filevercmp.c: Add tests for backup suffixes.
3800
3801 2009-03-24  Simon Josefsson  <simon@josefsson.org>
3802
3803         * modules/stdlib (Depends-on): Add stdint, needed when defining
3804         struct random_data on, for example, HP-UX 10.20.  Reported by
3805         Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
3806
3807 2009-03-24  Simon Josefsson  <simon@josefsson.org>
3808
3809         * lib/readline.c (readline): Call fflush on stdout after printing
3810         prompt.
3811
3812 2009-03-20  Bruno Haible  <bruno@clisp.org>
3813
3814         Remove dependency from 'close' module to -lws2_32 on native Windows.
3815         * lib/close-hook.h: New file.
3816         * lib/close-hook.c: New file.
3817         * lib/close.c: Include close-hook.h. Don't include <sys/socket.h>,
3818         w32sock.h.
3819         (_gl_close_fd_maybe_socket): Remove function.
3820         (rpl_close): Invoke execute_all_close_hooks instead of
3821         _gl_close_fd_maybe_socket.
3822         * lib/sockets.c: Include close-hook.h, w32sock.h.
3823         (close_fd_maybe_socket): New function, essentially from lib/close.c.
3824         (close_sockets_hook): New variable.
3825         (gl_sockets_startup): Register close_fd_maybe_socket as a hook.
3826         (gl_sockets_cleanup): Unregister it.
3827         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): Remove macro.
3828         * m4/close.m4 (gl_REPLACE_CLOSE): Undo 2009-02-05 change.
3829         * modules/close-hook: New file.
3830         * modules/close (Files): Remove lib/w32sock.h.
3831         (Depends-on): Add close-hook.
3832         (Link): Remove section.
3833         * modules/sockets (Files): Add lib/w32sock.h.
3834         (Depends-on): Add close-hook.
3835         * modules/sys_socket (configure.ac): Remove gl_MODULE_INDICATOR
3836         invocation.
3837         * NEWS: Mention that LIB_CLOSE is gone.
3838
3839 2009-03-23  Eric Blake  <ebb9@byu.net>
3840
3841         signal-tests: test previous patch
3842         * tests/test-signal.c: New file.
3843         * modules/signal-tests: Likewise.
3844
3845         signal.h: always support 'volatile sig_atomic_t'
3846         * m4/signal_h.m4 (gl_SIGNAL_H): Check for AIX limitation.
3847         (gl_SIGNAL_H_DEFAULTS): Add a default.
3848         * modules/signal (Makefile.am): Substitute if needed.
3849         * lib/signal.in.h (sig_atomic_t): Redefine if needed, so that
3850         users can blindly add volatile.
3851         * doc/posix-headers/signal.texi (signal.h): Document it.
3852         Reported by Matthew Woehlke.
3853
3854 2009-03-23  Jim Meyering  <meyering@redhat.com>
3855
3856         pathmax: PATH_MAX: use pathconf only when available
3857         * lib/pathmax.h (PATH_MAX): Select the pathconf-using definition
3858         only if HAVE_PATHCONF is defined.  Patch by Sylvain Beucler.
3859         * m4/pathmax.m4 (gl_PATHMAX): Check for pathconf.
3860         This avoids a link failure in a PSP cross-compilation environment
3861         described in http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/17048
3862
3863         * lib/vasnprintf.c (divide): Fix typo in comment.
3864
3865 2009-03-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3866
3867         * gnulib-tool (func_filter_filelist): Fix comment.
3868
3869 2009-03-20  Bruno Haible  <bruno@clisp.org>
3870
3871         Make sockets.h self-contained.
3872         * lib/sockets.c: Include sockets.h first.
3873         * lib/sockets.h: Include <sys/socket.h> before using the SOCKET type.
3874
3875 2009-03-19  Eric Blake  <ebb9@byu.net>
3876
3877         doc: mention more functions added in cygwin 1.7.0
3878         * doc/posix-functions/log2.texi: Mention recent cygwin 1.7.0
3879         addition.
3880         * doc/posix-functions/log2f.texi: Likewise.
3881
3882 2009-03-19  Jim Meyering  <meyering@redhat.com>
3883
3884         fsusage: avoid syntax error due to statement-before-declaration
3885         * lib/fsusage.c (get_fs_usage): Put warning-avoidance statement
3886         after all declarations.  Reported by Matthew Woehlke in
3887         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/16231
3888
3889 2009-03-18  Eric Blake  <ebb9@byu.net>
3890
3891         build-aux/compile: sync from automake
3892         * build-aux/compile: New file, from automake.
3893         * config/srclist.txt: Mention build-aux/compile.
3894
3895 2009-03-17  Bruno Haible  <bruno@clisp.org>
3896
3897         * lib/git-merge-changelog.c: Fix typo in comment.
3898         Reported by Reuben Thomas <rrt@sc3d.org>.
3899
3900 2009-03-17  Reuben Thomas  <rrt@sc3d.org>
3901
3902         * m4/regex.m4: update and improve help for
3903         --without-included-regex.
3904
3905 2009-03-17  Simon Josefsson  <simon@josefsson.org>
3906
3907         * modules/isnanl-nolibm-tests (Files): Add tests/nan.h to avoid
3908         failure on missing include files.
3909
3910 2009-03-17  Eric Blake  <ebb9@byu.net>
3911
3912         doc: mention more functions added in cygwin 1.7.0
3913         * doc/posix-functions/fwprintf.texi: Mention recent cygwin 1.7.0
3914         addition.
3915         * doc/posix-functions/fwscanf.texi: Likewise.
3916         * doc/posix-functions/swprintf.texi: Likewise.
3917         * doc/posix-functions/swscanf.texi: Likewise.
3918         * doc/posix-functions/vfwprintf.texi: Likewise.
3919         * doc/posix-functions/vfwscanf.texi: Likewise.
3920         * doc/posix-functions/vswprintf.texi: Likewise.
3921         * doc/posix-functions/vswscanf.texi: Likewise.
3922         * doc/posix-functions/vwprintf.texi: Likewise.
3923         * doc/posix-functions/vwscanf.texi: Likewise.
3924         * doc/posix-functions/wcscasecmp.texi: Likewise.
3925         * doc/posix-functions/wcsdup.texi: Likewise.
3926         * doc/posix-functions/wcsftime.texi: Likewise.
3927         * doc/posix-functions/wcsncasecmp.texi: Likewise.
3928         * doc/posix-functions/wprintf.texi: Likewise.
3929         * doc/posix-functions/wscanf.texi: Likewise.
3930         * doc/glibc-functions/gethostbyname2.texi: Likewise.
3931
3932 2009-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3933
3934         maint.mk: really add $(AM_MAKEFLAGS)
3935         * top/maint.mk (init-coverage, build-coverage): `$(AM_MAKEFLAGS)'
3936         was inadvertently omitted in the last commit.
3937         Spotted by Bruno Haible.
3938
3939         maint.mk: use $(MAKE) $(AM_MAKEFLAGS) not make
3940         * top/maint.mk (init-coverage, build-coverage): Use `$(MAKE)
3941         $(AM_MAKEFLAGS)' rather than plain `make'.
3942
3943         gnulib-tool: execute $MAKE not make
3944         * gnulib-tool: Default $MAKE to 'make'.
3945         (func_create_testdir, func_create_megatestdir): Use $MAKE rather
3946         than make.  Initialize $MAKE in the do-autobuild script.
3947
3948         gnulib-tool: use $MAKE not make in generated files
3949         * gnulib-tool (func_create_megatestdir): Use $MAKE rather than
3950         make, in generated files.  Initialize $MAKE in the do-autobuild
3951         script.
3952
3953         * top/GNUmakefile (_have-git-version-gen): Fix typo.
3954
3955         GNUmakefile: disable parallelism only for multiple, recursive targets
3956         * top/GNUmakefile (ALL_RECURSIVE_TARGETS): New macro; allow user
3957         additions in the Makefile.
3958         (AM_RECURSIVE_TARGETS): New macro, override only if not provided
3959         by Automake.
3960         (.NOTPARALLEL): Only disable parallel builds if multiple targets
3961         are listed on the command line and at least one of them is
3962         listed in $(ALL_RECURSIVE_TARGETS).
3963
3964 2009-03-14  Bruno Haible  <bruno@clisp.org>
3965
3966         * modules/unilbrk/u8-possible-linebreaks (Depends-on): Replace
3967         utf8-ucs4-unsafe with unistr/u8-mbtouc-unsafe.
3968         * modules/unilbrk/u8-width-linebreaks (Depends-on): Likewise.
3969         * modules/unilbrk/u16-possible-linebreaks (Depends-on): Replace
3970         utf16-ucs4-unsafe with unistr/u16-mbtouc-unsafe.
3971         * modules/unilbrk/u16-width-linebreaks (Depends-on): Likewise.
3972         * modules/unistr/u8-chr (Depends-on): Replace ucs4-utf8 with
3973         unistr/u8-uctomb.
3974         * modules/unistr/u8-strchr (Depends-on): Likewise.
3975         * modules/unistr/u8-strrchr (Depends-on): Likewise.
3976         * modules/unistr/u16-chr (Depends-on): Replace ucs4-utf16 with
3977         unistr/u16-uctomb.
3978         * modules/unistr/u16-strchr (Depends-on): Likewise.
3979         * modules/unistr/u16-strrchr (Depends-on): Likewise.
3980
3981 2009-03-12  Bruno Haible  <bruno@clisp.org>
3982
3983         Work around select() bug on Interix 3.5.
3984         * lib/sys_select.in.h (select): Also replace if REPLACE_SELECT is 1.
3985         * lib/select.c (rpl_select): Add an implementation for Unix platforms.
3986         * m4/select.m4: New file.
3987         * m4/sys_select_h.m4 (gl_SYS_SELECT_H_DEFAULTS): Initialize REPLACE_SELECT.
3988         * modules/sys_select (Makefile.am): Substitute REPLACE_SELECT.
3989         * modules/select (Files): Add m4/select.m4.
3990         (configure.ac): Move conditional to m4/select.m4. Invoke gl_FUNC_SELECT.
3991         * modules/nanosleep (Depends-on): Add select.
3992         * modules/poll (Depends-on): Likewise.
3993         * doc/posix-functions/select.texi: Mention the Interix bug.
3994         Reported by Markus Duft <mduft@gentoo.org>.
3995
3996         * lib/select.c: Renamed from lib/winsock-select.c.
3997         * modules/select (Files): Add lib/select.c, remove
3998         lib/winsock-select.c.
3999         (configure.ac): Update.
4000
4001 2009-03-12  Jim Meyering  <meyering@redhat.com>
4002
4003         avoid gcc warnings about unused macro definitions
4004         * lib/readtokens.c (STREQ): Remove unused definition.
4005         * lib/xmalloc.c (SIZE_MAX): Likewise.
4006         * lib/openat-die.c (N_): Likewise.
4007         * lib/mountlist.c (SIZE_MAX): Remove definition.
4008         Instead, include <stdint.h>.
4009         * lib/readutmp.c: Likewise.
4010         * modules/readutmp (Depends-on): Add stdint.
4011         * modules/mountlist (Depends-on): Add stdint.
4012         * lib/userspec.c (ISDIGIT): Move definition into #if block where used.
4013
4014 2009-03-10  Bruno Haible  <bruno@clisp.org>
4015
4016         Tests for module 'mbmemcasecoll'.
4017         * modules/mbmemcasecoll-tests: New file.
4018         * tests/test-mbmemcasecoll1.sh: New file.
4019         * tests/test-mbmemcasecoll2.sh: New file.
4020         * tests/test-mbmemcasecoll3.sh: New file.
4021         * tests/test-mbmemcasecoll.c: New file.
4022
4023         New module 'mbmemcasecoll'.
4024         * lib/mbmemcasecoll.h: New file.
4025         * lib/mbmemcasecoll.c: New file.
4026         * modules/mbmemcasecoll: New file.
4027
4028         * tests/test-mbmemcasecmp.h: New file, extracted from
4029         tests/test-mbmemcasecmp.c.
4030         * tests/test-mbmemcasecmp.c: Include test-mbmemcasecmp.h.
4031         (test_ascii, test_iso_8859_1, test_utf_8): Remove functions.
4032         (main): Update.
4033         * modules/mbmemcasecmp-tests (Files): Add tests/test-mbmemcasecmp.h.
4034
4035 2009-03-09  Bruno Haible  <bruno@clisp.org>
4036
4037         Tests for module 'mbmemcasecmp'.
4038         * modules/mbmemcasecmp-tests: New file.
4039         * tests/test-mbmemcasecmp1.sh: New file.
4040         * tests/test-mbmemcasecmp2.sh: New file.
4041         * tests/test-mbmemcasecmp3.sh: New file.
4042         * tests/test-mbmemcasecmp.c: New file.
4043
4044         New module 'mbmemcasecmp'.
4045         * lib/mbmemcasecmp.h: New file.
4046         * lib/mbmemcasecmp.c: New file.
4047         * modules/mbmemcasecmp: New file.
4048
4049 2009-03-09  Bruno Haible  <bruno@clisp.org>
4050
4051         Tests for module 'unicase/ulc-casecoll'.
4052         * modules/unicase/ulc-casecoll-tests: New file.
4053         * tests/unicase/test-ulc-casecoll1.sh: New file.
4054         * tests/unicase/test-ulc-casecoll2.sh: New file.
4055         * tests/unicase/test-ulc-casecoll.c: New file.
4056
4057         New module 'unicase/ulc-casecoll'.
4058         * lib/unicase.h (ulc_casecoll): New declaration.
4059         * lib/unicase/ulc-casecoll.c: New file.
4060         * modules/unicase/ulc-casecoll: New file.
4061
4062         New module 'unicase/ulc-casexfrm'.
4063         * lib/unicase.h (ulc_casexfrm): New declaration.
4064         * lib/unicase/ulc-casexfrm.c: New file.
4065         * modules/unicase/ulc-casexfrm: New file.
4066
4067 2009-03-09  Bruno Haible  <bruno@clisp.org>
4068
4069         Followup to 2008-12-22 commit: Remove unnecessary AC_FUNC_MBRTOWC
4070         invocations.
4071
4072         * m4/mbscasecmp.m4: Remove file.
4073         * modules/mbscasecmp (Files): Remove it and m4/mbrtowc.m4
4074         (configure.ac): Remove gl_FUNC_MBSCASECMP invocation.
4075
4076         * m4/mbscasestr.m4: Remove file.
4077         * modules/mbscasestr (Files): Remove it and m4/mbrtowc.m4
4078         (configure.ac): Remove gl_FUNC_MBSCASESTR invocation.
4079
4080         * m4/mbschr.m4: Remove file.
4081         * modules/mbschr (Files): Remove it and m4/mbrtowc.m4
4082         (configure.ac): Remove gl_FUNC_MBSCHR invocation.
4083
4084         * m4/mbscspn.m4: Remove file.
4085         * modules/mbscspn (Files): Remove it and m4/mbrtowc.m4
4086         (configure.ac): Remove gl_FUNC_MBSCSPN invocation.
4087
4088         * m4/mbslen.m4: Remove file.
4089         * modules/mbslen (Files): Remove it and m4/mbrtowc.m4
4090         (configure.ac): Remove gl_FUNC_MBSLEN invocation.
4091
4092         * m4/mbsncasecmp.m4: Remove file.
4093         * modules/mbsncasecmp (Files): Remove it and m4/mbrtowc.m4
4094         (configure.ac): Remove gl_FUNC_MBSNCASECMP invocation.
4095
4096         * m4/mbsnlen.m4: Remove file.
4097         * modules/mbsnlen (Files): Remove it and m4/mbrtowc.m4
4098         (configure.ac): Remove gl_FUNC_MBSNLEN invocation.
4099
4100         * m4/mbspbrk.m4: Remove file.
4101         * modules/mbspbrk (Files): Remove it and m4/mbrtowc.m4
4102         (configure.ac): Remove gl_FUNC_MBSPBRK invocation.
4103
4104         * m4/mbspcasecmp.m4: Remove file.
4105         * modules/mbspcasecmp (Files): Remove it and m4/mbrtowc.m4
4106         (configure.ac): Remove gl_FUNC_MBSPCASECMP invocation.
4107
4108         * m4/mbsrchr.m4: Remove file.
4109         * modules/mbsrchr (Files): Remove it and m4/mbrtowc.m4
4110         (configure.ac): Remove gl_FUNC_MBSRCHR invocation.
4111
4112         * m4/mbssep.m4: Remove file.
4113         * modules/mbssep (Files): Remove it and m4/mbrtowc.m4
4114         (configure.ac): Remove gl_FUNC_MBSSEP invocation.
4115
4116         * m4/mbsspn.m4: Remove file.
4117         * modules/mbsspn (Files): Remove it and m4/mbrtowc.m4
4118         (configure.ac): Remove gl_FUNC_MBSSPN invocation.
4119
4120         * m4/mbsstr.m4: Remove file.
4121         * modules/mbsstr (Files): Remove it and m4/mbrtowc.m4
4122         (configure.ac): Remove gl_FUNC_MBSSTR invocation.
4123
4124         * m4/mbstok_r.m4: Remove file.
4125         * modules/mbstok_r (Files): Remove it and m4/mbrtowc.m4
4126         (configure.ac): Remove gl_FUNC_MBSTOK_R invocation.
4127
4128         * m4/mbswidth.m4 (gl_MBSWIDTH): Remove AC_FUNC_MBRTOWC invocation.
4129
4130         * m4/quotearg.m4 (gl_QUOTEARG): Remove mbsinit test and
4131         AC_TYPE_MBSTATE_T, AC_FUNC_MBRTOWC invocations.
4132
4133         * modules/trim (configure.ac): Remove AC_FUNC_MBRTOWC invocation.
4134
4135 2009-03-08  Bruno Haible  <bruno@clisp.org>
4136
4137         Tests for module 'unicase/ulc-casecmp'.
4138         * modules/unicase/ulc-casecmp-tests: New file.
4139         * tests/unicase/test-ulc-casecmp1.sh: New file.
4140         * tests/unicase/test-ulc-casecmp2.sh: New file.
4141         * tests/unicase/test-ulc-casecmp.c: New file.
4142
4143         New module 'unicase/ulc-casecmp'.
4144         * lib/unicase.h (ulc_casecmp): New declaration.
4145         * lib/unicase/ulc-casecmp.c: New file.
4146         * lib/unicase/u-casecmp.h (FUNC): Change argument types to
4147         'const SRC_UNIT *'.
4148         * lib/unicase/u8-casecmp.c (SRC_UNIT): Define like UNIT.
4149         * lib/unicase/u16-casecmp.c (SRC_UNIT): Likewise.
4150         * lib/unicase/u32-casecmp.c (SRC_UNIT): Likewise.
4151         * modules/unicase/ulc-casecmp: New file.
4152
4153         Tests for module 'unicase/u32-is-cased'.
4154         * modules/unicase/u32-is-cased-tests: New file.
4155         * tests/unicase/test-u32-is-cased.c: New file.
4156
4157         Tests for module 'unicase/u16-is-cased'.
4158         * modules/unicase/u16-is-cased-tests: New file.
4159         * tests/unicase/test-u16-is-cased.c: New file.
4160
4161         Tests for module 'unicase/u8-is-cased'.
4162         * modules/unicase/u8-is-cased-tests: New file.
4163         * tests/unicase/test-u8-is-cased.c: New file.
4164         * tests/unicase/test-is-cased.h: New file.
4165
4166         New module 'unicase/u32-is-cased'.
4167         * lib/unicase/u32-is-cased.c: New file.
4168         * modules/unicase/u32-is-cased: New file.
4169
4170         New module 'unicase/u16-is-cased'.
4171         * lib/unicase/u16-is-cased.c: New file.
4172         * modules/unicase/u16-is-cased: New file.
4173
4174         New module 'unicase/u8-is-cased'.
4175         * lib/unicase/u8-is-cased.c: New file.
4176         * lib/unicase/u-is-cased.h: New file.
4177         * modules/unicase/u8-is-cased: New file.
4178
4179         Tests for module 'unicase/u32-is-casefolded'.
4180         * modules/unicase/u32-is-casefolded-tests: New file.
4181         * tests/unicase/test-u32-is-casefolded.c: New file.
4182
4183         Tests for module 'unicase/u16-is-casefolded'.
4184         * modules/unicase/u16-is-casefolded-tests: New file.
4185         * tests/unicase/test-u16-is-casefolded.c: New file.
4186
4187         Tests for module 'unicase/u8-is-casefolded'.
4188         * modules/unicase/u8-is-casefolded-tests: New file.
4189         * tests/unicase/test-u8-is-casefolded.c: New file.
4190         * tests/unicase/test-is-casefolded.h: New file.
4191
4192         New module 'unicase/u32-is-casefolded'.
4193         * lib/unicase/u32-is-casefolded.c: New file.
4194         * modules/unicase/u32-is-casefolded: New file.
4195
4196         New module 'unicase/u16-is-casefolded'.
4197         * lib/unicase/u16-is-casefolded.c: New file.
4198         * modules/unicase/u16-is-casefolded: New file.
4199
4200         New module 'unicase/u8-is-casefolded'.
4201         * lib/unicase/u8-is-casefolded.c: New file.
4202         * modules/unicase/u8-is-casefolded: New file.
4203
4204         Tests for module 'unicase/u32-is-titlecase'.
4205         * modules/unicase/u32-is-titlecase-tests: New file.
4206         * tests/unicase/test-u32-is-titlecase.c: New file.
4207
4208         Tests for module 'unicase/u16-is-titlecase'.
4209         * modules/unicase/u16-is-titlecase-tests: New file.
4210         * tests/unicase/test-u16-is-titlecase.c: New file.
4211
4212         Tests for module 'unicase/u8-is-titlecase'.
4213         * modules/unicase/u8-is-titlecase-tests: New file.
4214         * tests/unicase/test-u8-is-titlecase.c: New file.
4215         * tests/unicase/test-is-titlecase.h: New file.
4216
4217         New module 'unicase/u32-is-titlecase'.
4218         * lib/unicase/u32-is-titlecase.c: New file.
4219         * modules/unicase/u32-is-titlecase: New file.
4220
4221         New module 'unicase/u16-is-titlecase'.
4222         * lib/unicase/u16-is-titlecase.c: New file.
4223         * modules/unicase/u16-is-titlecase: New file.
4224
4225         New module 'unicase/u8-is-titlecase'.
4226         * lib/unicase/u8-is-titlecase.c: New file.
4227         * modules/unicase/u8-is-titlecase: New file.
4228
4229         Tests for module 'unicase/u32-is-lowercase'.
4230         * modules/unicase/u32-is-lowercase-tests: New file.
4231         * tests/unicase/test-u32-is-lowercase.c: New file.
4232
4233         Tests for module 'unicase/u16-is-lowercase'.
4234         * modules/unicase/u16-is-lowercase-tests: New file.
4235         * tests/unicase/test-u16-is-lowercase.c: New file.
4236
4237         Tests for module 'unicase/u8-is-lowercase'.
4238         * modules/unicase/u8-is-lowercase-tests: New file.
4239         * tests/unicase/test-u8-is-lowercase.c: New file.
4240         * tests/unicase/test-is-lowercase.h: New file.
4241
4242         New module 'unicase/u32-is-lowercase'.
4243         * lib/unicase/u32-is-lowercase.c: New file.
4244         * modules/unicase/u32-is-lowercase: New file.
4245
4246         New module 'unicase/u16-is-lowercase'.
4247         * lib/unicase/u16-is-lowercase.c: New file.
4248         * modules/unicase/u16-is-lowercase: New file.
4249
4250         New module 'unicase/u8-is-lowercase'.
4251         * lib/unicase/u8-is-lowercase.c: New file.
4252         * modules/unicase/u8-is-lowercase: New file.
4253
4254         Tests for module 'unicase/u32-is-uppercase'.
4255         * modules/unicase/u32-is-uppercase-tests: New file.
4256         * tests/unicase/test-u32-is-uppercase.c: New file.
4257
4258         Tests for module 'unicase/u16-is-uppercase'.
4259         * modules/unicase/u16-is-uppercase-tests: New file.
4260         * tests/unicase/test-u16-is-uppercase.c: New file.
4261
4262         Tests for module 'unicase/u8-is-uppercase'.
4263         * modules/unicase/u8-is-uppercase-tests: New file.
4264         * tests/unicase/test-u8-is-uppercase.c: New file.
4265         * tests/unicase/test-is-uppercase.h: New file.
4266
4267         New module 'unicase/u32-is-uppercase'.
4268         * lib/unicase/u32-is-uppercase.c: New file.
4269         * modules/unicase/u32-is-uppercase: New file.
4270
4271         New module 'unicase/u16-is-uppercase'.
4272         * lib/unicase/u16-is-uppercase.c: New file.
4273         * modules/unicase/u16-is-uppercase: New file.
4274
4275         New module 'unicase/u8-is-uppercase'.
4276         * lib/unicase/u8-is-uppercase.c: New file.
4277         * modules/unicase/u8-is-uppercase: New file.
4278
4279         New module 'unicase/u32-is-invariant'.
4280         * lib/unicase/u32-is-invariant.c: New file.
4281         * modules/unicase/u32-is-invariant: New file.
4282
4283         New module 'unicase/u16-is-invariant'.
4284         * lib/unicase/u16-is-invariant.c: New file.
4285         * modules/unicase/u16-is-invariant: New file.
4286
4287         New module 'unicase/u8-is-invariant'.
4288         * lib/unicase/u8-is-invariant.c: New file.
4289         * lib/unicase/invariant.h: New file.
4290         * lib/unicase/u-is-invariant.h: New file.
4291         * modules/unicase/u8-is-invariant: New file.
4292
4293         Tests for module 'unicase/u32-casecoll'.
4294         * modules/unicase/u32-casecoll-tests: New file.
4295         * tests/unicase/test-u32-casecoll.c: New file.
4296
4297         Tests for module 'unicase/u16-casecoll'.
4298         * modules/unicase/u16-casecoll-tests: New file.
4299         * tests/unicase/test-u16-casecoll.c: New file.
4300
4301         Tests for module 'unicase/u8-casecoll'.
4302         * modules/unicase/u8-casecoll-tests: New file.
4303         * tests/unicase/test-u8-casecoll.c: New file.
4304
4305         New module 'unicase/u32-casecoll'.
4306         * lib/unicase/u32-casecoll.c: New file.
4307         * modules/unicase/u32-casecoll: New file.
4308
4309         New module 'unicase/u16-casecoll'.
4310         * lib/unicase/u16-casecoll.c: New file.
4311         * modules/unicase/u16-casecoll: New file.
4312
4313         New module 'unicase/u8-casecoll'.
4314         * lib/unicase/u8-casecoll.c: New file.
4315         * lib/unicase/u-casecoll.h: New file.
4316         * modules/unicase/u8-casecoll: New file.
4317
4318         New module 'unicase/u32-casexfrm'.
4319         * lib/unicase/u32-casexfrm.c: New file.
4320         * modules/unicase/u32-casexfrm: New file.
4321
4322         New module 'unicase/u16-casexfrm'.
4323         * lib/unicase/u16-casexfrm.c: New file.
4324         * modules/unicase/u16-casexfrm: New file.
4325
4326         New module 'unicase/u8-casexfrm'.
4327         * lib/unicase/u8-casexfrm.c: New file.
4328         * lib/unicase/u-casexfrm.h: New file.
4329         * modules/unicase/u8-casexfrm: New file.
4330
4331         Tests for module 'unicase/u32-casecmp'.
4332         * modules/unicase/u32-casecmp-tests: New file.
4333         * tests/unicase/test-u32-casecmp.c: New file.
4334
4335         Tests for module 'unicase/u16-casecmp'.
4336         * modules/unicase/u16-casecmp-tests: New file.
4337         * tests/unicase/test-u16-casecmp.c: New file.
4338
4339         Tests for module 'unicase/u8-casecmp'.
4340         * modules/unicase/u8-casecmp-tests: New file.
4341         * tests/unicase/test-u8-casecmp.c: New file.
4342         * tests/unicase/test-casecmp.h: New file.
4343
4344         New module 'unicase/u32-casecmp'.
4345         * lib/unicase/u32-casecmp.c: New file.
4346         * modules/unicase/u32-casecmp: New file.
4347
4348         New module 'unicase/u16-casecmp'.
4349         * lib/unicase/u16-casecmp.c: New file.
4350         * modules/unicase/u16-casecmp: New file.
4351
4352         New module 'unicase/u8-casecmp'.
4353         * lib/unicase/u8-casecmp.c: New file.
4354         * lib/unicase/u-casecmp.h: New file.
4355         * modules/unicase/u8-casecmp: New file.
4356
4357         Tests for module 'unicase/u32-casefold'.
4358         * modules/unicase/u32-casefold-tests: New file.
4359         * tests/unicase/test-u32-casefold.c: New file.
4360
4361         Tests for module 'unicase/u16-casefold'.
4362         * modules/unicase/u16-casefold-tests: New file.
4363         * tests/unicase/test-u16-casefold.c: New file.
4364
4365         Tests for module 'unicase/u8-casefold'.
4366         * modules/unicase/u8-casefold-tests: New file.
4367         * tests/unicase/test-u8-casefold.c: New file.
4368
4369         New module 'unicase/u32-casefold'.
4370         * lib/unicase/u32-casefold.c: New file.
4371         * modules/unicase/u32-casefold: New file.
4372
4373         New module 'unicase/u16-casefold'.
4374         * lib/unicase/u16-casefold.c: New file.
4375         * modules/unicase/u16-casefold: New file.
4376
4377         New module 'unicase/u8-casefold'.
4378         * lib/unicase/u8-casefold.c: New file.
4379         * lib/unicase/u-casefold.h: New file.
4380         * modules/unicase/u8-casefold: New file.
4381
4382         New module 'unicase/tocasefold'.
4383         * lib/unicase/casefold.h: New file.
4384         * lib/unicase/tocasefold.c: New file.
4385         * lib/unicase/tocasefold.h: New file, generated by gen-uni-tables.c.
4386         * modules/unicase/tocasefold: New file.
4387
4388         Tests for module 'unicase/u32-totitle'.
4389         * modules/unicase/u32-totitle-tests: New file.
4390         * tests/unicase/test-u32-totitle.c: New file.
4391
4392         Tests for module 'unicase/u16-totitle'.
4393         * modules/unicase/u16-totitle-tests: New file.
4394         * tests/unicase/test-u16-totitle.c: New file.
4395
4396         Tests for module 'unicase/u8-totitle'.
4397         * modules/unicase/u8-totitle-tests: New file.
4398         * tests/unicase/test-u8-totitle.c: New file.
4399
4400         New module 'unicase/u32-totitle'.
4401         * lib/unicase/u32-totitle.c: New file.
4402         * modules/unicase/u32-totitle: New file.
4403
4404         New module 'unicase/u16-totitle'.
4405         * lib/unicase/u16-totitle.c: New file.
4406         * modules/unicase/u16-totitle: New file.
4407
4408         New module 'unicase/u8-totitle'.
4409         * lib/unicase/u8-totitle.c: New file.
4410         * lib/unicase/u-totitle.h: New file.
4411         * modules/unicase/u8-totitle: New file.
4412
4413         Tests for module 'unicase/u32-tolower'.
4414         * modules/unicase/u32-tolower-tests: New file.
4415         * tests/unicase/test-u32-tolower.c: New file.
4416
4417         Tests for module 'unicase/u16-tolower'.
4418         * modules/unicase/u16-tolower-tests: New file.
4419         * tests/unicase/test-u16-tolower.c: New file.
4420
4421         Tests for module 'unicase/u8-tolower'.
4422         * modules/unicase/u8-tolower-tests: New file.
4423         * tests/unicase/test-u8-tolower.c: New file.
4424
4425         New module 'unicase/u32-tolower'.
4426         * lib/unicase/u32-tolower.c: New file.
4427         * modules/unicase/u32-tolower: New file.
4428
4429         New module 'unicase/u16-tolower'.
4430         * lib/unicase/u16-tolower.c: New file.
4431         * modules/unicase/u16-tolower: New file.
4432
4433         New module 'unicase/u8-tolower'.
4434         * lib/unicase/u8-tolower.c: New file.
4435         * modules/unicase/u8-tolower: New file.
4436
4437         Tests for module 'unicase/u32-toupper'.
4438         * modules/unicase/u32-toupper-tests: New file.
4439         * tests/unicase/test-u32-toupper.c: New file.
4440
4441         Tests for module 'unicase/u16-toupper'.
4442         * modules/unicase/u16-toupper-tests: New file.
4443         * tests/unicase/test-u16-toupper.c: New file.
4444
4445         Tests for module 'unicase/u8-toupper'.
4446         * modules/unicase/u8-toupper-tests: New file.
4447         * tests/unicase/test-u8-toupper.c: New file.
4448
4449         New module 'unicase/u32-toupper'.
4450         * lib/unicase/u32-toupper.c: New file.
4451         * modules/unicase/u32-toupper: New file.
4452
4453         New module 'unicase/u16-toupper'.
4454         * lib/unicase/u16-toupper.c: New file.
4455         * modules/unicase/u16-toupper: New file.
4456
4457         New module 'unicase/u8-toupper'.
4458         * lib/unicase/u8-toupper.c: New file.
4459         * modules/unicase/u8-toupper: New file.
4460
4461         New module 'unicase/u32-casemap'.
4462         * lib/unicase/u32-casemap.c: New file.
4463         * modules/unicase/u32-casemap: New file.
4464
4465         New module 'unicase/u16-casemap'.
4466         * lib/unicase/u16-casemap.c: New file.
4467         * modules/unicase/u16-casemap: New file.
4468
4469         New module 'unicase/u8-casemap'.
4470         * lib/unicase/unicasemap.h: New file.
4471         * lib/unicase/u8-casemap.c: New file.
4472         * lib/unicase/u-casemap.h: New file.
4473         * modules/unicase/u8-casemap: New file.
4474
4475         New module 'unicase/special-casing'.
4476         * lib/unicase/special-casing.h: New file.
4477         * lib/unicase/special-casing.c: New file.
4478         * lib/unicase/special-casing-table.gperf: New file, generated by
4479         gen-uni-tables.c.
4480         * modules/unicase/special-casing: New file.
4481
4482         Tests for module 'unicase/locale-language'.
4483         * modules/unicase/locale-language-tests: New file.
4484         * tests/unicase/test-locale-language.sh: New file.
4485         * tests/unicase/test-locale-language.c: New file.
4486
4487         New module 'unicase/locale-language'.
4488         * lib/unicase/locale-language.c: New file.
4489         * lib/unicase/locale-languages.gperf: New file.
4490         * modules/unicase/locale-language: New file.
4491
4492         Generate more tables for case conversion and case folding.
4493         * lib/gen-uni-tables.c (SCC_*): New enum items.
4494         (struct special_casing_rule): New type.
4495         (casing_rules, num_casing_rules, allocated_casing_rules): New
4496         variables.
4497         (add_casing_rule, fill_casing_rules): New functions.
4498         (struct casefold_rule): New type.
4499         (casefolding_rules, num_casefolding_rules,
4500         allocated_casefolding_rules): New variables.
4501         (fill_casefolding_rules): New function.
4502         (unicode_casefold): New variable.
4503         (to_casefold, redistribute_casefolding_rules, compare_casing_rules,
4504         sort_casing_rules, output_casing_rules): New functions.
4505         (main): Accept to more arguments: SpecialCasing.txt and
4506         CaseFolding.txt. Invoke fill_casing_rules, fill_casefolding_rules,
4507         redistribute_casefolding_rules, sort_casing_rules, output_casing_rules.
4508         Output mapping for casefolding.
4509
4510         * lib/unicase.h: Include stdbool.h, uninorm.h.
4511         (u8_toupper, u16_toupper, u32_toupper, u8_tolower, u16_tolower,
4512         u32_tolower, u8_totitle, u16_totitle, u32_totitle): Add nf argument.
4513         (u8_casefold, u16_casefold, u32_casefold): Add iso639_language and nf
4514         arguments.
4515         (u8_casecmp, u16_casecmp, u32_casecmp): Add iso639_language, nf,
4516         resultp arguments.
4517         (u8_casexfrm, u16_casexfrm, u32_casexfrm): New declarations.
4518         (u8_casecoll, u16_casecoll, u32_casecoll): Add iso639_language, nf,
4519         resultp arguments.
4520         (u8_is_uppercase, u16_is_uppercase, u32_is_uppercase, u8_is_lowercase,
4521         u16_is_lowercase, u32_is_lowercase, u8_is_titlecase, u16_is_titlecase,
4522         u32_is_titlecase, u8_is_casefolded, u16_is_casefolded,
4523         u32_is_casefolded, u8_is_cased, u16_is_cased, u32_is_cased): New
4524         declarations.
4525         * modules/unicase/base (Depends-on): Add uninorm/base, stdbool.
4526
4527 2009-03-08  Bruno Haible  <bruno@clisp.org>
4528
4529         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp, u8_normcoll,
4530         u16_normcoll, u32_normcoll): Rename argument 'result' to 'resultp'.
4531         * lib/uninorm/u-normcmp.h (FUNC): Likewise.
4532         * lib/uninorm/u-normcoll.h (FUNC): Likewise.
4533
4534 2009-03-07  Bruno Haible  <bruno@clisp.org>
4535
4536         Adjust u*_normcmp, u*_normcoll API.
4537         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp, u8_normcoll,
4538         u16_normcoll, u32_normcoll): Change failure conventions.
4539         * lib/uninorm/u-normcmp.h (FUNC): Upon failure, store the error code in
4540         errno and return -1.
4541         * lib/uninorm/u-normcoll.h (FUNC): Likewise.
4542
4543 2009-03-07  Bruno Haible  <bruno@clisp.org>
4544
4545         Tests for module 'uninorm/u32-normcoll'.
4546         * modules/uninorm/u32-normcoll-tests: New file.
4547         * tests/uninorm/test-u32-normcoll.c: New file.
4548
4549         Tests for module 'uninorm/u16-normcoll'.
4550         * modules/uninorm/u16-normcoll-tests: New file.
4551         * tests/uninorm/test-u16-normcoll.c: New file.
4552
4553         Tests for module 'uninorm/u8-normcoll'.
4554         * modules/uninorm/u8-normcoll-tests: New file.
4555         * tests/uninorm/test-u8-normcoll.c: New file.
4556
4557 2009-03-07  Bruno Haible  <bruno@clisp.org>
4558
4559         * tests/uninorm/test-u32-normcmp.h: New file, extracted from
4560         tests/uninorm/test-u32-normcmp.c.
4561         * tests/uninorm/test-u32-normcmp.c: Include it.
4562         (test_nonascii): New function, extracted from main. Add some more
4563         tests.
4564         (main): Invoke test_ascii and test_nonascii.
4565         * modules/uninorm/u32-normcmp-tests (Files): Add
4566         tests/uninorm/test-u32-normcmp.h.
4567         (Depends-on): Remove uninorm/u32-normcmp.
4568
4569         * tests/uninorm/test-u16-normcmp.h: New file, extracted from
4570         tests/uninorm/test-u16-normcmp.c.
4571         * tests/uninorm/test-u16-normcmp.c: Include it.
4572         (test_nonascii): New function, extracted from main. Add some more
4573         tests.
4574         (main): Invoke test_ascii and test_nonascii.
4575         * modules/uninorm/u16-normcmp-tests (Files): Add
4576         tests/uninorm/test-u16-normcmp.h.
4577         (Depends-on): Remove uninorm/u16-normcmp.
4578
4579         * tests/uninorm/test-u8-normcmp.h: New file, extracted from
4580         tests/uninorm/test-u8-normcmp.c.
4581         * tests/uninorm/test-u8-normcmp.c: Include it.
4582         (test_nonascii): New function, extracted from main. Add some more
4583         tests.
4584         (main): Invoke test_ascii and test_nonascii.
4585         * modules/uninorm/u8-normcmp-tests (Files): Add
4586         tests/uninorm/test-u8-normcmp.h.
4587         (Depends-on): Remove uninorm/u8-normcmp.
4588
4589 2009-03-07  Bruno Haible  <bruno@clisp.org>
4590
4591         New module 'uninorm/u32-normcoll'.
4592         * lib/uninorm/u32-normcoll.c: New file.
4593         * modules/uninorm/u32-normcoll: New file.
4594
4595         New module 'uninorm/u16-normcoll'.
4596         * lib/uninorm/u16-normcoll.c: New file.
4597         * modules/uninorm/u16-normcoll: New file.
4598
4599         New module 'uninorm/u8-normcoll'.
4600         * lib/uninorm.h (u8_normcoll, u16_normcoll, u32_normcoll): New
4601         declarations.
4602         * lib/uninorm/u8-normcoll.c: New file.
4603         * lib/uninorm/u-normcoll.h: New file.
4604         * modules/uninorm/u8-normcoll: New file.
4605
4606         New module 'uninorm/u32-normxfrm'.
4607         * lib/uninorm/u32-normxfrm.c: New file.
4608         * modules/uninorm/u32-normxfrm: New file.
4609
4610         New module 'uninorm/u16-normxfrm'.
4611         * lib/uninorm/u16-normxfrm.c: New file.
4612         * modules/uninorm/u16-normxfrm: New file.
4613
4614         New module 'uninorm/u8-normxfrm'.
4615         * lib/uninorm.h (u8_normxfrm, u16_normxfrm, u32_normxfrm): New
4616         declarations.
4617         * lib/uninorm/u8-normxfrm.c: New file.
4618         * lib/uninorm/u-normxfrm.h: New file.
4619         * modules/uninorm/u8-normxfrm: New file.
4620
4621 2009-03-07  Bruno Haible  <bruno@clisp.org>
4622
4623         * modules/uninorm/u8-normcmp (Depends-on): Add uninorm/base.
4624         * modules/uninorm/u16-normcmp (Depends-on): Likewise.
4625         * modules/uninorm/u32-normcmp (Depends-on): Likewise.
4626
4627 2009-03-07  Bruno Haible  <bruno@clisp.org>
4628
4629         New module 'memxfrm'.
4630         * lib/memxfrm.h: New file.
4631         * lib/memxfrm.c: New file.
4632         * modules/memxfrm: New file.
4633
4634 2009-03-07  Bruno Haible  <bruno@clisp.org>
4635
4636         New module 'memcmp2'.
4637         * lib/memcmp2.h: New file.
4638         * lib/memcmp2.c: New file.
4639         * modules/memcmp2: New file.
4640
4641 2009-03-07  Bruno Haible  <bruno@clisp.org>
4642
4643         Tests for module 'uninorm/decomposing-form'.
4644         * modules/uninorm/decomposing-form-tests: New file.
4645         * tests/uninorm/test-decomposing-form.c: New file.
4646
4647         New module 'uninorm/decomposing-form'.
4648         * lib/uninorm.h (uninorm_decomposing_form): New declaration.
4649         * lib/uninorm/normalize-internal.h (struct unicode_normalization_form):
4650         Add 'decomposing_variant' field.
4651         * lib/uninorm/decomposing-form.c: New file.
4652         * lib/uninorm/nfc.c (uninorm_nfc): Update.
4653         * lib/uninorm/nfd.c (uninorm_nfd): Update.
4654         * lib/uninorm/nfkc.c (uninorm_nfkc): Update.
4655         * lib/uninorm/nfkd.c (uninorm_nfkd): Update.
4656         * modules/uninorm/decomposing-form: New file.
4657         * modules/uninorm/nfc (Depends-on): Add uninorm/nfd.
4658         * modules/uninorm/nfkc (Depends-on): Add uninorm/nfkd.
4659
4660 2009-03-07  Bruno Haible  <bruno@clisp.org>
4661
4662         * lib/uninorm/u-normcmp.h (FUNC): Use stack=allocated buffers for small
4663         strings.
4664
4665 2009-03-06  Bruno Haible  <bruno@clisp.org>
4666
4667         Tests for module 'uninorm/u32-normcmp'.
4668         * tests/uninorm/test-u32-normcmp.c: New file.
4669         * modules/uninorm/u32-normcmp-tests: New file.
4670
4671         Tests for module 'uninorm/u16-normcmp'.
4672         * tests/uninorm/test-u16-normcmp.c: New file.
4673         * modules/uninorm/u16-normcmp-tests: New file.
4674
4675         Tests for module 'uninorm/u8-normcmp'.
4676         * tests/uninorm/test-u8-normcmp.c: New file.
4677         * modules/uninorm/u8-normcmp-tests: New file.
4678
4679         New module 'uninorm/u32-normcmp'.
4680         * lib/uninorm/u32-normcmp.c: New file.
4681         * modules/uninorm/u32-normcmp: New file.
4682
4683         New module 'uninorm/u16-normcmp'.
4684         * lib/uninorm/u16-normcmp.c: New file.
4685         * modules/uninorm/u16-normcmp: New file.
4686
4687         New module 'uninorm/u8-normcmp'.
4688         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp): New
4689         declarations.
4690         * lib/uninorm/u8-normcmp.c: New file.
4691         * lib/uninorm/u-normcmp.h: New file.
4692         * modules/uninorm/u8-normcmp: New file.
4693
4694 2009-03-06  Bruno Haible  <bruno@clisp.org>
4695
4696         * lib/w32spawn.h (dup_noinherit): Add cast, to avoid gcc warning.
4697         Reported by Eric Blake.
4698
4699 2009-03-06  Eric Blake  <ebb9@byu.net>
4700             Bruno Haible  <bruno@clisp.org>
4701
4702         * lib/spawni.c (__spawni) [WIN32_NATIVE]: Define as a stub.
4703         * modules/posix_spawn-tests (configure.ac): Define POSIX_SPAWN_PORTED
4704         condition.
4705         (Makefile.am): Do nothing if POSIX_SPAWN_PORTED is false.
4706         * modules/posix_spawnp-tests (configure.ac): Define POSIX_SPAWN_PORTED
4707         condition.
4708         (Makefile.am): Do nothing if POSIX_SPAWN_PORTED is false.
4709
4710 2009-03-06  Eric Blake  <ebb9@byu.net>
4711
4712         * lib/execute.c (execute) [WIN32_NATIVE]: Cast arguments of spawnvpe,
4713         to avoid compiler warnings.
4714         * lib/pipe.c (create_pipe) [WIN32_NATIVE]: Likewise.
4715
4716 2009-03-05  Bruno Haible  <bruno@clisp.org>
4717
4718         * tests/test-ftell.c (main): Disable test beyond end of file on
4719         FreeMiNT.
4720         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
4721
4722 2009-03-05  Kamil Dudka  <kdudka@redhat.com>
4723
4724         * lib/filevercmp.c: Move hidden files up in ordering.
4725         * tests/test-filevercmp.c: Add tests for hidden files.
4726
4727 2009-03-04  Bruno Haible  <bruno@clisp.org>
4728
4729         * modules/visibility (Makefile.am): Augment AM_CFLAGS.
4730         * gnulib-tool (func_emit_lib_Makefile_am): Emit initialization of
4731         AM_CFLAGS.
4732         Reported by Simon Josefsson.
4733
4734 2009-03-03  Bruno Haible  <bruno@clisp.org>
4735
4736         * doc/visibility.texi: Recommend to use HAVE_VISIBILITY as a C macro.
4737         Reported by Simon Josefsson.
4738
4739         * doc/ld-version-script.texi: Update node reference.
4740
4741 2009-03-03  Bruno Haible  <bruno@clisp.org>
4742
4743         * modules/visibility (License): Change to 'unlimited'.
4744         Suggested by Simon Josefsson.
4745
4746 2009-03-03  Jim Meyering  <meyering@redhat.com>
4747
4748         unlinkdir: cannot_unlink_dir may modify process state
4749         * lib/unlinkdir.c (cannot_unlink_dir): Add a comment warning that
4750         it's neither thread-safe nor appropriate for use in a library.
4751
4752 2009-03-03  Eric Blake  <ebb9@byu.net>
4753
4754         test-closein: silence test under Darwin
4755         * tests/test-closein.sh: Ignore stderr from cat, since we don't
4756         care if it dies from EPIPE or EBADF.
4757
4758 2009-03-03  Bruno Haible  <bruno@clisp.org>
4759
4760         * doc/gnulib.texi: Include visibility.texi and ld-version-script.texi
4761         earlier.
4762         * doc/visibility.texi: Fix @node and @section.
4763
4764 2009-03-03  Simon Josefsson  <simon@josefsson.org>
4765
4766         * doc/gnulib.texi: Link to sections for ld version script and
4767         visibility.
4768         * doc/visibility.texi: Add @node and @section.
4769         * modules/ld-version-script: New module.
4770         * m4/ld-version-script.m4: New file.
4771         * doc/ld-version-script.texi: New file.
4772
4773 2009-03-02  David Lutterkort  <lutter@redhat.com>
4774
4775         * lib/safe-alloc.h (__GNUC_PREREQ): New macro.
4776         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
4777
4778 2009-03-02  Bruno Haible  <bruno@clisp.org>
4779
4780         * doc/visibility.texi: Mention libtool's -export-symbols option.
4781
4782 2009-03-02  Jim Meyering  <meyering@redhat.com>
4783
4784         announce-gen: new option: --no-print-checksums
4785         * build-aux/announce-gen (usage): Describe it.
4786         (print_checksums): Print a newline here, not in the [*] footnote.
4787         (main): Honor it.
4788
4789 2009-03-01  Bruno Haible  <bruno@clisp.org>
4790
4791         Use socklen_t in the native Windows replacements prototypes.
4792         * lib/sys_socket.in.h (rpl_getsockopt, rpl_setsockopt): Use socklen_t
4793         instead of 'int'.
4794         * lib/getsockopt.c (rpl_getsockopt): Likewise.
4795         * lib/setsockopt.c (rpl_setsockopt): Likewise.
4796         * modules/getsockopt (Depends-on): Add socklen.
4797         * modules/setsockopt (Depends-on): Add socklen.
4798
4799 2009-03-01  Bruno Haible  <bruno@clisp.org>
4800
4801         * gnulib-tool (sed): Do alias as "sed --posix" if sed's version is at
4802         least 4.2.
4803
4804 2009-03-01  Eric Blake  <ebb9@byu.net>
4805             Bruno Haible  <bruno@clisp.org>
4806
4807         * lib/wait-process.h (wait_subprocess): Describe effect of termsigp on
4808         error messages.
4809         * lib/wait-process.c (wait_subprocess): Omit error message about
4810         deadly signal sent to the child of termsigp != NULL.
4811
4812 2009-03-01  Eric Blake  <ebb9@byu.net>
4813
4814         * lib/wait-process.c (wait_subprocess): Remove unnecessary cast.
4815
4816 2009-03-01  Bruno Haible  <bruno@clisp.org>
4817
4818         Avoid a gcc warning.
4819         * tests/test-sched.c (b): Make global.
4820         Reported by Eric Blake.
4821
4822 2009-01-19  Martin Lambers  <marlam@marlam.de>
4823
4824         Provide POSIX semantics for socket timeout options on W32.
4825         * lib/setsockopt.c: Convert struct timeval to milliseconds on W32.
4826         * lib/getsockopt.c: Convert milliseconds to struct timeval on W32.
4827         * modules/setsockopt: Depend on sys_time module for struct timeval.
4828         * modules/getsockopt: Depend on sys_time module for struct timeval.
4829
4830 2009-03-01  Simon Josefsson  <simon@josefsson.org>
4831
4832         * lib/gai_strerror.c (values): Use EAI_INPROGRESS instead of
4833         __USE_GNU, for consistency with netdb.in.h.
4834         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
4835
4836 2009-03-01  Bruno Haible  <bruno@clisp.org>
4837
4838         More support for FreeMiNT.
4839         * lib/fseeko.c (rpl_fseeko): Complete last commit.
4840         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
4841
4842 2009-03-01  Bruno Haible  <bruno@clisp.org>
4843
4844         More support for FreeMiNT.
4845         * lib/fpurge.c (fpurge): Correct last commit.
4846         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
4847
4848 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4849
4850         Fix unportable awk script in vc-list-files.
4851         * build-aux/vc-list-files: In the replacement awk script, use
4852         substr with a second argument of 1, not zero.
4853         Report by Simon Josefsson.
4854
4855 2009-02-28  Bruno Haible  <bruno@clisp.org>
4856
4857         More support for FreeMiNT.
4858         * lib/freading.c (freading) [__MINT__]: Use new macros that were added
4859         to FreeMiNT today.
4860         * lib/fwriting.c (fwriting): Likewise.
4861         Based on patch by Alan Hourihane <alanh@fairlite.co.uk>.
4862
4863 2009-02-28  Bruno Haible  <bruno@clisp.org>
4864
4865         * tests/test-freadseek.c (main): Disable test beyond end of file on
4866         FreeMiNT.
4867         * tests/test-ftello.c (main): Likewise.
4868         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
4869
4870 2009-02-28  Bruno Haible  <bruno@clisp.org>
4871
4872         Add tentative support for FreeMiNT.
4873         * lib/fbufmode.c (fbufmode) [__MINT__]: Add conditional code.
4874         * lib/fpurge.c (fpurge): Likewise.
4875         * lib/freadable.c (freadable): Likewise.
4876         * lib/freading.c (freading): Likewise.
4877         * lib/freadptr.c (freadptr): Likewise.
4878         * lib/freadseek.c (freadptrinc): Likewise.
4879         * lib/fseeko.c (rpl_fseeko): Likewise.
4880         * lib/fseterr.c (fseterr): Likewise.
4881         * lib/fwritable.c (fwritable): Likewise.
4882         * lib/fwriting.c (fwriting): Likewise.
4883         * lib/freadahead.c (freadahead): Likewise, based on code by Alan
4884         Hourihane.
4885         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
4886
4887 2009-02-28  Bruno Haible  <bruno@clisp.org>
4888
4889         * lib/wait-process.h (wait_subprocess): Clarify restriction regarding
4890         SIGCHLD.
4891         Reported by Jim Meyering.
4892
4893 2009-02-28  Bruno Haible  <bruno@clisp.org>
4894
4895         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Separate the two first tests.
4896         Mention the results of these tests on various platforms.
4897         * doc/posix-functions/fprintf.texi: Mention platforms in canonical
4898         order.
4899         * doc/posix-functions/printf.texi: Likewise.
4900         * doc/posix-functions/snprintf.texi: Likewise.
4901         * doc/posix-functions/sprintf.texi: Likewise.
4902         * doc/posix-functions/vfprintf.texi: Likewise.
4903         * doc/posix-functions/vprintf.texi: Likewise.
4904         * doc/posix-functions/vsnprintf.texi: Likewise.
4905         * doc/posix-functions/vsprintf.texi: Likewise.
4906         * doc/glibc-functions/obstack_printf.texi: Likewise.
4907         * doc/glibc-functions/obstack_vprintf.texi: Likewise.
4908
4909 2009-02-28  Bruno Haible  <bruno@clisp.org>
4910
4911         * build-aux/po/Makefile.in.in: Update from GNU gettext 0.17.
4912         Reported by Loïc Minier <lool@dooz.org>.
4913
4914 2009-02-27  Bruno Haible  <bruno@clisp.org>
4915
4916         * gnulib-tool (func_import): Make the sed expression used to create the
4917         sed script for updating the .gitignore file POSIX compliant.
4918         Reported by Eric Blake.
4919
4920 2009-02-27  Bruno Haible  <bruno@clisp.org>
4921
4922         * gnulib-tool (sed): Don't alias as "sed --posix".
4923         Reported by Eric Blake.
4924
4925 2009-02-27  Bruno Haible  <bruno@clisp.org>
4926
4927         Avoid test link errors.
4928         * modules/uninorm/nfc-tests (test_u32_nfc_big_LDADD): New variable.
4929         * modules/uninorm/nfd-tests (test_u32_nfd_big_LDADD): New variable.
4930         * modules/uninorm/nfkc-tests (test_u32_nfkc_big_LDADD): New variable.
4931         * modules/uninorm/nfkd-tests (test_u32_nfkd_big_LDADD): New variable.
4932         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
4933
4934 2009-02-27  Bruno Haible  <bruno@clisp.org>
4935
4936         Avoid spurious "(cached)" in configure output.
4937         * m4/gnulib-common.m4 (gl_CACHE_VAL_SILENT): New macro.
4938         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Use it instead of AC_CACHE_VAL.
4939         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
4940         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
4941         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
4942         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Likewise.
4943         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
4944         * m4/stdarg.m4 (gl_STDARG_H): Likewise.
4945         Reported by Eric Blake.
4946
4947 2009-02-27  Eric Blake  <ebb9@byu.net>
4948
4949         printf: fix regression in previous patch
4950         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Fix compilation error.
4951
4952 2009-02-27  Bruno Haible  <bruno@clisp.org>
4953
4954         * lib/inttypes.in.h: Test merely whether _LP64 is defined, not its
4955         value.
4956         * lib/stdint.in.h: Likewise.
4957         Suggested by Eric Blake. Reported by Peter Bray <pdb_ml@yahoo.com.au>.
4958
4959 2009-02-27  Eric Blake  <ebb9@byu.net>
4960
4961         doc: mention more functions added in cygwin 1.7.0
4962         * doc/posix-functions/mbsnrtowcs.texi: Mention recent cygwin 1.7.0
4963         addition.
4964         * doc/posix-functions/open_wmemstream.texi: Likewise.
4965         * doc/posix-functions/wcsnlen.texi: Likewise.
4966         * doc/posix-functions/wcsnrtombs.texi: Likewise.
4967         * doc/posix-functions/wcstod.texi: Likewise.
4968         * doc/posix-functions/wcstof.texi: Likewise.
4969         * doc/posix-functions/wcstoimax.texi: Likewise.
4970         * doc/posix-functions/wcstok.texi: Likewise.
4971         * doc/posix-functions/wcstoumax.texi: Likewise.
4972
4973         Detect bug in cygwin 1.5.x *printf on 1-character %ls.
4974         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Enhance filter.
4975         * doc/posix-functions/fprintf.texi: Update.
4976         * doc/posix-functions/printf.texi: Update.
4977         * doc/posix-functions/snprintf.texi: Update.
4978         * doc/posix-functions/sprintf.texi: Update.
4979         * doc/posix-functions/vfprintf.texi: Update.
4980         * doc/posix-functions/vprintf.texi: Update.
4981         * doc/posix-functions/vsnprintf.texi: Update.
4982         * doc/posix-functions/vsprintf.texi: Update.
4983         * doc/glibc-functions/obstack_printf.texi: Update.
4984         * doc/glibc-functions/obstack_vprintf.texi: Update.
4985
4986 2009-02-26  Eric Blake  <ebb9@byu.net>
4987
4988         avoid gcc 3.4.3 bug on long double NaN on Irix 6.5
4989         * tests/nan.h (NaNl): Rewrite as function on Irix, to avoid
4990         compilation bug by using runtime conversion.
4991         * m4/isfinite.m4 (gl_ISFINITE): Likewise.
4992         * m4/isnanl.m4 (gl_FUNC_ISNANL): Likewise.
4993         * modules/ceill-tests (Files): Use nan.h.
4994         * modules/floorl-tests (Files): Likewise.
4995         * modules/frexpl-tests (Files): Likewise.
4996         * modules/isnanl-tests (Files): Likewise.
4997         * modules/ldexpl-tests (Files): Likewise.
4998         * modules/roundl-tests (Files): Likewise.
4999         * modules/truncl-tests (Files): Likewise.
5000         * tests/test-ceill.c (main): Use a working NaN.
5001         * tests/test-floorl.c (main): Likewise.
5002         * tests/test-frexpl.c (main): Likewise.
5003         * tests/test-isnan.c (test_long_double): Likewise.
5004         * tests/test-isnanl.h (main): Likewise.
5005         * tests/test-ldexpl.h (main): Likewise.
5006         * tests/test-roundl.h (main): Likewise.
5007         * tests/test-truncl.h (main): Likewise.
5008         See http://lists.gnu.org/archive/html/bug-gnulib/2009-02/msg00190.html.
5009
5010 2009-02-26  Eric Blake  <ebb9@byu.net>
5011             Bruno Haible  <bruno@clisp.org>
5012
5013         Work around a *printf bug with %ls on Solaris.
5014         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Also test whether, when a
5015         precision is specified, sprintf stops converting the wide string
5016         argument when the number of bytes that have been produced by this
5017         conversion equals or exceeds the precision.
5018         * doc/posix-functions/fprintf.texi: Update.
5019         * doc/posix-functions/printf.texi: Update.
5020         * doc/posix-functions/snprintf.texi: Update.
5021         * doc/posix-functions/sprintf.texi: Update.
5022         * doc/posix-functions/vfprintf.texi: Update.
5023         * doc/posix-functions/vprintf.texi: Update.
5024         * doc/posix-functions/vsnprintf.texi: Update.
5025         * doc/posix-functions/vsprintf.texi: Update.
5026         * doc/glibc-functions/obstack_printf.texi: Update.
5027         * doc/glibc-functions/obstack_vprintf.texi: Update.
5028
5029 2009-02-26  Eric Blake  <ebb9@byu.net>
5030
5031         stdlib: favor compiler check of random.h
5032         * m4/stdlib_h.m4 (gl_STDLIB_H): Skip preprocessor check.  Needed
5033         to avoid an ObjC random.h installed by Swarm.
5034
5035 2009-02-26  Bruno Haible  <bruno@clisp.org>
5036
5037         Work around *printf bug with %g directive and 0.0 on HP-UX 10.20.
5038         * m4/printf.m4 (gl_PRINTF_INFINITE): Also test for %g output of -0.0.
5039         Reported by Gary V. Vaughan <gary@gnu.org>.
5040
5041 2009-02-26  Bruno Haible  <bruno@clisp.org>
5042
5043         Fix *printf behaviour regarding the %ls directive.
5044         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): New macro.
5045         * lib/vasnprintf.c (local_wcslen, VASNPRINTF): Handle
5046         NEED_PRINTF_DIRECTIVE_LS.
5047         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_LS): New macro.
5048         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
5049         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5050         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS and test its result. Invoke
5051         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS.
5052         * m4/dprintf-posix.m4 (gl_FUNC_DPRINTF_POSIX): Likewise.
5053         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
5054         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5055         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5056         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5057         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5058         * m4/vdprintf-posix.m4 (gl_FUNC_VDPRINTF_POSIX): Likewise.
5059         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5060         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5061         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5062         * doc/posix-functions/fprintf.texi: Update.
5063         * doc/posix-functions/printf.texi: Update.
5064         * doc/posix-functions/snprintf.texi: Update.
5065         * doc/posix-functions/sprintf.texi: Update.
5066         * doc/posix-functions/vfprintf.texi: Update.
5067         * doc/posix-functions/vprintf.texi: Update.
5068         * doc/posix-functions/vsnprintf.texi: Update.
5069         * doc/posix-functions/vsprintf.texi: Update.
5070         * doc/glibc-functions/obstack_printf.texi: Update.
5071         * doc/glibc-functions/obstack_vprintf.texi: Update.
5072         Reported by Eric Blake.
5073
5074 2009-02-25  Bruno Haible  <bruno@clisp.org>
5075
5076         * m4/mbrtowc.m4 (gl_MBRTOWC_NUL_RETVAL): Update guess for Solaris 8
5077         with known value.
5078         Reported by Gary V. Vaughan <gary@gnu.org>.
5079
5080 2009-02-25  Bruno Haible  <bruno@clisp.org>
5081
5082         Work around mbrtowc bug in zh_CN.GB18030 locale on Solaris 8.
5083         * m4/mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): New macro.
5084         (gl_MBSTATE_T_BROKEN): Invoke it. Replace mbstate_t when it says "no".
5085         * doc/posix-functions/mbrtowc.texi: Document the Solaris 8 bug.
5086         Reported by Gary V. Vaughan <gary@gnu.org>.
5087
5088 2009-02-25  Bruno Haible  <bruno@clisp.org>
5089
5090         Work around broken INT8_MAX, UINT8_MAX etc. values on HP-UX 11.23.
5091         * m4/stdint.m4 (gl_STDINT_H): Also check whether the expansions of
5092         INT8_MAX, UINT8_MAX etc. contain casts to elementary types.
5093         * doc/posix-headers/stdint.texi: Mention the HP-UX bug.
5094         Reported by Gary V. Vaughan <gary@gnu.org>.
5095
5096 2009-02-25  Eric Blake  <ebb9@byu.net>
5097
5098         tests: skip fseek/ftell tests if ungetc is broken
5099         * m4/ungetc.m4: New file.
5100         * modules/fseek-tests: Split test, so ungetc dependency is
5101         separate from rest of test.
5102         * modules/fseeko-tests: Likewise.
5103         * modules/ftell-tests: Likewise.
5104         * modules/ftello-tests: Likewise.
5105         * tests/test-fseek.c (main): Isolate ungetc dependency.
5106         * tests/test-fseeko.c (main): Likewise.
5107         * tests/test-ftell.c (main): Likewise.
5108         * tests/test-ftello.c (main): Likewise.
5109         * tests/test-fseek2.sh: New file.
5110         * tests/test-fseeko2.sh: Likewise.
5111         * tests/test-ftell2.sh: Likewise.
5112         * tests/test-ftello2.sh: Likewise.
5113
5114 2009-02-25  OndÅ™ej Vašík  <ovasik@redhat.com>
5115
5116         test-getaddrinfo: fix usage of skip return code 77
5117         * tests/test-gettaddrinfo.c: Return skip code 77 only
5118         for first occurance of skip (4x77 is not 77)
5119
5120 2009-02-25  Gary V. Vaughan  <gary@gnu.org>
5121
5122         strtod: avoid C99 decl-after-statement
5123         * m4/strtod.m4 (gl_FUNC_STRTOD): Rearrange declaration.
5124
5125 2009-02-24  Eric Blake  <ebb9@byu.net>
5126
5127         strtod: detect HP-UX 11.31 bug
5128         * m4/strtod.m4 (gl_FUNC_STRTOD): Detect errno handling bug.
5129         Reported by Gary V. Vaughan.
5130
5131 2009-02-23  Bruno Haible  <bruno@clisp.org>
5132
5133         Fix invalid read past end of memory block.
5134         * lib/vasnprintf.c (DCHAR_SET): Define.
5135         (local_wcslen): Define only when needed.
5136         (local_strnlen, local_wcsnlen): New functions.
5137         (VASNPRINTF) [!USE_SNPRINTF && HAVE_WCHAR_T]: Implement the %s and %ls
5138         directives that involve a conversion ourselves.
5139         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for strnlen,
5140         wcsnlen, mbrtowc, wcrtomb.
5141         * tests/test-vasnprintf-posix.c (test_function): Add tests for %.*s.
5142         * tests/test-vasprintf-posix.c (test_function): Likewise.
5143         * tests/test-snprintf-posix.h (test_function): Likewise.
5144         * tests/test-sprintf-posix.h (test_function): Likewise.
5145         Reported by Ben Pfaff <blp@cs.stanford.edu>.
5146
5147 2009-02-22  Bruno Haible  <bruno@clisp.org>
5148
5149         Implement new clarified decomposition of Hangul syllables.
5150         * lib/uninorm/decomposition.c (uc_decomposition): For Hangul syllables
5151         of type LTV, return only a pairwise decomposition.
5152         * lib/uninorm/canonical-decomposition.c (uc_canonical_decomposition):
5153         Likewise.
5154         * tests/uninorm/test-decomposition.c (main): Updated expected result.
5155         * tests/uninorm/test-canonical-decomposition.c (main): Likewise.
5156         * tests/uninorm/test-compat-decomposition.c (main): Likewise.
5157
5158 2009-02-22  Bruno Haible  <bruno@clisp.org>
5159
5160         * lib/uninorm/u-normalize-internal.h (FUNC): At the end, handle
5161         zero-length results and shrink excess allocated memory.
5162         * tests/uninorm/test-u8-nfc.c (test_u8_nfc): Check empty string result.
5163         * tests/uninorm/test-u8-nfd.c (test_u8_nfd): Likewise.
5164         * tests/uninorm/test-u8-nfkc.c (test_u8_nfkc): Likewise.
5165         * tests/uninorm/test-u8-nfkd.c (test_u8_nfkd): Likewise.
5166         * tests/uninorm/test-u16-nfc.c (test_u16_nfc): Likewise.
5167         * tests/uninorm/test-u16-nfd.c (test_u16_nfd): Likewise.
5168         * tests/uninorm/test-u16-nfkc.c (test_u16_nfkc): Likewise.
5169         * tests/uninorm/test-u16-nfkd.c (test_u16_nfkd): Likewise.
5170         * tests/uninorm/test-u32-nfc.c (test_u32_nfc): Likewise.
5171         * tests/uninorm/test-u32-nfd.c (test_u32_nfd): Likewise.
5172         * tests/uninorm/test-u32-nfkc.c (test_u32_nfkc): Likewise.
5173         * tests/uninorm/test-u32-nfkd.c (test_u32_nfkd): Likewise.
5174
5175 2009-02-21  Bruno Haible  <bruno@clisp.org>
5176
5177         * doc/gnulib.texi: Include safe-alloc.texi earlier.
5178         * doc/safe-alloc.texi: Terminate sentences with a period. Use two
5179         spaces after a period. Put a space between a macro name and its
5180         argument list. Trivial rewordings.
5181         * lib/safe-alloc.c: Include safe-alloc.h right after config.h.
5182         * tests/test-safe-alloc.c: Likewise. Include stdlib.h.
5183         (main): Return 0 explicitly.
5184
5185 2009-02-21  Bruno Haible  <bruno@clisp.org>
5186
5187         Tests for module 'uninorm/filter'.
5188         * tests/uninorm/test-uninorm-filter-nfc.c: New file.
5189         * modules/uninorm/filter-tests: New file.
5190
5191         New module 'uninorm/filter'.
5192         * lib/uninorm.h (uninorm_filter_create, uninorm_filter_write,
5193         uninorm_filter_flush, uninorm_filter_free): New declarations.
5194         * lib/uninorm/uninorm-filter.c: New file.
5195         * modules/uninorm/filter: New file.
5196
5197 2009-02-21  Bruno Haible  <bruno@clisp.org>
5198
5199         Tests for module 'uninorm/nfkc'.
5200         * tests/uninorm/test-nfkc.c: New file.
5201         * tests/uninorm/test-u8-nfkc.c: New file.
5202         * tests/uninorm/test-u16-nfkc.c: New file.
5203         * tests/uninorm/test-u32-nfkc.c: New file.
5204         * tests/uninorm/test-u32-nfkc-big.sh: New file.
5205         * tests/uninorm/test-u32-nfkc-big.c: New file.
5206         * modules/uninorm/nfkc-tests: New file.
5207
5208         New module 'uninorm/nfkc'.
5209         * lib/uninorm/nfkc.c: New file.
5210         * modules/uninorm/nfkc: New file.
5211
5212         Tests for module 'uninorm/nfkd'.
5213         * tests/uninorm/test-nfkd.c: New file.
5214         * tests/uninorm/test-u8-nfkd.c: New file.
5215         * tests/uninorm/test-u16-nfkd.c: New file.
5216         * tests/uninorm/test-u32-nfkd.c: New file.
5217         * tests/uninorm/test-u32-nfkd-big.sh: New file.
5218         * tests/uninorm/test-u32-nfkd-big.c: New file.
5219         * modules/uninorm/nfkd-tests: New file.
5220
5221         New module 'uninorm/nfkd'.
5222         * lib/uninorm/nfkd.c: New file.
5223         * modules/uninorm/nfkd: New file.
5224
5225         Tests for module 'uninorm/nfc'.
5226         * tests/uninorm/test-nfc.c: New file.
5227         * tests/uninorm/test-u8-nfc.c: New file.
5228         * tests/uninorm/test-u16-nfc.c: New file.
5229         * tests/uninorm/test-u32-nfc.c: New file.
5230         * tests/uninorm/test-u32-nfc-big.sh: New file.
5231         * tests/uninorm/test-u32-nfc-big.c: New file.
5232         * modules/uninorm/nfc-tests: New file.
5233
5234         New module 'uninorm/nfc'.
5235         * lib/uninorm/nfc.c: New file.
5236         * modules/uninorm/nfc: New file.
5237
5238         Tests for module 'uninorm/nfd'.
5239         * tests/uninorm/test-nfd.c: New file.
5240         * tests/uninorm/test-u8-nfd.c: New file.
5241         * tests/uninorm/test-u16-nfd.c: New file.
5242         * tests/uninorm/test-u32-nfd.c: New file.
5243         * tests/uninorm/test-u32-nfd-big.sh: New file.
5244         * tests/uninorm/test-u32-nfd-big.c: New file.
5245         * tests/uninorm/test-u32-normalize-big.h: New file.
5246         * tests/uninorm/test-u32-normalize-big.c: New file.
5247         * tests/uninorm/NormalizationTest.txt: New file, created from
5248         Unicode 5.1.0 NormalizationTest.txt.
5249         * modules/uninorm/nfd-tests: New file.
5250
5251         New module 'uninorm/nfd'.
5252         * lib/uninorm/nfd.c: New file.
5253         * modules/uninorm/nfd: New file.
5254
5255         New module 'uninorm/u32-normalize'.
5256         * lib/uninorm/u32-normalize.c: New file.
5257         * modules/uninorm/u32-normalize: New file.
5258
5259         New module 'uninorm/u16-normalize'.
5260         * lib/uninorm/u16-normalize.c: New file.
5261         * modules/uninorm/u16-normalize: New file.
5262
5263         New module 'uninorm/u8-normalize'.
5264         * lib/uninorm/u8-normalize.c: New file.
5265         * lib/uninorm/normalize-internal.h: New file.
5266         * lib/uninorm/u-normalize-internal.h: New file.
5267         * modules/uninorm/u8-normalize: New file.
5268
5269         New module 'uninorm/decompose-internal'.
5270         * lib/uninorm/decompose-internal.c: New file.
5271         * modules/uninorm/decompose-internal: New file.
5272
5273         Tests for module 'uninorm/composition'.
5274         * tests/uninorm/test-composition.c: New file.
5275         * modules/uninorm/composition-tests: New file.
5276
5277         New module 'uninorm/composition'.
5278         * lib/uninorm/composition.c: New file.
5279         * lib/uninorm/composition-table.gperf: New file, generated by
5280         gen-uni-tables.
5281         * modules/uninorm/composition: New file.
5282
5283         Tests for module 'uninorm/compat-decomposition'.
5284         * tests/uninorm/test-compat-decomposition.c: New file.
5285         * modules/uninorm/compat-decomposition-tests: New file.
5286
5287         New module 'uninorm/compat-decomposition'.
5288         * lib/uninorm/decompose-internal.h: New file.
5289         * lib/uninorm/compat-decomposition.c: New file.
5290         * modules/uninorm/compat-decomposition: New file.
5291
5292         Tests for module 'uninorm/canonical-decomposition'.
5293         * tests/uninorm/test-canonical-decomposition.c: New file.
5294         * modules/uninorm/canonical-decomposition-tests: New file.
5295
5296         New module 'uninorm/canonical-decomposition'.
5297         * lib/uninorm/canonical-decomposition.c: New file.
5298         * modules/uninorm/canonical-decomposition: New file.
5299
5300         Tests for module 'uninorm/decomposition'.
5301         * tests/uninorm/test-decomposition.c: New file.
5302         * modules/uninorm/decomposition-tests: New file.
5303
5304         New module 'uninorm/decomposition'.
5305         * lib/uninorm/decomposition.c: New file.
5306         * modules/uninorm/decomposition: New file.
5307
5308         New module 'uninorm/decomposition-table'.
5309         * lib/uninorm/decomposition-table.h: New file.
5310         * lib/uninorm/decomposition-table.c: New file.
5311         * lib/uninorm/decomposition-table1.h: New file, generated by
5312         gen-uni-tables.
5313         * lib/uninorm/decomposition-table2.h: New file, generated by
5314         gen-uni-tables.
5315         * modules/uninorm/decomposition-table: New file.
5316
5317         * lib/gen-uni-tables.c (MAX_DECOMP_LENGTH): New macro.
5318         (UC_DECOMP_*): New enumeration items.
5319         (get_decomposition): New function.
5320         (struct decomp_table): New type.
5321         (output_decomposition, output_decomposition_tables): New functions.
5322         (unicode_composition_exclusions): New variable.
5323         (fill_composition_exclusions, debug_output_composition_tables): New
5324         functions.
5325         (main): Accept one more argument. Invoke fill_composition_exclusions.
5326         Output decomposition and composition tables.
5327
5328         New module 'uninorm/base'.
5329         * lib/uninorm.h: New file.
5330         * lib/unictype.h: Update comment.
5331         * modules/uninorm/base: New file.
5332
5333 2009-02-21  David Lutterkort  <lutter@redhat.com>
5334
5335         Tests for module 'safe-alloc'.
5336         * tests/test-safe-alloc.c: New file.
5337         * modules/safe-alloc-tests: New file.
5338
5339         New module 'safe-alloc'.
5340         * lib/safe-alloc.h: New file.
5341         * lib/safe-alloc.c: New file.
5342         * m4/safe-alloc.m4: New file.
5343         * modules/safe-alloc: New file.
5344         * doc/safe-alloc.texi: New file.
5345         * doc/gnulib.texi: Include it.
5346         * MODULES.html.sh (Memory management functions <stdlib.h>): Add
5347         safe-alloc.
5348
5349 2009-02-18  Bruno Haible  <bruno@clisp.org>
5350
5351         Fix link error on non-glibc systems.
5352         * modules/uniwbrk/ulc-wordbreaks-tests (test_ulc_wordbreaks_LDADD): New
5353         variable.
5354         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
5355
5356 2009-02-18  Jim Meyering  <meyering@redhat.com>
5357
5358         fts: avoid used-uninitialized error due to recent change
5359         * lib/fts.c (fts_read): Guard uses of the new member,
5360         parent->fts_n_dirs_remaining, since it's not relevant for
5361         the parent of a directory specified on the command-line.
5362
5363 2009-02-17  James Youngman  <jay@gnu.org>
5364             Bruno Haible  <bruno@clisp.org>
5365
5366         * m4/include_next.m4: Reformulate comment.
5367
5368 2009-02-16  Jim Meyering  <meyering@redhat.com>
5369
5370         fts: add #if guards so that the fts_lgpl module still builds
5371         * lib/fts.c: Guard just-added hash-table-using parts with
5372         #if GNULIB_FTS, so as not to break builds of the fts_lgpl module.
5373         Reported by Simon Josefsson.
5374
5375 2009-02-15  Bruno Haible  <bruno@clisp.org>
5376
5377         * modules/array-mergesort-tests: New file.
5378         * tests/test-array-mergesort.c: New file.
5379
5380         New module 'array-mergesort'.
5381         * modules/array-mergesort: New file.
5382         * lib/array-mergesort.h: New file.
5383
5384 2009-02-15  Bruno Haible  <bruno@clisp.org>
5385
5386         Fix 2009-02-07 commit.
5387         * lib/gen-uni-tables.c (output_predicate, output_category,
5388         output_combclass, output_bidi_category, output_decimal_digit,
5389         output_digit, output_numeric, output_mirror, output_scripts,
5390         output_ident_category, output_simple_mapping): Fix format directives.
5391         (output_lbp, output_wbp): Don't convert -1 to a size_t implicitly.
5392
5393 2009-02-15  Albert Chin-A-Young  <china@thewrittenword.com>
5394
5395         * m4/include_next.m4: Update comment about IBM C 9.0/10.1 bug, now that
5396         fixes are available from IBM.
5397
5398 2009-02-13  Jim Meyering  <meyering@redhat.com>
5399
5400         fts: arrange not to stat non-directories in more cases
5401         This makes GNU find (when it doesn't need to stat each file)
5402         *much* more efficient at traversing reiserfs file systems.
5403         * lib/fts_.h (struct ftsent) [fts_n_dirs_remaining]: New member.
5404         (struct FTS) [fts_leaf_optimization_works_ht]: Add member.
5405         * lib/fts.c (fts_close): Free ->fts_leaf_optimization_works_ht.
5406         (S_MAGIC_REISERFS, S_MAGIC_PROC): Define.
5407         (leaf_optimization_applies): New function.
5408         (LCO_hash, LCO_compare): New helper functions.
5409         (link_count_optimize_ok): New function.
5410         (fts_stat): Initialize new member (if dir).
5411         (fts_read): Decrement parent's fts_n_dirs_remaining count if
5412         we've just stat'ed a directory.  Skip the stat call when possible.
5413         ---
5414         Note this AFS-related exchange:
5415         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=143111
5416         and note find's pioctl call in find/fstype.c.
5417         But that is necessary only if you want to enable the
5418         optimization for AFS, and for now, I don't.
5419
5420         fts: move a function definition "up" (no semantic change)
5421         * lib/fts.c (dirent_inode_sort_may_be_useful): Move definition
5422         "up" to precede upcoming use of a related function.
5423
5424 2009-02-11  Jim Meyering  <meyering@redhat.com>
5425
5426         fts: correct internal computation of nlinks (optimization-related)
5427         * lib/fts.c (fts_build): ISSET(FTS_NOSTAT) has no bearing on
5428         whether the current entry is a directory, so don't test it.
5429
5430 2009-02-10  Bruno Haible  <bruno@clisp.org>
5431
5432         Tests for module 'uniwbrk/ulc-wordbreaks'.
5433         * modules/uniwbrk/ulc-wordbreaks-tests: New file.
5434         * tests/uniwbrk/test-ulc-wordbreaks.sh: New file.
5435         * tests/uniwbrk/test-ulc-wordbreaks.c: New file.
5436
5437         Tests for module 'uniwbrk/u32-wordbreaks'.
5438         * modules/uniwbrk/u32-wordbreaks-tests: New file.
5439         * tests/uniwbrk/test-u32-wordbreaks.c: New file.
5440
5441         Tests for module 'uniwbrk/u16-wordbreaks'.
5442         * modules/uniwbrk/u16-wordbreaks-tests: New file.
5443         * tests/uniwbrk/test-u16-wordbreaks.c: New file.
5444
5445         Tests for module 'uniwbrk/u8-wordbreaks'.
5446         * modules/uniwbrk/u8-wordbreaks-tests: New file.
5447         * tests/uniwbrk/test-u8-wordbreaks.c: New file.
5448
5449 2009-02-10  Bruno Haible  <bruno@clisp.org>
5450
5451         * modules/uniwbrk/u8-wordbreaks (Depends-on): Add uniwbrk/wordbreak
5452         property.
5453         * modules/uniwbrk/u16-wordbreaks (Depends-on): Likewise.
5454         * modules/uniwbrk/u32-wordbreaks (Depends-on): Likewise.
5455         * modules/uniwbrk/ulc-wordbreaks (Depends-on): Add localcharset.
5456
5457 2009-02-10  Simon Josefsson  <simon@josefsson.org>
5458
5459         * m4/sockets.m4: Call AC_C_INLINE since sockets.h now can use
5460         inline keywords.  Reported by Bruno Haible <bruno@clisp.org>.
5461
5462 2009-02-10  Bruno Haible  <bruno@clisp.org>
5463
5464         * lib/unilbrk/lbrktables.h: Renamed from lib/unilbrk/tables.h.
5465         * lib/unilbrk/lbrktables.c: Renamed from lib/unilbrk/tables.c.
5466         * modules/unilbrk/tables (Files, Makefile.am, Include): Update.
5467         * lib/unilbrk/u8-possible-linebreaks.c: Update.
5468         * lib/unilbrk/u16-possible-linebreaks.c: Likewise.
5469         * lib/unilbrk/u32-possible-linebreaks.c: Likewise.
5470
5471 2009-02-09  Simon Josefsson  <simon@josefsson.org>
5472
5473         * lib/sockets.h (gl_fd_to_handle): New function.
5474
5475         * tests/test-sockets.c: Call gl_fd_to_handle.
5476
5477 2009-02-09  Bruno Haible  <bruno@clisp.org>
5478
5479         * doc/havelib.texi: Document the conventions on bi-arch systems.
5480
5481 2009-02-08  Bruno Haible  <bruno@clisp.org>
5482
5483         Document the AC_LIB_LINKFLAGS macro.
5484         * doc/havelib.texi: New file, mostly written on 2005-05-24.
5485         * doc/gnulib.texi: Include it.
5486
5487 2009-02-08  Bruno Haible  <bruno@clisp.org>
5488
5489         Fix wrong order of sections, compared to TOC.
5490         * doc/gnulib.texi: Include relocatable-maint.texi after the
5491         "Regular expressions" node, not before.
5492
5493 2009-02-08  Bruno Haible  <bruno@clisp.org>
5494
5495         Tests for module 'unicase/totitle'.
5496         * modules/unicase/totitle-tests: New file.
5497
5498         Tests for module 'unicase/tolower'.
5499         * modules/unicase/tolower-tests: New file.
5500
5501         Tests for module 'unicase/toupper'.
5502         * modules/unicase/toupper-tests: New file.
5503         * tests/unicase/test-mapping-part1.h: New file.
5504         * tests/unicase/test-mapping-part2.h: New file.
5505
5506         New module 'unicase/totitle'.
5507         * modules/unicase/totitle: New file.
5508         * lib/unicase/totitle.c: New file.
5509
5510         New module 'unicase/tolower'.
5511         * modules/unicase/tolower: New file.
5512         * lib/unicase/tolower.c: New file.
5513
5514         New module 'unicase/toupper'.
5515         * modules/unicase/toupper: New file.
5516         * lib/unicase/toupper.c: New file.
5517         * lib/unicase/simple-mapping.h: New file.
5518
5519         * lib/gen-uni-tables.c (output_simple_mapping_test): New function.
5520         (mapping_table): New structure.
5521         (output_simple_mapping): New function.
5522         (main): Invoke output_simple_mapping_test and output_simple_mapping.
5523         * modules/gen-uni-tables (Description): Update.
5524         * lib/unicase/toupper.h: New file, automatically generated by
5525         gen-uni-tables.
5526         * lib/unicase/tolower.h: New file, automatically generated by
5527         gen-uni-tables.
5528         * lib/unicase/totitle.h: New file, automatically generated by
5529         gen-uni-tables.
5530         * tests/unicase/test-uc_toupper.c: New file, automatically generated by
5531         gen-uni-tables.
5532         * tests/unicase/test-uc_tolower.c: New file, automatically generated by
5533         gen-uni-tables.
5534         * tests/unicase/test-uc_totitle.c: New file, automatically generated by
5535         gen-uni-tables.
5536
5537         New module 'unicase/base'.
5538         * modules/unicase/base: New file.
5539         * lib/unicase.h: New file.
5540
5541 2009-02-08  Bruno Haible  <bruno@clisp.org>
5542
5543         New module 'uniwbrk/ulc-wordbreaks'.
5544         * modules/uniwbrk/ulc-wordbreaks: New file.
5545         * lib/uniwbrk/ulc-wordbreaks.c: New file.
5546
5547         New module 'uniwbrk/u32-wordbreaks'.
5548         * modules/uniwbrk/u32-wordbreaks: New file.
5549         * lib/uniwbrk/u32-wordbreaks.c: New file.
5550
5551         New module 'uniwbrk/u16-wordbreaks'.
5552         * modules/uniwbrk/u16-wordbreaks: New file.
5553         * lib/uniwbrk/u16-wordbreaks.c: New file.
5554
5555         New module 'uniwbrk/u8-wordbreaks'.
5556         * modules/uniwbrk/u8-wordbreaks: New file.
5557         * lib/uniwbrk/u8-wordbreaks.c: New file.
5558         * lib/uniwbrk/u-wordbreaks.h: New file.
5559
5560         New module 'uniwbrk/table'.
5561         * modules/uniwbrk/table: New file.
5562         * lib/uniwbrk/wbrktable.h: New file.
5563         * lib/uniwbrk/wbrktable.c: New file.
5564
5565         New module 'uniwbrk/wordbreak-property'.
5566         * modules/uniwbrk/wordbreak-property: New file.
5567         * lib/uniwbrk/wordbreak-property.c: New file.
5568
5569         * lib/gen-uni-tables.c (WBP_*): New enum items.
5570         (get_wbp, debug_output_wbp, debug_output_wbrk_tables): New functions.
5571         (unicode_org_wbp): New variable.
5572         (fill_org_wbp, debug_output_org_wbp, debug_output_org_wbrk_tables):
5573         New functions.
5574         (wbp_table): New structure.
5575         (output_wbp, output_wbrk_tables): New functions.
5576         (main): Accept additional argument. Invoke fill_org_wbp,
5577         debug_output_wbrk_tables, debug_output_org_wbrk_tables,
5578         output_wbrk_tables.
5579         * modules/gen-uni-tables (Description): Update.
5580         * lib/uniwbrk/wbrkprop.h: New file, automatically generated by
5581         gen-uni-tables.
5582
5583         New module 'uniwbrk/base'.
5584         * modules/uniwbrk/base: New file.
5585         * lib/uniwbrk.h: New file.
5586
5587 2009-02-08  Bruno Haible  <bruno@clisp.org>
5588
5589         Update to Unicode 5.1.0.
5590         * lib/gen-uni-tables.c (is_property_alphabetic): Include
5591         U+2185..U+2188.
5592         (is_property_default_ignorable_code_point): Don't include characters
5593         of category Cc or Cs and not-a-characters.
5594         (get_lbp): Assume REVISION_22. Special handling of U+0609, U+060A,
5595         U+0D79, U+109E, U+109F, U+A60C.
5596         * lib/unictype/bidi_of.h: Regenerated.
5597         * lib/unictype/blocks.h: Regenerated.
5598         * lib/unictype/categ_C.h: Regenerated.
5599         * lib/unictype/categ_Cf.h: Regenerated.
5600         * lib/unictype/categ_Cn.h: Regenerated.
5601         * lib/unictype/categ_L.h: Regenerated.
5602         * lib/unictype/categ_Ll.h: Regenerated.
5603         * lib/unictype/categ_Lm.h: Regenerated.
5604         * lib/unictype/categ_Lo.h: Regenerated.
5605         * lib/unictype/categ_Lu.h: Regenerated.
5606         * lib/unictype/categ_M.h: Regenerated.
5607         * lib/unictype/categ_Mc.h: Regenerated.
5608         * lib/unictype/categ_Me.h: Regenerated.
5609         * lib/unictype/categ_Mn.h: Regenerated.
5610         * lib/unictype/categ_N.h: Regenerated.
5611         * lib/unictype/categ_Nd.h: Regenerated.
5612         * lib/unictype/categ_Nl.h: Regenerated.
5613         * lib/unictype/categ_No.h: Regenerated.
5614         * lib/unictype/categ_P.h: Regenerated.
5615         * lib/unictype/categ_Pd.h: Regenerated.
5616         * lib/unictype/categ_Pe.h: Regenerated.
5617         * lib/unictype/categ_Pf.h: Regenerated.
5618         * lib/unictype/categ_Pi.h: Regenerated.
5619         * lib/unictype/categ_Po.h: Regenerated.
5620         * lib/unictype/categ_Ps.h: Regenerated.
5621         * lib/unictype/categ_S.h: Regenerated.
5622         * lib/unictype/categ_Sk.h: Regenerated.
5623         * lib/unictype/categ_Sm.h: Regenerated.
5624         * lib/unictype/categ_So.h: Regenerated.
5625         * lib/unictype/categ_of.h: Regenerated.
5626         * lib/unictype/combining.h: Regenerated.
5627         * lib/unictype/ctype_alnum.h: Regenerated.
5628         * lib/unictype/ctype_alpha.h: Regenerated.
5629         * lib/unictype/ctype_graph.h: Regenerated.
5630         * lib/unictype/ctype_lower.h: Regenerated.
5631         * lib/unictype/ctype_print.h: Regenerated.
5632         * lib/unictype/ctype_punct.h: Regenerated.
5633         * lib/unictype/ctype_upper.h: Regenerated.
5634         * lib/unictype/decdigit.h: Regenerated.
5635         * lib/unictype/digit.h: Regenerated.
5636         * lib/unictype/mirror.h: Regenerated.
5637         * lib/unictype/numeric.h: Regenerated.
5638         * lib/unictype/pr_alphabetic.h: Regenerated.
5639         * lib/unictype/pr_bidi_arabic_digit.h: Regenerated.
5640         * lib/unictype/pr_bidi_arabic_right_to_left.h: Regenerated.
5641         * lib/unictype/pr_bidi_boundary_neutral.h: Regenerated.
5642         * lib/unictype/pr_bidi_eur_num_terminator.h: Regenerated.
5643         * lib/unictype/pr_bidi_left_to_right.h: Regenerated.
5644         * lib/unictype/pr_bidi_non_spacing_mark.h: Regenerated.
5645         * lib/unictype/pr_bidi_other_neutral.h: Regenerated.
5646         * lib/unictype/pr_combining.h: Regenerated.
5647         * lib/unictype/pr_dash.h: Regenerated.
5648         * lib/unictype/pr_decimal_digit.h: Regenerated.
5649         * lib/unictype/pr_default_ignorable_code_point.h: Regenerated.
5650         * lib/unictype/pr_deprecated.h: Regenerated.
5651         * lib/unictype/pr_diacritic.h: Regenerated.
5652         * lib/unictype/pr_extender.h: Regenerated.
5653         * lib/unictype/pr_format_control.h: Regenerated.
5654         * lib/unictype/pr_grapheme_base.h: Regenerated.
5655         * lib/unictype/pr_grapheme_extend.h: Regenerated.
5656         * lib/unictype/pr_grapheme_link.h: Regenerated.
5657         * lib/unictype/pr_id_continue.h: Regenerated.
5658         * lib/unictype/pr_id_start.h: Regenerated.
5659         * lib/unictype/pr_ideographic.h: Regenerated.
5660         * lib/unictype/pr_ignorable_control.h: Regenerated.
5661         * lib/unictype/pr_lowercase.h: Regenerated.
5662         * lib/unictype/pr_math.h: Regenerated.
5663         * lib/unictype/pr_numeric.h: Regenerated.
5664         * lib/unictype/pr_other_alphabetic.h: Regenerated.
5665         * lib/unictype/pr_other_default_ignorable_code_point.h: Regenerated.
5666         * lib/unictype/pr_other_grapheme_extend.h: Regenerated.
5667         * lib/unictype/pr_other_id_continue.h: Regenerated.
5668         * lib/unictype/pr_other_lowercase.h: Regenerated.
5669         * lib/unictype/pr_other_math.h: Regenerated.
5670         * lib/unictype/pr_punctuation.h: Regenerated.
5671         * lib/unictype/pr_sentence_terminal.h: Regenerated.
5672         * lib/unictype/pr_soft_dotted.h: Regenerated.
5673         * lib/unictype/pr_terminal_punctuation.h: Regenerated.
5674         * lib/unictype/pr_unassigned_code_value.h: Regenerated.
5675         * lib/unictype/pr_unified_ideograph.h: Regenerated.
5676         * lib/unictype/pr_uppercase.h: Regenerated.
5677         * lib/unictype/pr_xid_continue.h: Regenerated.
5678         * lib/unictype/pr_xid_start.h: Regenerated.
5679         * lib/unictype/pr_zero_width.h: Regenerated.
5680         * lib/unictype/scripts.h: Regenerated.
5681         * lib/unictype/scripts_byname.gperf: Regenerated.
5682         * lib/unictype/sy_java_ident.h: Regenerated.
5683         * lib/unilbrk/lbrkprop1.h: Regenerated.
5684         * lib/unilbrk/lbrkprop2.h: Regenerated.
5685         * tests/unictype/test-categ_C.c: Regenerated.
5686         * tests/unictype/test-categ_Cf.c: Regenerated.
5687         * tests/unictype/test-categ_Cn.c: Regenerated.
5688         * tests/unictype/test-categ_L.c: Regenerated.
5689         * tests/unictype/test-categ_Ll.c: Regenerated.
5690         * tests/unictype/test-categ_Lm.c: Regenerated.
5691         * tests/unictype/test-categ_Lo.c: Regenerated.
5692         * tests/unictype/test-categ_Lu.c: Regenerated.
5693         * tests/unictype/test-categ_M.c: Regenerated.
5694         * tests/unictype/test-categ_Mc.c: Regenerated.
5695         * tests/unictype/test-categ_Me.c: Regenerated.
5696         * tests/unictype/test-categ_Mn.c: Regenerated.
5697         * tests/unictype/test-categ_N.c: Regenerated.
5698         * tests/unictype/test-categ_Nd.c: Regenerated.
5699         * tests/unictype/test-categ_Nl.c: Regenerated.
5700         * tests/unictype/test-categ_No.c: Regenerated.
5701         * tests/unictype/test-categ_P.c: Regenerated.
5702         * tests/unictype/test-categ_Pd.c: Regenerated.
5703         * tests/unictype/test-categ_Pe.c: Regenerated.
5704         * tests/unictype/test-categ_Pf.c: Regenerated.
5705         * tests/unictype/test-categ_Pi.c: Regenerated.
5706         * tests/unictype/test-categ_Po.c: Regenerated.
5707         * tests/unictype/test-categ_Ps.c: Regenerated.
5708         * tests/unictype/test-categ_S.c: Regenerated.
5709         * tests/unictype/test-categ_Sk.c: Regenerated.
5710         * tests/unictype/test-categ_Sm.c: Regenerated.
5711         * tests/unictype/test-categ_So.c: Regenerated.
5712         * tests/unictype/test-ctype_alnum.c: Regenerated.
5713         * tests/unictype/test-ctype_alpha.c: Regenerated.
5714         * tests/unictype/test-ctype_graph.c: Regenerated.
5715         * tests/unictype/test-ctype_lower.c: Regenerated.
5716         * tests/unictype/test-ctype_print.c: Regenerated.
5717         * tests/unictype/test-ctype_punct.c: Regenerated.
5718         * tests/unictype/test-ctype_upper.c: Regenerated.
5719         * tests/unictype/test-decdigit.h: Regenerated.
5720         * tests/unictype/test-digit.h: Regenerated.
5721         * tests/unictype/test-numeric.h: Regenerated.
5722         * tests/unictype/test-pr_alphabetic.c: Regenerated.
5723         * tests/unictype/test-pr_bidi_arabic_digit.c: Regenerated.
5724         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Regenerated.
5725         * tests/unictype/test-pr_bidi_boundary_neutral.c: Regenerated.
5726         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Regenerated.
5727         * tests/unictype/test-pr_bidi_left_to_right.c: Regenerated.
5728         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Regenerated.
5729         * tests/unictype/test-pr_bidi_other_neutral.c: Regenerated.
5730         * tests/unictype/test-pr_combining.c: Regenerated.
5731         * tests/unictype/test-pr_dash.c: Regenerated.
5732         * tests/unictype/test-pr_decimal_digit.c: Regenerated.
5733         * tests/unictype/test-pr_default_ignorable_code_point.c: Regenerated.
5734         * tests/unictype/test-pr_deprecated.c: Regenerated.
5735         * tests/unictype/test-pr_diacritic.c: Regenerated.
5736         * tests/unictype/test-pr_extender.c: Regenerated.
5737         * tests/unictype/test-pr_format_control.c: Regenerated.
5738         * tests/unictype/test-pr_grapheme_base.c: Regenerated.
5739         * tests/unictype/test-pr_grapheme_extend.c: Regenerated.
5740         * tests/unictype/test-pr_grapheme_link.c: Regenerated.
5741         * tests/unictype/test-pr_id_continue.c: Regenerated.
5742         * tests/unictype/test-pr_id_start.c: Regenerated.
5743         * tests/unictype/test-pr_ideographic.c: Regenerated.
5744         * tests/unictype/test-pr_ignorable_control.c: Regenerated.
5745         * tests/unictype/test-pr_lowercase.c: Regenerated.
5746         * tests/unictype/test-pr_math.c: Regenerated.
5747         * tests/unictype/test-pr_numeric.c: Regenerated.
5748         * tests/unictype/test-pr_other_alphabetic.c: Regenerated.
5749         * tests/unictype/test-pr_other_default_ignorable_code_point.c:
5750         Regenerated.
5751         * tests/unictype/test-pr_other_grapheme_extend.c: Regenerated.
5752         * tests/unictype/test-pr_other_id_continue.c: Regenerated.
5753         * tests/unictype/test-pr_other_lowercase.c: Regenerated.
5754         * tests/unictype/test-pr_other_math.c: Regenerated.
5755         * tests/unictype/test-pr_punctuation.c: Regenerated.
5756         * tests/unictype/test-pr_sentence_terminal.c: Regenerated.
5757         * tests/unictype/test-pr_soft_dotted.c: Regenerated.
5758         * tests/unictype/test-pr_terminal_punctuation.c: Regenerated.
5759         * tests/unictype/test-pr_unassigned_code_value.c: Regenerated.
5760         * tests/unictype/test-pr_unified_ideograph.c: Regenerated.
5761         * tests/unictype/test-pr_uppercase.c: Regenerated.
5762         * tests/unictype/test-pr_xid_continue.c: Regenerated.
5763         * tests/unictype/test-pr_xid_start.c: Regenerated.
5764         * tests/unictype/test-pr_zero_width.c: Regenerated.
5765
5766         Update to Unicode 5.1.0.
5767         * lib/uniwidth/width.c (nonspacing_table_data): Add U+0487,
5768         U+0616..U+061A, U+0A51, U+0A75, U+0B44, U+0B62..U+0B63, U+0C62..U+0C63,
5769         U+0D44, U+0D62..U+0D63, U+1033..U+1035, U+103A, U+103D..U+103E,
5770         U+105E..U+1060, U+1071..U+1074, U+1082, U+1085..U+1086, U+108D,
5771         U+1B80..U+1B81, U+1BA2..U+1BA5, U+1BA8..U+1BA9, U+1C2C..U+1C33,
5772         U+1C36..U+1C37, U+1DCB..U+1DE6, U+2064, U+20F0, U+2DE0..U+2DFF,
5773         U+A66F..U+A672, U+A67C..U+A67D, U+A8C4, U+A926..U+A92D, U+A947..U+A951,
5774         U+AA29..U+AA2E, U+AA31..U+AA32, U+AA35..U+AA36, U+AA43, U+AA4C,
5775         U+FE24..U+FE26, U+101FD. Remove U+1929..U+192B.
5776         (nonspacing_table_ind): Update.
5777         * tests/uniwidth/test-uc_width2.sh: Update expected result.
5778
5779         Update to Unicode 5.1.0.
5780         * lib/uniname/gen-uninames.lisp (main): Add the range 0x1Fxxx to the
5781         code transform.
5782         * lib/uniname/uniname.c (unicode_character_name,
5783         unicode_name_character): Add the range 0x1Fxxx to the code transform.
5784         * lib/uniname/uninames.h: Regenerated.
5785         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.1.0.
5786
5787 2009-02-07  Bruno Haible  <bruno@clisp.org>
5788
5789         Merge gen-ctype and gen-lbrk into a single program.
5790         * lib/gen-uni-tables.c: New file, incorporating
5791         lib/unictype/gen-ctype.c and lib/unilbrk/gen-lbrk.c.
5792         Add directory prefixes to the names of the generated files.
5793         * lib/unictype/gen-ctype.c: Remove file.
5794         * lib/unilbrk/gen-lbrk.c: Remove file.
5795         * modules/gen-uni-tables: New file.
5796         * modules/unictype/gen-ctype: Remove file.
5797         * modules/unilbrk/gen-lbrk: Remove file.
5798
5799 2009-02-07  Bruno Haible  <bruno@clisp.org>
5800
5801         * lib/unistr.h (u8_strcoll, u16_strcoll, u32_strcoll): New declations.
5802
5803         New module 'unistr/u32-strcoll'.
5804         * modules/unistr/u32-strcoll: New file.
5805         * lib/unistr/u32-strcoll.c: New file.
5806
5807         New module 'unistr/u16-strcoll'.
5808         * modules/unistr/u16-strcoll: New file.
5809         * lib/unistr/u16-strcoll.c: New file.
5810
5811         New module 'unistr/u8-strcoll'.
5812         * modules/unistr/u8-strcoll: New file.
5813         * lib/unistr/u8-strcoll.c: New file.
5814         * lib/unistr/u-strcoll.h: New file.
5815
5816 2009-02-07  Bruno Haible  <bruno@clisp.org>
5817
5818         * test-mbrtowc4.sh (LOCALE_ZH_CN): Fix default value.
5819         * test-mbsnrtowcs4.sh (LOCALE_ZH_CN): Likewise.
5820         * test-mbsrtowcs4.sh (LOCALE_ZH_CN): Likewise.
5821         * test-wcrtomb.sh (LOCALE_ZH_CN): Likewise.
5822         * test-wcsnrtombs4.sh (LOCALE_ZH_CN): Likewise.
5823         * test-wcsrtombs4.sh (LOCALE_ZH_CN): Likewise.
5824
5825 2009-02-07  Bruno Haible  <bruno@clisp.org>
5826
5827         Make 64-bit clean.
5828         * lib/unictype/gen-ctype.c (output_predicate, output_category,
5829         output_combclass, output_bidi_category, output_decimal_digit,
5830         output_digit, output_numeric, output_mirror, output_scripts,
5831         output_ident_category): Use proper width specifier in format strings.
5832
5833 2009-02-07  Bruno Haible  <bruno@clisp.org>
5834
5835         * doc/posix-functions/dirfd.texi: Clarify situation on mingw. Document
5836         failure behaviour.
5837
5838 2009-02-07  Jim Meyering  <meyering@redhat.com>
5839
5840         regex: avoid compilation failure with upcoming gcc-4.4
5841         * lib/regex_internal.h: Revert e48d8b47fb3eee81d341b71c3e006efe9e3433a7
5842         [workaround for PGC prior to 6.1-2].  Otherwise, we'd get this:
5843         "... error: integer overflow in preprocessor expression".
5844
5845 2009-02-05  Ben Pfaff  <blp@gnu.org>
5846
5847         Fix link errors on Windows when close module is used.
5848         * modules/close: Add $(LIB_CLOSE) to Link section.
5849         * m4/close.m4 (gl_REPLACE_CLOSE): Substitute -lws2_32 into
5850         $(LIB_CLOSE) on Windows.
5851
5852 2009-02-05  Jim Meyering  <meyering@redhat.com>
5853
5854         still avoid unused-parameter warnings, but do it cleanly
5855         * lib/fsusage.c (UNUSED_PARAM): Remove definition.
5856         (get_fs_usage): Cast to void instead.
5857         * lib/mountlist.c (UNUSED_PARAM): Remove definition.
5858         (dev_from_mount_options, read_file_system_list): Cast to void.
5859         Prompted by Bruno Haible.
5860
5861 2009-02-04  Jim Meyering  <meyering@redhat.com>
5862
5863         fsusage.c: correct copyright year
5864         * lib/fsusage.c: Reflect year in which the change is pushed into
5865
5866         avoid misc. warnings
5867         * lib/fsusage.c (UNUSED_PARAM): Define.
5868         (get_fs_usage): Mark parameter "disk" as unused.
5869         * lib/getugroups.c (getgrent): Use "void" in prototype.
5870         * lib/mountlist.c: Mark unused parameters.
5871         (read_file_system_list): Declare a local with "const".
5872         * lib/nanosleep.c (getnow): Declare static.
5873         * lib/strftime.c: Include strftime.h, for declaration of nstrftime.
5874
5875         dirfd: set errno upon failure
5876         * lib/dirfd.c: Include <errno.h>.
5877         Set errno to ENOTSUP when returning -1.
5878         * modules/dirfd (Depends-on): Add errno.
5879         Suggested by John Kodis <kodis@comcast.net>.
5880
5881 2009-02-01  Bruno Haible  <bruno@clisp.org>
5882
5883         Don't assume sizeof (long) >= sizeof (void *).
5884         * lib/memcmp.c: Include stdint.h.
5885         (memcmp_bytes): Change argument types to op_t. Change type of srcp1,
5886         srcp2 to 'const byte *'.
5887         (memcmp_common_alignment, memcmp_not_common_alignment): Change argument
5888         types to uintptr_t.
5889         (rpl_memcmp): Change type of srcp1, srcp2 to 'uintptr_t'.
5890         * modules/memcmp (Depends-on): Add stdint.
5891         Reported by Ozkan Sezer <sezeroz@gmail.com>.
5892
5893 2009-01-30  Eric Blake  <ebb9@byu.net>
5894
5895         fix more require-before-expand issues
5896         * m4/pmccabe2html.m4 (gl_PMCCABE2HTML): Require, rather than
5897         expand, AC_PROG_AWK.
5898         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): Use AC_DEFUN_ONCE.
5899
5900 2009-01-28  Eric Blake  <ebb9@byu.net>
5901
5902         version-etc: use consistent URL formatting
5903         * lib/version-etc.c (emit_bug_reporting_address, version_etc_va):
5904         Improve formatting.  Use fputs for string without %.
5905
5906 2009-01-28  Jim Meyering  <meyering@redhat.com>
5907
5908         00gnulib.m4: add m4 quotes in shell comment to avoid autoconf warning
5909         * m4/00gnulib.m4 (AC_DEFUN_ONCE): Add quotes to avoid an
5910         "underquoted definition of NAME" from autoconf-2.59.
5911
5912 2009-01-28  Bruno Haible  <bruno@clisp.org>
5913
5914         * doc/gnulib.texi: Add "Obsolete modules" to index.
5915
5916 2009-01-28  Jim Meyering  <meyering@redhat.com>
5917
5918         useless-if-before-free: recognize more variants
5919         * build-aux/useless-if-before-free: Also recognize e.g.,
5920         if (NULL != p) free (p);
5921
5922 2009-01-27  Mark McLoughlin  <markmc@redhat.com>
5923
5924         test-getaddrinfo: skip (don't fail) this test when there's no network
5925         * tests/test-getaddrinfo.c: Skip test upon failure with EAI_AGAIN,
5926         on the presumption that it means you lack network access.
5927
5928 2009-01-26  Jim Meyering  <meyering@redhat.com>
5929
5930         fflush: avoid warnings on modern systems
5931         * lib/fflush.c (rpl_fflush): Move declarations of locals,
5932         pos and result, into scopes where they're used.
5933
5934 2009-01-26  Eric Blake  <ebb9@byu.net>
5935
5936         Silence warning reintroduced by recent extensions patch.
5937         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS)
5938         (gl_USE_SYSTEM_EXTENSIONS): Use AC_DEFUN_ONCE to silence newer
5939         autoconf.
5940
5941         Backport improved autoconf semantics of AC_DEFUN_ONCE.
5942         * m4/00gnulib.m4: New file.
5943         * gnulib-tool (func_get_filelist): Always use it.
5944         * m4/gnulib-common.m4 (gl_COMMON): Force the file to be used.
5945         Reported by Bruno Haible, with suggestions from Paolo Bonzini.
5946
5947 2009-01-25  Bruno Haible  <bruno@clisp.org>
5948
5949         Make test-quotearg work on MacOS X and AIX.
5950         * tests/test-quotearg.sh: New file.
5951         * tests/locale/fr/LC_MESSAGES/test-quotearg.po: New file.
5952         * tests/locale/fr/LC_MESSAGES/test-quotearg.mo: New file.
5953         * tests/test-quotearg.c: Include <locale.h> and gettext.h. Don't
5954         include <libintl.h>.
5955         (fake_locale): Remove variable.
5956         (gettext, dgettext, dcgettext): Remove functions.
5957         (main): Instead of setting a fake locale, set a real locale. Call
5958         textdomain and bindtextdomain.
5959         * modules/quotearg-tests (Files): Add the new files.
5960         (Depends-on): Add gettext, setenv, unsetenv.
5961         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
5962         (Makefile.am): Add test-quotearg.sh to TESTS, remove test-quotearg.
5963         Augment TESTS_ENVIRONMENT.
5964
5965 2009-01-25  Bruno Haible  <bruno@clisp.org>
5966
5967         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove special code that hid the
5968         fr_FR.ISO8859-1 locale on MacOS X.
5969         * m4/locale-ja.m4 (gt_LOCALE_JA): Remove special code that hid the
5970         ja_JP.eucJP locale on MacOS X.
5971         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Remove special code that hid the
5972         zh_CN.GB18030 locale on MacOS X.
5973
5974 2009-01-25  Bruno Haible  <bruno@clisp.org>
5975
5976         Avoid link errors on MacOS X 10.3.
5977         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Add initializer.
5978         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
5979
5980 2009-01-25  Bruno Haible  <bruno@clisp.org>
5981
5982         * lib/pipe.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
5983         * m4/pipe.m4 (gl_PIPE): Remove tests for vfork() based code.
5984         * modules/pipe (Files): Remove m4/posix_spawn.m4.
5985         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
5986         posix_spawn_file_actions_addclose, posix_spawn_file_actions_adddup2,
5987         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
5988         posix_spawnattr_init, posix_spawnattr_setsigmask,
5989         posix_spawnattr_setflags, posix_spawnattr_destroy.
5990
5991         * lib/execute.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
5992         * m4/execute.m4 (gl_EXECUTE): Remove tests for vfork() based code.
5993         * modules/execute (Files): Remove m4/posix_spawn.m4.
5994         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
5995         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
5996         posix_spawnattr_init, posix_spawnattr_setsigmask,
5997         posix_spawnattr_setflags, posix_spawnattr_destroy.
5998
5999 2009-01-25  Bruno Haible  <bruno@clisp.org>
6000
6001         * lib/glthread/threadlib.c: Include <stdlib.h>.
6002
6003 2009-01-25  Bruno Haible  <bruno@clisp.org>
6004
6005         * lib/glthread/threadlib.c (dummy): New declaration.
6006
6007 2009-01-25  Bruno Haible  <bruno@clisp.org>
6008
6009         * lib/mbrtowc.c (mbrtowc): Distinguish invalid and incomplete
6010         multibyte characters also for the GB18030 encoding. Don't crash when
6011         the encoding is unknown and nstate = 0. Needed on OSF/1 5.1.
6012
6013 2009-01-25  Bruno Haible  <bruno@clisp.org>
6014
6015         Avoid redefining 'struct random_data' on OSF/1 5.1.
6016         * lib/stdlib.in.h: Include <random.h> if it exists.
6017         * m4/stdlib_h.m4 (gl_STDLIB_H): Test whether <random.h> exists. Set
6018         HAVE_RANDOM_H. Include <random.h> when testing whether
6019         'struct random_data' exists.
6020         * modules/stdlib (Makefile.am): Substitute HAVE_RANDOM_H.
6021
6022 2009-01-25  Bruno Haible  <bruno@clisp.org>
6023
6024         Don't install charset.alias on MacOS X >= 10.3.
6025         * lib/localcharset.c (DARWIN7): New macro.
6026         (get_charset_aliases): Hardcode the result for Darwin7.
6027         * modules/localcharset (install-exec-local): Don't install
6028         charset.alias on MacOS X >= 10.3, if the file does not yet exist.
6029
6030 2009-01-25  Bruno Haible  <bruno@clisp.org>
6031
6032         Don't install charset.alias on mingw and Cygwin.
6033         * modules/localcharset (install-exec-local): Don't install
6034         charset.alias on mingw and Cygwin, if the file does not yet exist.
6035         The result for these platforms is hardcoded in localcharset.c.
6036
6037 2009-01-25  Bruno Haible  <bruno@clisp.org>
6038
6039         Make it possible again to use AC_GNU_SOURCE together with gnulib.
6040         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_GNU_SOURCE
6041         before requiring AC_USE_SYSTEM_EXTENSIONS.
6042
6043 2009-01-25  Jim Meyering  <meyering@redhat.com>
6044
6045         c-strtod: avoid warnings
6046         * lib/c-strtod.c (C_STRTOD): Cast nptr to (char *) to avoid
6047         "assignment discards qualifiers from pointer target type" warnings.
6048
6049 2009-01-24  Bruno Haible  <bruno@clisp.org>
6050
6051         Add support for non-UTF-8 locales on MacOS X.
6052         * lib/config.charset: Add CP1131, ARMSCII-8, PT154 to the list of
6053         canonical encodings. For Darwin 7 and newer, don't map traditional
6054         encodings to UTF-8.
6055         Reported by Vincent Lefevre <vincent@vinc17.org>
6056         at <http://savannah.gnu.org/bugs/?25235>.
6057
6058 2009-01-24  Bruno Haible  <bruno@clisp.org>
6059
6060         * doc/gnulib.texi (Obsolete modules): New section.
6061         Reported by Mike Frysinger <vapier@gentoo.org>.
6062
6063 2009-01-24  Bruno Haible  <bruno@clisp.org>
6064
6065         * doc/Makefile (%.pdf): Clarify where to find texmf.cnf.
6066         (%.dvi): New rule.
6067
6068 2009-01-24  Bruno Haible  <bruno@clisp.org>
6069
6070         * lib/c-strtod.h (c_strtod, c_strtold): Adjust specification.
6071         Reported by Eric Blake.
6072
6073 2009-01-24  Bruno Haible  <bruno@clisp.org>
6074
6075         * lib/c-stack.c (segv_handler): If !HAVE_XSI_STACK_OVERFLOW_HEURISTIC,
6076         set signo = 0 also if info->si_code <= 0. Needed on HP-UX 11.11.
6077         Reported by Gary V. Vaughan <gary@gnu.org>.
6078
6079 2009-01-24  Bruno Haible  <bruno@clisp.org>
6080
6081         * lib/c-strtod.h (c_strtod, c_strtold): Add specification.
6082
6083 2009-01-23  Bruno Haible  <bruno@clisp.org>
6084
6085         Make c-strtod, c-strtold usable in libraries.
6086         * lib/c-strtod.c: Include string.h instead of xalloc.h.
6087         (C_STRTOD): Call strdup instead of xstrdup.
6088         * modules/c-strtod (Depends-on): Add strdup-posix, remove xalloc.
6089         * modules/c-strtold (Depends-on): Likewise.
6090         * doc/c-strtod.texi: Remove the sentence mentioning xalloc_die.
6091         * NEWS: Mention the change.
6092         Reported by Michael Gold <mgold@ncf.ca>.
6093
6094 2009-01-23  Jim Meyering  <meyering@redhat.com>
6095
6096         c-strtod: when ENDPTR is non-NULL, set *ENDPTR in new failure path
6097         * lib/c-strtod.c (C_STRTOD) [LC_ALL_MASKC]: Ensure that when
6098         ENDPTR is non-NULL, *ENDPTR is set to NPTR upon failure.
6099
6100 2009-01-23  Simon Josefsson  <simon@josefsson.org>
6101
6102         * lib/version-etc.c: Add emit_bug_reporting_address, inspired by
6103         GNU CoreUtils.
6104         * lib/version-etc.h: Add prototype for emit_bug_reporting_address.
6105         * modules/version-etc (Description): Update.
6106
6107 2009-01-22  Bruno Haible  <bruno@clisp.org>
6108
6109         Cache the C locale object.
6110         * lib/c-strtod.c (c_locale_cache): New variable.
6111         (c_locale): New function.
6112         (C_STRTOD): Use it, and don't call freelocale.
6113         * m4/c-strtod.m4 (gl_C_STRTOD, gl_C_STRTOLD): Require AC_C_INLINE.
6114         Suggested by Paolo Bonzini.
6115
6116 2009-01-21  Bruno Haible  <bruno@clisp.org>
6117
6118         * lib/getloadavg.c (getloadavg): Check c_strtod result against error
6119         conditions other than overflow.
6120
6121 2009-01-21  Bruno Haible  <bruno@clisp.org>
6122
6123         * lib/c-strtod.c: Include errno.h.
6124         (C_STRTOD): Check against NULL return from newlocale. Preserve errno
6125         value from STRTOD_L and STRTOD.
6126
6127 2009-01-21  Bruno Haible  <bruno@clisp.org>
6128         and Jim Meyering  <meyering@redhat.com>
6129
6130         nanosleep: skip configure test (fail it) for apple universal builds
6131         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_MULTIARCH. In Apple
6132         universal builds, assume that nanosleep does not work.
6133         * modules/nanosleep (Depends-on): Add multiarch.
6134
6135         mktime: skip configure test (fail it) for apple universal builds
6136         * m4/mktime.m4 (AC_FUNC_MKTIME): Require gl_MULTIARCH. In Apple
6137         universal builds, assume that mktime does not work.
6138         * modules/mktime (Depends-on): Add multiarch.
6139
6140 2009-01-21  Eric Blake  <ebb9@byu.net>
6141
6142         multiarch: avoid expand-before-require warning
6143         * modules/multiarch (configure.ac): Require, rather than expand,
6144         gl_MULTIARCH.
6145         * m4/multiarch.m4 (gl_MULTIARCH_BODY): Merge...
6146         (gl_MULTIARCH): ...into this macro, and use AC_DEFUN_ONCE to
6147         enforce that all clients require it.  Partial reversion of
6148         2008-12-29 patch.
6149
6150         error: avoid expand-before-require warning
6151         * modules/errno (configure.ac): Require, rather than expand,
6152         gl_HEADER_ERRNO_H.
6153         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Merge...
6154         (gl_HEADER_ERRNO_H): ...into this macro, and use AC_DEFUN_ONCE to
6155         enforce that all clients require it.
6156
6157         gnulib-tool: avoid warnings from using obsolete AC_GNU_SOURCE
6158         * gnulib-tool (func_dest_tmpfilename, func_create_testdir): Using
6159         obsolete AC_GNU_SOURCE causes out-of-order expansion; avoid it,
6160         and rely solely on gl_USE_SYSTEM_EXTENSIONS.
6161
6162 2009-01-21  Paolo Bonzini  <bonzini@gnu.org>
6163
6164         Revert:
6165         2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
6166
6167         regex: do not depend on obsolete modules.
6168         * modules/regex: Remove memcmp and memmove.
6169
6170 2009-01-20  Bruno Haible  <bruno@clisp.org>
6171
6172         Make the 'link' module link on Windows NT 4.
6173         * lib/link.c (_WIN32_WINNT): Don't define.
6174         (CreateHardLinkFuncType): New type.
6175         (CreateHardLinkFunc, initialized): New variables.
6176         (initialize): New function.
6177         (link): Invoke CreateHardLink indirectly through the function pointer.
6178
6179 2009-01-20  Bruno Haible  <bruno@clisp.org>
6180
6181         Fix compilation failure on mingw.
6182         * tests/test-link.c (main): Don't assume that EOPNOTSUPP exists.
6183
6184 2009-01-20  Michael Gold  <mgold@ncf.ca>  (tiny change)
6185
6186         * doc/c-strtod.texi: Mention a couple of restrictions.
6187
6188 2009-01-20  Jim Meyering  <meyering@redhat.com>
6189
6190         gettimeofday: move more declarations out of functions
6191         * lib/gettimeofday.c: Move extern declarations of tzset and
6192         gmtime out of containing functions.  Prompted by Bruno Haible.
6193
6194 2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
6195
6196         regex: do not depend on obsolete modules.
6197         * modules/regex: Remove memcmp and memmove.
6198
6199 2009-01-19  Bruno Haible  <bruno@clisp.org>
6200
6201         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
6202         * modules/uniconv/u16-conv-from-enc (configure.ac): Require
6203         gl_BIGENDIAN, not AC_C_BIGENDIAN.
6204         * modules/uniconv/u16-conv-to-enc (configure.ac): Likewise.
6205         * modules/uniconv/u16-strconv-to-enc (configure.ac): Likewise.
6206
6207 2009-01-19  Bruno Haible  <bruno@clisp.org>
6208
6209         * tests/test-link.c: Include <errno.h>.
6210         (main): Exit with code 77 when a hard link cannot be created due to
6211         the file system.
6212         * tests/test-link.sh: Skip test when a hard link cannot be created due
6213         to the file system.
6214         Suggested by Eric Blake.
6215
6216 2009-01-19  Martin Lambers  <marlam@marlam.de>
6217
6218         * modules/link-tests: New file.
6219         * tests/test-link.sh: New file.
6220         * tests/test-link.c: New file.
6221
6222 2009-01-19  Eric Blake  <ebb9@byu.net>
6223
6224         doc: mention another function added in cygwin 1.7.0
6225         * doc/glibc-functions/glob_pattern_p.texi (glob_pattern_p):
6226         Another new function in cygwin 1.7.
6227
6228 2009-01-19  Bruno Haible  <bruno@clisp.org>
6229
6230         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
6231         * m4/gnulib-common.m4 (gl_BIGENDIAN): New macro.
6232         * m4/exponentl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require
6233         gl_BIGENDIAN, not AC_C_BIGENDIAN.
6234         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise.
6235         * m4/isinf.m4 (gl_ISINFL_WORKS): Likewise.
6236         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise.
6237         * m4/md4.m4 (gl_MD4): Likewise.
6238         * m4/md5.m4 (gl_MD5): Likewise.
6239         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Likewise.
6240         * m4/sha1.m4 (gl_SHA1): Likewise.
6241         * m4/sha256.m4 (gl_SHA256): Likewise.
6242         * m4/sha512.m4 (gl_SHA512): Likewise.
6243
6244 2009-01-19  Bruno Haible  <bruno@clisp.org>
6245
6246         * modules/uniname/uniname-tests (Depends-on): Add progname.
6247         * tests/uniname/test-uninames.c: Include progname.h.
6248         (main): Call set_program_name.
6249
6250         * modules/unistdio/u8-vsprintf-tests (Depends-on): Add progname.
6251         * tests/unistdio/test-u8-vsprintf1.c: Include progname.h.
6252         (main): Call set_program_name.
6253
6254         * modules/unistdio/u8-vsnprintf-tests (Depends-on): Add progname.
6255         * tests/unistdio/test-u8-vsnprintf1.c: Include progname.h.
6256         (main): Call set_program_name.
6257
6258         * modules/unistdio/u16-vsprintf-tests (Depends-on): Add progname.
6259         * tests/unistdio/test-u16-vsprintf1.c: Include progname.h.
6260         (main): Call set_program_name.
6261
6262         * modules/unistdio/u16-vsnprintf-tests (Depends-on): Add progname.
6263         * tests/unistdio/test-u16-vsnprintf1.c: Include progname.h.
6264         (main): Call set_program_name.
6265
6266         * modules/unistdio/u32-vsprintf-tests (Depends-on): Add progname.
6267         * tests/unistdio/test-u32-vsprintf1.c: Include progname.h.
6268         (main): Call set_program_name.
6269
6270         * modules/unistdio/u32-vsnprintf-tests (Depends-on): Add progname.
6271         * tests/unistdio/test-u32-vsnprintf1.c: Include progname.h.
6272         (main): Call set_program_name.
6273
6274         * modules/unistdio/ulc-vsprintf-tests (Depends-on): Add progname.
6275         * tests/unistdio/test-ulc-vsprintf1.c: Include progname.h.
6276         (main): Call set_program_name.
6277
6278         * modules/unistdio/ulc-vsnprintf-tests (Depends-on): Add progname.
6279         * tests/unistdio/test-ulc-vsnprintf1.c: Include progname.h.
6280         (main): Call set_program_name.
6281
6282 2009-01-19  Eric Blake  <ebb9@byu.net>
6283
6284         test-unistd: test previous patch
6285         * tests/test-unistd.c: Test *_FILENO macros.
6286
6287         unistd: guarantee STDIN_FILENO here, for OS/2 EMX
6288         * lib/unistd.in.h (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
6289         Guarantee a definition.
6290         * doc/posix-headers/unistd.texi (unistd.h): Document the bug.
6291         * modules/unistd-safer (Depends-on): Add dependency on unistd.
6292         * lib/c-stack.c (STDERR_FILENO): Rely on <unistd.h>.
6293         * lib/dup-safer.c (STDERR_FILENO): Likewise.
6294         * lib/execute.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
6295         Likewise.
6296         * lib/fd-safer.c (STDIN_FILENO, STDERR_FILENO): Likewise.
6297         * lib/fopen-safer.c (STDERR_FILENO): Likewise.
6298         * lib/pipe.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
6299         Likewise.
6300         * lib/tmpfile-safer.c (STDERR_FILENO): Likewise.
6301         * tests/test-posix_spawn1.c (STDIN_FILENO, STDOUT_FILENO)
6302         (STDERR_FILENO): Likewise.
6303         * tests/test-posix_spawn2.c (STDIN_FILENO, STDOUT_FILENO)
6304         (STDERR_FILENO): Likewise.
6305         * tests/test-posix_spawn3.c (STDIN_FILENO, STDOUT_FILENO)
6306         (STDERR_FILENO): Likewise.
6307         Reported by Elbert Pol.
6308
6309 2009-01-19  Eric Blake  <ebb9@byu.net>
6310
6311         doc: mention more functions added in cygwin 1.7.0
6312         * doc/posix-functions/abort.texi (abort): Update wording related
6313         to cygwin.
6314         * doc/posix-functions/daylight.texi (daylight): Likewise.
6315         * doc/posix-functions/optarg.texi (optarg): Likewise.
6316         * doc/posix-functions/optarg.texi (opterr): Likewise.
6317         * doc/posix-functions/optarg.texi (optind): Likewise.
6318         * doc/posix-functions/optarg.texi (optopt): Likewise.
6319         * doc/posix-functions/wprintf.texi (wprintf): Cygwin wprintf never
6320         worked in 1.5.x, and was withdrawn in 1.7.
6321         * doc/posix-functions/vwprintf.texi (vwprintf): Likewise.
6322         * doc/posix-functions/fprintf.texi (fprintf): Tighten mention of
6323         cygwin versions.
6324         * doc/posix-functions/perror.texi (perror): Likewise.
6325         * doc/posix-functions/printf.texi (printf): Likewise.
6326         * doc/posix-functions/snprintf.texi (snprintf): Likewise.
6327         * doc/posix-functions/sprintf.texi (sprintf): Likewise.
6328         * doc/posix-functions/vfprintf.texi (vfprintf): Likewise.
6329         * doc/posix-functions/vprintf.texi (vprintf): Likewise.
6330         * doc/posix-functions/vsnprintf.texi (vsnprintf): Likewise.
6331         * doc/posix-functions/vsprintf.texi (vsprintf): Likewise.
6332         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
6333         Likewise.
6334         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
6335         Likewise.
6336         * doc/glibc-functions/cfmakeraw.texi (cfmakeraw): Cygwin 1.7 adds
6337         this function.
6338         * doc/glibc-functions/in6addr_any.texi (in6addr_any): Likewise.
6339         * doc/glibc-functions/in6addr_loopback.texi (in6addr_loopback):
6340         Likewise.
6341         * doc/glibc-functions/updwtmpx.texi (updwtmpx): Likewise.
6342         * doc/posix-functions/_Exit_C99.texi (_Exit): Likewise.
6343         * doc/posix-functions/confstr.texi (confstr): Likewise.
6344         * doc/posix-functions/dprintf.texi (dprintf): Likewise.
6345         * doc/posix-functions/fgetwc.texi (fgetwc): Likewise.
6346         * doc/posix-functions/fgetws.texi (fgetws): Likewise.
6347         * doc/posix-functions/fputwc.texi (fputwc): Likewise.
6348         * doc/posix-functions/fputws.texi (fputws): Likewise.
6349         * doc/posix-functions/fwide.texi (fwide): Likewise.
6350         * doc/posix-functions/getwc.texi (getwc): Likewise.
6351         * doc/posix-functions/getwchar.texi (getwchar): Likewise.
6352         * doc/posix-functions/putwc.texi (putwc): Likewise.
6353         * doc/posix-functions/putwchar.texi (putwchar): Likewise.
6354         * doc/posix-functions/sigignore.texi (sigignore): Likewise.
6355         * doc/posix-functions/ungetwc.texi (ungetwc): Likewise.
6356         * doc/posix-functions/vdprintf.texi (vdprintf): Likewise.
6357         * doc/posix-functions/wcpcpy.texi (wcpcpy): Likewise.
6358         * doc/posix-functions/wcpncpy.texi (wcpncpy): Likewise.
6359         * doc/posix-functions/wcstol.texi (wcstol): Likewise.
6360         * doc/posix-functions/wcstoll.texi (wcstoll): Likewise.
6361         * doc/posix-functions/wcstoul.texi (wcstoul): Likewise.
6362         * doc/posix-functions/wcstoull.texi (wcstoull): Likewise.
6363         * doc/posix-functions/wcsxfrm.texi (wcsxfrm): Likewise.
6364
6365 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
6366
6367         ioctl: avoid warning: no previous prototype for 'rpl_ioctl'
6368         * lib/ioctl.c: Include <sys/ioctl.h>.
6369
6370 2009-01-19  Simon Josefsson  <simon@josefsson.org>
6371
6372         * modules/getdate-tests (Depends-on): Add progname.
6373         * tests/test-getdate.c: Use progname module, to avoid link errors
6374         on non-glibc systems.
6375
6376 2009-01-18  Simon Josefsson  <simon@josefsson.org>
6377
6378         * modules/filenamecat-tests (Depends-on): Add progname.
6379         * modules/fstrcmp-tests (Depends-on): Likewise.
6380
6381         * tests/test-filenamecat.c: Use progname module, to avoid link
6382         errors on non-glibc systems.
6383         * tests/test-fstrcmp.c: Likewise.
6384
6385 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
6386
6387         gettimeofday: avoid warning: nested extern declaration of 'localtime'
6388         * lib/gettimeofday.c: Move extern declaration out of function.
6389
6390 2009-01-18  Bruno Haible  <bruno@clisp.org>
6391
6392         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mblen and mbrlen.
6393         * lib/strftime.c (HAVE_MBLEN, HAVE_MBRLEN): Remove macros.
6394         (MULTIBYTE_IS_FORMAT_SAFE): Define to 1 on all platforms except OSF/1.
6395
6396 2009-01-18  Bruno Haible  <bruno@clisp.org>
6397
6398         * lib/strftime.c (MEMPCPY): Remove unused macro.
6399         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mempcpy.
6400
6401 2009-01-18  Martin Lambers  <marlam@marlam.de>
6402
6403         New module 'link'.
6404         * lib/unistd.in.h (link): New declaration.
6405         * lib/link.c: New file.
6406         * m4/link.m4: New file.
6407         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_LINK,
6408         HAVE_LINK.
6409         * modules/unistd (Makefile.am): Substitute GNULIB_LINK, HAVE_LINK.
6410         * modules/link: New file.
6411         * doc/posix-functions/link.texi: Mention the new module.
6412
6413 2009-01-18  Bruno Haible  <bruno@clisp.org>
6414
6415         * tests/test-avltree_list.c (main): Call set_program_name.
6416         * tests/test-avltree_oset.c (main): Likewise.
6417         * tests/test-obstack-printf.c: Include progname.h.
6418         (main): Call set_program_name.
6419         * tests/test-quotearg.c: Include progname.h.
6420         (main): Call set_program_name.
6421         * tests/test-xmemdup0.c: Include progname.h.
6422         (main): Call set_program_name.
6423
6424 2009-01-18  Bruno Haible  <bruno@clisp.org>
6425
6426         New module 'alphasort'.
6427         * lib/dirent.in.h (alphasort): New declaration.
6428         * lib/alphasort.c: New file, from glibc with modifications.
6429         * m4/alphasort.m4: New file.
6430         * modules/alphasort: New file.
6431         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_ALPHASORT,
6432         HAVE_ALPHASORT.
6433         * modules/dirent (Makefile.am): Substitute GNULIB_ALPHASORT,
6434         HAVE_ALPHASORT.
6435         * doc/posix-functions/alphasort.texi: Mention the new module and the
6436         portability problems.
6437
6438 2009-01-18  Bruno Haible  <bruno@clisp.org>
6439
6440         New module 'scandir'.
6441         * lib/dirent.in.h (scandir): New declaration.
6442         * lib/scandir.c: New file, from glibc with modifications.
6443         * m4/scandir.m4: New file.
6444         * modules/scandir: New file.
6445         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_SCANDIR,
6446         HAVE_SCANDIR.
6447         * modules/dirent (Makefile.am): Substitute GNULIB_SCANDIR,
6448         HAVE_SCANDIR.
6449         * doc/posix-functions/scandir.texi: Mention the new module and the
6450         portability problems.
6451
6452 2009-01-17  Bruno Haible  <bruno@clisp.org>
6453
6454         * gnulib-tool (func_remove_prefix): Escape all dots in the prefix.
6455         Update documentation.
6456         (func_remove_suffix): Escape all dots in the suffix. Update
6457         documentation.
6458         (func_filter_filelist): Update documentation.
6459         Reported by Ralf Wildenhues.
6460
6461 2009-01-17  Bruno Haible  <bruno@clisp.org>
6462
6463         * modules/dprintf-posix-tests: New file.
6464         * tests/test-dprintf-posix.sh: New file.
6465         * tests/test-dprintf-posix.c: New file.
6466
6467         New modules 'dprintf', 'dprintf-posix'.
6468         * lib/stdio.in.h (dprintf): New declaration.
6469         * lib/dprintf.c: New file.
6470         * m4/dprintf.m4: New file.
6471         * m4/dprintf-posix.m4: New file.
6472         * modules/dprintf: New file.
6473         * modules/dprintf-posix: New file.
6474         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_DPRINTF,
6475         HAVE_DPRINTF, REPLACE_DPRINTF.
6476         * modules/stdio (Makefile.am): Substitute also GNULIB_DPRINTF,
6477         HAVE_DPRINTF, REPLACE_DPRINTF.
6478         * doc/posix-functions/dprintf.texi: Mention the new modules.
6479
6480 2009-01-17  Bruno Haible  <bruno@clisp.org>
6481
6482         * modules/vdprintf-posix-tests: New file.
6483         * tests/test-vdprintf-posix.sh: New file.
6484         * tests/test-vdprintf-posix.c: New file.
6485
6486         New modules 'vdprintf', 'vdprintf-posix'.
6487         * lib/stdio.in.h (vdprintf): New declaration.
6488         * lib/vdprintf.c: New file.
6489         * m4/vdprintf.m4: New file.
6490         * m4/vdprintf-posix.m4: New file.
6491         * modules/vdprintf: New file.
6492         * modules/vdprintf-posix: New file.
6493         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_VDPRINTF,
6494         HAVE_VDPRINTF, REPLACE_VDPRINTF.
6495         * modules/stdio (Makefile.am): Substitute also GNULIB_VDPRINTF,
6496         HAVE_VDPRINTF, REPLACE_VDPRINTF.
6497         * doc/posix-functions/vdprintf.texi: Mention the new modules.
6498
6499 2009-01-17  Bruno Haible  <bruno@clisp.org>
6500
6501         Fix replacement of fopen on mingw.
6502         * m4/fopen.m4 (gl_FUNC_FOPEN): Define FOPEN_TRAILING_SLASH_BUG also on
6503         mingw.
6504
6505 2009-01-17  Bruno Haible  <bruno@clisp.org>
6506
6507         Fix compilation error on HP-UX 11.00, present since 2008-09-24.
6508         * lib/fopen.c: Include <sys/types.h> and <sys/types.h>.
6509
6510 2009-01-17  Bruno Haible  <bruno@clisp.org>
6511
6512         Avoid test-fflush2.sh failure on mingw.
6513         * tests/test-fflush2.c: Include binary-io.h.
6514         (main): Put standard input into binary mode.
6515         * modules/fflush-tests (Depends-on): Add binary-io.
6516
6517 2009-01-17  Bruno Haible  <bruno@clisp.org>
6518
6519         * lib/wchar.in.h: In another particular situation, include only the
6520         system's <wchar.h> file.
6521         (_GL_ALREADY_INCLUDING_WCHAR_H): New macro.
6522         Reported by Albert Chin-A-Young <china@thewrittenword.com>
6523         and Thomas Guyot-Sionnest <dermoth@aei.ca>.
6524
6525 2009-01-17  Bruno Haible  <bruno@clisp.org>
6526
6527         Support for stripping executables in --enable-relocatable.
6528         * build-aux/install-reloc: Expect one more argument, or an environment
6529         variable RELOC_STRIP_PROG. If set, strip the destination program and
6530         its wrapper.
6531         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV, set
6532         RELOC_STRIP_PROG.
6533         * doc/relocatable-maint.texi (Supporting Relocation): Mention the need
6534         to set RELOCATABLE_STRIP.
6535         * NEWS: Mention the new Makefile requirement.
6536
6537 2009-01-17  Bruno Haible  <bruno@clisp.org>
6538
6539         * build-aux/install-reloc: Remove debugging information left over by
6540         C compiler on MacOS X.
6541
6542 2009-01-17  Bruno Haible  <bruno@clisp.org>
6543
6544         Update use of _NSGetExecutablePath after API change in MacOS X 10.4.
6545         * lib/progreloc.c (find_executable): Fix type of pointer passed to
6546         _NSGetExecutablePath.
6547
6548 2009-01-16  Jim Meyering  <meyering@redhat.com>
6549
6550         strerror: avoid warnings about discarding "const"
6551         * lib/strerror.c (rpl_strerror): Instead of returning a const
6552         string from each and every "case", use a variable, and add a single
6553         cast after the switch.
6554
6555 2009-01-16  Albert Chin-A-Young <china@thewrittenword.com>
6556
6557         * lib/arpa_inet.in.h: Add extern "C" block for C++.
6558
6559 2009-01-16  Bruno Haible  <bruno@clisp.org>
6560
6561         * m4/printf.m4 (gl_SNPRINTF_SIZE1, gl_VSNPRINTF_ZEROSIZE_C99): Use an
6562         array initializer syntax that also works in C++ mode.
6563         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6564
6565 2009-01-16  Jim Meyering  <meyering@redhat.com>
6566
6567         poll: suppress a warning
6568         * lib/poll.c: Use #pragma GCC diagnostic ignored "-Wtype-limits"
6569         to ignore "...unsigned expression < 0 is always false" warnings.
6570
6571 2009-01-16  Daniel P. Berrange  <berrange@redhat.com>
6572
6573         poll: remove declarations of unused variables
6574         * lib/poll.c (poll) [WIN32_NATIVE]: Remove declarations of unused
6575         sockbuf and optlen.
6576
6577 2009-01-15  Bruno Haible  <bruno@clisp.org>
6578
6579         Make fflush-after-ungetc POSIX compliant on BSD systems.
6580         * lib/fflush.c (clear_ungetc_buffer_preserving_position): New function.
6581         (clear_ungetc_buffer): Implement also for other systems.
6582         (rpl_fflush): On glibc systems, invoke
6583         clear_ungetc_buffer_preserving_position. Otherwise, invoke
6584         clear_ungetc_buffer after fetching the stream's position, not before.
6585
6586 2009-01-15  Bruno Haible  <bruno@clisp.org>
6587
6588         Make fflush-after-ungetc POSIX compliant on glibc systems.
6589         * m4/fflush.m4 (gl_FUNC_FFLUSH): Test also the behaviour of fflush
6590         after ungetc.
6591         * lib/fflush.c (clear_ungetc_buffer): Implement for glibc systems.
6592         (rpl_fflush): On glibc systems, simply call the system's fflush
6593         function after clearing the ungetc buffer.
6594         * lib/fseeko.c (rpl_fseeko): Don't try to lseek past the end of file.
6595         Instead, lseek only to the end of file, then use the system's fseeko
6596         for the rest. On glibc systems, reset the EOF indicator bit.
6597
6598 2009-01-15  Jim Meyering  <meyering@redhat.com>
6599
6600         openmp.m4: revert quote-adding change, for portability to older autoconf
6601         * m4/openmp.m4: Remove the quotes added on 2009-01-14.
6602         This reverts part of 42d1eda5dcce2d68deab7a642e7f29bcd7144a0d.
6603         Simon Josefsson noticed the problem when using autoconf-2.61.
6604
6605 2009-01-15  Bruno Haible  <bruno@clisp.org>
6606
6607         * tests/test-fflush2.sh: Invoke test-fflush2 twice.
6608         * tests/test-fflush2.c (ASSERT): Always fail.
6609         (main): Add two tests for fflush() after ungetc(), taking into account
6610         the Austin Group's clarification.
6611         Suggested by Eric Blake.
6612
6613 2009-01-15  Albert Chin-A-Young  <china@thewrittenword.com>
6614
6615         mktime.m4: remove K&R-style function prototypes
6616         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove K&R-style function prototypes
6617         for the Sun C++ compiler.
6618
6619 2009-01-14  Bruno Haible  <bruno@clisp.org>
6620
6621         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_WCHAR_H): New macro, defined
6622         while including <wchar.h>.
6623         * lib/wchar.in.h: In two particular situations on HP-UX, include only
6624         the system's <wchar.h> file.
6625         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6626
6627 2009-01-14  Bruno Haible  <bruno@clisp.org>
6628
6629         * m4/csharp.m4: Don't mention gettext on the serial number line.
6630         * m4/csharpexec.m4: Likewise.
6631         * m4/eaccess.m4: Likewise.
6632         * m4/javaexec.m4: Likewise.
6633         * m4/sig_atomic_t.m4: Likewise.
6634         * m4/tmpdir.m4: Likewise.
6635         * m4/intldir.m4: Bump gettext version.
6636         * m4/lib-ld.m4: Likewise.
6637
6638 2009-01-14  Bruno Haible  <bruno@clisp.org>
6639
6640         * lib/progname.c (set_program_name): Add more comments.
6641         Reported by Sergey Poznyakoff <gray@gnu.org.ua>.
6642
6643 2009-01-14  Simon Josefsson  <simon@josefsson.org>
6644
6645         * lib/sys_stat.in.h: Include sys/types.h for nlink_t on systems
6646         were sys/stat.h does not define it.
6647
6648 2009-01-14  Jim Meyering  <meyering@redhat.com>
6649
6650         many *.m4 files: improve m4 quoting
6651         99% of this change was performed by running the following commands:
6652         git ls-files | grep '\.m4$' | xargs perl -pi \
6653           -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \
6654           -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
6655           -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
6656           -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g'
6657         perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4
6658         The remainder were to add Copyright dates, increment serial numbers,
6659         undo some changes in comments, exclude m4/intl.m4, and add quotes
6660         around the "1" in ",1" where the unusual spacing prohibited the
6661         above regexps from doing the job.  For more details, see
6662         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
6663         * m4/acl.m4: Modified.
6664         * m4/afs.m4: Likewise.
6665         * m4/alloca.m4: Likewise.
6666         * m4/argp.m4: Likewise.
6667         * m4/argz.m4: Likewise.
6668         * m4/atexit.m4: Likewise.
6669         * m4/bison-i18n.m4: Likewise.
6670         * m4/bison.m4: Likewise.
6671         * m4/byteswap.m4: Likewise.
6672         * m4/c-stack.m4: Likewise.
6673         * m4/c-strtod.m4: Likewise.
6674         * m4/calloc.m4: Likewise.
6675         * m4/canonicalize-lgpl.m4: Likewise.
6676         * m4/chown.m4: Likewise.
6677         * m4/clock_time.m4: Likewise.
6678         * m4/codeset.m4: Likewise.
6679         * m4/copy-file.m4: Likewise.
6680         * m4/csharp.m4: Likewise.
6681         * m4/csharpcomp.m4: Likewise.
6682         * m4/csharpexec.m4: Likewise.
6683         * m4/d-ino.m4: Likewise.
6684         * m4/d-type.m4: Likewise.
6685         * m4/dirfd.m4: Likewise.
6686         * m4/double-slash-root.m4: Likewise.
6687         * m4/eaccess.m4: Likewise.
6688         * m4/eealloc.m4: Likewise.
6689         * m4/environ.m4: Likewise.
6690         * m4/errno_h.m4: Likewise.
6691         * m4/euidaccess.m4: Likewise.
6692         * m4/execute.m4: Likewise.
6693         * m4/fatal-signal.m4: Likewise.
6694         * m4/fchdir.m4: Likewise.
6695         * m4/fcntl_h.m4: Likewise.
6696         * m4/fileblocks.m4: Likewise.
6697         * m4/filenamecat.m4: Likewise.
6698         * m4/findprog.m4: Likewise.
6699         * m4/flexmember.m4: Likewise.
6700         * m4/fnmatch.m4: Likewise.
6701         * m4/fopen.m4: Likewise.
6702         * m4/fpending.m4: Likewise.
6703         * m4/fprintf-posix.m4: Likewise.
6704         * m4/free.m4: Likewise.
6705         * m4/frexp.m4: Likewise.
6706         * m4/frexpl.m4: Likewise.
6707         * m4/fsusage.m4: Likewise.
6708         * m4/ftruncate.m4: Likewise.
6709         * m4/gc-camellia.m4: Likewise.
6710         * m4/gc-random.m4: Likewise.
6711         * m4/gc.m4: Likewise.
6712         * m4/getaddrinfo.m4: Likewise.
6713         * m4/getcwd-abort-bug.m4: Likewise.
6714         * m4/getcwd-path-max.m4: Likewise.
6715         * m4/getdate.m4: Likewise.
6716         * m4/getdomainname.m4: Likewise.
6717         * m4/getgroups.m4: Likewise.
6718         * m4/gethostname.m4: Likewise.
6719         * m4/gethrxtime.m4: Likewise.
6720         * m4/getline.m4: Likewise.
6721         * m4/getloadavg.m4: Likewise.
6722         * m4/getndelim2.m4: Likewise.
6723         * m4/getpass.m4: Likewise.
6724         * m4/gettext.m4: Likewise.
6725         * m4/gettime.m4: Likewise.
6726         * m4/gettimeofday.m4: Likewise.
6727         * m4/gnulib-common.m4: Likewise.
6728         * m4/group-member.m4: Likewise.
6729         * m4/host-os.m4: Likewise.
6730         * m4/iconv.m4: Likewise.
6731         * m4/iconv_open.m4: Likewise.
6732         * m4/inet_ntop.m4: Likewise.
6733         * m4/inet_pton.m4: Likewise.
6734         * m4/inline.m4: Likewise.
6735         * m4/intldir.m4: Likewise.
6736         * m4/intlmacosx.m4: Likewise.
6737         * m4/intmax.m4: Likewise.
6738         * m4/intmax_t.m4: Likewise.
6739         * m4/inttypes.m4: Likewise.
6740         * m4/inttypes_h.m4: Likewise.
6741         * m4/inttypes-pri.m4: Likewise.
6742         * m4/isapipe.m4: Likewise.
6743         * m4/isnand.m4: Likewise.
6744         * m4/isnanf.m4: Likewise.
6745         * m4/isnanl.m4: Likewise.
6746         * m4/javacomp.m4: Likewise.
6747         * m4/javaexec.m4: Likewise.
6748         * m4/jm-winsz1.m4: Likewise.
6749         * m4/jm-winsz2.m4: Likewise.
6750         * m4/lchown.m4: Likewise.
6751         * m4/lcmessage.m4: Likewise.
6752         * m4/ldexpl.m4: Likewise.
6753         * m4/lib-ld.m4: Likewise.
6754         * m4/lib-link.m4: Likewise.
6755         * m4/libsigsegv.m4: Likewise.
6756         * m4/link-follow.m4: Likewise.
6757         * m4/localcharset.m4: Likewise.
6758         * m4/locale-fr.m4: Likewise.
6759         * m4/locale-ja.m4: Likewise.
6760         * m4/locale-tr.m4: Likewise.
6761         * m4/locale-zh.m4: Likewise.
6762         * m4/lock.m4: Likewise.
6763         * m4/longlong.m4: Likewise.
6764         * m4/ls-mntd-fs.m4: Likewise.
6765         * m4/lstat.m4: Likewise.
6766         * m4/malloc.m4: Likewise.
6767         * m4/mathl.m4: Likewise.
6768         * m4/mbrtowc.m4: Likewise.
6769         * m4/mbstate_t.m4: Likewise.
6770         * m4/mbswidth.m4: Likewise.
6771         * m4/memchr.m4: Likewise.
6772         * m4/memcmp.m4: Likewise.
6773         * m4/memcpy.m4: Likewise.
6774         * m4/memmem.m4: Likewise.
6775         * m4/memmove.m4: Likewise.
6776         * m4/mempcpy.m4: Likewise.
6777         * m4/memrchr.m4: Likewise.
6778         * m4/memset.m4: Likewise.
6779         * m4/minmax.m4: Likewise.
6780         * m4/mkdir-slash.m4: Likewise.
6781         * m4/mkdtemp.m4: Likewise.
6782         * m4/mktime.m4: Likewise.
6783         * m4/mmap-anon.m4: Likewise.
6784         * m4/mountlist.m4: Likewise.
6785         * m4/nanosleep.m4: Likewise.
6786         * m4/nls.m4: Likewise.
6787         * m4/nocrash.m4: Likewise.
6788         * m4/open.m4: Likewise.
6789         * m4/openat.m4: Likewise.
6790         * m4/openmp.m4: Likewise.
6791         * m4/pathmax.m4: Likewise.
6792         * m4/perl.m4: Likewise.
6793         * m4/physmem.m4: Likewise.
6794         * m4/pipe.m4: Likewise.
6795         * m4/po.m4: Likewise.
6796         * m4/poll.m4: Likewise.
6797         * m4/posixtm.m4: Likewise.
6798         * m4/posixver.m4: Likewise.
6799         * m4/printf-frexp.m4: Likewise.
6800         * m4/printf-frexpl.m4: Likewise.
6801         * m4/printf-posix.m4: Likewise.
6802         * m4/printf-posix-rpl.m4: Likewise.
6803         * m4/printf.m4: Likewise.
6804         * m4/progtest.m4: Likewise.
6805         * m4/putenv.m4: Likewise.
6806         * m4/readline.m4: Likewise.
6807         * m4/readlink.m4: Likewise.
6808         * m4/readutmp.m4: Likewise.
6809         * m4/realloc.m4: Likewise.
6810         * m4/regex.m4: Likewise.
6811         * m4/relocatable.m4: Likewise.
6812         * m4/relocatable-lib.m4: Likewise.
6813         * m4/rename-dest-slash.m4: Likewise.
6814         * m4/rename.m4: Likewise.
6815         * m4/rmdir-errno.m4: Likewise.
6816         * m4/rmdir.m4: Likewise.
6817         * m4/roundf.m4: Likewise.
6818         * m4/roundl.m4: Likewise.
6819         * m4/rpmatch.m4: Likewise.
6820         * m4/save-cwd.m4: Likewise.
6821         * m4/selinux-selinux-h.m4: Likewise.
6822         * m4/setenv.m4: Likewise.
6823         * m4/settime.m4: Likewise.
6824         * m4/sig2str.m4: Likewise.
6825         * m4/sig_atomic_t.m4: Likewise.
6826         * m4/signalblocking.m4: Likewise.
6827         * m4/signbit.m4: Likewise.
6828         * m4/sigpipe.m4: Likewise.
6829         * m4/sockets.m4: Likewise.
6830         * m4/sockpfaf.m4: Likewise.
6831         * m4/st_dm_mode.m4: Likewise.
6832         * m4/stat-time.m4: Likewise.
6833         * m4/stdbool.m4: Likewise.
6834         * m4/stdint.m4: Likewise.
6835         * m4/stdint_h.m4: Likewise.
6836         * m4/stpcpy.m4: Likewise.
6837         * m4/stpncpy.m4: Likewise.
6838         * m4/strcase.m4: Likewise.
6839         * m4/strchrnul.m4: Likewise.
6840         * m4/strcspn.m4: Likewise.
6841         * m4/strdup.m4: Likewise.
6842         * m4/strftime.m4: Likewise.
6843         * m4/strndup.m4: Likewise.
6844         * m4/strnlen.m4: Likewise.
6845         * m4/strpbrk.m4: Likewise.
6846         * m4/strptime.m4: Likewise.
6847         * m4/strsep.m4: Likewise.
6848         * m4/strtod.m4: Likewise.
6849         * m4/strtoimax.m4: Likewise.
6850         * m4/strtok_r.m4: Likewise.
6851         * m4/strtol.m4: Likewise.
6852         * m4/strtoll.m4: Likewise.
6853         * m4/strtoul.m4: Likewise.
6854         * m4/strtoull.m4: Likewise.
6855         * m4/strtoumax.m4: Likewise.
6856         * m4/strverscmp.m4: Likewise.
6857         * m4/threadlib.m4: Likewise.
6858         * m4/timegm.m4: Likewise.
6859         * m4/tm_gmtoff.m4: Likewise.
6860         * m4/tmpdir.m4: Likewise.
6861         * m4/tmpfile.m4: Likewise.
6862         * m4/tzset.m4: Likewise.
6863         * m4/uintmax_t.m4: Likewise.
6864         * m4/unlinkdir.m4: Likewise.
6865         * m4/unlocked-io.m4: Likewise.
6866         * m4/uptime.m4: Likewise.
6867         * m4/userspec.m4: Likewise.
6868         * m4/utimbuf.m4: Likewise.
6869         * m4/utime.m4: Likewise.
6870         * m4/utimes-null.m4: Likewise.
6871         * m4/utimes.m4: Likewise.
6872         * m4/vararrays.m4: Likewise.
6873         * m4/vasnprintf.m4: Likewise.
6874         * m4/vfprintf-posix.m4: Likewise.
6875         * m4/vprintf-posix.m4: Likewise.
6876         * m4/wait-process.m4: Likewise.
6877         * m4/wchar_t.m4: Likewise.
6878         * m4/wint_t.m4: Likewise.
6879         * m4/write-any-file.m4: Likewise.
6880         * m4/yield.m4: Likewise.
6881
6882 2009-01-13  Bruno Haible  <bruno@clisp.org>
6883
6884         Avoid test-copy-file.sh failures when ACL support insufficient.
6885         * modules/copy-file-tests (Makefile.am): Pass USE_ACL in
6886         TESTS_ENVIRONMENT.
6887         * tests/test-copy-file.sh: Skip the ACL comparisons if USE_ACL is 0.
6888         Reported by Jim Meyering.
6889
6890 2009-01-13  Bruno Haible  <bruno@clisp.org>
6891
6892         * modules/unistdio/u-printf-args (Files): Add m4/stdint_h.m4 and
6893         m4/inttypes_h.m4, needed by m4/intmax_t.m4.
6894         * modules/unistdio/u8-printf-parse (Files): Likewise.
6895         * modules/unistdio/u32-printf-parse (Files): Likewise.
6896         * modules/unistdio/ulc-printf-parse (Files): Likewise.
6897
6898 2009-01-13  Simon Josefsson  <simon@josefsson.org>
6899
6900         * modules/unistdio/u16-printf-parse (Files): Add m4/stdint_h.m4
6901         and m4/inttypes_h.m4 too.
6902
6903 2009-01-12  Eric Blake  <ebb9@byu.net>
6904
6905         tests: IRIX 6.2 cc can't compile -0.0 into .data
6906         * tests/test-ceill.c (minus_zero): Compute -0.0L at runtime,
6907         rather than at compile-time.
6908         * tests/test-floorl.c (minus_zero): Likewise.
6909         * tests/test-frexpl.c (minus_zero): Likewise.
6910         * tests/test-isnan.c (minus_zerol): Likewise.
6911         * tests/test-isnanl.h (minus_zero): Likewise.
6912         * tests/test-ldexpl.c (minus_zero): Likewise.
6913         * tests/test-roundl.c (minus_zero): Likewise.
6914         * tests/test-signbit.c (minus_zerol): Likewise.
6915         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
6916         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
6917         * tests/test-truncl.c (minus_zero): Likewise.
6918         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
6919         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
6920         Reported by Tom G. Christensen and Nelson H. F. Beebe.
6921
6922 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
6923
6924         regex: fix glibc bug 9697
6925         * lib/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET
6926         handling.
6927
6928 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
6929
6930         regex: fix glibc bug 697
6931         * lib/regexec.c (prune_impossible_nodes): Handle sifted_states[0]
6932         being NULL also if there are no backreferences.
6933
6934 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
6935
6936         regex: merge glibc changes
6937         * lib/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc.
6938         * lib/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer,
6939         re_string_skip_chars, re_string_reconstruct): Likewise.
6940         * lib/regex_internal.h [!_LIBC] (__mbrtowc): New #define.
6941
6942 2009-01-07  Jim Meyering  <meyering@redhat.com>
6943
6944         poll: filter through cppi
6945         * lib/poll.c: Indent cpp directives to reflect nesting.
6946
6947 2009-01-07  Daniel P. Berrange  <berrange@redhat.com>
6948
6949         poll: don't return uninitialized
6950         * lib/poll.c (poll) [WIN32_NATIVE]: Initialize "rc".
6951
6952 2009-01-06  Jeremy Olexa <darkside@gentoo.org>  (tiny change)
6953
6954         avoid compile failure on AIX 6.1
6955         * lib/getloadavg.c [HAVE_LIBPERFSTAT]: Include <sys/protosw.h>.
6956         Details in http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/15465
6957
6958 2009-01-04  Jim Meyering  <meyering@redhat.com>
6959
6960         remove duplicate inclusion of <stdio.h>
6961         * tests/test-fprintf-posix.c: Likewise.
6962         * tests/test-printf-posix.c: Likewise.
6963         * tests/test-snprintf-posix.c: Likewise.
6964         * tests/test-sprintf-posix.c: Likewise.
6965         * tests/test-vasprintf-posix.c: Likewise.
6966         * tests/test-vfprintf-posix.c: Likewise.
6967         * tests/test-vprintf-posix.c: Likewise.
6968         * tests/test-vsnprintf-posix.c: Likewise.
6969         * tests/test-vsprintf-posix.c: Likewise.
6970
6971 2009-01-03  Jim Meyering  <meyering@redhat.com>
6972
6973         gnulib-tool: fix sed-based filtering
6974         * gnulib-tool (func_filter_filelist): Remove extra backslash
6975         in sed_fff_filter definition.
6976
6977 2009-01-02  Jim Meyering  <meyering@redhat.com>
6978
6979         strftime: avoid compilation failure on Solaris 2.6
6980         * modules/strftime (Depends-on): Add mbrlen and mbsinit.
6981         * lib/strftime.c [DO_MULTIBYTE]: Include <wchar.h> unconditionally.
6982         Don't #define mbrlen or mbsinit, since now they're guaranteed to
6983         be available.  Reported by Tom G. Christensen.  Details in
6984         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16180>.
6985
6986 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6987             Bruno Haible  <bruno@clisp.org>
6988
6989         Speed up gnulib-tool by doing more string processing through shell
6990         built-ins.
6991         * gnulib-tool (fast_func_append): New variable.
6992         (func_remove_prefix, func_remove_suffix): New functions.
6993         (fast_func_remove_prefix, fast_func_remove_suffix): New variables.
6994         (func_filter_filelist): New function.
6995         (func_get_dependencies): Use func_remove_suffix instead of sed.
6996         (func_get_automake_snippet): Use func_filter_filelist instead of a
6997         subshell and sed invocation.
6998
6999 2009-01-01  Bruno Haible  <bruno@clisp.org>
7000
7001         Fix a security bug.
7002         * gnulib-tool (func_import, import, update): Don't allow the characters
7003         '"', '$', '`', '\' in macro arguments that become part of commands that
7004         are evaluated.
7005
7006 2009-01-01  Bruno Haible  <bruno@clisp.org>
7007
7008         * gnulib-tool (func_reset_sigpipe): Add more comments.
7009
7010 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7011
7012         * gnulib-tool (func_modules_add_dummy, func_emit_lib_Makefile_am,
7013         func_emit_tests_Makefile_am, func_import): Abort loops early if we
7014         already know the answer.
7015
7016 2009-01-01  Jim Meyering  <meyering@redhat.com>
7017
7018         * lib/version-etc.c (version_etc_va): Update copyright year.
7019
7020 2008-12-30  Bruno Haible  <bruno@clisp.org>
7021
7022         * m4/lib-prefix.m4 (AC_LIB_LINKFLAGS_BODY): Don't overwrite
7023         LIB${NAME}_PREFIX when considering the dependencies of lib${name}.
7024         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
7025
7026 2008-12-29  Eric Blake  <ebb9@byu.net>
7027
7028         multiarch: avoid autoconf AC_REQUIRE bug
7029         * m4/multiarch.m4 (gl_MULTIARCH): Split body...
7030         (gl_MULTIARCH_BODY): ...into new macro, to work around bug in Autoconf
7031         2.63 and older.
7032         Reported by Bruno Haible, and analyzed in
7033         http://lists.gnu.org/archive/html/bug-autoconf/2008-12/msg00039.html
7034
7035 2008-12-29  Bruno Haible  <bruno@clisp.org>
7036
7037         * gnulib-tool (func_import): When generating sed-ignore-removed, handle
7038         files in subdirectories correctly.
7039         Reported by Ralf Wildenhues.
7040
7041 2008-12-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7042
7043         * gnulib-tool (func_update_ignorelist): Use 'join - FILE'
7044         rather than 'join FILE -', for Solaris join.
7045
7046 2008-12-29  Bruno Haible  <bruno@clisp.org>
7047
7048         * m4/codeset.m4 (AM_LANGINFO_CODESET): More systematic m4 argument
7049         quoting.
7050         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
7051         * m4/glibc2.m4 (gt_GLIBC2): Likewise.
7052         * m4/glibc21.m4 (gl_GLIBC21): Likewise.
7053         * m4/iconv.m4 (AM_ICONV_LINK, AM_ICONV): Likewise.
7054         * m4/intdiv0.m4 (gt_INTDIV0): Likewise.
7055         * m4/intlmacosx.m4 (gt_INTL_MACOSX): Likewise.
7056         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Likewise.
7057         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Likewise.
7058         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
7059         * m4/lcmessage.m4 (gt_LC_MESSAGES): Likewise.
7060         * m4/nls.m4 (AM_NLS): Likewise.
7061         * m4/po.m4 (AM_PO_SUBDIRS): Likewise.
7062         * m4/printf-posix.m4 (gt_PRINTF_POSIX): Likewise.
7063         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
7064         * m4/size_max.m4 (gl_SIZE_MAX): Likewise.
7065         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Likewise.
7066         * m4/threadlib.m4 (gl_THREADLIB_BODY): Likewise.
7067         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Likewise.
7068         * m4/visibility.m4 (gl_VISIBILITY): Likewise.
7069         * m4/wchar_t.m4 (gt_TYPE_WCHAR_T): Likewise.
7070         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
7071         * m4/xsize.m4 (gl_XSIZE): Likewise.
7072         Suggested by Jim Meyering.
7073
7074 2008-11-17  Bruce Korb  <bkorb@gnu.org>
7075
7076         * lib/parse-duration.h: non-iso form accepts years, months weeks, too
7077         * lib/parse-duration.c: use a switch instead of cascading if's.
7078
7079 2008-12-29  Eric Blake  <ebb9@byu.net>
7080
7081         wchar.h: supply WEOF on Irix 5.3
7082         * lib/wchar.in.h (wint_t): Also supply WEOF.
7083         * lib/wctype.in.h (wint_t): Likewise.
7084         * doc/posix-headers/wchar.texi (wchar.h): Document the bug.
7085         * doc/posix-headers/wctype.texi (wctype.h): Likewise.
7086         Reported by Tom G. Christensen.
7087
7088 2008-12-26  Bruno Haible  <bruno@clisp.org>
7089
7090         * m4/multiarch.m4 (gl_MULTIARCH): Recognize also the architecture names
7091         i486, i586, i686.
7092
7093 2008-12-26  Bruno Haible  <bruno@clisp.org>
7094
7095         * lib/stdlib.in.h (struct random_data): Fix indentation of comments.
7096
7097 2008-12-26  Bruno Haible  <bruno@clisp.org>
7098
7099         * lib/stdint.in.h: Move the include of <wchar.h> down until after all
7100         the types are defined. Also conditionalize it on __STDC_LIMIT_MACROS,
7101         not __STDC_CONSTANT_MACROS.
7102         Reported by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
7103
7104 2008-12-25  Bruno Haible  <bruno@clisp.org>
7105
7106         Add support for universal builds to vasnprintf.
7107         * m4/printf.m4 (gl_PRINTF_ENOMEM): Require gl_MULTIARCH. In Apple
7108         universal builds, guess no.
7109         * modules/vasnprintf-posix (Depends-on): Add multiarch.
7110         * modules/vasprintf-posix (Depends-on): Likewise.
7111         * modules/fprintf-posix (Depends-on): Likewise.
7112         * modules/vfprintf-posix (Depends-on): Likewise.
7113         * modules/snprintf-posix (Depends-on): Likewise.
7114         * modules/vsnprintf-posix (Depends-on): Likewise.
7115         * modules/sprintf-posix (Depends-on): Likewise.
7116         * modules/vsprintf-posix (Depends-on): Likewise.
7117         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
7118         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
7119         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
7120         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
7121         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
7122         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
7123         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
7124
7125         Add support for universal builds to <inttypes.h>.
7126         * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX,
7127         _SCNu64_PREFIX): In Apple
7128         universal builds, define directly, using _LP64.
7129         * m4/inttypes.m4 (gl_INTTYPES_H): In Apple universal builds, set
7130         INT64_MAX_EQ_LONG_MAX and UINT64_MAX_EQ_ULONG_MAX to -1.
7131         * modules/inttypes (Depends-on): Add multiarch.
7132         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
7133
7134         Add support for universal builds to <stdint.h>.
7135         * lib/stdint.in.h (PDFDIFF_MIN, PTRDIFF_MAX, SIZE_MAX): In Apple
7136         universal builds, define directly, using _LP64.
7137         * m4/stdint.m4 (gl_STDINT_TYPE_PROPERTIES): Require gl_MULTIARCH. In
7138         Apple universal builds, don't test for the size and suffix of ptrdiff_t
7139         and size_t.
7140         * modules/stdint (Depends-on): Add multiarch.
7141         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
7142
7143         New module 'multiarch'.
7144         * modules/multiarch: New file.
7145         * m4/multiarch.m4: New file.
7146
7147 2008-12-25  Bruno Haible  <bruno@clisp.org>
7148
7149         * gnulib-tool (func_create_testdir): Avoid failure of mv command.
7150
7151 2008-12-25  Bruno Haible  <bruno@clisp.org>
7152
7153         * modules/btowc (License): Relicense under LGPLv2+.
7154         * modules/mbsinit (License): Likewise.
7155         * modules/mbrtowc (License): Likewise.
7156         * modules/wcrtomb (License): Likewise.
7157         * modules/streq (License): Likewise.
7158         Reported by David Lutterkort <lutter@redhat.com>.
7159
7160 2008-12-23  Bruno Haible  <bruno@clisp.org>
7161
7162         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Fix conditional and comment.
7163
7164 2008-12-23  Bruno Haible  <bruno@clisp.org>
7165
7166         Module getaddrinfo requires linking with $(GETADDRINFO_LIB).
7167         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Put link options into
7168         GETADDRINFO_LIB, not in LIBS.
7169         * modules/getaddrinfo (Link): Set to $(GETADDRINFO_LIB).
7170         * modules/canon-host (Link): Likewise.
7171         * NEWS: Mention the change.
7172         * modules/getaddrinfo-tests (test_getaddrinfo_LDADD): Add the
7173         GETADDRINFO_LIB.
7174
7175 2008-12-22  Bruno Haible  <bruno@clisp.org>
7176
7177         * doc/posix-functions/iswalnum_l.texi: Mention limitation of wchar_t.
7178         * doc/posix-functions/iswalpha_l.texi: Likewise.
7179         * doc/posix-functions/iswblank_l.texi: Likewise.
7180         * doc/posix-functions/iswcntrl_l.texi: Likewise.
7181         * doc/posix-functions/iswctype_l.texi: Likewise.
7182         * doc/posix-functions/iswdigit_l.texi: Likewise.
7183         * doc/posix-functions/iswgraph_l.texi: Likewise.
7184         * doc/posix-functions/iswlower_l.texi: Likewise.
7185         * doc/posix-functions/iswprint_l.texi: Likewise.
7186         * doc/posix-functions/iswpunct_l.texi: Likewise.
7187         * doc/posix-functions/iswspace_l.texi: Likewise.
7188         * doc/posix-functions/iswupper_l.texi: Likewise.
7189         * doc/posix-functions/iswxdigit_l.texi: Likewise.
7190         * doc/posix-functions/mbsnrtowcs.texi: Likewise.
7191         * doc/posix-functions/open_wmemstream.texi: Likewise.
7192         * doc/posix-functions/swscanf.texi: Likewise.
7193         * doc/posix-functions/towctrans_l.texi: Likewise.
7194         * doc/posix-functions/towlower.texi: Likewise.
7195         * doc/posix-functions/towlower_l.texi: Likewise.
7196         * doc/posix-functions/towupper.texi: Likewise.
7197         * doc/posix-functions/towupper_l.texi: Likewise.
7198         * doc/posix-functions/vfwprintf.texi: Likewise.
7199         * doc/posix-functions/vfwscanf.texi: Likewise.
7200         * doc/posix-functions/vswscanf.texi: Likewise.
7201         * doc/posix-functions/vwprintf.texi: Likewise.
7202         * doc/posix-functions/vwscanf.texi: Likewise.
7203         * doc/posix-functions/wcpcpy.texi: Likewise.
7204         * doc/posix-functions/wcpncpy.texi: Likewise.
7205         * doc/posix-functions/wcscasecmp.texi: Likewise.
7206         * doc/posix-functions/wcscasecmp_l.texi: Likewise.
7207         * doc/posix-functions/wcscoll_l.texi: Likewise.
7208         * doc/posix-functions/wcsdup.texi: Likewise.
7209         * doc/posix-functions/wcsncasecmp.texi: Likewise.
7210         * doc/posix-functions/wcsncasecmp_l.texi: Likewise.
7211         * doc/posix-functions/wcsnlen.texi: Likewise.
7212         * doc/posix-functions/wcsnrtombs.texi: Likewise.
7213         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
7214         * doc/posix-functions/wctrans_l.texi: Likewise.
7215         * doc/posix-functions/wctype_l.texi: Likewise.
7216         * doc/glibc-functions/fgetwc_unlocked.texi: Likewise.
7217         * doc/glibc-functions/fgetws_unlocked.texi: Likewise.
7218         * doc/glibc-functions/fputwc_unlocked.texi: Likewise.
7219         * doc/glibc-functions/fputws_unlocked.texi: Likewise.
7220         * doc/glibc-functions/getwc_unlocked.texi: Likewise.
7221         * doc/glibc-functions/getwchar_unlocked.texi: Likewise.
7222         * doc/glibc-functions/putwc_unlocked.texi: Likewise.
7223         * doc/glibc-functions/putwchar_unlocked.texi: Likewise.
7224         * doc/glibc-functions/wcschrnul.texi: Likewise.
7225         * doc/glibc-functions/wcsftime_l.texi: Likewise.
7226         * doc/glibc-functions/wcstod_l.texi: Likewise.
7227         * doc/glibc-functions/wcstof_l.texi: Likewise.
7228         * doc/glibc-functions/wcstol_l.texi: Likewise.
7229         * doc/glibc-functions/wcstold_l.texi: Likewise.
7230         * doc/glibc-functions/wcstoll_l.texi: Likewise.
7231         * doc/glibc-functions/wcstoq.texi: Likewise.
7232         * doc/glibc-functions/wcstoul_l.texi: Likewise.
7233         * doc/glibc-functions/wcstoull_l.texi: Likewise.
7234         * doc/glibc-functions/wcstouq.texi: Likewise.
7235         * doc/glibc-functions/wmempcpy.texi: Likewise.
7236
7237 2008-12-22  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
7238             Eric Blake  <ebb9@byu.net>
7239             Paolo Bonzini  <bonzini@gnu.org>
7240             Bruno Haible  <bruno@clisp.org>
7241
7242         Make c-stack work on Haiku.
7243         * lib/c-stack.c (SA_ONSTACK): Define fallback.
7244         (c_stack_action): Use SA_ONSTACK flag.
7245
7246 2008-12-22  Bruno Haible  <bruno@clisp.org>
7247
7248         * m4/locale-fr.m4 (gt_LOCALE_FR_UTF8): Treat Haiku like BeOS.
7249
7250 2008-12-22  Bruno Haible  <bruno@clisp.org>
7251
7252         Work around mbrlen() bugs on AIX, HP-UX, OSF/1, Solaris.
7253         * m4/mbrlen.m4 (gl_FUNC_MBRLEN): Set REPLACE_MBRLEN if mbrtowc is
7254         being overridden.
7255         (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL):
7256         New macros.
7257         * lib/wchar.in.h (mbrlen): Override if REPLACE_MBRLEN is set.
7258         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBRLEN.
7259         * modules/wchar (Makefile.am): Substitute REPLACE_MBRLEN.
7260         * doc/posix-functions/mbrlen.texi: Mention the various platform bugs.
7261
7262 2008-12-22  Bruno Haible  <bruno@clisp.org>
7263
7264         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE): Remove unused variable
7265         from test code.
7266
7267 2008-12-22  Eric Blake  <ebb9@byu.net>
7268
7269         Avoid gcc warnings on cygwin.
7270         * lib/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]:
7271         Avoid unused variable.
7272         * lib/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]:
7273         Likewise.
7274
7275 2008-12-22  Bruno Haible  <bruno@clisp.org>
7276
7277         Remove HAVE_MBRTOWC conditionals.
7278         * lib/mbscasecmp.c: Include mbuiter.h unconditionally.
7279         (mbscasecmp): Assume mbrtowc function.
7280         * lib/mbscasestr.c: Include mbuiter.h unconditionally.
7281         (knuth_morris_pratt_multibyte, mbscasestr): Assume mbrtowc function.
7282         * lib/mbschr.c: Include mbuiter.h unconditionally.
7283         (mbschr): Assume mbrtowc function.
7284         * lib/mbscspn.c: Include mbuiter.h unconditionally.
7285         (mbscspn): Assume mbrtowc function.
7286         * lib/mbslen.c: Include mbuiter.h unconditionally.
7287         (mbslen): Assume mbrtowc function.
7288         * lib/mbsncasecmp.c: Include mbuiter.h unconditionally.
7289         (mbsncasecmp): Assume mbrtowc function.
7290         * lib/mbsnlen.c: Include mbiter.h unconditionally.
7291         (mbsnlen): Assume mbrtowc function.
7292         * lib/mbspbrk.c: Include mbuiter.h unconditionally.
7293         (mbspbrk): Assume mbrtowc function.
7294         * lib/mbspcasecmp.c: Include mbuiter.h unconditionally.
7295         (mbspcasecmp): Assume mbrtowc function.
7296         * lib/mbsrchr.c: Include mbuiter.h unconditionally.
7297         (mbsrchr): Assume mbrtowc function.
7298         * lib/mbssep.c: Include mbuiter.h unconditionally.
7299         (mbssep): Assume mbrtowc function.
7300         * lib/mbsspn.c: Include mbuiter.h unconditionally.
7301         (mbsspn): Assume mbrtowc function.
7302         * lib/mbsstr.c: Include mbuiter.h unconditionally.
7303         (knuth_morris_pratt_multibyte, mbsstr): Assume mbrtowc function.
7304         * lib/mbstok_r.c: Include mbuiter.h unconditionally.
7305         (mbstok_r): Assume mbrtowc function.
7306         * lib/propername.c: Include mbuiter.h unconditionally.
7307         (mbsstr_trimmed_wordbounded): Assume mbrtowc function.
7308         * lib/trim.c: Include mbchar.h, mbiter.h uncondtionally.
7309         (trim2): Assume mbrtowc function.
7310         * lib/mbswidth.c (mbsinit): Remove fallback definition.
7311         (mbsnwidth): Assume mbrtowc function.
7312         * modules/mbswidth (Depends-on): Add mbrtowc, mbsinit.
7313         * lib/quotearg.c (MB_CUR_MAX, mbstate_t, mbrtowc, iswprint): Remove
7314         fallback definitions.
7315         * modules/quotearg (Depends-on): Add mbrtowc, mbsinit.
7316
7317 2008-12-22  Bruno Haible  <bruno@clisp.org>
7318
7319         * doc/posix-functions/mbtowc.texi: Mention a glibc bug.
7320
7321 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
7322
7323         * modules/regex: Request emulations for the mb*/wc* functions we need.
7324         * m4/regex.m4: Don't look for those functions here.
7325         * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
7326
7327 2008-12-22  Bruno Haible  <bruno@clisp.org>
7328
7329         * modules/fnmatch (Depends-on): Remove duplicated dependency.
7330
7331 2008-12-21  Bruno Haible  <bruno@clisp.org>
7332
7333         Make mbiter.h, mbuiter.h, mbfile.h usable unconditionally.
7334         * modules/mbiter (Depends-on): Add mbrtowc, mbsinit.
7335         (Include): Remove conditionalization.
7336         * modules/mbuiter (Depends-on): Add mbrtowc, mbsinit.
7337         (Include): Remove conditionalization.
7338         * modules/mbfile (Depends-on): Add mbrtowc, mbsinit.
7339         (Include): Remove conditionalization.
7340         * m4/mbiter.m4 (gl_MBITER): Deprecate the use of AC_FUNC_MBRTOWC.
7341         * m4/mbfile.m4 (gl_MBFILE): Likewise.
7342         * NEWS: Mention the change.
7343         Reported by Alan Hourihane <alanh@fairlite.co.uk>
7344         via Sergey Poznyakoff <gray@gnu.org.ua>.
7345
7346 2008-12-21  Bruno Haible  <bruno@clisp.org>
7347
7348         * MODULES.html.sh (Extended multibyte and wide character utilities
7349         <wchar.h>): Add btowc, wctob, mbsinit, mbrlen, mbrtowc, mbsrtowcs,
7350         wcrtomb, wcsrtombs.
7351         (Support for systems lacking POSIX:2008): Add accept, bind, close,
7352         connect, fclose, getpeername, getsockname, getsockopt, hostent, listen,
7353         mbsnrtowcs, posix_spawn*, recv, recvfrom, sched, select, send, sendto,
7354         setsockopt, shutdown, socket, spawn, sys_wait, wcsnrtombs, write.
7355
7356 2008-12-21  Bruno Haible  <bruno@clisp.org>
7357
7358         * MODULES.html.sh: Change section titles to refer to POSIX:2008.
7359
7360 2008-12-21  Bruno Haible  <bruno@clisp.org>
7361
7362         * modules/wcsnrtombs-tests: New file.
7363         * tests/test-wcsnrtombs1.sh: New file.
7364         * tests/test-wcsnrtombs2.sh: New file.
7365         * tests/test-wcsnrtombs3.sh: New file.
7366         * tests/test-wcsnrtombs4.sh: New file.
7367         * tests/test-wcsnrtombs.c: New file.
7368
7369         New module 'wcsnrtombs'.
7370         * lib/wchar.in.h (wcsnrtombs): New declaration.
7371         * lib/wcsnrtombs.c: New file.
7372         * lib/wcsrtombs-state.c: New file.
7373         * lib/wcsrtombs.c: Refer to _gl_wcsrtombs_state.
7374         (internal_state): Remove variable.
7375         * m4/wcsnrtombs.m4: New file.
7376         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): Add wcsrtombs-state.c to the
7377         compilation units.
7378         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNRTOMBS,
7379         HAVE_WCSNRTOMBS.
7380         * modules/wchar (Makefile.am): Substitute GNULIB_WCSNRTOMBS,
7381         HAVE_WCSNRTOMBS.
7382         * modules/wcsnrtombs: New file.
7383         * modules/wcsrtombs (Files): Add lib/wcsrtombs-state.c.
7384         * doc/posix-functions/wcsnrtombs.texi: Mention the new module.
7385
7386 2008-12-21  Bruno Haible  <bruno@clisp.org>
7387
7388         * modules/wcsrtombs-tests: New file.
7389         * tests/test-wcsrtombs1.sh: New file.
7390         * tests/test-wcsrtombs2.sh: New file.
7391         * tests/test-wcsrtombs3.sh: New file.
7392         * tests/test-wcsrtombs4.sh: New file.
7393         * tests/test-wcsrtombs.c: New file.
7394
7395         New module 'wcsrtombs'.
7396         * lib/wchar.in.h (wcsrtombs): New declaration.
7397         * lib/wcsrtombs.c: New file.
7398         * m4/wcsrtombs.m4: New file.
7399         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRTOMBS,
7400         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
7401         * modules/wchar (Makefile.am): Substitute GNULIB_WCSRTOMBS,
7402         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
7403         * modules/wcsrtombs: New file.
7404         * doc/posix-functions/wcsrtombs.texi: Mention the new module and the
7405         bugs.
7406
7407 2008-12-21  Bruno Haible  <bruno@clisp.org>
7408
7409         Work around a wcrtomb() bug on Solaris 10 and OSF/1 5.1.
7410         * lib/wchar.in.h (wcrtomb): Override if REPLACE_WCRTOMB is set.
7411         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Test the return value of wcrtomb
7412         with NULL destination argument in various locales. Set REPLACE_WCRTOMB
7413         if not correct.
7414         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCRTOMB.
7415         * modules/wchar (Makefile.am): Substitute REPLACE_WCRTOMB.
7416         * modules/wcrtomb (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
7417         m4/locale-zh.m4, m4/codeset.m4.
7418         * doc/posix-functions/wcrtomb.texi: Document the bug.
7419
7420 2008-12-21  Bruno Haible  <bruno@clisp.org>
7421
7422         Work around a btowc() bug on IRIX 6.5.
7423         * lib/wchar.in.h (btowc): Override if REPLACE_BTOWC is set.
7424         * m4/btowc.m4 (gl_FUNC_BTOWC): Test whether btowc(EOF) is correct. Set
7425         REPLACE_WTOBC if not.
7426         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_BTOWC.
7427         * modules/wchar (Makefile.am): Substitute REPLACE_BTOWC.
7428         * doc/posix-functions/btowc.texi: Mention the IRIX bug.
7429
7430 2008-12-21  Bruno Haible  <bruno@clisp.org>
7431
7432         * modules/wcrtomb-tests: New file.
7433         * tests/test-wcrtomb.sh: New file.
7434         * tests/test-wcrtomb.c: New file.
7435
7436         New module 'wcrtomb'.
7437         * lib/wchar.in.h (wcrtomb): New declaration.
7438         * lib/wcrtomb.c: New file.
7439         * m4/wcrtomb.m4: New file.
7440         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCRTOMB,
7441         HAVE_WCRTOMB.
7442         * modules/wchar (Makefile.am): Substitute GNULIB_WCRTOMB,
7443         HAVE_WCRTOMB.
7444         * modules/wcrtomb: New file.
7445         * doc/posix-functions/wcrtomb.texi: Mention the new module.
7446
7447 2008-12-21  Bruno Haible  <bruno@clisp.org>
7448
7449         * modules/mbrtowc (Files): Add m4/codeset.m4, needed by m4/locale-fr.m4.
7450         * modules/mbsrtowcs (Files): Likewise.
7451         * modules/wctob (Files): Likewise.
7452         * modules/c-strcase-tests (Files): Likewise.
7453         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
7454         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
7455         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
7456         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
7457         * modules/vasnprintf-posix-tests (Files): Likewise.
7458
7459 2008-12-21  William Pursell  <bill.pursell@gmail.com>
7460
7461         gitlog-to-changelog: pass all command-line arguments to git-log
7462         * build-aux/gitlog-to-changelog: When producing a ChangeLog,
7463         it is sometimes convenient to filter the commits in various ways.
7464         gitlog-to-changelog only allows --since to specify a start date,
7465         but git-log itself supports many other filtering mechanisms.
7466         At the moment, I want to filter by branch name.  Rather than
7467         adding a --branch option to gitlog-to-changelog, it seems more
7468         flexible to simply pass all options directly to git-log and let
7469         git do the work.  Notice that this effectively makes --since a
7470         redundant option for gitlog-to-changelog, but removing it would
7471         require current usage to change since calls would then require
7472         an additional '--'.
7473
7474 2008-12-21  Bruno Haible  <bruno@clisp.org>
7475
7476         * modules/mbsnrtowcs-tests: New file.
7477         * tests/test-mbsnrtowcs1.sh: New file.
7478         * tests/test-mbsnrtowcs2.sh: New file.
7479         * tests/test-mbsnrtowcs3.sh: New file.
7480         * tests/test-mbsnrtowcs4.sh: New file.
7481         * tests/test-mbsnrtowcs.c: New file.
7482
7483         New module 'mbsnrtowcs'.
7484         * lib/wchar.in.h (mbsnrtowcs): New declaration.
7485         * lib/mbsnrtowcs.c: New file.
7486         * lib/mbsrtowcs-state.c: New file.
7487         * lib/mbsrtowcs.c: Refer to _gl_mbsrtowcs_state.
7488         (internal_state): Remove variable.
7489         * m4/mbsnrtowcs.m4: New file.
7490         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Add mbsrtowcs-state.c to the
7491         compilation units.
7492         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSNRTOWCS,
7493         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
7494         * modules/wchar (Makefile.am): Substitute GNULIB_MBSNRTOWCS,
7495         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
7496         * modules/mbsnrtowcs: New file.
7497         * modules/mbsrtowcs (Files): Add lib/mbsrtowcs-state.c.
7498         * doc/posix-functions/mbsnrtowcs.texi: Mention the new module and a
7499         portability problem.
7500
7501 2008-12-21  Bruno Haible  <bruno@clisp.org>
7502
7503         Work around mbsrtowcs bug.
7504         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): New macro.
7505         (gl_FUNC_MBSRTOWCS): Invoke it.
7506         * modules/mbsrtowcs (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
7507         m4/locale-zh.m4.
7508         * doc/posix-functions/mbsrtowcs.texi: Document the bug.
7509
7510 2008-12-21  Bruno Haible  <bruno@clisp.org>
7511
7512         * tests/test-mbsrtowcs.c (main): Execute the loop also for unlimited=1.
7513
7514 2008-12-21  Bruno Haible  <bruno@clisp.org>
7515
7516         Update doc for AIX.
7517         * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
7518         16-bit wchar_t type.
7519         * doc/posix-functions/btowc.texi: Likewise.
7520         * doc/posix-functions/fgetwc.texi: Likewise.
7521         * doc/posix-functions/fgetws.texi: Likewise.
7522         * doc/posix-functions/fputwc.texi: Likewise.
7523         * doc/posix-functions/fputws.texi: Likewise.
7524         * doc/posix-functions/fwide.texi: Likewise.
7525         * doc/posix-functions/fwprintf.texi: Likewise.
7526         * doc/posix-functions/fwscanf.texi: Likewise.
7527         * doc/posix-functions/getwchar.texi: Likewise.
7528         * doc/posix-functions/getwc.texi: Likewise.
7529         * doc/posix-functions/iswalnum.texi: Likewise.
7530         * doc/posix-functions/iswalpha.texi: Likewise.
7531         * doc/posix-functions/iswblank.texi: Likewise.
7532         * doc/posix-functions/iswcntrl.texi: Likewise.
7533         * doc/posix-functions/iswctype.texi: Likewise.
7534         * doc/posix-functions/iswdigit.texi: Likewise.
7535         * doc/posix-functions/iswgraph.texi: Likewise.
7536         * doc/posix-functions/iswlower.texi: Likewise.
7537         * doc/posix-functions/iswprint.texi: Likewise.
7538         * doc/posix-functions/iswpunct.texi: Likewise.
7539         * doc/posix-functions/iswspace.texi: Likewise.
7540         * doc/posix-functions/iswupper.texi: Likewise.
7541         * doc/posix-functions/iswxdigit.texi: Likewise.
7542         * doc/posix-functions/mbrtowc.texi: Likewise.
7543         * doc/posix-functions/mbsrtowcs.texi: Likewise.
7544         * doc/posix-functions/mbstowcs.texi: Likewise.
7545         * doc/posix-functions/mbtowc.texi: Likewise.
7546         * doc/posix-functions/putwchar.texi: Likewise.
7547         * doc/posix-functions/putwc.texi: Likewise.
7548         * doc/posix-functions/swprintf.texi: Likewise.
7549         * doc/posix-functions/tolower.texi: Likewise.
7550         * doc/posix-functions/toupper.texi: Likewise.
7551         * doc/posix-functions/towctrans.texi: Likewise.
7552         * doc/posix-functions/ungetwc.texi: Likewise.
7553         * doc/posix-functions/vswprintf.texi: Likewise.
7554         * doc/posix-functions/wcrtomb.texi: Likewise.
7555         * doc/posix-functions/wcscat.texi: Likewise.
7556         * doc/posix-functions/wcschr.texi: Likewise.
7557         * doc/posix-functions/wcscmp.texi: Likewise.
7558         * doc/posix-functions/wcscoll.texi: Likewise.
7559         * doc/posix-functions/wcscpy.texi: Likewise.
7560         * doc/posix-functions/wcscspn.texi: Likewise.
7561         * doc/posix-functions/wcsftime.texi: Likewise.
7562         * doc/posix-functions/wcslen.texi: Likewise.
7563         * doc/posix-functions/wcsncat.texi: Likewise.
7564         * doc/posix-functions/wcsncmp.texi: Likewise.
7565         * doc/posix-functions/wcsncpy.texi: Likewise.
7566         * doc/posix-functions/wcspbrk.texi: Likewise.
7567         * doc/posix-functions/wcsrchr.texi: Likewise.
7568         * doc/posix-functions/wcsrtombs.texi: Likewise.
7569         * doc/posix-functions/wcsspn.texi: Likewise.
7570         * doc/posix-functions/wcsstr.texi: Likewise.
7571         * doc/posix-functions/wcstod.texi: Likewise.
7572         * doc/posix-functions/wcstof.texi: Likewise.
7573         * doc/posix-functions/wcstoimax.texi: Likewise.
7574         * doc/posix-functions/wcstok.texi: Likewise.
7575         * doc/posix-functions/wcstold.texi: Likewise.
7576         * doc/posix-functions/wcstoll.texi: Likewise.
7577         * doc/posix-functions/wcstol.texi: Likewise.
7578         * doc/posix-functions/wcstombs.texi: Likewise.
7579         * doc/posix-functions/wcstoull.texi: Likewise.
7580         * doc/posix-functions/wcstoul.texi: Likewise.
7581         * doc/posix-functions/wcstoumax.texi: Likewise.
7582         * doc/posix-functions/wcswidth.texi: Likewise.
7583         * doc/posix-functions/wcsxfrm.texi: Likewise.
7584         * doc/posix-functions/wctob.texi: Likewise.
7585         * doc/posix-functions/wctomb.texi: Likewise.
7586         * doc/posix-functions/wctrans.texi: Likewise.
7587         * doc/posix-functions/wctype.texi: Likewise.
7588         * doc/posix-functions/wcwidth.texi: Likewise.
7589         * doc/posix-functions/wmemchr.texi: Likewise.
7590         * doc/posix-functions/wmemcmp.texi: Likewise.
7591         * doc/posix-functions/wmemcpy.texi: Likewise.
7592         * doc/posix-functions/wmemmove.texi: Likewise.
7593         * doc/posix-functions/wmemset.texi: Likewise.
7594         * doc/posix-functions/wprintf.texi: Likewise.
7595         * doc/posix-functions/wscanf.texi: Likewise.
7596
7597 2008-12-21  Bruno Haible  <bruno@clisp.org>
7598
7599         Update doc for HP-UX 11.11.
7600         * doc/posix-functions/btowc.texi: Clarify that the function is missing
7601         in HP-UX version 11.00, not in all versions of HP-UX 11.
7602         * doc/posix-functions/fwide.texi: Likewise.
7603         * doc/posix-functions/fwprintf.texi: Likewise.
7604         * doc/posix-functions/fwscanf.texi: Likewise.
7605         * doc/posix-functions/inet_ntop.texi: Likewise.
7606         * doc/posix-functions/inet_pton.texi: Likewise.
7607         * doc/posix-functions/mbrlen.texi: Likewise.
7608         * doc/posix-functions/mbrtowc.texi: Likewise.
7609         * doc/posix-functions/mbsinit.texi: Likewise.
7610         * doc/posix-functions/mbsrtowcs.texi: Likewise.
7611         * doc/posix-functions/swprintf.texi: Likewise.
7612         * doc/posix-functions/swscanf.texi: Likewise.
7613         * doc/posix-functions/towctrans.texi: Likewise.
7614         * doc/posix-functions/vfwprintf.texi: Likewise.
7615         * doc/posix-functions/vswprintf.texi: Likewise.
7616         * doc/posix-functions/vwprintf.texi: Likewise.
7617         * doc/posix-functions/wcrtomb.texi: Likewise.
7618         * doc/posix-functions/wcsrtombs.texi: Likewise.
7619         * doc/posix-functions/wcsstr.texi: Likewise.
7620         * doc/posix-functions/wctob.texi: Likewise.
7621         * doc/posix-functions/wctrans.texi: Likewise.
7622         * doc/posix-functions/wmemchr.texi: Likewise.
7623         * doc/posix-functions/wmemcmp.texi: Likewise.
7624         * doc/posix-functions/wmemcpy.texi: Likewise.
7625         * doc/posix-functions/wmemmove.texi: Likewise.
7626         * doc/posix-functions/wmemset.texi: Likewise.
7627         * doc/posix-functions/wprintf.texi: Likewise.
7628         * doc/posix-functions/wscanf.texi: Likewise.
7629
7630 2008-12-21  Bruno Haible  <bruno@clisp.org>
7631
7632         Work around a portability problem.
7633         * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
7634         * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
7635
7636 2008-12-20  Bruno Haible  <bruno@clisp.org>
7637
7638         * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
7639         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
7640         REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
7641         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
7642         * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
7643
7644         Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
7645         * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
7646         set.
7647         (GNULIB_defined_mbstate_t): New macro.
7648         (mbsinit): Redefine if REPLACE_MBSINIT is set.
7649         (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
7650         * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
7651         reuses the system's mbrtowc function but works around the bugs.
7652         * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
7653         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
7654         macros.
7655         (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
7656         be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
7657         MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
7658         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
7659         REPLACE_MBSINIT if mbsinit needs to be overridden.
7660         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
7661         REPLACE_MBSINIT, REPLACE_MBRTOWC.
7662         * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
7663         REPLACE_MBSINIT, REPLACE_MBRTOWC.
7664         * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
7665         m4/locale-zh.m4.
7666         (Depends): Add mbsinit.
7667         * modules/mbsinit (Depends): Add mbrtowc.
7668         * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
7669
7670 2008-12-20  Bruno Haible  <bruno@clisp.org>
7671
7672         * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
7673         so that there are no conversion errors on AIX.
7674         * tests/test-mbsrtowcs.c (main): LIkewise.
7675
7676 2008-12-20  Bruno Haible  <bruno@clisp.org>
7677
7678         Work around wctob bug on Solaris <= 9.
7679         * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
7680         * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
7681         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
7682         * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
7683         * modules/wctob (Files): Add m4/locale-fr.m4.
7684         * doc/posix-functions/wctob.texi: Mention the Solaris bug.
7685
7686 2008-12-20  Bruno Haible  <bruno@clisp.org>
7687
7688         * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
7689         /dev/null.
7690         * tests/test-select-in.sh: Likewise.
7691         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
7692
7693 2008-12-20  Bruno Haible  <bruno@clisp.org>
7694
7695         Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
7696         * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
7697         Cygwin 1.5.x.
7698
7699 2008-12-20  Bruno Haible  <bruno@clisp.org>
7700
7701         Ensure mbstate_t is defined on HP-UX 11.11.
7702         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
7703         AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
7704         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
7705         AC_USE_SYSTEM_EXTENSIONS.
7706         * modules/fnmatch (Depends-on): Add extensions.
7707         * modules/mbrlen (Depends-on): Likewise.
7708         * modules/mbrtowc (Depends-on): Likewise.
7709         * modules/mbsinit (Depends-on): Likewise.
7710         * modules/mbsrtowcs (Depends-on): Likewise.
7711         * modules/mbswidth (Depends-on): Likewise.
7712         * modules/quotearg (Depends-on): Likewise.
7713         * modules/strftime (Depends-on): Likewise.
7714
7715 2008-12-20  Bruno Haible  <bruno@clisp.org>
7716
7717         Ensure wctob is declared on IRIX 6.5.
7718         * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
7719         * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
7720         HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
7721         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
7722         of HAVE_WCTOB.
7723         * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
7724         HAVE_WCTOB.
7725         * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
7726
7727 2008-12-19  Bruno Haible  <bruno@clisp.org>
7728
7729         * modules/mbsrtowcs-tests: New file.
7730         * tests/test-mbsrtowcs1.sh: New file.
7731         * tests/test-mbsrtowcs2.sh: New file.
7732         * tests/test-mbsrtowcs3.sh: New file.
7733         * tests/test-mbsrtowcs4.sh: New file.
7734         * tests/test-mbsrtowcs.c: New file.
7735
7736         New module 'mbsrtowcs'.
7737         * lib/wchar.in.h (mbsrtowcs): New declaration.
7738         * lib/mbsrtowcs.c: New file.
7739         * m4/mbsrtowcs.m4: New file.
7740         * modules/mbsrtowcs: New file.
7741         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOWCS and
7742         HAVE_MBSRTOWCS.
7743         * modules/wchar (Makefile.am): Substitute GNULIB_MBSRTOWCS and
7744         HAVE_MBSRTOWCS.
7745         * doc/posix-functions/mbsrtowcs.texi: Document the new module.
7746
7747 2008-12-19  Bruno Haible  <bruno@clisp.org>
7748
7749         New module 'mbrlen'.
7750         * lib/wchar.in.h (mbrlen): New declaration.
7751         * lib/mbrlen.c: New file.
7752         * m4/mbrlen.m4: New file.
7753         * modules/mbrlen: New file.
7754         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRLEN and
7755         HAVE_MBRLEN.
7756         * modules/wchar (Makefile.am): Substitute GNULIB_MBRLEN and
7757         HAVE_MBRLEN.
7758         * doc/posix-functions/mbrlen.texi: Document the new module.
7759
7760 2008-12-19  Bruno Haible  <bruno@clisp.org>
7761
7762         * lib/mbrtowc.c: Include verify.h. Verify an assumption.
7763         * modules/mbrtowc (Depends-on): Add verify.
7764         Suggested by Paul Eggert.
7765
7766 2008-12-18  Bruno Haible  <bruno@clisp.org>
7767
7768         * modules/mbsinit-tests: New file.
7769         * tests/test-mbsinit.sh: New file.
7770         * tests/test-mbsinit.c: New file.
7771
7772 2008-12-18  Bruno Haible  <bruno@clisp.org>
7773
7774         * modules/mbrtowc-tests: New file.
7775         * tests/test-mbrtowc1.sh: New file.
7776         * tests/test-mbrtowc2.sh: New file.
7777         * tests/test-mbrtowc3.sh: New file.
7778         * tests/test-mbrtowc4.sh: New file.
7779         * tests/test-mbrtowc.c: New file.
7780
7781         New module 'mbrtowc'.
7782         * lib/wchar.in.h (mbstate_t): Override when the system does not have
7783         mbsinit and mbrtowc.
7784         (mbrtowc): New declaration.
7785         * lib/mbrtowc.c: New file.
7786         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_PREREQ_MBRTOWC): New macros.
7787         * modules/mbrtowc: New file.
7788         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOWC and
7789         HAVE_MBRTOWC.
7790         * modules/wchar (Makefile.am): Substitute GNULIB_MBRTOWC and
7791         HAVE_MBRTOWC.
7792         * doc/posix-functions/mbrtowc.texi: Document the new module.
7793
7794 2008-12-18  Bruno Haible  <bruno@clisp.org>
7795
7796         New module 'wctob'.
7797         * lib/wchar.in.h (wctob): New declaration.
7798         * lib/wctob.c: New file.
7799         * m4/wctob.m4: New file.
7800         * modules/wctob: New file.
7801         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCTOB and
7802         HAVE_WCTOB.
7803         * modules/wchar (Makefile.am): Substitute GNULIB_WCTOB and HAVE_WCTOB.
7804         * doc/posix-functions/wctob.texi: Document the new module.
7805
7806 2008-12-18  Bruno Haible  <bruno@clisp.org>
7807
7808         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_REPLACE_WCHAR_H.
7809         * m4/btowc.m4 (gl_FUNC_BTOWC): Likewise.
7810
7811 2008-12-18  Simon Josefsson  <simon@josefsson.org>
7812
7813         * lib/flock.c: Use proper #if symbol in check.  Reported by "Tom
7814         G. Christensen" <tgc@jupiterrise.com>.
7815
7816         * lib/flock.c: Need to include errno.h.  Reported by "Tom
7817         G. Christensen" <tgc@jupiterrise.com>.
7818
7819         * lib/flock.c: Need to include string.h.  Reported by "Tom
7820         G. Christensen" <tgc@jupiterrise.com> and Eric Blake
7821         <ebb9@byu.net>.
7822
7823 2008-12-18  Bruno Haible  <bruno@clisp.org>
7824
7825         * m4/locale-ja.m4: New file, from GNU gettext.
7826
7827 2008-12-17  Bruno Haible  <bruno@clisp.org>
7828
7829         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Don't override in autoconf >= 2.60.
7830         Suggested by Eric Blake.
7831
7832 2008-12-17  Bruno Haible  <bruno@clisp.org>
7833
7834         * m4/errno_h.m4 (AC_COMPUTE_INT): Provide fallback definition.
7835
7836 2008-12-17  Bruno Haible  <bruno@clisp.org>
7837
7838         * lib/mbsinit.c: Include verify.h. Verify an assumption.
7839         * modules/mbsinit (Depends-on): Add verify.
7840         Suggested by Paul Eggert.
7841
7842 2008-12-17  Bruno Haible  <bruno@clisp.org>
7843
7844         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Renamed from gl_FUNC_MBRTOWC.
7845         * m4/mbfile.m4 (gl_MBFILE): Use AC_FUNC_MBRTOWC instead of
7846         gl_FUNC_MBRTOWC.
7847         * m4/mbiter.m4 (gl_MBITER): LIkewise.
7848         * m4/mbscasecmp.m4 (gl_PREREQ_MBSCASECMP): Likewise.
7849         * m4/mbscasestr.m4 (gl_PREREQ_MBSCASESTR): Likewise.
7850         * m4/mbschr.m4 (gl_PREREQ_MBSCHR): Likewise.
7851         * m4/mbscspn.m4 (gl_PREREQ_MBSCSPN): Likewise.
7852         * m4/mbslen.m4 (gl_PREREQ_MBSLEN): Likewise.
7853         * m4/mbsncasecmp.m4 (gl_PREREQ_MBSNCASECMP): Likewise.
7854         * m4/mbsnlen.m4 (gl_PREREQ_MBSNLEN): Likewise.
7855         * m4/mbspbrk.m4 (gl_PREREQ_MBSPBRK): Likewise.
7856         * m4/mbspcasecmp.m4 (gl_PREREQ_MBSPCASECMP): Likewise.
7857         * m4/mbsrchr.m4 (gl_PREREQ_MBSRCHR): Likewise.
7858         * m4/mbssep.m4 (gl_PREREQ_MBSSEP): Likewise.
7859         * m4/mbsspn.m4 (gl_PREREQ_MBSSPN): Likewise.
7860         * m4/mbsstr.m4 (gl_PREREQ_MBSSTR): Likewise.
7861         * m4/mbstok_r.m4 (gl_PREREQ_MBSTOK_R): Likewise.
7862         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
7863         * m4/quotearg.m4 (gl_QUOTEARG): Likewise.
7864         * modules/trim (configure.ac): Likewise.
7865
7866 2008-12-17  Bruno Haible  <bruno@clisp.org>
7867
7868         * modules/btowc-tests: New file.
7869         * tests/test-btowc1.sh: New file.
7870         * tests/test-btowc2.sh: New file.
7871         * tests/test-btowc.c: New file.
7872
7873         New module 'btowc'.
7874         * lib/wchar.in.h (btowc): New declaration.
7875         * lib/btowc.c: New file.
7876         * m4/btowc.m4: New file.
7877         * modules/btowc: New file.
7878         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_BTOWC and
7879         HAVE_BTOWC.
7880         * modules/wchar (Makefile.am): Substitute GNULIB_BTOWC and HAVE_BTOWC.
7881         * doc/posix-functions/btowc.texi: Document the new module.
7882
7883 2008-12-17  Bruno Haible  <bruno@clisp.org>
7884
7885         New module 'mbsinit'.
7886         * lib/wchar.in.h (mbsinit): New declaration.
7887         * lib/mbsinit.c: New file.
7888         * m4/mbsinit.m4: New file.
7889         * modules/mbsinit: New file.
7890         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSINIT and
7891         HAVE_MBSINIT.
7892         * modules/wchar (Makefile.am): Substitute GNULIB_MBSINIT and
7893         HAVE_MBSINIT.
7894         * doc/posix-functions/mbsinit.texi: Document the new module.
7895
7896 2008-12-16  Bruno Haible  <bruno@clisp.org>
7897
7898         * lib/unistd.in.h: Add comment.
7899         * tests/test-environ.c: Don't include <stdlib.h>.
7900
7901 2008-12-16  Bruno Haible  <bruno@clisp.org>
7902
7903         * lib/parse-duration.h (parse_duration): Document return value
7904         convention.
7905         * lib/parse-duration.c: Include specification header first. Add
7906         comments.
7907         (_): Remove macro.
7908         (parse_year_month_day, parse_hour_minute_second): Move side effects
7909         outside of strchr call.
7910         (parse_non_iso8601): Move side effects outside of isspace call.
7911         (parse_duration): Don't test errno is res != BAD_TIME. Remove fprintf
7912         call.
7913
7914 2008-12-16  Bruno Haible  <bruno@clisp.org>
7915
7916         * tests/test-parse-duration.sh: Produce no output when the test
7917         succeeds.
7918
7919 2008-12-16  Bruno Haible  <bruno@clisp.org>
7920
7921         * tests/test-parse-duration.sh: Fix quoting of $tmp and $tmpf
7922         expressions.
7923
7924 2008-12-15  Bruno Haible  <bruno@clisp.org>
7925
7926         * doc/glibc-functions/fgetxattr.texi: Tweak wording.
7927         * doc/glibc-functions/flistxattr.texi: Likewise.
7928         * doc/glibc-functions/fopencookie.texi: Likewise.
7929         * doc/glibc-functions/fremovexattr.texi: Likewise.
7930         * doc/glibc-functions/fsetxattr.texi: Likewise.
7931         * doc/glibc-functions/getxattr.texi: Likewise.
7932         * doc/glibc-functions/lgetxattr.texi: Likewise.
7933         * doc/glibc-functions/listxattr.texi: Likewise.
7934         * doc/glibc-functions/llistxattr.texi: Likewise.
7935         * doc/glibc-functions/lremovexattr.texi: Likewise.
7936         * doc/glibc-functions/lsetxattr.texi: Likewise.
7937         * doc/glibc-functions/removexattr.texi: Likewise.
7938         * doc/glibc-functions/setxattr.texi: Likewise.
7939         * doc/posix-functions/open_memstream.texi: Likewise.
7940
7941 2008-12-15  Eric Blake  <ebb9@byu.net>
7942
7943         Update doc for cygwin 1.7.
7944         * doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
7945         functions.
7946         * doc/posix-functions/fchmodat.texi: Likewise.
7947         * doc/posix-functions/fchownat.texi: Likewise.
7948         * doc/posix-functions/fdopendir.texi: Likewise.
7949         * doc/posix-functions/fmemopen.texi: Likewise.
7950         * doc/posix-functions/freeaddrinfo.texi: Likewise.
7951         * doc/posix-functions/fstatat.texi: Likewise.
7952         * doc/posix-functions/futimens.texi: Likewise.
7953         * doc/posix-functions/gai_strerror.texi: Likewise.
7954         * doc/posix-functions/getaddrinfo.texi: Likewise.
7955         * doc/posix-functions/getnameinfo.texi: Likewise.
7956         * doc/posix-functions/if_freenameindex.texi: Likewise.
7957         * doc/posix-functions/if_indextoname.texi: Likewise.
7958         * doc/posix-functions/if_nameindex.texi: Likewise.
7959         * doc/posix-functions/if_nametoindex.texi: Likewise.
7960         * doc/posix-functions/insque.texi: Likewise.
7961         * doc/posix-functions/linkat.texi: Likewise.
7962         * doc/posix-functions/llrint.texi: Likewise.
7963         * doc/posix-functions/llrintf.texi: Likewise.
7964         * doc/posix-functions/llrintl.texi: Likewise.
7965         * doc/posix-functions/lockf.texi: Likewise.
7966         * doc/posix-functions/lrintl.texi: Likewise.
7967         * doc/posix-functions/mkdirat.texi: Likewise.
7968         * doc/posix-functions/mkfifoat.texi: Likewise.
7969         * doc/posix-functions/mknodat.texi: Likewise.
7970         * doc/posix-functions/mq_close.texi: Likewise.
7971         * doc/posix-functions/mq_getattr.texi: Likewise.
7972         * doc/posix-functions/mq_notify.texi: Likewise.
7973         * doc/posix-functions/mq_open.texi: Likewise.
7974         * doc/posix-functions/mq_receive.texi: Likewise.
7975         * doc/posix-functions/mq_send.texi: Likewise.
7976         * doc/posix-functions/mq_setattr.texi: Likewise.
7977         * doc/posix-functions/mq_timedreceive.texi: Likewise.
7978         * doc/posix-functions/mq_timedsend.texi: Likewise.
7979         * doc/posix-functions/mq_unlink.texi: Likewise.
7980         * doc/posix-functions/open_memstream.texi: Likewise.
7981         * doc/posix-functions/openat.texi: Likewise.
7982         * doc/posix-functions/posix_fadvise.texi: Likewise.
7983         * doc/posix-functions/posix_fallocate.texi: Likewise.
7984         * doc/posix-functions/posix_madvise.texi: Likewise.
7985         * doc/posix-functions/posix_memalign.texi: Likewise.
7986         * doc/posix-functions/posix_openpt.texi: Likewise.
7987         * doc/posix-functions/readlinkat.texi: Likewise.
7988         * doc/posix-functions/remque.texi: Likewise.
7989         * doc/posix-functions/renameat.texi: Likewise.
7990         * doc/posix-functions/rintl.texi: Likewise.
7991         * doc/posix-functions/sem_unlink.texi: Likewise.
7992         * doc/posix-functions/shm_open.texi: Likewise.
7993         * doc/posix-functions/shm_unlink.texi: Likewise.
7994         * doc/posix-functions/signgam.texi: Likewise.
7995         * doc/posix-functions/sigset.texi: Likewise.
7996         * doc/posix-functions/stpcpy.texi: Likewise.
7997         * doc/posix-functions/stpncpy.texi: Likewise.
7998         * doc/posix-functions/strerror.texi: Likewise.
7999         * doc/posix-functions/strtod.texi: Likewise.
8000         * doc/posix-functions/symlinkat.texi: Likewise.
8001         * doc/posix-functions/unlinkat.texi: Likewise.
8002         * doc/posix-functions/utimensat.texi: Likewise.
8003         * doc/glibc-functions/bindresvport.texi: Likewise.
8004         * doc/glibc-functions/dn_expand.texi: Likewise.
8005         * doc/glibc-functions/exp10.texi: Likewise.
8006         * doc/glibc-functions/exp10f.texi: Likewise.
8007         * doc/glibc-functions/fgetxattr.texi: Likewise.
8008         * doc/glibc-functions/flistxattr.texi: Likewise.
8009         * doc/glibc-functions/fopencookie.texi: Likewise.
8010         * doc/glibc-functions/freeifaddrs.texi: Likewise.
8011         * doc/glibc-functions/fremovexattr.texi: Likewise.
8012         * doc/glibc-functions/fsetxattr.texi: Likewise.
8013         * doc/glibc-functions/getifaddrs.texi: Likewise.
8014         * doc/glibc-functions/getxattr.texi: Likewise.
8015         * doc/glibc-functions/lgetxattr.texi: Likewise.
8016         * doc/glibc-functions/listxattr.texi: Likewise.
8017         * doc/glibc-functions/llistxattr.texi: Likewise.
8018         * doc/glibc-functions/lremovexattr.texi: Likewise.
8019         * doc/glibc-functions/lsetxattr.texi: Likewise.
8020         * doc/glibc-functions/pow10.texi: Likewise.
8021         * doc/glibc-functions/pow10f.texi: Likewise.
8022         * doc/glibc-functions/rcmd_af.texi: Likewise.
8023         * doc/glibc-functions/removexattr.texi: Likewise.
8024         * doc/glibc-functions/res_init.texi: Likewise.
8025         * doc/glibc-functions/res_mkquery.texi: Likewise.
8026         * doc/glibc-functions/res_query.texi: Likewise.
8027         * doc/glibc-functions/res_querydomain.texi: Likewise.
8028         * doc/glibc-functions/res_send.texi: Likewise.
8029         * doc/glibc-functions/rresvport_af.texi: Likewise.
8030         * doc/glibc-functions/setxattr.texi: Likewise.
8031         * doc/glibc-functions/strcasestr.texi: Likewise.
8032
8033 2008-12-15  Bruno Haible  <bruno@clisp.org>
8034
8035         Fix compilation error on OSF/1 4.0.
8036         * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or
8037         <sys/time.h>, simply delegate to the system header.
8038         Reported by Daniel Richard G. <oss@teragram.com>.
8039
8040 2008-12-15  Bruno Haible  <bruno@clisp.org>
8041
8042         * doc/posix-functions/openat.texi: Mention the 'openat' module.
8043         * doc/posix-functions/fchmodat.texi: Likewise.
8044         * doc/posix-functions/fchownat.texi: Likewise.
8045         * doc/posix-functions/fdopendir.texi: Likewise.
8046         * doc/posix-functions/fstatat.texi: Likewise.
8047         * doc/posix-functions/mkdirat.texi: Likewise.
8048         * doc/posix-functions/unlinkat.texi: Likewise.
8049
8050 2008-12-14  Bruno Haible  <bruno@clisp.org>
8051
8052         Update doc for POSIX:2008.
8053         * doc/posix-functions/faccessat.texi: New file.
8054         * doc/posix-functions/fchmodat.texi: New file.
8055         * doc/posix-functions/fchownat.texi: New file.
8056         * doc/posix-functions/fdopendir.texi: New file.
8057         * doc/posix-functions/fstatat.texi: New file.
8058         * doc/posix-functions/futimens.texi: New file.
8059         * doc/posix-functions/linkat.texi: New file.
8060         * doc/posix-functions/mkdirat.texi: New file.
8061         * doc/posix-functions/mkfifoat.texi: New file.
8062         * doc/posix-functions/mknodat.texi: New file.
8063         * doc/posix-functions/open_wmemstream.texi: New file.
8064         * doc/posix-functions/openat.texi: New file.
8065         * doc/posix-functions/psiginfo.texi: New file.
8066         * doc/posix-functions/pthread_mutex_consistent.texi: New file.
8067         * doc/posix-functions/pthread_mutexattr_getrobust.texi: New file.
8068         * doc/posix-functions/pthread_mutexattr_setrobust.texi: New file.
8069         * doc/posix-functions/readlinkat.texi: New file.
8070         * doc/posix-functions/renameat.texi: New file.
8071         * doc/posix-functions/strerror_l.texi: New file.
8072         * doc/posix-functions/symlinkat.texi: New file.
8073         * doc/posix-functions/unlinkat.texi: New file.
8074         * doc/posix-functions/utimensat.texi: New file.
8075         * doc/gnulib.texi (Function Substitutes): Add these subsections.
8076
8077 2008-12-14  Bruno Haible  <bruno@clisp.org>
8078
8079         Update doc for POSIX:2008.
8080         * doc/posix-functions/alphasort.texi: Renamed from
8081         doc/glibc-functions/alphasort.texi.
8082         * doc/posix-functions/dirfd.texi: Renamed from
8083         doc/glibc-functions/dirfd.texi.
8084         * doc/posix-functions/dprintf.texi: Renamed from
8085         doc/glibc-functions/dprintf.texi.
8086         * doc/posix-functions/duplocale.texi: Renamed from
8087         doc/glibc-functions/duplocale.texi.
8088         * doc/posix-functions/fexecve.texi: Renamed from
8089         doc/glibc-functions/fexecve.texi.
8090         * doc/posix-functions/fmemopen.texi: Renamed from
8091         doc/glibc-functions/fmemopen.texi.
8092         * doc/posix-functions/freelocale.texi: Renamed from
8093         doc/glibc-functions/freelocale.texi.
8094         * doc/posix-functions/getdate_err.texi: Renamed from
8095         doc/glibc-functions/getdate_err.texi.
8096         * doc/posix-functions/isalnum_l.texi: Renamed from
8097         doc/glibc-functions/isalnum_l.texi.
8098         * doc/posix-functions/isalpha_l.texi: Renamed from
8099         doc/glibc-functions/isalpha_l.texi.
8100         * doc/posix-functions/isblank_l.texi: Renamed from
8101         doc/glibc-functions/isblank_l.texi.
8102         * doc/posix-functions/iscntrl_l.texi: Renamed from
8103         doc/glibc-functions/iscntrl_l.texi.
8104         * doc/posix-functions/isdigit_l.texi: Renamed from
8105         doc/glibc-functions/isdigit_l.texi.
8106         * doc/posix-functions/isgraph_l.texi: Renamed from
8107         doc/glibc-functions/isgraph_l.texi.
8108         * doc/posix-functions/islower_l.texi: Renamed from
8109         doc/glibc-functions/islower_l.texi.
8110         * doc/posix-functions/isprint_l.texi: Renamed from
8111         doc/glibc-functions/isprint_l.texi.
8112         * doc/posix-functions/ispunct_l.texi: Renamed from
8113         doc/glibc-functions/ispunct_l.texi.
8114         * doc/posix-functions/isspace_l.texi: Renamed from
8115         doc/glibc-functions/isspace_l.texi.
8116         * doc/posix-functions/isupper_l.texi: Renamed from
8117         doc/glibc-functions/isupper_l.texi.
8118         * doc/posix-functions/iswalnum_l.texi: Renamed from
8119         doc/glibc-functions/iswalnum_l.texi.
8120         * doc/posix-functions/iswalpha_l.texi: Renamed from
8121         doc/glibc-functions/iswalpha_l.texi.
8122         * doc/posix-functions/iswblank_l.texi: Renamed from
8123         doc/glibc-functions/iswblank_l.texi.
8124         * doc/posix-functions/iswcntrl_l.texi: Renamed from
8125         doc/glibc-functions/iswcntrl_l.texi.
8126         * doc/posix-functions/iswctype_l.texi: Renamed from
8127         doc/glibc-functions/iswctype_l.texi.
8128         * doc/posix-functions/iswdigit_l.texi: Renamed from
8129         doc/glibc-functions/iswdigit_l.texi.
8130         * doc/posix-functions/iswgraph_l.texi: Renamed from
8131         doc/glibc-functions/iswgraph_l.texi.
8132         * doc/posix-functions/iswlower_l.texi: Renamed from
8133         doc/glibc-functions/iswlower_l.texi.
8134         * doc/posix-functions/iswprint_l.texi: Renamed from
8135         doc/glibc-functions/iswprint_l.texi.
8136         * doc/posix-functions/iswpunct_l.texi: Renamed from
8137         doc/glibc-functions/iswpunct_l.texi.
8138         * doc/posix-functions/iswspace_l.texi: Renamed from
8139         doc/glibc-functions/iswspace_l.texi.
8140         * doc/posix-functions/iswupper_l.texi: Renamed from
8141         doc/glibc-functions/iswupper_l.texi.
8142         * doc/posix-functions/iswxdigit_l.texi: Renamed from
8143         doc/glibc-functions/iswxdigit_l.texi.
8144         * doc/posix-functions/isxdigit_l.texi: Renamed from
8145         doc/glibc-functions/isxdigit_l.texi.
8146         * doc/posix-functions/mbsnrtowcs.texi: Renamed from
8147         doc/glibc-functions/mbsnrtowcs.texi.
8148         * doc/posix-functions/mkdtemp.texi: Renamed from
8149         doc/glibc-functions/mkdtemp.texi.
8150         * doc/posix-functions/newlocale.texi: Renamed from
8151         doc/glibc-functions/newlocale.texi.
8152         * doc/posix-functions/nl_langinfo_l.texi: Renamed from
8153         doc/glibc-functions/nl_langinfo_l.texi.
8154         * doc/posix-functions/open_memstream.texi: Renamed from
8155         doc/glibc-functions/open_memstream.texi.
8156         * doc/posix-functions/opterr.texi: Renamed from
8157         doc/glibc-functions/opterr.texi.
8158         * doc/posix-functions/optind.texi: Renamed from
8159         doc/glibc-functions/optind.texi.
8160         * doc/posix-functions/optopt.texi: Renamed from
8161         doc/glibc-functions/optopt.texi.
8162         * doc/posix-functions/psignal.texi: Renamed from
8163         doc/glibc-functions/psignal.texi.
8164         * doc/posix-functions/scandir.texi: Renamed from
8165         doc/glibc-functions/scandir.texi.
8166         * doc/posix-functions/sched_get_priority_min.texi: Renamed from
8167         doc/glibc-functions/sched_get_priority_min.texi.
8168         * doc/posix-functions/signgam.texi: Renamed from
8169         doc/glibc-functions/signgam.texi.
8170         * doc/posix-functions/stpcpy.texi: Renamed from
8171         doc/glibc-functions/stpcpy.texi.
8172         * doc/posix-functions/stpncpy.texi: Renamed from
8173         doc/glibc-functions/stpncpy.texi.
8174         * doc/posix-functions/strcasecmp_l.texi: Renamed from
8175         doc/glibc-functions/strcasecmp_l.texi.
8176         * doc/posix-functions/strcoll_l.texi: Renamed from
8177         doc/glibc-functions/strcoll_l.texi.
8178         * doc/posix-functions/strfmon_l.texi: Renamed from
8179         doc/glibc-functions/strfmon_l.texi.
8180         * doc/posix-functions/strftime_l.texi: Renamed from
8181         doc/glibc-functions/strftime_l.texi.
8182         * doc/posix-functions/strncasecmp_l.texi: Renamed from
8183         doc/glibc-functions/strncasecmp_l.texi.
8184         * doc/posix-functions/strndup.texi: Renamed from
8185         doc/glibc-functions/strndup.texi.
8186         * doc/posix-functions/strnlen.texi: Renamed from
8187         doc/glibc-functions/strnlen.texi.
8188         * doc/posix-functions/strsignal.texi: Renamed from
8189         doc/glibc-functions/strsignal.texi.
8190         * doc/posix-functions/strxfrm_l.texi: Renamed from
8191         doc/glibc-functions/strxfrm_l.texi.
8192         * doc/posix-functions/timer_gettime.texi: Renamed from
8193         doc/glibc-functions/timer_gettime.texi.
8194         * doc/posix-functions/tolower_l.texi: Renamed from
8195         doc/glibc-functions/tolower_l.texi.
8196         * doc/posix-functions/toupper_l.texi: Renamed from
8197         doc/glibc-functions/toupper_l.texi.
8198         * doc/posix-functions/towctrans_l.texi: Renamed from
8199         doc/glibc-functions/towctrans_l.texi.
8200         * doc/posix-functions/towlower_l.texi: Renamed from
8201         doc/glibc-functions/towlower_l.texi.
8202         * doc/posix-functions/towupper_l.texi: Renamed from
8203         doc/glibc-functions/towupper_l.texi.
8204         * doc/posix-functions/uselocale.texi: Renamed from
8205         doc/glibc-functions/uselocale.texi.
8206         * doc/posix-functions/vdprintf.texi: Renamed from
8207         doc/glibc-functions/vdprintf.texi.
8208         * doc/posix-functions/wcpcpy.texi:
8209         Renamed from doc/glibc-functions/wcpcpy.texi.
8210         * doc/posix-functions/wcpncpy.texi: Renamed from
8211         doc/glibc-functions/wcpncpy.texi.
8212         * doc/posix-functions/wcscasecmp.texi: Renamed from
8213         doc/glibc-functions/wcscasecmp.texi.
8214         * doc/posix-functions/wcscasecmp_l.texi: Renamed from
8215         doc/glibc-functions/wcscasecmp_l.texi.
8216         * doc/posix-functions/wcscoll_l.texi: Renamed from
8217         doc/glibc-functions/wcscoll_l.texi.
8218         * doc/posix-functions/wcsdup.texi: Renamed from
8219         doc/glibc-functions/wcsdup.texi.
8220         * doc/posix-functions/wcsncasecmp.texi: Renamed from
8221         doc/glibc-functions/wcsncasecmp.texi.
8222         * doc/posix-functions/wcsncasecmp_l.texi: Renamed from
8223         doc/glibc-functions/wcsncasecmp_l.texi.
8224         * doc/posix-functions/wcsnlen.texi: Renamed from
8225         doc/glibc-functions/wcsnlen.texi.
8226         * doc/posix-functions/wcsnrtombs.texi: Renamed from
8227         doc/glibc-functions/wcsnrtombs.texi.
8228         * doc/posix-functions/wcsxfrm_l.texi: Renamed from
8229         doc/glibc-functions/wcsxfrm_l.texi.
8230         * doc/posix-functions/wctrans_l.texi: Renamed from
8231         doc/glibc-functions/wctrans_l.texi.
8232         * doc/posix-functions/wctype_l.texi: Renamed from
8233         doc/glibc-functions/wctype_l.texi.
8234         * doc/gnulib.texi (Function Substitutes): Add these subsections.
8235         (Glibc ctype.h, Glibc dirent.h, Glibc getopt.h, Glibc math.h,
8236         Glibc sched.h, Glibc signal.h, Glibc stdio.h, Glibc stdlib.h,
8237         Glibc string.h, Glibc time.h, Glibc unistd.h, Glibc wchar.h): Remove
8238         these subsections.
8239         (Glibc langinfo.h, Glibc locale.h, Glibc monetary.h, Glibc wctype.h):
8240         Remove sections.
8241
8242 2008-12-14  Bruno Haible  <bruno@clisp.org>
8243
8244         Update doc for POSIX:2008.
8245         * doc/posix-functions/*.texi: Update URL of POSIX specification.
8246
8247 2008-12-14  Bruno Haible  <bruno@clisp.org>
8248
8249         Update doc for POSIX:2008.
8250         * doc/pastposix-functions/bcmp.texi: Renamed from
8251         doc/posix-functions/bcmp.texi.
8252         * doc/pastposix-functions/bcopy.texi: Renamed from
8253         doc/posix-functions/bcopy.texi.
8254         * doc/pastposix-functions/bsd_signal.texi: Renamed from
8255         doc/posix-functions/bsd_signal.texi.
8256         * doc/pastposix-functions/bzero.texi: Renamed from
8257         doc/posix-functions/bzero.texi.
8258         * doc/pastposix-functions/ecvt.texi: Renamed from
8259         doc/posix-functions/ecvt.texi.
8260         * doc/pastposix-functions/fcvt.texi: Renamed from
8261         doc/posix-functions/fcvt.texi.
8262         * doc/pastposix-functions/ftime.texi: Renamed from
8263         doc/posix-functions/ftime.texi.
8264         * doc/pastposix-functions/gcvt.texi: Renamed from
8265         doc/posix-functions/gcvt.texi.
8266         * doc/pastposix-functions/getcontext.texi: Renamed from
8267         doc/posix-functions/getcontext.texi.
8268         * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
8269         doc/posix-functions/gethostbyaddr.texi.
8270         * doc/pastposix-functions/gethostbyname.texi: Renamed from
8271         doc/posix-functions/gethostbyname.texi.
8272         * doc/pastposix-functions/getwd.texi: Renamed from
8273         doc/posix-functions/getwd.texi.
8274         * doc/pastposix-functions/h_errno.texi: Renamed from
8275         doc/posix-functions/h_errno.texi.
8276         * doc/pastposix-functions/index.texi: Renamed from
8277         doc/posix-functions/index.texi.
8278         * doc/pastposix-functions/makecontext.texi: Renamed from
8279         doc/posix-functions/makecontext.texi.
8280         * doc/pastposix-functions/mktemp.texi: Renamed from
8281         doc/posix-functions/mktemp.texi.
8282         * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
8283         doc/posix-functions/pthread_attr_getstackaddr.texi.
8284         * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
8285         doc/posix-functions/pthread_attr_setstackaddr.texi.
8286         * doc/pastposix-functions/rindex.texi: Renamed from
8287         doc/posix-functions/rindex.texi.
8288         * doc/pastposix-functions/scalb.texi: Renamed from
8289         doc/posix-functions/scalb.texi.
8290         * doc/pastposix-functions/setcontext.texi: Renamed from
8291         doc/posix-functions/setcontext.texi.
8292         * doc/pastposix-functions/swapcontext.texi: Renamed from
8293         doc/posix-functions/swapcontext.texi.
8294         * doc/pastposix-functions/ualarm.texi: Renamed from
8295         doc/posix-functions/ualarm.texi.
8296         * doc/pastposix-functions/usleep.texi: Renamed from
8297         doc/posix-functions/usleep.texi.
8298         * doc/pastposix-functions/vfork.texi: Renamed from
8299         doc/posix-functions/vfork.texi.
8300         * doc/pastposix-functions/wcswcs.texi: Renamed from
8301         doc/posix-functions/wcswcs.texi.
8302         * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
8303         (Function Substitutes): Update.
8304
8305 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8306
8307         * modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
8308         m4/strerror.m4.
8309
8310 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8311             Bruno Haible  <bruno@clisp.org>
8312
8313         * modules/unilbrk/tables (Depends-on): Add unilbrk/base.
8314
8315 2008-12-13  Bruno Haible  <bruno@clisp.org>
8316
8317         * modules/strtoull (Depends-on): Remove unistd.
8318
8319 2008-12-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8320
8321         * modules/strtoull (Depends-on): Add stdlib.
8322
8323 2008-12-11  Simon Josefsson  <simon@josefsson.org>
8324
8325         * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add more warnings.
8326
8327 2008-12-10  Jim Meyering  <meyering@redhat.com>
8328
8329         gl_ASSERT: don't say assertions are disabled when they're not
8330         * m4/assert.m4 (gl_ASSERT): Do not make configure report
8331         "checking whether to enable assertions... no", when they are in
8332         fact enabled.  This is solely a bug in the output of configure.
8333         In spite of saying "no", NDEBUG was not defined in that case.
8334         Also, as noted by Eric Blake, leave assertions enabled upon
8335         --enable-assert=INVALID.
8336
8337 2008-12-10  Bruno Haible  <bruno@clisp.org>
8338
8339         Change MODULES.html to refer to POSIX:2008 where possible.
8340         * MODULES.html.sh (POSIX2008_URL): New variable.
8341         (posix_headers): Remove sys/timeb, ucontext.
8342         (posix2001_headers): New variable.
8343         (posix_functions): Remove bcmp, bcopy, bsd_signal, bzero, ecvt, fcvt,
8344         ftime, gcvt, getcontext, gethostbyaddr, gethostbyname, getwd, h_errno,
8345         index, makecontext, mktemp, pthread_attr_getstackaddr,
8346         pthread_attr_setstackaddr, rindex, scalb, setcontext, swapcontext,
8347         ualarm, usleep, vfork, wcswcs. Add the new POSIX:2008 functions.
8348         (posix2001_functions): New variable.
8349         (func_module): Use URLs to POSIX:2008 where possible and to POSIX:2001
8350         otherwise.
8351
8352 2008-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8353
8354         add missing include to parse-duration.c
8355         * lib/parse-duration.c: #include "xalloc.h", for xstrdup.
8356         * modules/parse-duration (Depends-on): Add xalloc.
8357
8358         fix sed script reading maint.mk
8359         * top/maint.mk (MYSELF): New macro, define as $(srcdir)/$(ME).
8360         (syntax-check-rules): Use it.
8361
8362 2008-12-09  Bruno Haible  <bruno@clisp.org>
8363
8364         * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Add another check, that fails on
8365         MacOS X 10.4/PowerPC.
8366         Reported by Simon Josefsson.
8367
8368 2008-12-08  Jim Meyering  <meyering@redhat.com>
8369
8370         work around mingw's lack of some S_IF definitions
8371         * lib/fts.c (S_IFLNK, S_IFSOCK): Define if not already defined.
8372         Reported by Simon Josefsson.
8373
8374 2008-12-08  Bruno Haible  <bruno@clisp.org>
8375
8376         * m4/signbitl.m4 (gl_SIGNBIT_TEST_PROGRAM): Add a link check of signbit
8377         applied to variables. Needed on MacOS X 10.4/PowerPC.
8378         Reported by Simon Josefsson.
8379
8380 2008-12-08  William Pursell  <bill.pursell@gmail.com>  (tiny change)
8381         and Eric Blake  <ebb9@byu.net>
8382
8383         assert: honor --enable-assert
8384         * m4/assert.m4 (gl_ASSERT): Synchronize with autoconf 2.64, in
8385         order to honor --enable-assert, rather than treating it as a
8386         synonym for --disable-assert.
8387
8388 2008-12-08  Jim Meyering  <meyering@redhat.com>
8389
8390         * lib/posixtm.c: Remove now-useless declaration of mktime.
8391
8392         * build-aux/announce-gen (get_tool_versions): Accept .xz tarballs.
8393
8394 2008-12-07  Bruno Haible  <bruno@clisp.org>
8395
8396         * tests/test-lock.c (test_lock, test_rwlock, test_recursive_lock,
8397         test_once): Mark functions as static.
8398         * tests/test-tls.c (test_tls): Likewise.
8399
8400 2008-12-07  Bruno Haible  <bruno@clisp.org>
8401
8402         * lib/striconveha.h (uniconv_register_autodetect): Renamed from
8403         iconv_register_autodetect.
8404
8405 2008-12-07  Jim Meyering  <meyering@redhat.com>
8406
8407         posixtm.c: avoid a warning
8408         * lib/posixtm.c (posixtime): Don't initialize tm0.
8409         It's no longer needed to placate gcc4's -Wuninitialized,
8410         and the attempt to placate would elicit a new warning.
8411
8412         unicodeio.c: mark unused parameters
8413         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
8414         (fallback_failure_callback): Likewise.
8415
8416 2008-12-07  Bruno Haible  <bruno@clisp.org>
8417
8418         * gnulib-tool (func_create_testdir): When building the tests
8419         subdirectory, ignore the modules gnumakefile and maintainer-makefile.
8420         Reported by Simon Josefsson.
8421
8422 2008-12-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8423
8424         * doc/manywarnings.texi, doc/gnulib-intro.texi: Fix typos.
8425
8426 2008-12-06  Bruno Haible  <bruno@clisp.org>
8427
8428         * lib/c-stack.h (c_stack_action): Clarify possible side effects.
8429         Suggested by Eric Blake.
8430
8431 2008-12-06  Bruno Haible  <bruno@clisp.org>
8432
8433         Fix a c-stack test failure on MacOS X.
8434         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Require
8435         AC_CANONICAL_HOST. Define FAULT_YIELDS_SIGBUS. If set, install a signal
8436         handler for SIGBUS as well.
8437         * lib/c-stack.c (c_stack_action): If FAULT_YIELDS_SIGBUS is set,
8438         install a signal handler for SIGBUS as well.
8439         Reported by Bruce Dugan <bld0401@gmail.com> via Eric Blake.
8440
8441 2008-12-06  Bruno Haible  <bruno@clisp.org>
8442
8443         Advocacy documentation.
8444         * doc/gnulib-intro.texi (Benefits): New section.
8445         * doc/gnulib.texi: Update.
8446
8447 2008-12-06  Bruno Haible  <bruno@clisp.org>
8448
8449         Document the 'manywarnings' module.
8450         * doc/manywarnings.texi: New file.
8451         * doc/gnulib.texi: Include it.
8452
8453 2008-12-05  Eric Blake  <ebb9@byu.net>
8454
8455         tests: silence some gcc warnings
8456         * tests/test-getdate.c (LOG) [!DEBUG]: Mark no-op void.
8457         * tests/uniwidth/test-uc_width2.c (finish_interval): Avoid printf
8458         type mismatches.
8459
8460 2008-12-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8461             Bruno Haible  <bruno@clisp.org>
8462
8463         * m4/openmp.m4 (AC_OPENMP): Do not define with Autoconf 2.62 or newer.
8464
8465 2008-11-29  Jim Meyering  <meyering@redhat.com>
8466
8467         unicodeio.c: mark unused parameters
8468         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
8469         (fallback_failure_callback): Likewise.
8470
8471         fts: fix a thinko
8472         * lib/fts.c (s_ifmt_shift_bits): Remove function.  Not needed after all.
8473         (set_stat_type): Return S_IF*-valued "type" directly.
8474         Prompted by James Youngman's spotting a related bug.
8475         Confirmed by further testing through find.
8476
8477         fts: provide dirent.d_type via FTSENT.fts_statp, when possible
8478         * lib/fts.c (D_TYPE): Define.
8479         (DT_UNKNOWN, DT_BLK, DT_CHR) [HAVE_STRUCT_DIRENT_D_TYPE]: Define.
8480         (DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK): Likewise.
8481         (s_ifmt_shift_bits): New function.
8482         (set_stat_type): New function.
8483         (fts_build): When not calling fts_stat, call set_stat_type
8484         to propagate dirent.d_type info to fts_read caller.
8485         * lib/fts_.h (FTSENT) [FTS_DEFER_STAT]: Mention that
8486         fts_statp->st_mode type information may be valid.
8487
8488 2008-11-28  Simon Josefsson  <simon@josefsson.org>
8489
8490         * lib/sys_time.in.h: Add extern "C" block for C++.  Suggested by
8491         Brian Dessent <brian@dessent.net>.  Reported by Sam Steingold
8492         <sds@gnu.org>.
8493
8494 2008-11-20  Bruno Haible  <bruno@clisp.org>
8495
8496         Attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
8497         * lib/math.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of
8498         INCLUDE_NEXT.
8499         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also
8500         INCLUDE_NEXT_AS_FIRST_DIRECTIVE.
8501         * modules/math (Makefile.am): Substitute
8502         INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of INCLUDE_NEXT.
8503         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
8504
8505 2008-11-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
8506             Bruno Haible  <bruno@clisp.org>
8507
8508         * lib/stdint.in.h: Define all type macros so that their expansion is
8509         a single typedef'ed token. Fixes a compilation failure in Boost which
8510         does "using ::int8_t;".
8511
8512 2008-11-18  Simon Josefsson  <simon@josefsson.org>
8513
8514         * m4/manywarnings.m4: New file with gl_MANYWARN_COMPLEMENT and
8515         gl_MANYWARN_ALL_GCC.
8516         * m4/warnings.m4: Removed gl_WARN_SUPPORTED and
8517         gl_WARN_COMPLEMENT.  Suggested by Bruno Haible <bruno@clisp.org>.
8518         * modules/manywarnings: New file.
8519         * MODULES.html.sh: Mention manywarnings module.
8520
8521 2008-11-18  Bruno Haible  <bruno@clisp.org>
8522
8523         * doc/gnulib-tool.texi (Unit tests): New section.
8524
8525 2008-11-18  Simon Josefsson  <simon@josefsson.org>
8526
8527         * top/maint.mk (refresh-po): Fix sed regexp to avoid problems with
8528         paths like 'lib/po/foo.po'.
8529
8530 2008-11-17  Simon Josefsson  <simon@josefsson.org>
8531
8532         * m4/warnings.m4: Improve code.  Reported by Ralf Wildenhues
8533         <Ralf.Wildenhues@gmx.de> and Paolo Bonzini <bonzini@gnu.org>.
8534
8535 2008-11-17  Simon Josefsson  <simon@josefsson.org>
8536
8537         * m4/warnings.m4: Use CPPFLAGS to really check whether the
8538         parameter works.
8539
8540 2008-11-17  Simon Josefsson  <simon@josefsson.org>
8541
8542         * m4/warnings.m4: Add gl_WARN_COMPLEMENT and gl_WARN_SUPPORTED.
8543
8544 2008-11-17  Bruce Korb  <bkorb@gnu.org>
8545
8546         * modules/parse-duration-tests: New file.
8547         * tests/test-parse-duration.sh: New file.
8548         * tests/test-parse-duration.c: New file.
8549
8550         New module 'parse-duration'.
8551         * lib/parse-duration.h: New file.
8552         * lib/parse-duration.c: New file.
8553         * modules/parse-duration: New file.
8554
8555 2008-11-17  Bruno Haible  <bruno@clisp.org>
8556
8557         * tests/test-select-out.sh: Comment out the first pipe test.
8558         Reported by Simon Josefsson.
8559
8560 2008-11-17  Bruno Haible  <bruno@clisp.org>
8561
8562         * modules/getaddrinfo (Depends-on): Add servent, hostent.
8563         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_SERVENT and
8564         gl_HOSTENT.
8565
8566 2008-11-17  Bruno Haible  <bruno@clisp.org>
8567
8568         * m4/sockets.m4 (gl_SOCKETS): After trying -lsocket, try also
8569         -lnetwork and -lnet. Needed for Haiku and BeOS.
8570
8571 2008-11-16  Bruno Haible  <bruno@clisp.org>
8572
8573         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix indentation.
8574
8575 2008-11-16  Bruno Haible  <bruno@clisp.org>
8576
8577         Avoid test failure on Haiku.
8578         * tests/test-fsync.c: Include <errno.h>.
8579         (main): Don't require that fsync (0) fails.
8580
8581 2008-11-15  Bruno Haible  <bruno@clisp.org>
8582
8583         New module 'hostent'.
8584         * modules/hostent: New file.
8585         * m4/hostent.m4: New file, based on code in m4/getaddrinfo.m4.
8586
8587 2008-11-15  Bruno Haible  <bruno@clisp.org>
8588
8589         New module 'servent'.
8590         * modules/servent: New file.
8591         * m4/servent.m4: New file, based on code in m4/getaddrinfo.m4.
8592
8593 2008-11-15  Bruno Haible  <bruno@clisp.org>
8594
8595         Avoid generating same test program with two different rules.
8596         * modules/frexp-nolibm-tests (Makefile.am): Rename test program from
8597         test-frexp to test-frexp-nolibm.
8598         * modules/frexpl-nolibm-tests (Makefile.am): Rename test program from
8599         test-frexpl to test-frexpl-nolibm.
8600
8601 2008-11-15  Bruno Haible  <bruno@clisp.org>
8602
8603         * modules/frexpl-tests (Makefile.am): Link test-frexpl with
8604         $(FREXPL_LIBM).
8605
8606 2008-11-15  Bruno Haible  <bruno@clisp.org>
8607
8608         * lib/netdb.in.h: Activate the definitions also when the system's
8609         <netdb.h> has 'struct addrinfo'.
8610         * m4/netdb_h.m4 (gl_HEADER_NETDB): Replace netdb.h also when it lacks
8611         EAI_OVERFLOW or AI_NUMERICSERV.
8612         * doc/posix-headers/netdb.texi: Document the problem.
8613
8614 2008-11-15  Bruno Haible  <bruno@clisp.org>
8615
8616         * tests/test-sched.c: Test also the existence of the SCHED_* macros.
8617
8618         Make the 'sched' module work on platforms where <sched.h> exists but
8619         is incomplete (such as Haiku).
8620         * lib/sched.in.h; Include the system's <sched.h> if it exists.
8621         (SCHED_FIFO, SCHED_RR, SCHED_OTHER): New macros.
8622         * m4/sched_h.m4 (gl_SCHED_H): Test whether <sched.h> exists and also
8623         defines SCHED_FIFO, SCHED_RR, SCHED_OTHER. Set HAVE_SCHED_H,
8624         HAVE_STRUCT_SCHED_PARAM.
8625         * modules/sched (Depends-on): Add include_next.
8626         (Makefile.am): Substitute HAVE_SCHED_H, INCLUDE_NEXT,
8627         PRAGMA_SYSTEM_HEADER, NEXT_SCHED_H, HAVE_STRUCT_SCHED_PARAM.
8628         * doc/posix-headers/sched.texi: Document the issue.
8629
8630 2008-11-13  Jim Meyering  <meyering@redhat.com>
8631
8632         test-argp-2: avoid test failure when PACKAGE_BUGREPORT is defined
8633         * tests/test-argp-2.sh: When PACKAGE_BUGREPORT was defined, this
8634         test would fail due to the difference in the Report bugs to ...
8635         line.  The expected address is empty, "<>", while the actual
8636         would contain e.g., "<bug-tar@gnu.org>".  Filter out any address.
8637
8638 2008-11-12  Bruno Haible  <bruno@clisp.org>
8639
8640         lstat: don't compile lstat.c on systems lacking lstat
8641         * m4/lstat.m4 (gl_FUNC_LSTAT): Don't compile lstat.c on systems
8642         which don't have lstat; this is handled by lib/sys_stat.in.h already.
8643         Reported by Daniel P. Berrange via Jim Meyering.
8644
8645 2008-11-12  Jim Meyering  <meyering@redhat.com>
8646
8647         * lib/unicodeio.c (unicode_to_mb): Correct spelling of u8_uctomb.
8648
8649 2008-11-12  Simon Josefsson  <simon@josefsson.org>
8650
8651         * modules/warnings (configure.ac): Do AC_SUBST([WARN_CFLAGS]) here
8652         instead.
8653
8654 2008-11-12  Bruno Haible  <bruno@clisp.org>
8655
8656         * lib/unicodeio.c: Include unistr.h.
8657         (utf8_wctomb): Remove function.
8658         (unicode_to_mb): Use utf8_uctomb instead of utf8_wctomb.
8659
8660 2008-11-12  Simon Josefsson  <simon@josefsson.org>
8661
8662         * m4/warnings.m4 (gl_WARN_INIT): Remove, suggested by Ralf
8663         Wildenhues <Ralf.Wildenhues@gmx.de> and Bruno Haible
8664         <bruno@clisp.org>.
8665         * modules/warnings (configure.ac): Don't call gl_WARN_INIT.
8666
8667 2008-11-12  Simon Josefsson  <simon@josefsson.org>
8668
8669         * doc/warnings.texi: New file, from Bruno Haible <bruno@clisp.org>.
8670         * doc/gnulib.texi: Add section for warnings.
8671
8672 2008-11-11  Bruno Haible  <bruno@clisp.org>
8673
8674         * lib/sockets.h: Add a comment.
8675
8676 2008-11-11  Karl Berry  <karl@gnu.org>
8677
8678         * config/srclist.txt (fdl.texi): add, syncing from gnustandards.
8679
8680 2008-11-11  Eric Blake  <ebb9@byu.net>
8681
8682         fdl.texi: avoid git symlinks
8683         * doc/fdl.texi: Copy, rather than link, fdl-1.3.texi.
8684
8685 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8686
8687         * m4/warnings.m4 (gl_WARN_ADD): Don't AC_SUBST the empty string.
8688
8689 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8690
8691         * m4/warnings.m4 (gl_WARN_INIT): Substitute WARN_CFLAGS.
8692         (gl_WARN_ADD): Substitute $2 if literal.
8693
8694 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8695
8696         * m4/warning.m4: Remove.
8697
8698 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8699
8700         * m4/warnings.m4: Almost complete rewrite. :-)
8701
8702 2008-11-10  Simon Josefsson  <simon@josefsson.org>
8703
8704         * modules/warnings: New module.
8705         * m4/warnings.m4: New file.
8706         * MODULES.html.sh: Mention warnings module.
8707         With review improvements from Paolo Bonzini <bonzini@gnu.org> and
8708         Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8709
8710 2008-11-10  Eric Blake  <ebb9@byu.net>
8711
8712         fdl.texi: make a symlink to the latest version
8713         * doc/standards.texi: Revert today's earlier change.
8714         * doc/fdl-1.2.texi: Rename from old fdl.texi...
8715         * doc/fdl.texi: ...and replace this with a symlink to the newer
8716         fdl-1.3.texi.
8717
8718 2008-11-10  Bruno Haible  <bruno@clisp.org>
8719
8720         * tests/test-select-fd.c (main): Accept the result file name as fourth
8721         argument.
8722         * tests/test-select-in.sh: Pass t-select-in.tmp as fourth argument.
8723         * tests/test-select-out.sh: Pass t-select-out.tmp as fourth argument.
8724
8725 2008-11-10  Bruno Haible  <bruno@clisp.org>
8726
8727         * lib/netdb.in.h: Use HAVE_STRUCT_ADDRINFO, HAVE_DECL_GETADDRINFO,
8728         HAVE_DECL_FREEADDRINFO, HAVE_DECL_GAI_STRERROR, HAVE_DECL_GETNAMEINFO
8729         as autoconf-substituted macros.
8730         * m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Initialize these variables to 1.
8731         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require
8732         gl_NETDB_H_DEFAULTS. Set these variables.
8733         * modules/netdb (Makefile.am): Substitute these variables.
8734
8735 2008-11-10  Eric Blake  <ebb9@byu.net>
8736
8737         standards.texi: include correct file for FDL 1.3
8738         * doc/standards.texi (GNU Free Documentation License): Change
8739         include file to pull in FDL 1.3, not 1.2.
8740
8741         fdl.texi: revert accidental change to license
8742         * doc/fdl.texi: This is FDL 1.2, not 1.3.
8743
8744 2008-11-10  Bruno Haible  <bruno@clisp.org>
8745
8746         * m4/printf.m4 (gl_PRINTF_ENOMEM): Guess yes on Haiku. Use the
8747         cross-compiling guesses also when the native compile gives no result.
8748
8749 2008-11-10  Bruno Haible  <bruno@clisp.org>
8750
8751         * lib/spawni.c (__spawni): Force variable into the stack.
8752
8753 2008-11-10  Bruno Haible  <bruno@clisp.org>
8754
8755         Add support for Haiku.
8756         * lib/fbufmode.c (fbufmode): Test a symbol that is not only defined on
8757         glibc and BeOS, but also on Haiku.
8758         * lib/fpurge.c (fpurge): Likewise.
8759         * lib/freadable.c (freadable): Likewise.
8760         * lib/freadahead.c (freadahead): Likewise.
8761         * lib/freading.c (freading): Likewise.
8762         * lib/freadptr.c (freadptr): Likewise.
8763         * lib/freadseek.c (freadptrinc): Likewise.
8764         * lib/fseeko.c (rpl_fseeko): Likewise.
8765         * lib/fseterr.c (fseterr): Likewise.
8766         * lib/fwritable.c (fwritable): Likewise.
8767         * lib/fwriting.c (fwriting): Likewise.
8768         Reported by Ingo Weinhold <ingo_weinhold@gmx.de>.
8769
8770 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
8771
8772         * lib/config.charset: Treat Haiku like BeOS.
8773
8774 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
8775
8776         * lib/binary-io.h (O_BINARY, O_TEXT): Treat Haiku like BeOS.
8777         * lib/fcntl.in.h (O_BINARY, O_TEXT): Likewise.
8778
8779 2008-11-08  Bruno Haible  <bruno@clisp.org>
8780
8781         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
8782         AC_CACHE_CHECK.
8783
8784 2008-11-08  Bruno Haible  <bruno@clisp.org>
8785
8786         * modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
8787
8788 2008-11-08  Bruno Haible  <bruno@clisp.org>
8789
8790         * tests/test-select-fd.c: New file.
8791         * tests/test-select-in.sh: New file.
8792         * tests/test-select-out.sh: New file.
8793         * tests/test-select-stdin.c: New file.
8794         * modules/select-tests (Files): Add the new files.
8795         (Depends-on): Add gettimeofday.
8796         (Makefile.am): Add test-select-in.sh, test-select-out.sh to TESTS.
8797         Set TESTS_ENVIRONMENT. Add test-select-fd, test-select-stdin to
8798         check_PROGRAMS. Define test_select_fd_LDADD, test_select_stdin_LDADD.
8799
8800 2008-11-06  Alexander V. Lukyanov  <lav@netis.ru>
8801             Bruno Haible  <bruno@clisp.org>
8802
8803         * lib/sys_stat.in.h: Enclose function definitions in extern "C".
8804
8805 2008-10-12  Giuseppe Scrivano  <gscrivano@gnu.org>
8806
8807         * build-aux/pmccabe2html: Added support for C++ source files.
8808
8809 2008-11-05  Ben Pfaff  <blp@gnu.org>
8810
8811         Fix lib/close.c build on Windows.
8812         * modules/close (Files): Add lib/w32sock.h.
8813
8814 2008-11-05  Joel E. Denny  <jdenny@ces.clemson.edu>
8815
8816         Accept Bison's NEWS format.
8817         * build-aux/announce-gen (print_news_deltas): Tweak
8818         $re_prefix.
8819
8820 2008-11-04  Bruno Haible  <bruno@clisp.org>
8821
8822         * modules/random_r (Maintainer): Add glibc.
8823
8824 2008-11-04  Simon Josefsson  <simon@josefsson.org>
8825
8826         * doc/alloca-opt.texi: Change license to GFDLv1.3+, as suggested
8827         by karl@freefriends.org (Karl Berry).
8828         * doc/alloca.texi: Likewise.
8829         * doc/c-ctype.texi: Likewise.
8830         * doc/c-strcase.texi: Likewise.
8831         * doc/c-strcaseeq.texi: Likewise.
8832         * doc/c-strcasestr.texi: Likewise.
8833         * doc/c-strstr.texi: Likewise.
8834         * doc/c-strtod.texi: Likewise.
8835         * doc/c-strtold.texi: Likewise.
8836         * doc/ctime.texi: Likewise.
8837         * doc/error.texi: Likewise.
8838         * doc/fdl.texi: Likewise.
8839         * doc/gcd.texi: Likewise.
8840         * doc/getdate.texi: Likewise.
8841         * doc/gnulib-intro.texi: Likewise.
8842         * doc/gnulib-tool.texi: Likewise.
8843         * doc/gnulib.texi: Likewise.
8844         * doc/inet_ntoa.texi: Likewise.
8845         * doc/maintain.texi: Likewise.
8846         * doc/make-stds.texi: Likewise.
8847         * doc/quote.texi: Likewise.
8848         * doc/regexprops-generic.texi: Likewise.
8849         * doc/standards.texi: Likewise.
8850         * doc/verify.texi: Likewise.
8851         * doc/visibility.texi: Likewise.
8852         * doc/gnulib.texi (GNU Free Documentation License): Include
8853         fdl-1.3.texi instead of fdl.texi.
8854
8855 2008-11-04  Simon Josefsson  <simon@josefsson.org>
8856
8857         * doc/fdl-1.3.texi: New file, from
8858         <http://www.gnu.org/licenses/fdl-1.3.texi>.
8859         * modules/fdl-1.3: Add.
8860         * MODULES.html.sh: Add fdl-1.3.
8861
8862 2008-11-03  Bruno Haible  <bruno@clisp.org>
8863
8864         Make determination of absolute name of header file work with AIX xlc.
8865         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Require
8866         AC_CANONICAL_HOST. On AIX, use "$CPP -C" rather than "$CPP" for
8867         preprocessing.
8868         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
8869         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
8870
8871 2008-11-03  Simon Josefsson  <simon@josefsson.org>
8872
8873         * top/maint.mk (COVERAGE_CCOPTS): Use --coverage instead of
8874         -fprofile-arcs -ftest-coverage.  Suggested by Ludovic Courtès
8875         <ludo@gnu.org>.
8876
8877 2008-11-02  Bruno Haible  <bruno@clisp.org>
8878
8879         Mark 'strpbrk' obsolete.
8880         * modules/strpbrk (Status, Notice): New sections.
8881         * modules/strtok_r (Depends-on): Add strpbrk.
8882
8883 2008-11-02  Bruno Haible  <bruno@clisp.org>
8884
8885         Mark 'strdup' obsolete.
8886         * modules/strdup (Status, Notice): New sections.
8887         * modules/findprog (Depends-on): Add strdup.
8888         * modules/getaddrinfo (Depends-on): Likewise.
8889         * modules/localename (Depends-on): Likewise.
8890         * modules/relocatable-lib (Depends-on): Likewise.
8891         * modules/relocatable-lib-lgpl (Depends-on): Likewise.
8892         * modules/relocatable-prog (Depends-on): Likewise.
8893         * modules/trim (Depends-on): Likewise.
8894         * modules/unictype/gen-ctype (Depends-on): Likewise.
8895         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
8896
8897 2008-11-02  Bruno Haible  <bruno@clisp.org>
8898
8899         Mark 'strcspn' obsolete.
8900         * modules/strcspn (Status, Notice): New sections.
8901
8902 2008-11-02  Bruno Haible  <bruno@clisp.org>
8903
8904         Mark 'rmdir' obsolete.
8905         * modules/rmdir (Status, Notice): New sections.
8906         * modules/clean-temp (Depends-on): Add rmdir.
8907         * modules/openat (Depends-on): Likewise.
8908
8909 2008-11-02  Bruno Haible  <bruno@clisp.org>
8910
8911         Mark 'raise' obsolete.
8912         * modules/raise (Status, Notice): New sections.
8913         (Include): Specify <signal.h>.
8914         * modules/stdio (Depends-on): Add raise.
8915         * modules/write (Depends-on): Likewise.
8916
8917 2008-11-02  Bruno Haible  <bruno@clisp.org>
8918
8919         Mark 'memset' obsolete.
8920         * modules/memset (Status, Notice): New sections.
8921
8922 2008-11-02  Bruno Haible  <bruno@clisp.org>
8923
8924         Mark 'memmove' obsolete.
8925         * modules/memmove (Status, Notice): New sections.
8926         * modules/argp (Depends-on): Add memmove.
8927         * modules/argz (Depends-on): Likewise.
8928         * modules/canonicalize (Depends-on): Likewise.
8929         * modules/canonicalize-lgpl (Depends-on): Likewise.
8930         * modules/fts (Depends-on): Likewise.
8931         * modules/getcwd (Depends-on): Likewise.
8932         * modules/human (Depends-on): Likewise.
8933         * modules/regex (Depends-on): Likewise.
8934         * modules/striconveh (Depends-on): Likewise.
8935         * modules/trim (Depends-on): Likewise.
8936         * modules/unistr/u8-move (Depends-on): Likewise.
8937         * modules/unistr/u16-move (Depends-on): Likewise.
8938         * modules/unistr/u32-move (Depends-on): Likewise.
8939
8940 2008-11-02  Bruno Haible  <bruno@clisp.org>
8941
8942         Mark 'memcpy' obsolete.
8943         * modules/memcpy (Status, Notice): New sections.
8944
8945 2008-11-02  Bruno Haible  <bruno@clisp.org>
8946
8947         Mark 'memcmp' obsolete.
8948         * modules/memcmp (Status, Notice): New sections.
8949         * modules/argmatch (Depends-on): Add memchr.
8950         * modules/backupfile (Depends-on): Likewise.
8951         * modules/c-strcasestr (Depends-on): Likewise.
8952         * modules/crypto/des (Depends-on): Likewise.
8953         * modules/csharpcomp (Depends-on): Likewise.
8954         * modules/fnmatch (Depends-on): Likewise.
8955         * modules/git-merge-changelog (Depends-on): Likewise.
8956         * modules/isnand (Depends-on): Likewise.
8957         * modules/isnand-nolibm (Depends-on): Likewise.
8958         * modules/isnanf (Depends-on): Likewise.
8959         * modules/isnanf-nolibm (Depends-on): Likewise.
8960         * modules/isnanl (Depends-on): Likewise.
8961         * modules/isnanl-nolibm (Depends-on): Likewise.
8962         * modules/mbchar (Depends-on): Likewise.
8963         * modules/memcoll (Depends-on): Likewise.
8964         * modules/quotearg (Depends-on): Likewise.
8965         * modules/regex (Depends-on): Likewise.
8966         * modules/relocatable-prog (Depends-on): Likewise.
8967         * modules/same (Depends-on): Likewise.
8968         * modules/signbit (Depends-on): Likewise.
8969         * modules/strcasestr-simple (Depends-on): Likewise.
8970         * modules/unictype/gen-ctype (Depends-on): Likewise.
8971         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
8972         * modules/uniname/uniname (Depends-on): Likewise.
8973         * modules/unistr/u8-cmp (Depends-on): Likewise.
8974
8975 2008-11-02  Bruno Haible  <bruno@clisp.org>
8976
8977         Mark 'memchr' obsolete.
8978         * modules/memchr (Status, Notice): New sections.
8979         * modules/argp (Depends-on): Add memchr.
8980         * modules/base64 (Depends-on): Likewise.
8981         * modules/c-strcasestr (Depends-on): Likewise.
8982         * modules/chdir-long (Depends-on): Likewise.
8983         * modules/fnmatch (Depends-on): Likewise.
8984         * modules/getsubopt (Depends-on): Likewise.
8985         * modules/git-merge-changelog (Depends-on): Likewise.
8986         * modules/glob (Depends-on): Likewise.
8987         * modules/strcasestr-simple (Depends-on): Likewise.
8988         * modules/strnlen (Depends-on): Likewise.
8989
8990 2008-11-02  Bruno Haible  <bruno@clisp.org>
8991
8992         Mark 'atexit' obsolete.
8993         * modules/atexit (Status, Notice): New sections.
8994         * modules/chdir-long (Depends-on): Add atexit.
8995         * modules/wait-process (Depends-on): Likewise.
8996
8997 2008-11-02  Bruno Haible  <bruno@clisp.org>
8998
8999         * gnulib-tool: New option --with-obsolete.
9000         (func_usage): Document it.
9001         (func_modules_transitive_closure): Drop obsolete dependencies if
9002         incobsolete is not true.
9003         (func_import): Read and save the incobsolete variable to the cache.
9004
9005 2008-11-02  Bruno Haible  <bruno@clisp.org>
9006
9007         * modules/TEMPLATE-EXTENDED: New field 'Status'.
9008         * gnulib-tool: New option --extract-status.
9009         (func_usage): Document it.
9010         (sed_extract_prog): Recognize it.
9011         (func_get_status): New function.
9012
9013 2008-10-30  Simon Josefsson  <simon@josefsson.org>
9014
9015         * modules/sockets (License): Change from LGPL to LGPLv2+.
9016
9017 2008-10-28  Simon Josefsson  <simon@josefsson.org>
9018
9019         * top/maint.mk: Add coverage rules, inspired by scripts in gnupdf.
9020
9021 2008-10-28  Simon Josefsson  <simon@josefsson.org>
9022
9023         * MODULES.html.sh (Support for systems lacking POSIX:2001):
9024         Mention times and sys_times.
9025         * modules/sys_times, modules/sys_times-tests: New modules.
9026         * modules/times, modules/times-tests: Likewise
9027         * m4/sys_times_h.m4: New file.
9028         * lib/sys_times.in.h: Likewise
9029         * lib/times.c: Likewise.
9030         * tests/test-sys_times.c: Likewise.
9031         * tests/test-times.c: Likewise.
9032         * doc/posix-headers/sys_times.texi: Update.
9033         * doc/posix-functions/times.texi: Update.
9034
9035 2008-10-28  Jim Meyering  <meyering@redhat.com>
9036
9037         * modules/tempname (Depends-on): Add lstat.
9038
9039         * modules/lstat (License): Relicense: LGPL -> LGPLv2+.
9040
9041 2008-10-28  Simon Josefsson  <simon@josefsson.org>
9042
9043         * gnulib-tool (func_emit_tests_Makefile_am): Revert last commit.
9044         * modules/argp-tests (test_argp_LDADD): Set EXEEXT here instead,
9045         using idiom used elsewhere in gnulib.
9046
9047 2008-10-27  Jim Meyering  <meyering@redhat.com>
9048
9049         * modules/gethostname (License): Relicense: LGPL -> LGPLv2+.
9050
9051 2008-10-27  Simon Josefsson  <simon@josefsson.org>
9052
9053         * gnulib-tool (func_emit_tests_Makefile_am): Set EXEEXT in
9054         TESTS_ENVIRONMENT, for shell scripts that needs to call built
9055         programs.
9056         * tests/test-argp-2.sh: Use $EXEEXT when needed.
9057
9058 2008-10-27  Simon Josefsson  <simon@josefsson.org>
9059
9060         * lib/sys_stat.in.h (lstat): Fix declaration for mingw.
9061
9062 2008-10-27  Bruno Haible  <bruno@clisp.org>
9063
9064         * tests/test-lstat.c: Include <stdio.h>.
9065
9066 2008-10-27  Simon Josefsson  <simon@josefsson.org>
9067
9068         * modules/lstat-tests: New module.
9069         * tests/test-lstat.c: New file.
9070
9071 2008-10-26  Jim Meyering  <meyering@redhat.com>
9072
9073         * lib/mkdir.c (rpl_mkdir) [_WIN32...]: Mark mode as an unused parameter.
9074
9075 2008-10-26  Simon Josefsson  <simon@josefsson.org>
9076             Bruno Haible  <bruno@clisp.org>
9077
9078         Fix a clash between the type DATADIR on Windows and the macro DATADIR.
9079         * modules/configmake (Include): Add a note that the include must come
9080         after all system headers.
9081         * lib/javaversion.c: Include configmake.h after all other includes.
9082
9083 2008-10-26  Bruno Haible  <bruno@clisp.org>
9084
9085         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Set default of
9086         HAVE_STRUCT_RANDOM_DATA to 1.
9087         (gl_STDLIB_H): Simplify.
9088
9089 2008-10-26  Simon Josefsson  <simon@josefsson.org>
9090
9091         * m4/stdlib_h.m4: Check for struct random_data.  Initialize and
9092         substitute HAVE_STRUCT_RANDOM_DATA.
9093         * lib/stdlib.in.h [!HAVE_STRUCT_RANDOM_DATA]: Provide struct
9094         random_data.
9095         * modules/stdlib (Makefile.am): Substitute
9096         HAVE_STRUCT_RANDOM_DATA.
9097
9098 2008-10-26  Simon Josefsson  <simon@josefsson.org>
9099
9100         * doc/gnulib.texi (@copying): Use GFDLv1.2+.
9101         * doc/gnulib-intro.texi (Copyright): Likewise.
9102
9103 2008-10-26  Simon Josefsson  <simon@josefsson.org>
9104
9105         * doc/gnulib.texi (Header files): C++ fixes, based on Bruno's
9106         findings.
9107
9108 2008-10-25  Ben Pfaff  <blp@cs.stanford.edu>
9109             Bruno Haible  <bruno@clisp.org>
9110
9111         * lib/unistd.in.h: Include <winsock2.h>.
9112         (socket, connect,accept, bind, getpeername, getsockname, getsockopt,
9113         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, select):
9114         Provide dummy declarations.
9115         (gethostname): Override.
9116         * lib/sys_socket.in.h (gethostname): Provide dummy declaration.
9117         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Invoke
9118         gl_PREREQ_SYS_H_WINSOCK2.
9119         * modules/gethostname (Files): Add m4/sys_socket_h.m4.
9120         * doc/posix-functions/gethostname.texi: More details.
9121
9122 2008-10-25  Bruno Haible  <bruno@clisp.org>
9123
9124         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
9125         gl_UNISTD_H_DEFAULTS, gl_SYS_IOCTL_H_DEFAULTS only if they exist.
9126         * modules/sys_socket (Files): Remove m4/unistd_h.m4, m4/sys_ioctl_h.m4.
9127
9128         * lib/sys_socket.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); Move macro from
9129         here ...
9130         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); ... to here.
9131         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Remove invocation of
9132         gl_UNISTD_H_DEFAULTS.
9133
9134 2008-10-25  Eric Blake  <ebb9@byu.net>
9135
9136         signbit: avoid spurious compiler failure
9137         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Move non-constant
9138         declarations inside function.
9139
9140 2008-10-24  Simon Josefsson  <simon@josefsson.org>
9141             Bruno Haible  <bruno@clisp.org>
9142
9143         * lib/stdlib.in.h (@GNULIB_RANDOM_R@): Include stdint.h.
9144         * modules/random_r (Depends-on): Add stdint.
9145
9146 2008-10-24  Bruno Haible  <bruno@clisp.org>
9147
9148         * modules/intprops (License): Change to LGPLv2+, with approval by Paul
9149         Eggert.
9150         * modules/strerror (License): Likewise.
9151
9152 2008-10-24  Jim Meyering  <meyering@redhat.com>
9153
9154         sys_socket: fix typo that inhibited expansion of @GNULIB_SEND@
9155         * modules/sys_socket (Depends-on) [Depends-on]: Fix typo.
9156
9157 2008-10-24  Eric Blake  <ebb9@byu.net>
9158
9159         getgroups: fix compilation when getgroups is available
9160         * lib/getgroups.c (includes): Include <unistd.h> for getgroups,
9161         but with <config.h> override of getgroups disabled.
9162
9163 2008-10-24  Simon Josefsson  <simon@josefsson.org>
9164
9165         * doc/gnulib.texi (Header files): Add note about C++ problems.
9166         Explained by Bruno Haible <bruno@clisp.org>.
9167
9168 2008-10-23  Bruno Haible  <bruno@clisp.org>
9169
9170         Define a dummy SA_NODEFER macro on Interix.
9171         * lib/signal.in.h (SA_NODEFER): Define fallback.
9172         Reported by Aleksey Cheusov <cheusov@tut.by> via
9173         Thomas Klausner <wiz@netbsd.org> and Eric Blake.
9174
9175 2008-10-23  Bruno Haible  <bruno@clisp.org>
9176
9177         * modules/freadahead (License): Change to LGPLv2+.
9178         Suggested by Simon Josefsson.
9179
9180 2008-10-23  Jim Meyering  <meyering@redhat.com>
9181
9182         random_r: new module
9183         * modules/random_r: New file.
9184         * m4/random_r.m4: New file.
9185         * lib/random_r.c: New file, from glibc.
9186         * modules/random_r-tests: New file.
9187         * tests/test-random_r.c: New file.
9188         * lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r):
9189          Declare.
9190         (RAND_MAX): Define.
9191         * m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
9192         * modules/stdlib: Substitute them, too.
9193         * MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
9194         * doc/glibc-functions/initstate_r.texi: Mention the new module.
9195         * doc/glibc-functions/random_r.texi: Likewise.
9196         * doc/glibc-functions/setstate_r.texi: Likewise.
9197         * doc/glibc-functions/srandom_r.texi: Likewise.
9198         * config/srclist.txt: Mention it.
9199
9200 2008-10-23  David Lutterkort  <lutter@redhat.com>
9201
9202         * modules/selinux-h: Search for LIB_SELINUX and mark it as a
9203         link requirement
9204
9205 2008-10-23  Jim Meyering  <meyering@redhat.com>
9206
9207         selinux-h: mark parameters of stub functions as intentionally unused
9208         * lib/se-selinux.in.h: Mark parameters as _UNUSED_PARAMETER_.
9209         * lib/se-context.in.h: Likewise.
9210
9211 2008-10-22  Simon Josefsson  <simon@josefsson.org>
9212
9213         * lib/sys_socket.in.h (FD_ISSET): Fix warnings under mingw.
9214
9215 2008-10-22  Simon Josefsson  <simon@josefsson.org>
9216
9217         * m4/getgroups.m4: Avoid invoking test with wrong parameters.
9218
9219 2008-10-22  Eric Blake  <ebb9@byu.net>
9220
9221         glthread/thread: avoid compiler warning
9222         * lib/glthread/thread.c (gl_thread_exit_func) [USE_WIN32_THREADS]:
9223         Add unreachable abort to silence compiler.
9224
9225 2008-10-22  Eric Blake  <ebb9@byu.net>
9226
9227         netdb: also supply struct addrinfo for cygwin 1.5.x
9228         * m4/netdb_h.m4 (gl_HEADER_NETDB): Check for incomplete header on
9229         older cygwin.
9230         * lib/netdb.in.h [!HAVE_STRUCT_ADDRINFO]: Also supply contents for
9231         cygwin.
9232         * doc/posix-headers/netdb.texi (netdb.h): Document this.
9233
9234 2008-10-22  Bruno Haible  <bruno@clisp.org>
9235
9236         * users.txt: Update entry about pspp.
9237
9238 2008-10-21  Bruno Haible  <bruno@clisp.org>
9239
9240         Simplification.
9241         * lib/sys_socket.in.h (_gl_close_fd_maybe_socket): Remove declaration.
9242         * lib/close.c (_gl_close_fd_maybe_socket): Make static.
9243
9244         Simplification.
9245         * lib/ioctl.c (ioctl): Don't undefine.
9246         * lib/socket.c (socket): Don't undefine.
9247
9248         Remove unused module indicator macros.
9249         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Don't define
9250         GNULIB_$1 as a C macro.
9251
9252         * doc/posix-functions/close.texi: Undo last change.
9253         * doc/posix-functions/ioctl.texi: Merge the two paragraphs about
9254         Windows platforms.
9255
9256 2008-10-21  Bruno Haible  <bruno@clisp.org>
9257
9258         Add gethostname() declaration to <unistd.h>.
9259         * lib/unistd.in.h (gethostname): New declaration.
9260         * lib/gethostname.c: Include <unistd.h>.
9261         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Require
9262         gl_UNISTD_H_DEFAULTS. Set HAVE_GETHOSTNAME.
9263         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETHOSTNAME
9264         and HAVE_GETHOSTNAME.
9265         * modules/gethostname (Depends-on): Add unistd.
9266         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9267         (Include): Specify <unistd.h>.
9268         * modules/unistd (Makefile.am): Substitute GNULIB_GETHOSTNAME and
9269         HAVE_GETHOSTNAME.
9270         * tests/test-gethostname.c: Include <unistd.h> first.
9271
9272 2008-10-21  Bruno Haible  <bruno@clisp.org>
9273
9274         * modules/poll-tests (Depends-on): Add sys_ioctl, ioctl.
9275         * modules/select-tests (Depends-on): Likewise.
9276         Reported by Simon Josefsson.
9277
9278 2008-10-21  Simon Josefsson  <simon@josefsson.org>
9279
9280         * lib/close.c: Add _gl_close_fd_maybe_socket from winsock.c.
9281         * lib/accept.c: New file, based on winsock.c.
9282         * lib/bind.c: New file, based on winsock.c.
9283         * lib/connect.c: New file, based on winsock.c.
9284         * lib/getpeername.c: New file, based on winsock.c.
9285         * lib/getsockname.c: New file, based on winsock.c.
9286         * lib/getsockopt.c: New file, based on winsock.c.
9287         * lib/ioctl.c: New file, based on winsock.c.
9288         * lib/listen.c: New file, based on winsock.c.
9289         * lib/recv.c: New file, based on winsock.c.
9290         * lib/recvfrom.c: New file, based on winsock.c.
9291         * lib/send.c: New file, based on winsock.c.
9292         * lib/sendto.c: New file, based on winsock.c.
9293         * lib/setsockopt.c: New file, based on winsock.c.
9294         * lib/shutdown.c: New file, based on winsock.c.
9295         * lib/socket.c: New file, based on winsock.c.
9296         * lib/w32sock.h: New file, based on winsock.c.
9297         * lib/winsock.c: Remove file.
9298         * modules/accept: Likewise.
9299         * modules/bind: Likewise.
9300         * modules/connect: Likewise.
9301         * modules/getpeername: Likewise.
9302         * modules/getsockname: Likewise.
9303         * modules/getsockopt: Likewise.
9304         * modules/ioctl: Likewise.
9305         * modules/listen: Likewise.
9306         * modules/recv: Likewise.
9307         * modules/recvfrom: Likewise.
9308         * modules/send: Likewise.
9309         * modules/sendto: Likewise.
9310         * modules/setsockopt: Likewise.
9311         * modules/shutdown: Likewise.
9312         * modules/socket: Use socket.c instead of winsock.c.
9313         * modules/sys_socket: Remove (unneeded?) dependency on winsock.c.
9314         * doc/posix-functions/accept.texi: Doc fix.
9315         * doc/posix-functions/bind.texi: Doc fix.
9316         * doc/posix-functions/close.texi: Doc fix.
9317         * doc/posix-functions/connect.texi: Doc fix.
9318         * doc/posix-functions/getpeername.texi: Doc fix.
9319         * doc/posix-functions/getsockname.texi: Doc fix.
9320         * doc/posix-functions/getsockopt.texi: Doc fix.
9321         * doc/posix-functions/ioctl.texi: Doc fix.
9322         * doc/posix-functions/listen.texi: Doc fix.
9323         * doc/posix-functions/recv.texi: Doc fix.
9324         * doc/posix-functions/recvfrom.texi: Doc fix.
9325         * doc/posix-functions/send.texi: Doc fix.
9326         * doc/posix-functions/sendto.texi: Doc fix.
9327         * doc/posix-functions/setsockopt.texi: Doc fix.
9328         * doc/posix-functions/shutdown.texi: Doc fix.
9329         * doc/posix-functions/socket.texi: Doc fix.
9330
9331 2008-10-20  Bruno Haible  <bruno@clisp.org>
9332
9333         Take into account the role of SIGABRT_COMPAT on Windows 2008.
9334         * lib/sigprocmask.c (SIGABRT_COMPAT, SIGABRT_COMPAT_MASK): New macros.
9335         (sigismember, sigaddset, sigdelset, sigfillset, rpl_signal): Handle it
9336         as an alias for SIGABRT.
9337         * lib/sigaction.c (SIGABRT_COMPAT): New macro.
9338         (sigaction): Map it to SIGABRT.
9339         Reported by Ramiro Polla <ramiro.polla@gmail.com> via Eric Blake.
9340
9341 2008-10-20  Bruno Haible  <bruno@clisp.org>
9342
9343         * lib/fts.c: Don't include lstat.h.
9344         * lib/openat.c: Include <sys/stat.h> instead of lstat.h.
9345
9346         Move the lstat() declaration to <sys/stat.h>.
9347         * lib/lstat.h: Remove file.
9348         * lib/sys_stat.in.h: Add special invocation convention.
9349         (lstat): New declaration.
9350         * lib/lstat.c (orig_lstat): New function.
9351         (rpl_lstat): Use orig_lstat instead of lstat.
9352         * m4/lstat.m4 (gl_FUNC_LSTAT): Require gl_SYS_STAT_H_DEFAULTS and
9353         AC_C_INLINE. Set REPLACE_LSTAT.
9354         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LSTAT
9355         and REPLACE_LSTAT.
9356         * modules/lstat (Files): Remove lib/lstat.h.
9357         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
9358         (Include): Specify <sys/stat.h> instead of lstat.h.
9359         * modules/sys_stat (Makefile.am): Substitute GNULIB_LSTAT and
9360         REPLACE_LSTAT.
9361         * NEWS: Mention the change.
9362
9363 2008-10-20  Bruno Haible  <bruno@clisp.org>
9364
9365         * modules/posix_spawn-tests: New file.
9366         * tests/test-posix_spawn3.c: New file.
9367
9368 2008-10-20  Bruno Haible  <bruno@clisp.org>
9369
9370         * modules/posix_spawnp-tests (Depends-on): Add sys_wait.
9371         * tests/test-posix_spawn1.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
9372         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Remove fallback definitions.
9373         * tests/test-posix_spawn2.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
9374         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Likewise.
9375
9376 2008-10-20  Bruno Haible  <bruno@clisp.org>
9377
9378         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Test against another bug
9379         of posix_spawn on AIX 5.3.
9380
9381 2008-10-20  Bruno Haible  <bruno@clisp.org>
9382
9383         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Make the check on MacOS X.
9384
9385 2008-10-20  Bruno Haible  <bruno@clisp.org>
9386
9387         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Use AC_LANG_SOURCE instead
9388         of AC_LANG_PROGRAM.
9389
9390 2008-10-20  Simon Josefsson  <simon@josefsson.org>
9391
9392         * lib/netdb.in.h: Don't define GNU specific constants until they
9393         are supported or needed.  Reported by Bruno Haible
9394         <bruno@clisp.org>.
9395
9396 2008-10-20  Simon Josefsson  <simon@josefsson.org>
9397
9398         * lib/canon-host.c: Include netdb.h instead of getaddrinfo.h.
9399
9400 2008-10-20  Simon Josefsson  <simon@josefsson.org>
9401
9402         * lib/getaddrinfo.h: Remove file.
9403         * modules/getaddrinfo: Reflect move from getaddrinfo.h to netdb.h.
9404         * m4/getaddrinfo.m4: Call gl_HEADER_NETDB.  Don't check for netdb.h.
9405         * lib/netdb.in.h: Add declarations from getaddrinfo.h.
9406         * m4/netdb_h.m4: Initialize GNULIB_GETADDRINFO to 0.
9407         * modules/netdb: Substitute GNULIB_GETADDRINFO.
9408         * lib/getaddrinfo.c: Include netdb.h instead of getaddrinfo.h.
9409         * tests/test-getaddrinfo.c: Likewise.
9410         * lib/gai_strerror.c: Likewise.  Also drop HAVE_NETDB_H check.
9411         * NEWS: Mention change.
9412
9413 2008-10-19  Bruno Haible  <bruno@clisp.org>
9414
9415         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Remove unneeded code.
9416
9417 2008-10-19  Bruno Haible  <bruno@clisp.org>
9418
9419         * lib/wait-process.c: Include simply <sys/wait.h>.
9420         (waitpid, WTERMSIG, WCOREDUMP, WEXITSTATUS, WIFSIGNALED, WIFEXITED,
9421         WIFSTOPPED): Remove fallback definitions.
9422         * modules/wait-process (Depends-on): Add sys_wait.
9423
9424         New module 'sys_wait'.
9425         * modules/sys_wait: New file.
9426         * lib/sys_wait.in.h: New file, partially copied from
9427         lib/wait-process.c.
9428         * m4/sys_wait_h.m4: New file.
9429         * doc/posix-headers/sys_wait.texi: Mention the new module.
9430
9431 2008-10-19  Bruno Haible  <bruno@clisp.org>
9432
9433         * m4/wait-process.m4 (gl_WAIT_PROCESS): Remove test for unistd.h.
9434
9435 2008-10-19  Bruno Haible  <bruno@clisp.org>
9436
9437         Assume that waitpid() fills an 'int' status, not a 'union wait'.
9438         * lib/wait-process.c (WAIT_T): Remove type.
9439         (WTERMSIG, WCOREDUMP, WEXITSTATUS): Define fallbacks using bit masks.
9440         (wait_subprocess): Update.
9441
9442 2008-10-19  Bruno Haible  <bruno@clisp.org>
9443
9444         New module 'atoll'.
9445         * modules/atoll: New file.
9446         * lib/stdlib.in.h (atoll): New declaration.
9447         * lib/atoll.c: New file, from glibc with modifications.
9448         * m4/atoll.m4: New file.
9449         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_ATOLL,
9450         HAVE_ATOLL.
9451         * modules/stdlib (Makefile.am): Substitute GNULIB_ATOLL, HAVE_ATOLL.
9452         * doc/posix-functions/atoll.texi: Mention the new module.
9453
9454 2008-10-19  Bruno Haible  <bruno@clisp.org>
9455
9456         Add strtoull() declaration to <stdlib.h>.
9457         * lib/stdlib.in.h (strtoull): New declaration.
9458         * m4/strtoull.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
9459         Set HAVE_STRTOULL.
9460         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOULL,
9461         HAVE_STRTOULL.
9462         * modules/strtoull (Depends-on): Add stdlib.
9463         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9464         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOULL,
9465         HAVE_STRTOULL.
9466
9467 2008-10-19  Bruno Haible  <bruno@clisp.org>
9468
9469         Add strtoll() declaration to <stdlib.h>.
9470         * lib/stdlib.in.h (strtoll): New declaration.
9471         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
9472         Set HAVE_STRTOLL.
9473         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOLL,
9474         HAVE_STRTOLL.
9475         * modules/strtoll (Depends-on): Add stdlib.
9476         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9477         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOLL, HAVE_STRTOLL.
9478
9479 2008-10-19  Bruno Haible  <bruno@clisp.org>
9480
9481         * modules/bcopy (Depends-on): Add strings.
9482         (Include): Specify <strings.h>.
9483
9484 2008-10-19  Bruno Haible  <bruno@clisp.org>
9485
9486         * doc/posix-functions/atexit.texi: Update doc regarding mingw.
9487
9488 2008-10-19  Bruno Haible  <bruno@clisp.org>
9489
9490         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
9491         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
9492         mingw.
9493
9494 2008-10-19  Bruno Haible  <bruno@clisp.org>
9495
9496         * lib/atanl.c: Don't include isnanl.h.
9497         * lib/cosl.c: Likewise.
9498         * lib/ldexpl.c: Likewise.
9499         * lib/logl.c: Likewise.
9500         * lib/sinl.c: Likewise.
9501         * lib/sqrtl.c: Likewise.
9502         * lib/tanl.c: Likewise.
9503
9504         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
9505         * lib/isnanf.h: Remove file.
9506         * lib/isnand.h: Remove file.
9507         * lib/isnanl.h: Remove file.
9508         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
9509         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
9510         macros.
9511         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
9512         HAVE_ISNANF, don't define it as a C macro.
9513         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
9514         HAVE_ISNAND, don't define it as a C macro.
9515         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
9516         HAVE_ISNANL, don't define it as a C macro.
9517         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
9518         HAVE_ISNAN[FDL].
9519         * modules/isnanf (Files): Remove lib/isnanf.h.
9520         (Depends-on): Add math.
9521         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
9522         (Include): Specify <math.h> instead of isnanf.h.
9523         * modules/isnand (Files): Remove lib/isnand.h.
9524         (Depends-on): Add math.
9525         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
9526         (Include): Specify <math.h> instead of isnand.h.
9527         * modules/isnanl (Files): Remove lib/isnanl.h.
9528         (Depends-on): Add math.
9529         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
9530         (Include): Specify <math.h> instead of isnanl.h.
9531         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
9532         HAVE_ISNAN[FDL].
9533         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
9534         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
9535         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
9536         * NEWS: Mention the change.
9537
9538 2008-10-18  Bruno Haible  <bruno@clisp.org>
9539
9540         Add getusershell(), setusershell(), endusershell() declarations to
9541         <unistd.h>.
9542         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
9543         declarations.
9544         * lib/getusershell.c: Include unistd.h.
9545         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
9546         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
9547         HAVE_GETUSERSHELL.
9548         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
9549         and HAVE_GETUSERSHELL.
9550         * modules/getusershell (Depends-on): Add unistd, extensions.
9551         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9552         (Include): Specify <unistd.h>.
9553         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
9554         HAVE_GETUSERSHELL.
9555
9556 2008-10-18  Bruno Haible  <bruno@clisp.org>
9557
9558         Add a getloadavg() declaration to <stdlib.h>.
9559         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
9560         getloadavg declaration.
9561         (getloadavg): New declaration.
9562         * lib/getloadavg.c: Include <stdlib.h> first.
9563         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
9564         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
9565         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
9566         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
9567         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
9568         * modules/getloadavg (Depends-on): Add stdlib, extensions.
9569         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9570         (Include): Specify <stdlib.h>.
9571         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
9572         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
9573
9574 2008-10-18  Bruno Haible  <bruno@clisp.org>
9575
9576         * lib/dirchownmod.c: Don't include lchmod.h.
9577
9578         Move the lchmod() declaration to <sys/stat.h>.
9579         * lib/lchmod.h: Remove file.
9580         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
9581         (lchmod): New declaration, moved here from lib/lchown.h.
9582         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
9583         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
9584         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
9585         and HAVE_LCHMOD.
9586         * modules/lchmod (Files): Remove lib/lchmod.h.
9587         (Depends-on): Add sys_stat, extensions.
9588         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
9589         (Include): Specify <sys/stat.h> instead of lchmod.h.
9590         * modules/sys_stat (Depends-on): Add link-warning.
9591         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
9592         definition of GL_LINK_WARNING.
9593         * NEWS: Mention the change.
9594
9595 2008-10-18  Bruno Haible  <bruno@clisp.org>
9596
9597         * lib/fchdir.c: Don't include dirfd.h.
9598         * lib/fts.c: Likewise.
9599         * lib/getcwd.c: Likewise.
9600         * lib/glob.c: Likewise.
9601
9602         Move the dirfd() declaration to <dirent.h>.
9603         * lib/dirfd.h: Remove file.
9604         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
9605         (dirfd): New declaration.
9606         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
9607         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
9608         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
9609         HAVE_DECL_DIRFD.
9610         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
9611         HAVE_DECL_DIRFD.
9612         * modules/dirfd (Files): Remove lib/dirfd.h.
9613         (Depends-on): Add dirent, extensions.
9614         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
9615         (Include): Specify <dirent.h> instead of dirfd.h.
9616         * modules/dirent (Depends-on): Add link-warning.
9617         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
9618         definition of GL_LINK_WARNING.
9619         * NEWS: Mention the change.
9620
9621 2008-10-18  Bruno Haible  <bruno@clisp.org>
9622
9623         Move the euidaccess() declaration to <unistd.h>.
9624         * lib/euidaccess.h: Remove file.
9625         * lib/unistd.in.h (euidaccess): New declaration.
9626         * lib/euidaccess.c: Don't include euidaccess.h.
9627         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
9628         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
9629         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
9630         and HAVE_EUIDACCESS.
9631         * modules/euidaccess (Files): Remove lib/euidaccess.h.
9632         (Depends-on): Add unistd.
9633         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9634         (Include): Specify <unistd.h> instead of euidaccess.h.
9635         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
9636         HAVE_EUIDACCESS.
9637         * NEWS: Mention the change.
9638
9639 2008-10-18  Bruno Haible  <bruno@clisp.org>
9640
9641         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
9642
9643         Move the getdomainname() declaration to <unistd.h>.
9644         * lib/getdomainname.h: Remove file.
9645         * lib/unistd.in.h (getdomainname): New declaration.
9646         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
9647         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
9648         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
9649         HAVE_GETDOMAINNAME.
9650         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
9651         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
9652         * modules/getdomainname (Files): Remove lib/getdomainname.h.
9653         (Depends-on): Add unistd, extensions.
9654         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9655         (Includes): Specify <unistd.h> instead of getdomainname.h.
9656         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
9657         HAVE_GETDOMAINNAME.
9658         * NEWS: Mention the change.
9659
9660 2008-10-18  Bruno Haible  <bruno@clisp.org>
9661
9662         * modules/dirent: New file.
9663         * m4/dirent_h.m4: New file.
9664         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
9665         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
9666         * modules/fchdir (Files): Remove lib/dirent.in.h.
9667         (Depends-on): Add dirent.
9668         (Makefile.am): Move rules to modules/dirent.
9669         * doc/posix-headers/dirent.texi: Mention the new module.
9670
9671 2008-10-18  Bruno Haible  <bruno@clisp.org>
9672
9673         Avoid -Wunused-parameter warnings in public gnulib header files.
9674         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
9675         macro.
9676         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
9677
9678 2008-10-18  Bruno Haible  <bruno@clisp.org>
9679
9680         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
9681         * doc/glibc-functions/error.texi: Mention the module 'error'.
9682         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
9683         * doc/glibc-functions/getdomainname.texi: Mention the module
9684         'getdomainname'.
9685         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
9686         * doc/glibc-functions/getpagesize.texi: Mention the module
9687         'getpagesize'.
9688         * doc/glibc-functions/getusershell.texi: Mention the module
9689         'getusershell'.
9690         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
9691         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
9692         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
9693         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
9694         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
9695         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
9696         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
9697         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
9698         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
9699         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
9700         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
9701         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
9702         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
9703         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
9704
9705 2008-10-17  Bruno Haible  <bruno@clisp.org>
9706
9707         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
9708         HP-UX and IRIX, use -0.0L.
9709         * tests/test-ceill.c (minus_zero): Likewise.
9710         * tests/test-floorl.c (minus_zero): Likewise.
9711         * tests/test-frexpl.c (minus_zero): Likewise.
9712         * tests/test-isnan.c (minus_zerol): Likewise.
9713         * tests/test-isnanl.h (minus_zero): Likewise.
9714         * tests/test-ldexpl.c (minus_zero): Likewise.
9715         * tests/test-roundl.c (minus_zero): Likewise.
9716         * tests/test-signbit.c (minus_zerol): Likewise.
9717         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
9718         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
9719         * tests/test-truncl.c (minus_zero): Likewise.
9720         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
9721         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
9722         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
9723         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
9724
9725 2008-10-17  Bruno Haible  <bruno@clisp.org>
9726
9727         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
9728         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
9729         that it gets activated only for gcc >= 3.0.
9730         * lib/dirent.in.h: Likewise.
9731         * lib/errno.in.h: Likewise.
9732         * lib/fcntl.in.h: Likewise.
9733         * lib/float.in.h: Likewise.
9734         * lib/iconv.in.h: Likewise.
9735         * lib/inttypes.in.h: Likewise.
9736         * lib/locale.in.h: Likewise.
9737         * lib/math.in.h: Likewise.
9738         * lib/netdb.in.h: Likewise.
9739         * lib/netinet_in.in.h: Likewise.
9740         * lib/search.in.h: Likewise.
9741         * lib/signal.in.h: Likewise.
9742         * lib/spawn.in.h: Likewise.
9743         * lib/stdarg.in.h: Likewise.
9744         * lib/stdint.in.h: Likewise.
9745         * lib/stdio.in.h: Likewise.
9746         * lib/stdlib.in.h: Likewise.
9747         * lib/string.in.h: Likewise.
9748         * lib/strings.in.h: Likewise.
9749         * lib/sys_file.in.h: Likewise.
9750         * lib/sys_ioctl.in.h: Likewise.
9751         * lib/sys_select.in.h: Likewise.
9752         * lib/sys_socket.in.h: Likewise.
9753         * lib/sys_stat.in.h: Likewise.
9754         * lib/sys_time.in.h: Likewise.
9755         * lib/sysexits.in.h: Likewise.
9756         * lib/time.in.h: Likewise.
9757         * lib/unistd.in.h: Likewise.
9758         * lib/wchar.in.h: Likewise.
9759         * lib/wctype.in.h: Likewise.
9760         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
9761
9762 2008-10-17  Jim Meyering  <meyering@redhat.com>
9763
9764         ignore-value: don't depend on inline module
9765         * modules/ignore-value (Depends-on): Remove 'inline'.
9766         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
9767         Suggestion from Bruno Haible.
9768
9769 2008-10-17  Bruno Haible  <bruno@clisp.org>
9770
9771         New implementation of condition variables for Win32.
9772         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
9773         (gl_linked_waitqueue_t): New type.
9774         (gl_cond_t): Use it.
9775         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
9776         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
9777         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
9778         (glthread_cond_init_func, glthread_cond_wait_func,
9779         glthread_cond_timedwait_func, glthread_cond_signal_func,
9780         glthread_cond_broadcast_func, glthread_cond_destroy_func):
9781         Reimplemented on the basis of gl_linked_waitqueue_t.
9782         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
9783         gl_waitqueue_t.
9784         (gl_rwlock_t): Update.
9785         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
9786
9787 2008-10-17  Simon Josefsson  <simon@josefsson.org>
9788
9789         * modules/recvfrom (Depends-on): Add dependency on getpeername.
9790         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
9791
9792 2008-10-17  Jim Meyering  <meyering@redhat.com>
9793
9794         ignore-value: new module
9795         * modules/ignore-value: New file.
9796         * lib/ignore-value.h: New file.
9797         * MODULES.html.sh (Compiler warning management): New section,
9798         just for this module.  More to come.
9799
9800 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
9801
9802         open-safer.c: avoid 'signed and unsigned in conditional...' warning
9803         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
9804         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
9805
9806 2008-10-16  Jim Meyering  <meyering@redhat.com>
9807
9808         openat-die.c: avoid 'no previous prototype' warning
9809         * lib/openat-die.c: Include "openat.h".
9810         Reported by Reuben Thomas <rrt@sc3d.org>.
9811
9812 2008-10-16  Simon Josefsson  <simon@josefsson.org>
9813
9814         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
9815         * lib/netdb.in.h: Fix typo.
9816         Reported by Bruno Haible  <bruno@clisp.org>
9817
9818         * lib/netdb.in.h: Include sys/socket.h for platforms without
9819         netdb.h, to get structures like hostent on MinGW.
9820         * modules/netdb (Depends-on): Add sys_socket.
9821
9822 2008-10-15  Simon Josefsson  <simon@josefsson.org>
9823
9824         * modules/netdb, modules/netdb-tests: New file.
9825         * m4/netdb_h.m4: New file.
9826         * lib/netdb.in.h: Add, currently just an empty file pending
9827         definitions.
9828         * tests/test-netdb.c: New file.
9829         * doc/posix-headers/netdb.texi: Mention that we replace it if
9830         needed.
9831         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
9832         netdb.
9833
9834 2008-10-15  Simon Josefsson  <simon@josefsson.org>
9835
9836         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
9837         with code.
9838
9839 2008-10-13  Bruno Haible  <bruno@clisp.org>
9840
9841         * lib/glthread/cond.c (glthread_cond_wait_func,
9842         glthread_cond_timedwait_func): Add a comment.
9843
9844 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
9845
9846         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
9847         * tests/test-select.c: Likewise,
9848
9849 2008-10-13  Bruno Haible  <bruno@clisp.org>
9850
9851         * lib/glthread/cond.c (glthread_cond_wait_func,
9852         glthread_cond_timedwait_func): Fix variable name.
9853         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
9854
9855 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
9856
9857         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
9858         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
9859         struct sockaddr.sa_len.
9860         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
9861
9862 2008-10-13  Simon Josefsson  <simon@josefsson.org>
9863
9864         * build-aux/pmccabe2html: Add css and css_url parameters.
9865
9866 2008-10-12  Bruno Haible  <bruno@clisp.org>
9867
9868         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
9869         calling aclx_get.
9870         Reported by Rainer Tammer <tammer@tammer.net>.
9871
9872 2008-10-12  Bruno Haible  <bruno@clisp.org>
9873
9874         Use msvcrt aware primitives for creation/termination of Win32 threads.
9875         * lib/glthread/thread.c: Include <process.h>.
9876         (glthread_create_func): Use _beginthreadex instead of CreateThread.
9877         (wrapper_func): Update signature.
9878         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
9879
9880 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
9881             Bruno Haible  <bruno@clisp.org>
9882
9883         Provide a Win32 implementation of the 'cond' module.
9884         * lib/glthread/cond.h [USE_WIN32]: New implementation.
9885         * lib/glthread/cond.c (glthread_cond_init_func,
9886         glthread_cond_wait_func, glthread_cond_timedwait_func,
9887         glthread_cond_signal_func, glthread_cond_broadcast_func,
9888         glthread_cond_destroy_func) [USE_WIN32]: New functions.
9889         * modules/cond (Dependencies): Add gettimeofday.
9890
9891 2008-10-11  Bruno Haible  <bruno@clisp.org>
9892
9893         Make sleep work on older versions of mingw.
9894         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
9895         only whether it exists.
9896         * doc/posix-functions/sleep.texi: Mention the problem with older
9897         versions of mingw.
9898
9899 2008-10-11  Bruno Haible  <bruno@clisp.org>
9900
9901         New module 'shutdown'.
9902         * modules/shutdown: New file.
9903         * lib/sys_socket.in.h (shutdown): New declaration.
9904         * lib/winsock.c (shutdown): New function.
9905         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
9906         GNULIB_SHUTDOWN.
9907         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
9908         * doc/posix-functions/shutdown.texi: Document the new module.
9909
9910 2008-10-11  Jim Meyering  <meyering@redhat.com>
9911
9912         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
9913
9914 2008-10-11  Bruno Haible  <bruno@clisp.org>
9915
9916         New module 'fclose'.
9917         * modules/fclose: New file.
9918         * lib/stdio.in.h (fclose): New declaration.
9919         * lib/fclose.c: New file.
9920         * m4/fclose.m4: New file.
9921         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
9922         REPLACE_FCLOSE.
9923         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
9924         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
9925         REPLACE_FCLOSE.
9926         * modules/close (Depends-on): fclose.
9927         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
9928
9929 2008-10-11  Bruno Haible  <bruno@clisp.org>
9930
9931         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
9932         set errno and don't call _close.
9933
9934 2008-10-10  Bruno Haible  <bruno@clisp.org>
9935
9936         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
9937         ACL, not afterwards. Fixes test failure on Cygwin.
9938
9939 2008-10-09  Ben Pfaff  <blp@gnu.org>
9940
9941         * build-aux/announce-gen: Fix gnulib version related part of usage
9942         message.  Die with a useful error message if no tarballs are
9943         found.
9944
9945 2008-10-10  Jim Meyering  <meyering@redhat.com>
9946
9947         bootstrap: use git's --depth=N option only if it's supported
9948         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
9949         recognize the --depth option.  Reported by Pádraig Brady.
9950
9951 2008-10-09  Bruno Haible  <bruno@clisp.org>
9952
9953         New module 'ioctl'.
9954         * modules/ioctl: New file.
9955         * lib/sys_socket.in.h (ioctl): Remove declaration.
9956         * lib/winsock.c: Include <sys/ioctl.h>.
9957         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
9958         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
9959         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
9960         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
9961         * doc/posix-functions/ioctl.texi: Mention the new module.
9962
9963 2008-10-09  Bruno Haible  <bruno@clisp.org>
9964
9965         New module 'sys_ioctl'.
9966         * lib/sys_ioctl.in.h: New file.
9967         * m4/sys_ioctl_h.m4: New file.
9968         * modules/sys_ioctl: New file.
9969         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
9970
9971 2008-10-09  Bruno Haible  <bruno@clisp.org>
9972
9973         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
9974         * lib/winsock.c: Include <stdarg.h>.
9975         (rpl_ioctl): Change to second argument 'int' and then varargs.
9976
9977 2008-10-09  Bruno Haible  <bruno@clisp.org>
9978
9979         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
9980         when the sys_socket module is present and the system has <winsock2.h>.
9981
9982 2008-10-09  Bruno Haible  <bruno@clisp.org>
9983
9984         * doc/posix-functions/close.texi: Mention module 'close' instead of
9985         module 'sys_socket'.
9986
9987 2008-10-09  Bruno Haible  <bruno@clisp.org>
9988
9989         * doc/glibc-headers/sys_ioctl.texi: New file.
9990         * doc/gnulib.texi: Include it.
9991
9992 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
9993             Bruno Haible  <bruno@clisp.org>
9994
9995         Combine the two replacements of 'close'.
9996         * lib/sys_socket.in.h (close): Define to a reminder to include
9997         <unistd.h>.
9998         (_gl_close_fd_maybe_socket): New declaration.
9999         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
10000         * lib/winsock.c (close): Remove undefinition.
10001         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
10002         needed for the gnulib module 'close'.
10003         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
10004         define to an error symbol or to a warning, if suitable.
10005         * lib/close.c: Include <sys/socket.h>.
10006         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
10007         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
10008         UNISTD_H_HAVE_WINSOCK2_H.
10009         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
10010         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
10011         UNISTD_H_HAVE_WINSOCK2_H.
10012         * modules/sys_socket (Files): Add m4/unistd_h.m4.
10013         (configure.ac): Set a module indicator.
10014         (Makefile.am): Substitute GNULIB_CLOSE.
10015         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
10016         * modules/poll-tests (Depends-on): Add close.
10017         * modules/select-tests (Depends-on): Likewise.
10018
10019 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
10020             Bruno Haible  <bruno@clisp.org>
10021
10022         New module 'close'.
10023         * modules/close: New file.
10024         * lib/unistd.in.h (close): Move declaration out of the
10025         FCHDIR_REPLACEMENT scope.
10026         (_gl_unregister_fd): New declaration.
10027         * lib/close.c: New file.
10028         * lib/fchdir.c (rpl_close): Remove function.
10029         * m4/close.m4: New file.
10030         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
10031         close.
10032         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
10033         REPLACE_CLOSE.
10034         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
10035         REPLACE_CLOSE.
10036         * modules/fchdir (Depends-on): Add close.
10037
10038 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
10039             Bruno Haible  <bruno@clisp.org>
10040
10041         * lib/fcntl.in.h (open): Simplify conditionals.
10042         (_gl_register_fd): New declaration.
10043         * lib/fchdir.c (rpl_open): Remove function.
10044         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
10045         also.
10046         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
10047         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
10048         open.
10049
10050 2008-10-09  Jim Meyering  <meyering@redhat.com>
10051
10052         GNUmakefile: use the more name-space-friendly "_version"
10053         * top/GNUmakefile (_dummy): Update.
10054         (_version): Rename from "version".
10055
10056 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
10057             Bruno Haible  <bruno@clisp.org>
10058
10059         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
10060         rpl_close.
10061         (_gl_register_fd): New function, extracted from rpl_open.
10062         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
10063         (rpl_open, rpl_opendir): Use _gl_register_fd.
10064
10065 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
10066
10067         Fix organization of 'open' replacement.
10068         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
10069         (gl_FUNC_OPEN): Use it.
10070         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
10071
10072 2008-10-08  Bruno Haible  <bruno@clisp.org>
10073
10074         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
10075
10076 2008-10-08  Simon Josefsson  <simon@josefsson.org>
10077
10078         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
10079         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
10080         listen).
10081
10082 2008-10-08  Eric Blake  <ebb9@byu.net>
10083
10084         GNUmakefile: add 'make version' target
10085         * top/GNUmakefile (_curr-ver): Split version update rules...
10086         (version): ...into a target.
10087
10088 2008-10-07  Bruno Haible  <bruno@clisp.org>
10089
10090         Use a more portable replacement expression for -0.0L.
10091         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
10092         instead of -0.0L. Fix m4 quotation.
10093
10094         * tests/test-signbit.c: Include <float.h>.
10095         (minus_zero): New variable.
10096         (test_signbitl): Use minus_zero instead of -zero.
10097         * modules/signbit-tests (Depends-on): Add float.
10098
10099         * tests/test-ceill.c: Include <float.h>.
10100         (zero): Remove variable.
10101         (minus_zero): New variable.
10102         (main): Use minus_zero instead of -zero.
10103         * modules/ceill-tests (Depends-on): Add float.
10104
10105         * tests/test-floorl.c: Include <float.h>.
10106         (zero): Remove variable.
10107         (minus_zero): New variable.
10108         (main): Use minus_zero instead of -zero.
10109         * modules/floorl-tests (Depends-on): Add float.
10110
10111         * tests/test-roundl.c: Include <float.h>.
10112         (zero): Remove variable.
10113         (minus_zero): New variable.
10114         (main): Use minus_zero instead of -zero.
10115         * modules/roundl-tests (Depends-on): Add float.
10116
10117         * tests/test-truncl.c: Include <float.h>.
10118         (zero): Remove variable.
10119         (minus_zero): New variable.
10120         (main): Use minus_zero instead of -zero.
10121         * modules/truncl-tests (Depends-on): Add float.
10122
10123         * tests/test-frexpl.c (zero): Remove variable.
10124         (minus_zero): New variable.
10125         (main): Use minus_zero instead of -zero.
10126         * modules/frexpl-tests (Depends-on): Add float.
10127
10128         * tests/test-isnan.c (zerol): Remove variable.
10129         (minus_zerol): New variable.
10130         (test_long_double): Use minus_zerol instead of -zerol.
10131         * modules/isnan-tests (Depends-on): Add float.
10132
10133         * tests/test-isnanl.h (zero): Remove variable.
10134         (minus_zero): New variable.
10135         (main): Use minus_zero instead of -zero.
10136         * modules/isnanl-nolibm-tests (Depends-on): Add float.
10137         * modules/isnanl-tests (Depends-on): Add float.
10138
10139         * tests/test-ldexpl.c (zero): Remove variable.
10140         (minus_zero): New variable.
10141         (main): Use minus_zero instead of -zero.
10142         * modules/ldexpl-tests (Depends-on): Add float.
10143
10144         * tests/test-snprintf-posix.h (zerol): Remove variable.
10145         (minus_zerol): New variable.
10146         (test_function): Use minus_zerol instead of -zerol.
10147         * modules/snprintf-posix-tests (Depends-on): Add float.
10148         * modules/vsnprintf-posix-tests (Depends-on): Add float.
10149
10150         * tests/test-sprintf-posix.h (zerol): Remove variable.
10151         (minus_zerol): New variable.
10152         (test_function): Use minus_zerol instead of -zerol.
10153         * modules/sprintf-posix-tests (Depends-on): Add float.
10154         * modules/vsprintf-posix-tests (Depends-on): Add float.
10155
10156         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
10157         (minus_zerol): New variable.
10158         (test_function): Use minus_zerol instead of -zerol.
10159         * modules/vasnprintf-posix-tests (Depends-on): Add float.
10160
10161         * tests/test-vasprintf-posix.c (zerol): Remove variable.
10162         (minus_zerol): New variable.
10163         (test_function): Use minus_zerol instead of -zerol.
10164         * modules/vasprintf-posix-tests (Depends-on): Add float.
10165
10166 2008-10-07  Simon Josefsson  <simon@josefsson.org>
10167
10168         * MODULES.html.sh (Support for building documentation): Mention
10169         pmccabe2html.  Sort entries.
10170
10171         Add pmccabe2html module, from gnupdf.
10172         * build-aux/pmccabe.css: New file.
10173         * build-aux/pmccabe2html: New file.
10174         * m4/pmccabe2html.m4: New file.
10175         * modules/pmccabe2html: New file.
10176
10177 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
10178
10179         flock: new module
10180         * MODULES.html.sh: Add to list of modules.
10181         * lib/flock.c: flock implementation for Windows and Unix systems
10182         which have fcntl.
10183         * doc/glibc-functions/flock.texi: Update documentation.
10184         * lib/sys_file.in.h: <sys/file.h> header file.
10185         * m4/flock.m4: M4 macros.
10186         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
10187         * modules/flock: flock module.
10188         * modules/flock-tests: flock tests module.
10189         * modules/sys_file: sys/file.h module.
10190         * tests/test-flock.c: test suite for flock.
10191
10192 2008-10-06  Jim Meyering  <meyering@redhat.com>
10193
10194         bootstrap: check for LT_INIT more portably still ;-)
10195         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
10196         Spotted by Bruno Haible.
10197
10198 2008-10-06  Eric Blake  <ebb9@byu.net>
10199
10200         test-signbit: avoid tripping Irix cc bug on -0.0L
10201         * tests/test-signbit.c (minus_zerol): Delete, and replace with
10202         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
10203         entire testsuite consistent and avoids an Irix 6.2 bug.
10204
10205 2008-10-05  Bruno Haible  <bruno@clisp.org>
10206             Jim Meyering  <jim@meyering.net>
10207
10208         Add an option for ignoring EPIPE during close_stdout.
10209         * lib/closeout.h: Include <stdbool.h>.
10210         (close_stdout_set_ignore_EPIPE): New declaration.
10211         * lib/closeout.c: Include <stdbool.h>.
10212         (ignore_EPIPE): New variable.
10213         (close_stdout_set_ignore_EPIPE): New function.
10214         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
10215         * lib/close-stream.c (close_stream): Mention the possible EPIPE
10216         failure.
10217         * modules/closeout (Depends-on): Add stdbool.
10218
10219 2008-10-05  Bruno Haible  <bruno@clisp.org>
10220
10221         * modules/accept: New file.
10222         * modules/bind: New file.
10223         * modules/connect: New file.
10224         * modules/getpeername: New file.
10225         * modules/getsockname: New file.
10226         * modules/getsockopt: New file.
10227         * modules/listen: New file.
10228         * modules/recv: New file.
10229         * modules/recvfrom: New file.
10230         * modules/send: New file.
10231         * modules/sendto: New file.
10232         * modules/setsockopt: New file.
10233         * modules/socket: New file.
10234         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
10235         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
10236         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
10237         the particular module is requested. Add a link warning when the
10238         particular module is not requested.
10239         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
10240         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
10241         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
10242         the particular module is requested.
10243         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
10244         gl_SYS_SOCKET_H_DEFAULTS): New macros.
10245         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
10246         * modules/sys_socket (Depends-on): Add link-warning.
10247         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
10248         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
10249         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
10250         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
10251         GL_LINK_WARNING.
10252         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
10253         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
10254         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
10255         * doc/posix-functions/getpeername.texi: Mention the new module
10256         'getpeername'.
10257         * doc/posix-functions/getsockname.texi: Mention the new module
10258         'getsockname'.
10259         * doc/posix-functions/getsockopt.texi: Mention the new module
10260         'getsockopt'.
10261         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
10262         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
10263         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
10264         * doc/posix-functions/send.texi: Mention the new module 'send'.
10265         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
10266         * doc/posix-functions/setsockopt.texi: Mention the new module
10267         'setsockopt'.
10268         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
10269         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
10270         listen, connect, accept.
10271         * modules/select-tests (Depends-on): Likewise.
10272
10273 2008-10-05  Bruno Haible  <bruno@clisp.org>
10274
10275         * lib/winsock.c (strerror): Remove unused #undef.
10276         (rpl_close): Remove unused local variable.
10277
10278         * modules/sys_socket (Depends-on); Add errno.
10279
10280 2008-10-05  Bruno Haible  <bruno@clisp.org>
10281
10282         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
10283         (select): Add a link warning when the 'select' module is not used.
10284         * modules/sys_select (Depends-on): Add link-warning.
10285         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
10286         Suggested by Paolo Bonzini.
10287
10288 2008-10-05  Jim Meyering  <meyering@redhat.com>
10289
10290         bootstrap: check for LT_INIT more portably
10291         * build-aux/bootstrap: Avoid using grep -E, since it's not
10292         portable enough.  Suggestion from Bruno Haible.
10293
10294 2008-10-05  Bruno Haible  <bruno@clisp.org>
10295
10296         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
10297         as being fixed by gnulib.
10298
10299 2008-10-05  Bruno Haible  <bruno@clisp.org>
10300
10301         * modules/select-tests: New file, mostly copied from
10302         modules/sys_select-tests.
10303         * tests/test-select.c: New file, mostly copied from
10304         tests/test-sys_select.c.
10305         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
10306         * modules/sys_select-tests (Depends-on): Remove all dependencies.
10307         (Makefile.am): Remove test_sys_select_LDADD.
10308
10309         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
10310         to an undefined symbol, for an error message.
10311         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
10312         (gl_SYS_SELECT_H_DEFAULTS): New macro.
10313         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
10314         winsock-select.c here.
10315         * modules/sys_select (Files): Remove lib/winsock-select.c.
10316         (Depends-on): Remove alloca.
10317         (Makefile.am): Substitute GNULIB_SELECT.
10318         * modules/select: New file.
10319         * doc/posix-functions/select.texi: Update.
10320
10321 2008-10-05  Bruno Haible  <bruno@clisp.org>
10322
10323         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
10324         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
10325         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
10326         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
10327         getdtablesize.
10328         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
10329         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
10330
10331 2008-10-05  Bruno Haible  <bruno@clisp.org>
10332
10333         * modules/getdtablesize-tests: New file.
10334         * tests/test-getdtablesize.c: New file.
10335
10336         New module 'getdtablesize'.
10337         * lib/unistd.in.h (getdtablesize): New declaration.
10338         * lib/getdtablesize.c: New file.
10339         * m4/getdtablesize.m4: New file.
10340         * modules/getdtablesize: New file.
10341         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
10342         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
10343         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
10344         HAVE_GETDTABLESIZE.
10345         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
10346
10347 2008-10-05  Bruno Haible  <bruno@clisp.org>
10348
10349         * modules/sched (Makefile.am): Fix typo.
10350         Reported by Simon Josefsson.
10351
10352 2008-10-05  Jim Meyering  <meyering@redhat.com>
10353
10354         bootstrap: check for LT_INIT, too
10355         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
10356         are deprecated.  Suggestion from Ralf Wildenhues.
10357
10358 2008-10-05  Bruno Haible  <bruno@clisp.org>
10359
10360         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
10361         overriding them by ours.
10362         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
10363
10364 2008-10-05  Jim Meyering  <meyering@redhat.com>
10365
10366         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
10367         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
10368         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
10369
10370 2008-10-04  Bruno Haible  <bruno@clisp.org>
10371
10372         * modules/dup2 (License): Change to LGPLv2+.
10373         * modules/sleep (License): Likewise.
10374         * modules/perror (License): Likewise.
10375         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
10376         Blake.
10377         * modules/signal (License): Likewise.
10378         * modules/sigprocmask (License): Likewise.
10379         * modules/raise (License): Change to LGPLv2+, with approval by Jim
10380         Meyering.
10381
10382 2008-10-04  Bruno Haible  <bruno@clisp.org>
10383
10384         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
10385         Reported by Rainer Tammer <tammer@tammer.net>.
10386
10387 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
10388             Bruno Haible  <bruno@clisp.org>
10389
10390         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
10391         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
10392         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
10393
10394 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
10395
10396         filevercmp: new module
10397         * lib/filevercmp.h: New function filevercmp comparing version strings.
10398         * lib/filevercmp.c: Implementation of filevercmp function.
10399         * modules/filevercmp: Module metadata.
10400         * tests/test-filevercmp.c: Unit test for new module.
10401         * modules/filevercmp-tests: Unit test metadata.
10402         * MODULES.html.sh: Add filevercmp module.
10403
10404 2008-10-03  Bruno Haible  <bruno@clisp.org>
10405
10406         * lib/c-ctype.h: Add comment.
10407         Reported by Jim Meyering.
10408
10409 2008-10-02  Bruno Haible  <bruno@clisp.org>
10410
10411         * modules/posix_spawn-internal (Depends-on): Add 'open'.
10412
10413 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
10414
10415         * build-aux/bootstrap: Allow renaming bootstrap, and change the
10416         name of bootstrap.conf accordingly.
10417
10418 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
10419
10420         * build-aux/bootstrap: Install git-merge-changelog configuration
10421         items into .gitconfig if needed.
10422
10423 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
10424
10425         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
10426         git repository, and initialize/update it accordingly.
10427
10428 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
10429
10430         * modules/fsync-tests: New file.
10431         * tests/test-fsync.c: New file.
10432
10433         New module 'fsync'.
10434         * lib/fsync.c: New file.
10435         * m4/fsync.m4: New file.
10436         * modules/fsync: New file.
10437         * lib/unistd.in.h (fsync): New declaration.
10438         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
10439         GNULIB_FSYNC and HAVE_FSYNC.
10440         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
10441         * MODULES.html.sh (posix_functions): Add fsync.
10442         * doc/posix-functions/fsync.texi: Mention the new module.
10443
10444 2008-10-02  Jim Meyering  <meyering@redhat.com>
10445
10446         fts.c: sync with similar code from coreutils' remove.c
10447         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
10448         Guard also with "#if defined __linux__", since for now at least,
10449         this code is Linux-kernel-specific.
10450
10451 2008-10-02  Jim Meyering  <meyering@redhat.com>
10452
10453         fts: bug fixes
10454         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
10455         Include <sys/vfs.h>, not <sys/statfs.h>.
10456
10457         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
10458         Include <sys/vfs.h>, not <sys/statfs.h>.
10459
10460 2008-10-01  Bruno Haible  <bruno@clisp.org>
10461
10462         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
10463         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
10464         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
10465         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
10466         * doc/posix-functions/posix_spawnp.texi: Likewise.
10467         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
10468         whether posix_spawn actually works.
10469         * m4/pipe.m4 (gl_PIPE): Likewise.
10470         * modules/execute (Files): Add m4/posix_spawn.m4.
10471         * modules/pipe (Files): Add m4/posix_spawn.m4.
10472         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
10473
10474 2008-10-01  Jim Meyering  <meyering@redhat.com>
10475
10476         remove trailing spaces
10477         * NEWS: Likewise.
10478         * lib/poll.c (poll): Likewise.
10479         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
10480         * lib/winsock.c (rpl_close): Likewise.
10481         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
10482         * modules/yield: Likewise.
10483         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
10484         * tests/test-sys_select.c (connect_to_socket): Likewise.
10485
10486         fts.c: adjust a new interface to be more generally useful
10487         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
10488         (fts_build): Adjust caller.
10489
10490 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10491
10492         * modules/cond-tests: New file.
10493         * tests/test-cond.c: New file.
10494
10495 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10496             Bruno Haible  <bruno@clisp.org>
10497
10498         * modules/cond (Dependencies): Add errno, time.
10499         * lib/glthread/cond.h: Include <time.h>.
10500         (gl_cond_define, gl_cond_define_initialized): Use the same definition
10501         across platforms.
10502
10503 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10504             Bruno Haible  <bruno@clisp.org>
10505
10506         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
10507
10508 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10509             Bruno Haible  <bruno@clisp.org>
10510
10511         * modules/tls-tests (Depends-on): Add thread, yield.
10512         (configure.ac): Remove all checks.
10513         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
10514         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
10515         gl_thread_self): Remove definitions. Include glthread/thread.h and
10516         glthread/yield.h instead.
10517         (test_tls): Pass an additional NULL argument to gl_thread_join.
10518
10519 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10520             Bruno Haible  <bruno@clisp.org>
10521
10522         * modules/lock-tests (Depends-on): Add thread, yield.
10523         (configure.ac): Remove all checks.
10524         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
10525         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
10526         gl_thread_self): Remove definitions. Include glthread/thread.h and
10527         glthread/yield.h instead.
10528         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
10529         additional NULL argument to gl_thread_join.
10530
10531 2008-09-30  Bruno Haible  <bruno@clisp.org>
10532
10533         Fix the Win32 implementation of the 'thread' module.
10534         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
10535         pointer type.
10536         (gl_thread_self): Invoke gl_thread_self_func.
10537         (gl_thread_self_func): New declaration.
10538         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
10539         (do_init_self_key, init_self_key): New functions.
10540         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
10541         Remove some fields.
10542         (running_threads, running_lock): Remove variables.
10543         (get_current_thread_handle): New function.
10544         (gl_thread_self_func, wrapper_func, glthread_create_func,
10545         glthread_join_func, gl_thread_exit_func): Largely rewritten and
10546         simplified.
10547
10548 2008-09-30  Bruno Haible  <bruno@clisp.org>
10549
10550         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
10551         files.
10552
10553 2008-09-30  Jim Meyering  <meyering@redhat.com>
10554
10555         fts.m4: correct the test for statfs.f_type
10556         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
10557         when checking for statfs.f_type.
10558
10559 2008-09-15  Simon Josefsson  <simon@josefsson.org>
10560
10561         tests: avoid some compiler warnings
10562         * tests/test-memchr.c (main): Pass NULL indirectly.
10563         * tests/test-getdate.c (main): Remove unused variable 'ret'.
10564
10565 2008-09-29  OndÅ™ej Vašík  <ovasik@redhat.com>
10566
10567         getdate.y: disallow countable dayshifts like "4 yesterday ago"
10568         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
10569         exactly specified dayshifts.
10570         (dayshift): New rule.
10571         (rel): Add dayshift.
10572         (relative_time_table) [tomorrow, yesterday, today, now]:
10573         Use tDAY_SHIFT in place of tDAY_UNIT.
10574         * tests/test-getdate.c: Add tests for now-disallowed countable
10575         dayshifts, e.g., "4 yesterday ago".
10576
10577 2008-09-29  Bruno Haible  <bruno@clisp.org>
10578
10579         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
10580         * tests/test-posix_spawn1.in.sh: Renamed from
10581         tests/test-posix_spawn.in.sh.
10582         * tests/test-posix_spawn2.c: New file.
10583         * tests/test-posix_spawn2.in.sh: New file.
10584         * modules/posix_spawnp-tests (Files): Update.
10585         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
10586
10587 2008-09-29  Bruno Haible  <bruno@clisp.org>
10588
10589         Propagate effects of putenv/setenv/unsetenv to child processes.
10590         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
10591         * lib/pipe.c (create_pipe): Likewise.
10592
10593 2008-09-29  Bruno Haible  <bruno@clisp.org>
10594
10595         Enable use of shell scripts as executables in mingw.
10596         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
10597         run the program as a shell script.
10598         * lib/pipe.c (create_pipe): Likewise.
10599         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
10600         resulting array.
10601
10602 2008-09-29  Eric Blake  <ebb9@byu.net>
10603
10604         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
10605
10606 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
10607
10608         * doc/posix-functions/accept.texi: Update mingw problems.
10609         * doc/posix-functions/bind.texi: Update mingw problems.
10610         * doc/posix-functions/close.texi: Update mingw problems.
10611         * doc/posix-functions/connect.texi: Update mingw problems.
10612         * doc/posix-functions/getpeername.texi: Update mingw problems.
10613         * doc/posix-functions/getsockname.texi: Update mingw problems.
10614         * doc/posix-functions/getsockopt.texi: Update mingw problems.
10615         * doc/posix-functions/ioctl.texi: Update mingw problems.
10616         * doc/posix-functions/listen.texi: Update mingw problems.
10617         * doc/posix-functions/recv.texi: Update mingw problems.
10618         * doc/posix-functions/recvfrom.texi: Update mingw problems.
10619         * doc/posix-functions/select.texi: Update mingw problems.
10620         * doc/posix-functions/send.texi: Update mingw problems.
10621         * doc/posix-functions/sendto.texi: Update mingw problems.
10622         * doc/posix-functions/setsockopt.texi: Update mingw problems.
10623         * doc/posix-functions/socket.texi: Update mingw problems.
10624
10625 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
10626             Bruno Haible  <bruno@clisp.org>
10627
10628         * lib/sys_select.in.h: Include sys/time.h.
10629         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
10630         * modules/sys_select: Depend on sys_time.
10631         * tests/test-sys_select.c: Test that sys/select.h defines struct
10632         timeval fully.
10633
10634 2008-09-29  Bruno Haible  <bruno@clisp.org>
10635
10636         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
10637         * lib/sys_select.in.h: Likewise.
10638
10639 2008-09-29  Bruno Haible  <bruno@clisp.org>
10640
10641         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
10642
10643 2008-09-29  Bruno Haible  <bruno@clisp.org>
10644
10645         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
10646         Set LIBSOCKET instead of augmenting LIBS.
10647         * modules/sockets (Link): New section.
10648         * modules/sockets-tests (test_sockets_LDADD): New variable.
10649         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
10650         * modules/poll-tests (test_poll_LDADD): New variable.
10651         * NEWS: Document the change.
10652
10653 2008-09-29  Bruno Haible  <bruno@clisp.org>
10654
10655         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
10656         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
10657         ARPA_INET_H directly.
10658         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
10659
10660 2008-09-28  Bruno Haible  <bruno@clisp.org>
10661
10662         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
10663         from gl_HEADER_SYS_SOCKET.
10664         (gl_HEADER_SYS_SOCKET): Invoke it.
10665         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
10666
10667 2008-09-28  Bruno Haible  <bruno@clisp.org>
10668
10669         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
10670         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
10671         Needed on OSF/1 4.0.
10672
10673 2008-09-28  Bruno Haible  <bruno@clisp.org>
10674
10675         Override open more carefully.
10676         * lib/open.c (orig_open): New function.
10677         (rpl_open): Use orig_open instead of open.
10678         * lib/fcntl.in.h: Add special invocation convention.
10679         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
10680         (gl_FUNC_OPEN): Invoke it.
10681
10682         Override freopen more carefully.
10683         * lib/freopen.c (orig_freopen): New function.
10684         (rpl_freopen): Use orig_freopen instead of freopen.
10685         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
10686         (gl_FUNC_FREOPEN): Invoke it.
10687
10688         Override fopen more carefully.
10689         * lib/fopen.c (orig_fopen): New function.
10690         (rpl_fopen): Use orig_fopen instead of fopen.
10691         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
10692         (gl_FUNC_FOPEN): Invoke it.
10693         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
10694
10695 2008-09-28  Bruno Haible  <bruno@clisp.org>
10696
10697         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
10698         SIGPIPE.
10699
10700 2008-09-28  Bruno Haible  <bruno@clisp.org>
10701
10702         * tests/test-sigaction.c (handler, main): Disable the check whether
10703         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
10704         glibc systems with LinuxThreads.
10705
10706 2008-09-28  Bruno Haible  <bruno@clisp.org>
10707
10708         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
10709
10710         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
10711         with AIX xlc.
10712         * lib/fcntl.in.h (open): Likewise.
10713         Reported by Rainer Tammer <tammer@tammer.net>.
10714
10715 2008-09-28  Bruno Haible  <bruno@clisp.org>
10716
10717         * modules/posix_spawnp-tests: New file.
10718         * tests/test-posix_spawn.c: New file.
10719         * tests/test-posix_spawn.in.sh: New file.
10720
10721         New module 'posix_spawnp'.
10722         * modules/posix_spawnp: New file.
10723         * lib/spawnp.c: New file, from GNU libc with modifications.
10724         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
10725
10726         New module 'posix_spawn'.
10727         * modules/posix_spawn: New file.
10728         * lib/spawn.c: New file, from GNU libc with modifications.
10729         * doc/posix-functions/posix_spawn.texi: Mention the new module.
10730
10731         New module 'posix_spawnattr_destroy'.
10732         * modules/posix_spawnattr_destroy: New file.
10733         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
10734         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
10735         module.
10736
10737         New module 'posix_spawnattr_setsigmask'.
10738         * modules/posix_spawnattr_setsigmask: New file.
10739         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
10740         modifications.
10741         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
10742         new module.
10743
10744         New module 'posix_spawnattr_getsigmask'.
10745         * modules/posix_spawnattr_getsigmask: New file.
10746         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
10747         modifications.
10748         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
10749         new module.
10750
10751         New module 'posix_spawnattr_setsigdefault'.
10752         * modules/posix_spawnattr_setsigdefault: New file.
10753         * lib/spawnattr_setdefault.c: New file, from GNU libc with
10754         modifications.
10755         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
10756         new module.
10757
10758         New module 'posix_spawnattr_getsigdefault'.
10759         * modules/posix_spawnattr_getsigdefault: New file.
10760         * lib/spawnattr_getdefault.c: New file, from GNU libc with
10761         modifications.
10762         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
10763         new module.
10764
10765         New module 'posix_spawnattr_setschedpolicy'.
10766         * modules/posix_spawnattr_setschedpolicy: New file.
10767         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
10768         modifications.
10769         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
10770         new module.
10771
10772         New module 'posix_spawnattr_getschedpolicy'.
10773         * modules/posix_spawnattr_getschedpolicy: New file.
10774         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
10775         modifications.
10776         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
10777         new module.
10778
10779         New module 'posix_spawnattr_setschedparam'.
10780         * modules/posix_spawnattr_setschedparam: New file.
10781         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
10782         modifications.
10783         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
10784         new module.
10785
10786         New module 'posix_spawnattr_getschedparam'.
10787         * modules/posix_spawnattr_getschedparam: New file.
10788         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
10789         modifications.
10790         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
10791         new module.
10792
10793         New module 'posix_spawnattr_setpgroup'.
10794         * modules/posix_spawnattr_setpgroup: New file.
10795         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
10796         modifications.
10797         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
10798         module.
10799
10800         New module 'posix_spawnattr_getpgroup'.
10801         * modules/posix_spawnattr_getpgroup: New file.
10802         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
10803         modifications.
10804         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
10805         module.
10806
10807         New module 'posix_spawnattr_setflags'.
10808         * modules/posix_spawnattr_setflags: New file.
10809         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
10810         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
10811         module.
10812
10813         New module 'posix_spawnattr_getflags'.
10814         * modules/posix_spawnattr_getflags: New file.
10815         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
10816         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
10817         module.
10818
10819         New module 'posix_spawnattr_init'.
10820         * modules/posix_spawnattr_init: New file.
10821         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
10822         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
10823         module.
10824
10825         New module 'posix_spawn_file_actions_destroy'.
10826         * modules/posix_spawn_file_actions_destroy: New file.
10827         * lib/spawn_faction_destroy.c: New file, from GNU libc with
10828         modifications.
10829         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
10830         the new module.
10831
10832         New module 'posix_spawn_file_actions_addopen'.
10833         * modules/posix_spawn_file_actions_addopen: New file.
10834         * lib/spawn_faction_addopen.c: New file, from GNU libc with
10835         modifications.
10836         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
10837         the new module.
10838
10839         New module 'posix_spawn_file_actions_adddup2'.
10840         * modules/posix_spawn_file_actions_adddup2: New file.
10841         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
10842         modifications.
10843         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
10844         the new module.
10845
10846         New module 'posix_spawn_file_actions_addclose'.
10847         * modules/posix_spawn_file_actions_addclose: New file.
10848         * lib/spawn_faction_addclose.c: New file, from GNU libc with
10849         modifications.
10850         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
10851         the new module.
10852
10853         New module 'posix_spawn_file_actions_init'.
10854         * modules/posix_spawn_file_actions_init: New file.
10855         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
10856         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
10857         new module.
10858
10859         New module 'posix_spawn-internal'.
10860         * modules/posix_spawn-internal: New file.
10861         * lib/spawn_int.h: New file, from GNU libc with modifications.
10862         * lib/spawni.c: New file, from GNU libc with modifications.
10863         * m4/posix_spawn.m4: New file.
10864
10865         New module 'spawn'.
10866         * modules/spawn: New file.
10867         * lib/spawn.in.h: New file, from GNU libc with modifications.
10868         * m4/spawn_h.m4: New file.
10869         * doc/posix-headers/spawn.texi: Mention the new module.
10870
10871 2008-09-28  Bruno Haible  <bruno@clisp.org>
10872
10873         * modules/sched-tests: New file.
10874         * tests/test-sched.c: New file.
10875
10876         New module 'sched'.
10877         * modules/sched: New file.
10878         * lib/sched.in.h: New file.
10879         * m4/sched_h.m4: New file.
10880         * doc/posix-headers/sched.texi: Mention the new module.
10881
10882 2008-09-27  Eric Blake  <ebb9@byu.net>
10883
10884         Fix previous patch, and tweak references to $0.
10885         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
10886         (func_version, func_gnulib_dir): Don't call this program
10887         gnulib-tool.
10888         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
10889         with using $0 in function.
10890         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
10891         (func_fatal_error): Reuse the name the user invoked us with.
10892
10893 2008-09-27  Bruno Haible  <bruno@clisp.org>
10894
10895         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
10896         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
10897         (gl_ICONV_H): Not here.
10898         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
10899         instead of assigning ICONV_H directly.
10900
10901         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
10902         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
10903         WCHAR_H directly.
10904
10905 2008-09-27  Bruno Haible  <bruno@clisp.org>
10906
10907         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
10908         * modules/arpa_inet (Depends-on): Add link-warning.
10909         (Makefile.am): Insert the definition of GL_LINK-WARNING.
10910         * modules/unistd (Makefile.am): Likewise.
10911
10912 2008-09-26  Bruno Haible  <bruno@clisp.org>
10913
10914         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
10915         variables.
10916         (func_version): Essentially copied from gnulib-tool.
10917         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
10918         func_readlink): Copied from gnulib-tool.
10919
10920 2008-09-26  Bruno Haible  <bruno@clisp.org>
10921
10922         * gnulib-tool (func_version): Change directory to $gnulib_dir before
10923         invoking git-version-gen.
10924
10925 2008-09-26  Bruno Haible  <bruno@clisp.org>
10926
10927         * posix-modules: Update to directory names changed on 2008-01-19.
10928         Remove commas in output before splitting into words. No more need to
10929         avoid 'ftruncate' since 2007-02-19.
10930
10931 2008-09-26  Bruno Haible  <bruno@clisp.org>
10932
10933         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
10934
10935 2008-09-26  Bruno Haible  <bruno@clisp.org>
10936
10937         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
10938         * modules/fwriteerror (Depends-on): Add errno.
10939
10940 2008-09-26  Bruno Haible  <bruno@clisp.org>
10941
10942         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
10943         * tests/test-vc-list-files-cvs.sh: Likewise.
10944
10945 2008-09-26  Bruno Haible  <bruno@clisp.org>
10946
10947         * doc/posix-headers/sys_resource.texi: Reorder items.
10948
10949 2008-09-26  Jim Meyering  <meyering@redhat.com>
10950
10951         fts: tweak inode comparison function
10952         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
10953         inode numbers, as documented.
10954
10955         fts: sort dirent entries on inode number before traversing
10956         This avoids a quadratic, seek-related performance penalty when
10957         operating on a directory containing many entries (measurable at 10k;
10958         3.5 hours at 2 million entries with a cold cache) on certain types
10959         of file systems, including ext3 and ext4, but not tmpfs.
10960         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
10961         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
10962         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
10963         (fs_handles_readdir_ordered_dirents_efficiently): New function.
10964         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
10965         (fts_build): Set the stat.st_ino member from D_INO.
10966         If it is likely to be useful, sort dirent entries on inode number.
10967
10968         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
10969         and the struct statfs.f_type member.
10970         * modules/fts (Depends-on): Add d-ino.
10971
10972 2008-09-26  Bruno Haible  <bruno@clisp.org>
10973
10974         * modules/sigpipe-die (Depends-on): Add sigpipe.
10975
10976         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
10977         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
10978         and GNULIB_STDIO_H_SIGPIPE are set.
10979         * lib/stdio-write.c: New file.
10980         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
10981         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
10982         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
10983         REPLACE_STDIO_WRITE_FUNCS.
10984         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
10985         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
10986         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
10987         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
10988         * modules/stdio (Files): Add lib/stdio-write.c.
10989         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
10990         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
10991         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
10992         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
10993         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
10994         REPLACE_FPRINTF_POSIX.
10995         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
10996         REPLACE_PRINTF_POSIX.
10997         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
10998         REPLACE_VFPRINTF_POSIX.
10999         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
11000         REPLACE_VPRINTF_POSIX.
11001         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
11002         SIGPIPE issue.
11003         * doc/posix-functions/fputc.texi: Likewise.
11004         * doc/posix-functions/fputs.texi: Likewise.
11005         * doc/posix-functions/fwrite.texi: Likewise.
11006         * doc/posix-functions/printf.texi: Likewise.
11007         * doc/posix-functions/putc.texi: Likewise.
11008         * doc/posix-functions/putchar.texi: Likewise.
11009         * doc/posix-functions/puts.texi: Likewise.
11010         * doc/posix-functions/vfprintf.texi: Likewise.
11011         * doc/posix-functions/vprintf.texi: Likewise.
11012
11013         * modules/safe-write (Depends-on): Add write.
11014
11015         * modules/sigpipe-tests: New file.
11016         * tests/test-sigpipe.c: New file.
11017         * tests/test-sigpipe.sh: New file.
11018
11019         * modules/write: New file.
11020         * lib/unistd.in.h: Include <sys/types.h>.
11021         (write): New declaration.
11022         * lib/write.c: New file.
11023         * m4/write.m4: New file.
11024         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
11025         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
11026         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
11027         GNULIB_WRITE, REPLACE_WRITE.
11028         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
11029         and the SIGPIPE issue.
11030
11031         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
11032         (raise): New declaration.
11033         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
11034         (ext_signal): New function.
11035         (rpl_raise): New function.
11036         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
11037         GNULIB_SIGNAL_H_SIGPIPE.
11038         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
11039         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
11040
11041         * modules/sigpipe: New file.
11042         * m4/sigpipe.m4: New file.
11043
11044 2008-09-25  Derek Price  <derek@ximbiot.com>
11045             Bruno Haible  <bruno@clisp.org>
11046
11047         * gnulib-tool (func_import): Report all license incompatibilities, not
11048         just the first one.
11049
11050 2008-09-25  Bruno Haible  <bruno@clisp.org>
11051
11052         * gnulib-tool (func_import): When computing the edits, consider not
11053         only the Makefile.ams that exist but also those that will be generated.
11054
11055 2008-09-25  Simon Josefsson  <simon@josefsson.org>
11056
11057         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
11058         fixes gnulib-tool --test warning about duplicate dependency.
11059
11060 2008-09-25  Bruno Haible  <bruno@clisp.org>
11061
11062         * gnulib-tool: Don't ask the user to perform edits in the generated
11063         Makefile.ams.
11064         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
11065         apply to the Makefile.am being generated.
11066         (func_emit_tests_Makefile_am): Execute edits that apply to the
11067         Makefile.am being generated.
11068         (func_import): Setup list of Makefile.am edits before emitting the
11069         Makefile.ams, not at the end.
11070         (func_create_testdir): Update.
11071         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
11072
11073 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11074
11075         * gnulib-tool (func_import): Store the --tests-base option in the
11076         comment in gnulib-cache.m4.
11077
11078 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
11079
11080         * NEWS: Document increased portability that sys_select now provides.
11081
11082         * lib/sys_select.in.h: Install select wrapper.
11083         * lib/sys_socket.in.h: Use more descriptive name when there is no
11084         select wrapper.
11085         * lib/winsock-select.c: New.
11086         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
11087         Require gl_HEADER_SYS_SOCKET.
11088         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
11089         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
11090         * tests/test-sys_select.c: Add functional tests.
11091
11092 2008-09-24  Eric Blake  <ebb9@byu.net>
11093
11094         open, fopen: close fd leak in last patch
11095         * lib/open.c (rpl_open): Close fd before returning error.
11096         * lib/fopen.c (rpl_fopen): Close fd before returning error.
11097         * doc/posix-functions/open.texi (open): Document that Irix also
11098         has the bug.
11099         * doc/posix-functions/fopen.texi (fopen): Likewise.
11100         Reported by Paolo Bonzini.
11101
11102 2008-09-24  Bruno Haible  <bruno@clisp.org>
11103
11104         Ensure that a filename ending in a slash cannot be used to access a
11105         non-directory.
11106         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
11107         to check whether it's really a directory.
11108         * lib/fopen.c: Include fcntl.h, unistd.h.
11109         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
11110         and fdopen().
11111         * modules/fopen (Depends-on): Add unistd.
11112         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
11113         * tests/test-fopen.c (main): Likewise.
11114         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
11115         * doc/posix-functions/fopen.texi: Likewise.
11116         Reported by Eric Blake.
11117
11118 2008-09-23  Eric Blake  <ebb9@byu.net>
11119
11120         c-stack: avoid compiler optimizations when provoking overflow
11121         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
11122         recursion harder to optimize, to ensure a stack overflow occurs.
11123         * tests/test-c-stack.c (recurse): Likewise.
11124         Borrowed from libsigsegv.
11125
11126         c-stack: work around Irix sigaltstack bug
11127         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
11128         whether sigaltstack uses wrong end of stack_t (copied in part from
11129         libsigsegv).
11130         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
11131         Irix bug, without requiring an over-allocation.
11132         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
11133         bug.
11134
11135         fopen: document mingw bug on directories
11136         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
11137         not allowing a stream visiting a directory, even though reading
11138         from such a stream is not portable.
11139
11140 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
11141
11142         * lib/poll.c: Rewrite.
11143         * modules/poll: Depend on alloca.
11144
11145 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
11146
11147         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
11148         instead define prototypes for a full set of wrappers.  Ensure
11149         that Cygwin does not use the compatibility code, which is only
11150         for MinGW.
11151         * lib/winsock.c: New.
11152         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
11153         * modules/sys_socket: Add lib/winsock.c.
11154
11155         * modules/poll-tests: Add errno and perror.
11156         * tests/test-poll.c: Use ioctl, not ioctlsocket.
11157
11158 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
11159
11160         * tests/test-poll.c: Downgrade minimum needed Winsock version.
11161
11162 2008-09-23  Bruno Haible  <bruno@clisp.org>
11163
11164         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
11165         * doc/glibc-functions/*: Likewise.
11166
11167 2008-09-23  Simon Josefsson  <simon@josefsson.org>
11168
11169         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
11170         success.
11171
11172 2008-09-22  Eric Blake  <ebb9@byu.net>
11173             Bruno Haible  <bruno@clisp.org>
11174
11175         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
11176         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
11177         supply %A but mishandle pseudo-NaN.
11178         Reported by Simon Josefsson.
11179
11180 2008-09-21  Bruno Haible  <bruno@clisp.org>
11181
11182         * tests/test-lock.c (main): Tweak skip message.
11183         * tests/test-tls.c (main): Likewise.
11184
11185 2008-09-21  Bruno Haible  <bruno@clisp.org>
11186
11187         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
11188         whether 'struct sigaction' has sa_sigaction here...
11189         (gl_PREREQ_SIG_HANDLER_H): ... not here.
11190         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
11191
11192 2008-09-21  Bruno Haible  <bruno@clisp.org>
11193
11194         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
11195         section.
11196         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
11197         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
11198         the new section.
11199         (Support for obsolete systems lacking POSIX:2001): New section.
11200         (String handling <string.h>): Move strdup to the new section.
11201         Suggested by Simon Josefsson and Paolo Bonzini.
11202
11203 2008-09-21  Bruno Haible  <bruno@clisp.org>
11204
11205         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
11206         exponents in %e and %g results on 'long double'. Needed for mingw's
11207         improved *printf functions.
11208         * tests/test-vasprintf-posix.c (test_function): Likewise.
11209         * tests/test-snprintf-posix.h (test_function): Likewise.
11210         * tests/test-sprintf-posix.h (test_function): Likewise.
11211         Reported by Eric Blake.
11212
11213 2008-09-21  Bruno Haible  <bruno@clisp.org>
11214
11215         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
11216         * tests/test-sprintf-posix.h (test_function): Likewise.
11217
11218 2008-09-21  Bruno Haible  <bruno@clisp.org>
11219
11220         * modules/getpass (Depends-on): Add strdup-posix.
11221
11222         New module 'strdup-posix'.
11223         * modules/strdup-posix: New file.
11224         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
11225         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
11226         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
11227         REPLACE_STRDUP.
11228         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
11229         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
11230         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11231         strdup-posix.
11232
11233         * modules/strdup (Depends-on): Remove malloc-posix.
11234
11235 2008-09-20  Bruno Haible  <bruno@clisp.org>
11236
11237         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
11238         Wildenhues.
11239
11240 2008-09-20  Bruno Haible  <bruno@clisp.org>
11241
11242         Ensure that wint_t gets defined on IRIX 5.3.
11243         * lib/wchar.in.h (wint_t): Define if not defined by the system.
11244         * lib/wctype.in.h (wint_t): Likewise.
11245         (__wctype_wint_t): Remove type.
11246         (isw*): Use wint_t instead of __wctype_wint_t.
11247         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
11248         * modules/wchar (Files): Add m4/wint_t.m4.
11249         (Makefile.am): Substitute HAVE_WINT_T.
11250         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
11251         * tests/test-wctype.c: Check that wint_t is defined.
11252         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
11253         * doc/posix-headers/wctype.texi: Likewise.
11254         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
11255
11256 2008-09-18  Bruno Haible  <bruno@clisp.org>
11257
11258         * gnulib-tool (func_exit): Update comment.
11259
11260 2008-09-18  Simon Josefsson  <simon@josefsson.org>
11261
11262         * modules/getaddrinfo (Depends-on): Remove strdup, this module
11263         assumes strdup exists and does not depend on strdup to return
11264         ENOMEM on out of memory conditions.
11265
11266 2008-09-18  Bruno Haible  <bruno@clisp.org>
11267
11268         * lib/vasnprintf.c (VASNPRINTF): When printing Â±0.0L in
11269         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
11270         digits for the exponent.
11271
11272 2008-09-18  Jim Meyering  <meyering@redhat.com>
11273             Bruno Haible  <bruno@clisp.org>
11274
11275         * lib/vasnprintf.c (decimal_point_char): Define also if
11276         NEED_PRINTF_INFINITE_LONG_DOUBLE.
11277
11278 2008-09-16  Bruno Haible  <bruno@clisp.org>
11279         and Eric Blake  <ebb9@byu.net>
11280
11281         vasnprintf: support Irix 5.3
11282         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
11283         that mishandle long double infinity.
11284         Reported by Tom G. Christensen.
11285
11286 2008-09-16  Bruno Haible  <bruno@clisp.org>
11287
11288         * doc/glibc-functions/scandir.texi: Mention the function is missing on
11289         Solaris 9.
11290         * doc/glibc-functions/alphasort.texi: Likewise.
11291         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
11292
11293 2008-09-16  Jim Meyering  <meyering@redhat.com>
11294
11295         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
11296         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
11297         a umask modification leak out of a subshell.  Otherwise, the
11298         opensolaris /bin/sh would be accepted and thus cause unwarranted
11299         failures in the coreutils test suite.
11300
11301 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
11302
11303         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
11304         to succeed.
11305
11306 2008-09-16  Jim Meyering  <meyering@redhat.com>
11307
11308         avoid spurious test failure when library is built without ACL support
11309         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
11310         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
11311         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
11312         * tests/test-copy-acl.sh: Likewise.
11313
11314 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11315
11316         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
11317         based on character occurrence counts.
11318
11319 2008-09-15  Eric Blake  <ebb9@byu.net>
11320
11321         tests: avoid some compiler warnings
11322         * tests/test-memchr.c (main): Pass NULL indirectly.
11323         * tests/test-closein.c (main): Avoid unused variable.
11324
11325 2008-09-15  Bruno Haible  <bruno@clisp.org>
11326
11327         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
11328         are missing on OpenBSD 4.0 individually.
11329         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
11330
11331 2008-09-15  Bruno Haible  <bruno@clisp.org>
11332
11333         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
11334         * doc/posix-functions/strerror.texi: Mention also Cygwin.
11335         * doc/posix-functions/perror.texi: Likewise.
11336         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
11337         is missing.
11338         Reported by Eric Blake.
11339
11340         * lib/errno.in.h: Use replacement values >= 2000.
11341         Reported by Eric Blake.
11342
11343 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11344
11345         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
11346         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
11347         limit.
11348         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
11349         compareseq was aborted.
11350
11351 2008-09-14  Bruno Haible  <bruno@clisp.org>
11352
11353         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
11354         yvec_edit_count.
11355         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
11356         (fstrcmp_bounded): Simplify result computation accordingly.
11357
11358 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11359
11360         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
11361         (fstrcmp): Define in terms of fstrcmp_bounded.
11362         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
11363         lower_bound argument.
11364         Return quickly if the result is certainly < lower_bound.
11365         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
11366
11367 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11368
11369         * lib/diffseq.h (EARLY_ABORT): New macro.
11370         (compareseq): Change return type to bool. Return true when EARLY_ABORT
11371         evaluates to true.
11372
11373 2008-09-14  Bruno Haible  <bruno@clisp.org>
11374
11375         * modules/perror-tests: New file.
11376         * tests/test-perror.sh: New file.
11377         * tests/test-perror.c: New file.
11378
11379         New module 'perror'.
11380         * lib/stdio.in.h (perror): New declaration.
11381         * lib/perror.c: New file.
11382         * m4/perror.m4: New file.
11383         * modules/perror: New file.
11384         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
11385         * doc/posix-functions/perror.texi: Mention the perror module.
11386         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
11387         REPLACE_PERROR.
11388         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
11389         REPLACE_PERROR.
11390
11391 2008-09-14  Bruno Haible  <bruno@clisp.org>
11392
11393         * modules/stdio (Makefile.am): Reorder to match the order in
11394         lib/stdio.in.h.
11395         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
11396
11397 2008-09-13  Bruno Haible  <bruno@clisp.org>
11398
11399         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
11400
11401 2008-09-13  Bruno Haible  <bruno@clisp.org>
11402
11403         Extend strerror to cover the added errno values.
11404         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
11405         (rpl_strerror): Provide error messages for the added errno values and
11406         for the WSA* values.
11407         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
11408         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
11409         strerror.
11410         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
11411         * modules/strerror (Depends-on): Add errno.
11412         * doc/posix-functions/strerror.texi: Document the change.
11413         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
11414         and EOVERFLOW.
11415
11416 2008-09-13  Bruno Haible  <bruno@clisp.org>
11417
11418         * modules/EOVERFLOW: Remove file.
11419         * m4/eoverflow.m4: Remove file.
11420         * modules/EOVERFLOW-tests: Remove file.
11421         * tests/test-EOVERFLOW.c: Remove file.
11422         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
11423         * modules/ftell (Depends-on): Likewise.
11424         * modules/getdelim (Depends-on): Likewise.
11425         * modules/getugroups (Depends-on): Likewise.
11426         * modules/poll (Depends-on): Likewise.
11427         * modules/snprintf (Depends-on): Likewise.
11428         * modules/sprintf-posix (Depends-on): Likewise.
11429         * modules/vasnprintf (Depends-on): Likewise.
11430         * modules/vasprintf (Depends-on): Likewise.
11431         * modules/vfprintf-posix (Depends-on): Likewise.
11432         * modules/vsnprintf (Depends-on): Likewise.
11433         * modules/vsprintf-posix (Depends-on): Likewise.
11434         * modules/xvasprintf (Depends-on): Likewise.
11435         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
11436         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
11437         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
11438         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
11439         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
11440         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
11441         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
11442         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
11443         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
11444         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
11445         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
11446         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
11447         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
11448         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
11449         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
11450         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
11451         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
11452         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
11453         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
11454         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
11455         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
11456         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
11457         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
11458         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
11459         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
11460         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
11461         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
11462         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
11463         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
11464         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
11465         * MODULES.html.sh: Remove EOVERFLOW.
11466         * NEWS: Mention the change.
11467
11468 2008-09-13  Bruno Haible  <bruno@clisp.org>
11469
11470         * modules/errno-tests: New file.
11471         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
11472
11473         * lib/errno.in.h: New file.
11474         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
11475         * modules/errno: New file.
11476         * doc/posix-headers/errno.texi: Update documentation.
11477         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
11478
11479 2008-09-13  Bruno Haible  <bruno@clisp.org>
11480
11481         * tests/test-poll.c: Use #if for native Windows, rather than testing
11482         __MSVCRT__.
11483
11484 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11485             Bruno Haible  <bruno@clisp.org>
11486
11487         * lib/glob.c: Don't include <pwd.h> on native Windows.
11488         (WINDOWS32): New macro.
11489         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
11490
11491 2008-09-13  Bruno Haible  <bruno@clisp.org>
11492
11493         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
11494         (ETIMEDOUT): Remove macro.
11495         (glthread_cond_timedwait_multithreaded): New declaration.
11496         (glthread_cond_timedwait): Use it.
11497         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
11498         (glthread_cond_timedwait_multithreaded): New function.
11499
11500 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
11501
11502         * modules/poll-tests: Do not check for io.h.
11503         * tests/test-poll.c: Check for __MSVCRT__ instead.
11504
11505 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
11506
11507         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
11508         * modules/poll-tests: Add inet_pton, stdbool, sockets.
11509         * tests/test-poll.c: Use them.  Use _pipe on Windows.
11510
11511 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
11512
11513         * modules/poll-tests: New.
11514         * tests/test-poll.c: New.
11515
11516 2008-09-12  Eric Blake  <ebb9@byu.net>
11517
11518         frexp: test for NetBSD failure on -0.0
11519         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
11520         not all, bugs from NetBSD 3.0 have been fixed.
11521         * doc/posix-functions/frexp.texi (frexp): Document bug.
11522         Reported by Thomas Klausner.
11523
11524         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
11525         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
11526         literal -0.0.
11527         Reported by Jonathan C. Patschke <jp@centtech.com>.
11528
11529 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11530
11531         * lib/glthread/cond.h: Use dummy implementation also if
11532         USE_WIN32_THREADS.
11533
11534 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11535
11536         * modules/fnmatch-posix (License): Change to LGPLv2+.
11537         * modules/fnmatch-gnu (License): Likewise.
11538
11539 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11540
11541         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
11542
11543 2008-09-11  Jim Meyering  <meyering@redhat.com>
11544
11545         * users.txt: Add gtk-vnc.
11546
11547 2008-09-08  Simon Josefsson  <simon@josefsson.org>
11548
11549         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
11550         rotate amounts.
11551
11552         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
11553         required for 16-bit and 8-bit rotates.
11554         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
11555         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
11556         UINT8_MAX instead of hard-coded constants.
11557         Suggested by Paul Eggert.
11558
11559 2008-09-07  Bruno Haible  <bruno@clisp.org>
11560
11561         * tests/test-striconveh.c (main): Check behaviour when converting from
11562         UTF-7.
11563
11564         Make striconveh work better with stateful encodings.
11565         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
11566         that iconv does not increment the inptr when returning -1/EINVAL.
11567
11568 2008-09-07  Bruno Haible  <bruno@clisp.org>
11569
11570         * build-aux/config.rpath: Update according to libtool-2.2.6.
11571         * build-aux/config.libpath: Likewise.
11572
11573 2008-09-06  Bruno Haible  <bruno@clisp.org>
11574
11575         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
11576         * lib/freadptr.c (freadptr): Likewise.
11577         * lib/freadseek.c (freadptrinc): Likewise.
11578         Reported by Simon Josefsson.
11579
11580 2008-09-06  Bruno Haible  <bruno@clisp.org>
11581
11582         * modules/freadptr (License): Change to LGPLv2+.
11583         * modules/freadseek (License): Likewise.
11584         Suggested by Eric Blake.
11585
11586         * modules/memchr2 (License): Change to LGPLv2+.
11587         Approved by Eric Blake.
11588
11589 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11590             Bruno Haible  <bruno@clisp.org>
11591
11592         Make gnulib-tool work with native 'sed' on AIX.
11593         * gnulib-tool (sed_noop): New variable.
11594         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
11595         func_add_or_update, func_create_testdir): Use it to initialize sed
11596         script variables.
11597         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
11598
11599 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
11600             Bruno Haible  <bruno@clisp.org>
11601
11602         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
11603         also works after #include directives.
11604
11605 2008-09-04  OndÅ™ej Vašík  <ovasik@redhat.com>
11606
11607         getdate.y: reject an out-of-range timezone value
11608         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
11609         the range [-24...+24].  When specified with only one or two digits,
11610         * tests/test-getdate.c: Tests for the fix.
11611         * doc/getdate.texi: Document this change.
11612
11613 2008-09-03  Bruno Haible  <bruno@clisp.org>
11614
11615         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
11616
11617 2008-09-02  Simon Josefsson  <simon@josefsson.org>
11618
11619         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
11620         <bruce.korb@gmail.com> with ideas from Ben Pfaff
11621         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
11622         Blake <ebb9@byu.net>.
11623
11624         * tests/test-bitrotate.c: Add more test vectors.
11625
11626 2008-09-02  Eric Blake  <ebb9@byu.net>
11627
11628         vasnprintf-posix: handle large precision via %.*d
11629         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
11630         when handling it ourselves.
11631         * tests/test-vasnprintf-posix.c (test_function): Add test.
11632         * tests/test-snprintf-posix.h (test_function): Likewise.
11633         * tests/test-sprintf-posix.h (test_function): Likewise.
11634         * tests/test-vasprintf-posix.c (test_function): Likewise.
11635         Reported by Alain Guibert.
11636
11637 2008-09-01  Eric Blake  <ebb9@byu.net>
11638
11639         c-stack: make configure-time check more robust
11640         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
11641         successful sigaction call.
11642         Reported by Tom G. Christensen.
11643
11644 2008-09-01  Bruno Haible  <bruno@clisp.org>
11645
11646         New module 'findprog-lgpl'.
11647         * modules/findprog-lgpl: New file.
11648         * lib/findprog-lgpl.c: New file.
11649         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
11650         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
11651         to decide whether to use strdup or xstrdup, concatenated_filename or
11652         xconcatenated_filename.
11653
11654 2008-09-01  Bruno Haible  <bruno@clisp.org>
11655
11656         Split module 'concat-filename' into 'concat-filename' (LGPL) and
11657         'xconcat-filename' (GPL).
11658         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
11659         (License): Change to LGPLv2+.
11660         * modules/xconcat-filename: New file.
11661         * lib/concat-filename.h (concatenated_filename): Change specification.
11662         (xconcatenated_filename): New declaration.
11663         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
11664         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
11665         memory situations.
11666         * lib/xconcat-filename.c: New file.
11667         * NEWS: Mention the change.
11668         * lib/findprog.c: Include concat-filename.h, not filename.h.
11669         (find_in_path): Use xconcatenated_filename instead of
11670         concatenated_filename.
11671         * lib/javacomp.c: Include concat-filename.h, not filename.h.
11672         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
11673         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
11674         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
11675         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
11676         instead of concatenated_filename.
11677         * lib/javaexec.c: Include concat-filename.h, not filename.h.
11678         (execute_java_class): Use xconcatenated_filename instead of
11679         concatenated_filename.
11680         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
11681         * modules/javacomp (Depends-on): Likewise.
11682         * modules/javaexec (Depends-on): Likewise.
11683
11684 2008-09-01  Bruno Haible  <bruno@clisp.org>
11685
11686         Split module 'filename' into 'filename' and 'concat-filename'.
11687         * modules/filename: Keep only lib/filename.h.
11688         (License): Change to LGPLv2+.
11689         * modules/concat-filename: New file, extracted from modules/filename.
11690         * lib/filename.h (concatenated_filename): Remove declaration.
11691         * lib/concat-filename.h: New file, extracted from lib/filename.h.
11692         * lib/concat-filename.c: Include concat-filename.h.
11693         * NEWS: Mention the change.
11694
11695 2008-09-01  Simon Josefsson  <simon@josefsson.org>
11696
11697         * lib/bitrotate.h (rotl8, rotr8): Add.
11698
11699         * modules/bitrotate (configure.ac): Need
11700         AC_REQUIRE([AC_C_INLINE]).
11701         (Description): Mention stdint.h.  Reported by Bruno Haible
11702         <bruno@clisp.org>.
11703
11704         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
11705         Paolo Bonzini <bonzini@gnu.org>.
11706
11707 2008-08-31  Bruno Haible  <bruno@clisp.org>
11708
11709         Assume Solaris specific bi-arch conventions on Solaris systems.
11710         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
11711         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
11712         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
11713         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
11714         like acl_libdirstem.
11715         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
11716         acl_libdirstem.
11717         * NEWS: Mention the change.
11718         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
11719
11720 2008-08-31  Jim Meyering  <meyering@redhat.com>
11721
11722         * lib/strftime.h: Add comments describing the two added arguments.
11723
11724         remove duplicate #include directives
11725         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
11726         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
11727
11728 2008-08-31  Bruno Haible  <bruno@clisp.org>
11729
11730         New module 'sigpipe-die'.
11731         * modules/sigpipe-die: New file.
11732         * lib/sigpipe-die.h: New file.
11733         * lib/sigpipe-die.c: New file.
11734         * MODULES.html.sh (Signal handling): Add sigpipe-die.
11735
11736 2008-08-31  Bruno Haible  <bruno@clisp.org>
11737
11738         Don't override previously installed signal handlers.
11739         * lib/fatal-signal.c (saved_sigactions): New variable.
11740         (uninstall_handlers): Reset the signal to the saved handler, not
11741         to SIG_DFL (except when ignored).
11742         (install_handlers): Save the previous handlers.
11743
11744 2008-08-30  Bruno Haible  <bruno@clisp.org>
11745
11746         * gnulib-tool (func_reset_sigpipe): New function.
11747         (func_get_automake_snippet, func_modules_transitive_closure,
11748         func_import): Invoke it before a join command that reads from stdin,
11749         to avoid "echo: write error: Broken pipe" error messages on stderr.
11750         Reported by Sam Steingold <sds@gnu.org>.
11751
11752 2008-08-30  Bruno Haible  <bruno@clisp.org>
11753
11754         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
11755         Code copied from m4/open.m4.
11756         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
11757         access and the filename ends in a slash. Code copied from lib/open.c.
11758         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
11759         * tests/test-fopen.c (main): Check against bug with trailing slash.
11760
11761 2008-08-29  Bruno Haible  <bruno@clisp.org>
11762
11763         Avoid some "gcc -pedantic" warnings.
11764         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
11765         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
11766         * lib/dirent.in.h: Likewise.
11767         * lib/fcntl.in.h: Likewise.
11768         * lib/float.in.h: Likewise.
11769         * lib/iconv.in.h: Likewise.
11770         * lib/inttypes.in.h: Likewise.
11771         * lib/locale.in.h: Likewise.
11772         * lib/math.in.h: Likewise.
11773         * lib/netinet_in.in.h: Likewise.
11774         * lib/search.in.h: Likewise.
11775         * lib/signal.in.h: Likewise.
11776         * lib/stdarg.in.h: Likewise.
11777         * lib/stdint.in.h: Likewise.
11778         * lib/stdio.in.h: Likewise.
11779         * lib/stdlib.in.h: Likewise.
11780         * lib/string.in.h: Likewise.
11781         * lib/strings.in.h: Likewise.
11782         * lib/sys_select.in.h: Likewise.
11783         * lib/sys_socket.in.h: Likewise.
11784         * lib/sys_stat.in.h: Likewise.
11785         * lib/sys_time.in.h: Likewise.
11786         * lib/sysexits.in.h: Likewise.
11787         * lib/time.in.h: Likewise.
11788         * lib/unistd.in.h: Likewise.
11789         * lib/wchar.in.h: Likewise.
11790         * lib/wctype.in.h: Likewise.
11791         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
11792         * modules/fchdir (Makefile.am): Likewise.
11793         * modules/fcntl (Makefile.am): Likewise.
11794         * modules/float (Makefile.am): Likewise.
11795         * modules/iconv_open (Makefile.am): Likewise.
11796         * modules/inttypes (Makefile.am): Likewise.
11797         * modules/locale (Makefile.am): Likewise.
11798         * modules/math (Makefile.am): Likewise.
11799         * modules/netinet_in (Makefile.am): Likewise.
11800         * modules/search (Makefile.am): Likewise.
11801         * modules/signal (Makefile.am): Likewise.
11802         * modules/stdarg (Makefile.am): Likewise.
11803         * modules/stdint (Makefile.am): Likewise.
11804         * modules/stdio (Makefile.am): Likewise.
11805         * modules/stdlib (Makefile.am): Likewise.
11806         * modules/string (Makefile.am): Likewise.
11807         * modules/strings (Makefile.am): Likewise.
11808         * modules/sys_select (Makefile.am): Likewise.
11809         * modules/sys_socket (Makefile.am): Likewise.
11810         * modules/sys_stat (Makefile.am): Likewise.
11811         * modules/sys_time (Makefile.am): Likewise.
11812         * modules/sysexits (Makefile.am): Likewise.
11813         * modules/time (Makefile.am): Likewise.
11814         * modules/unistd (Makefile.am): Likewise.
11815         * modules/wchar (Makefile.am): Likewise.
11816         * modules/wctype (Makefile.am): Likewise.
11817         Reported by Reuben Thomas <rrt@sc3d.org>.
11818
11819 2008-08-29  Bruno Haible  <bruno@clisp.org>
11820
11821         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
11822         any more.
11823
11824 2008-08-29  Simon Josefsson  <simon@josefsson.org>
11825
11826         * MODULES.html.sh (Misc): Add bitrotate.
11827
11828         * modules/bitrotate: New file.
11829
11830         * lib/bitrotate.h: New file.
11831
11832         * modules/bitrotate-tests: New file.
11833
11834         * tests/test-bitrotate.c: New file.
11835
11836         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
11837         on the bitrotate module.
11838
11839         * lib/arctwo.c: Use new bitrotate module.
11840
11841 2008-08-29  Jim Meyering  <meyering@redhat.com>
11842
11843         bootstrap: merge changes from coreutils
11844         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
11845         of copied files.  Remove a kludge, now that this is fixed.
11846         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
11847         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
11848         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
11849
11850 2008-08-29  Bruno Haible  <bruno@clisp.org>
11851
11852         * MODULES.html.sh: Remove --cvs-urls option.
11853
11854 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
11855
11856         maint.mk: adjust to file name change
11857         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
11858
11859 2008-08-28  Jim Meyering  <meyering@redhat.com>
11860
11861         * modules/getndelim2 (License): Relicense to LGPLv2+.
11862         Approved by Richard Stallman for the version of 1995, and by
11863         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
11864
11865 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
11866
11867         * lib/getdelim.c (flockfile, funlockfile): Make all of them
11868         dummy if one is not available.  Do not touch them if
11869         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
11870         (getc_maybe_unlocked): New.
11871         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
11872
11873 2008-08-26  Eric Blake  <ebb9@byu.net>
11874
11875         doc/INSTALL: resync from autoconf
11876         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
11877         (INSTALL_PRELUDE): Delete; this is done more efficiently by
11878         moving...
11879         * install.texi [!autoconf]: ...here.  Resync from autoconf.
11880         * INSTALL: Regenerate.
11881         * INSTALL.ISO: New file.
11882         * INSTALL.UTF-8: Likewise.
11883
11884 2008-08-26  Jim Meyering  <meyering@redhat.com>
11885
11886         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
11887         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
11888         these definitions conditional, so that they may be overridden, too.
11889
11890 2008-08-26  Bruno Haible  <bruno@clisp.org>
11891
11892         Generate INSTALL file variants with prettier quotes.
11893         * doc/Makefile (INSTALL_PRELUDE): New macro.
11894         (INSTALL): Use it.
11895         (INSTALL.ISO, INSTALL.UTF-8): New rules.
11896
11897 2008-08-26  Bruno Haible  <bruno@clisp.org>
11898
11899         Run makeinfo in an English locale.
11900         * doc/Makefile (MAKEINFO): New variable.
11901
11902 2008-08-26  Bruno Haible  <bruno@clisp.org>
11903
11904         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
11905         Suggested by Eric Blake.
11906
11907 2008-08-25  Bruno Haible  <bruno@clisp.org>
11908
11909         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
11910
11911 2008-08-25  Eric Blake  <ebb9@byu.net>
11912
11913         c-stack: test that stack overflow can be caught
11914         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
11915         that platform allows handling stack overflow; at least OS/2 EMX
11916         has sigaltstack, but crashes before transferring control to
11917         handler on stack overflow.
11918         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
11919         check for HAVE_STACK_OVERFLOW_HANDLING.
11920         Reported by Elbert Pol.
11921
11922 2008-08-25  Bruno Haible  <bruno@clisp.org>
11923
11924         * doc/posix-functions/strftime.texi: Fix description of strftime
11925         module.
11926
11927 2008-08-24  Bruno Haible  <bruno@clisp.org>
11928
11929         * tests/uniwidth/test-uc_width2.c: New file.
11930         * tests/uniwidth/test-uc_width2.sh: New file.
11931         * modules/uniwidth/width-tests (Files): Add the new files.
11932         (TESTS): Add uniwidth/test-uc_width2.sh.
11933         (TESTS_ENVIRONMENT): New variable.
11934         (check_PROGRAMS): Add test-uc_width2.
11935         (test_uc_width2_SOURCES): New variable.
11936
11937         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
11938         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
11939         not 0x00AB.
11940         Reported by Alexander V. Lukyanov <lav@netis.ru>.
11941
11942 2008-08-22  Eric Blake  <ebb9@byu.net>
11943
11944         test-lock, test-tls: mention why a test is skipped
11945         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
11946         skipped.
11947         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
11948
11949         count-one-bits: relax license
11950         * modules/count-one-bits (License): Relicense to LGPLv2+.
11951         Suggested by Ludovic Courtès, approved by Ben Pfaff.
11952
11953 2008-08-22  Andreas Schwab  <schwab@suse.de>
11954
11955         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
11956         Remove spurious space in assignment.
11957
11958 2008-08-21  Simon Josefsson  <simon@josefsson.org>
11959
11960         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
11961         Paul Eggert <eggert@CS.UCLA.EDU>.
11962
11963 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
11964
11965         * modules/gettext: Add m4/threadlib.m4.
11966
11967 2008-08-19  Eric Blake  <ebb9@byu.net>
11968
11969         test-c-stack: fix compilation failure on FreeBSD 5.0
11970         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
11971         headers before <sys/resource.h>.
11972         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
11973         the bug.
11974         Reported by Nelson H. F. Beebe.
11975
11976         strverscmp: migrate from "strverscmp.h" to <string.h>
11977         * modules/string (Makefile.am): Add new hooks.
11978         * modules/strverscmp (Files): Remove strverscmp.h.
11979         (Depends-on): Add string.
11980         (configure.ac): Add indicator.
11981         (Include): Mention new header.
11982         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
11983         defaults.
11984         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
11985         results.
11986         * lib/strverscmp.h: Delete.
11987         * lib/string.in.h (strverscmp): Provide declaration, when needed.
11988         * tests/test-strverscmp.c (includes): Adjust client.
11989         * lib/check-version.c (includes): Likewise.
11990         * NEWS: Document the change.
11991
11992         strverscmp: add unit test
11993         * modules/strverscmp-tests: New file.
11994         * tests/test-strverscmp.c: Likewise.
11995
11996 2008-08-19  Simon Josefsson  <simon@josefsson.org>
11997
11998         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
11999         regarding Windows crypto stuff, from Mono.
12000
12001 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
12002
12003         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
12004         if present, for intel RND.  Return error on failures.
12005
12006 2008-08-18  Ben Pfaff  <blp@gnu.org>
12007
12008         gitlog-to-changelog: give better diagnostic for failed pipe-open
12009         * build-aux/gitlog-to-changelog: Improve error message: suggest
12010         that the version of Git may be too old.
12011
12012 2008-08-18  Simon Josefsson  <simon@josefsson.org>
12013
12014         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
12015         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
12016
12017 2008-08-18  Bruno Haible  <bruno@clisp.org>
12018
12019         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
12020         pthread_in_use().
12021
12022 2008-08-18  Bruno Haible  <bruno@clisp.org>
12023
12024         * lib/glthread/threadlib.c: Include <pthread.h>.
12025
12026 2008-08-18  Bruno Haible  <bruno@clisp.org>
12027
12028         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
12029         glthread_recursive_lock_* macros.
12030         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
12031         Fix syntax error.
12032
12033 2008-08-18  Bruno Haible  <bruno@clisp.org>
12034
12035         * lib/glthread/thread.c: Avoid forcing a context switch right after
12036         thread creation.
12037
12038 2008-08-17  Bruno Haible  <bruno@clisp.org>
12039
12040         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
12041         * lib/glthread/thread.h: Provide Win32 specific implementation.
12042         * modules/thread (Files): Add lib/glthread/thread.c.
12043         (Depends-on): Add lock.
12044         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
12045
12046 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
12047
12048         New module 'yield'.
12049         * modules/yield: New file.
12050         * lib/glthread/yield.h: New file.
12051         * m4/yield.m4: New file.
12052         * MODULES.html.sh (Multithreading): Add yield.
12053
12054 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
12055
12056         New module 'thread'.
12057         * modules/thread: New file.
12058         * lib/glthread/thread.h: New file.
12059         * m4/thread.m4: New file.
12060         * MODULES.html.sh (Multithreading): Add thread.
12061
12062 2008-08-17  Bruno Haible  <bruno@clisp.org>
12063
12064         * lib/glthread/lock.h: Include <stdlib.h> always.
12065         * lib/glthread/tls.h: Likewise.
12066         * lib/glthread/cond.h: Likewise.
12067
12068 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
12069
12070         New module 'cond'.
12071         * modules/cond: New file.
12072         * lib/glthread/cond.h: New file.
12073         * lib/glthread/cond.c: New file.
12074         * m4/cond.m4: New file.
12075         * MODULES.html.sh (Multithreading): Add cond.
12076
12077 2008-08-16  Eric Blake  <ebb9@byu.net>
12078
12079         c-stack: fix regression on Irix 5.3 from 2008-06-21
12080         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
12081         sa_sigaction...
12082         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
12083         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
12084         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
12085         * modules/signal (Makefile.am): Use the value.
12086         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
12087         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
12088         * doc/posix-headers/signal.texi (signal.h): Document this
12089         portability issue.
12090         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
12091         Reported by Tom G. Christensen.
12092
12093 2008-08-17  Bruno Haible  <bruno@clisp.org>
12094
12095         New module 'threadlib'.
12096         * modules/threadlib: New file.
12097         * lib/glthread/threadlib.c: New file, extracted from
12098         lib/glthread/lock.c.
12099         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
12100         functions.
12101         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
12102         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
12103         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
12104         macros.
12105         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
12106         (gl_DISABLE_THREADS): Remove macro.
12107         * modules/lock (Files): Remove build-aux/config.rpath.
12108         (Depends-on): Remove havelib. Add threadlib.
12109         (configure.ac-early): Remove section.
12110         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
12111         * modules/tls (Depends-on): Remove lock. Add threadlib.
12112         (Link): New section, copied from threadlib.
12113         * MODULES.html.sh (Multithreading): Add threadlib.
12114
12115 2008-08-14  Bruno Haible  <bruno@clisp.org>
12116
12117         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
12118         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
12119         glthread_rwlock_unlock, glthread_rwlock_destroy,
12120         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
12121         glthread_recursive_lock_destroy): Define as macros always.
12122         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
12123         glthread_lock_lock.
12124         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
12125         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
12126         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
12127         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
12128         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
12129         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
12130         (glthread_recursive_lock_lock_func): Renamed from
12131         glthread_recursive_lock_lock.
12132         (glthread_recursive_lock_unlock_func): Renamed from
12133         glthread_recursive_lock_unlock.
12134         (glthread_recursive_lock_destroy_func): Renamed from
12135         glthread_recursive_lock_destroy.
12136
12137 2008-08-14  Bruno Haible  <bruno@clisp.org>
12138
12139         * lib/glthread/lock.h: Renamed from lib/lock.h.
12140         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
12141         * lib/glthread/tls.h: Renamed from lib/tls.h.
12142         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
12143         * lib/fstrcmp.c: Update includes.
12144         * lib/strsignal.c: Update includes.
12145         * modules/lock (Files, Makefile.am): Update.
12146         (Include): Change to "glthread/lock.h".
12147         * modules/tls (Files, Makefile.am): Update.
12148         (Include): Change to "glthread/tls.h".
12149         * tests/test-lock.c: Update includes.
12150         * tests/test-tls.c: Update includes.
12151         * NEWS: Mention the renamed header files.
12152
12153 2008-08-11  Jim Meyering  <meyering@redhat.com>
12154
12155         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
12156
12157 2008-08-11  Eric Blake  <ebb9@byu.net>
12158
12159         test-c-stack: avoid C99-ism
12160         * tests/test-c-stack.c (main): Fix whitespace, move declaration
12161         before statement.
12162         Reported by Alain Guibert.
12163
12164 2008-08-10  Jim Meyering  <meyering@redhat.com>
12165
12166         ensure that return value of uinttostr et al are not ignored
12167         * lib/inttostr.h (__GNUC_PREREQ): Define.
12168         (__attribute_warn_unused_result__): Define.
12169         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
12170
12171 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
12172
12173         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
12174         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
12175
12176 2008-08-07  Jim Meyering  <meyering@redhat.com>
12177
12178         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
12179
12180         * modules/mkstemp (License): Relicense under LGPLv2+.
12181         * modules/tempname (License): Likewise.
12182
12183 2008-08-06  Bruno Haible  <bruno@clisp.org>
12184
12185         * lib/poll.c (poll): Further micro-optimization.
12186
12187 2008-08-06  Jim Meyering  <meyering@redhat.com>
12188
12189         inet_pton.c: use locale-independent tolower
12190         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
12191         (inet_pton6): Use c_tolower rather than tolower.
12192         * modules/inet_pton (Depends-on): Add c-ctype.
12193
12194 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
12195
12196         * lib/poll.c (poll): Avoid division when timeout is 0, cache
12197         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
12198
12199 2008-08-06  Jim Meyering  <meyering@redhat.com>
12200
12201         * modules/inet_pton (License): Relicense under LGPLv2+.
12202
12203 2008-08-03  Bruno Haible  <bruno@clisp.org>
12204
12205         Additional non-aborting API for lock and tls.
12206         * lib/lock.h: Include <errno.h>.
12207         (glthread_lock_init): New macro/function.
12208         (gl_lock_init): Define as wrapper around glthread_lock_init.
12209         (glthread_lock_lock): New macro/function.
12210         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
12211         (glthread_lock_unlock): New macro/function.
12212         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
12213         (glthread_lock_destroy): New macro/function.
12214         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
12215         (glthread_rwlock_init): New macro/function.
12216         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
12217         (glthread_rwlock_rdlock): New macro/function.
12218         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
12219         (glthread_rwlock_wrlock): New macro/function.
12220         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
12221         (glthread_rwlock_unlock): New macro/function.
12222         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
12223         (glthread_rwlock_destroy): New macro/function.
12224         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
12225         (glthread_recursive_lock_init): New macro/function.
12226         (gl_recursive_lock_init): Define as wrapper around
12227         glthread_recursive_lock_init.
12228         (glthread_recursive_lock_lock): New macro/function.
12229         (gl_recursive_lock_lock): Define as wrapper around
12230         glthread_recursive_lock_lock.
12231         (glthread_recursive_lock_unlock): New macro/function.
12232         (gl_recursive_lock_unlock): Define as wrapper around
12233         glthread_recursive_lock_unlock.
12234         (glthread_recursive_lock_destroy): New macro/function.
12235         (gl_recursive_lock_destroy): Define as wrapper around
12236         glthread_recursive_lock_destroy.
12237         (glthread_once): New macro/function.
12238         (gl_once): Define as wrapper around glthread_once.
12239         Update function declarations.
12240         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
12241         glthread_rwlock_init. Return error code.
12242         (glthread_rwlock_rdlock_multithreaded): Renamed from
12243         glthread_rwlock_rdlock. Return error code.
12244         (glthread_rwlock_wrlock_multithreaded): Renamed from
12245         glthread_rwlock_wrlock. Return error code.
12246         (glthread_rwlock_unlock_multithreaded): Renamed from
12247         glthread_rwlock_unlock. Return error code.
12248         (glthread_rwlock_destroy_multithreaded): Renamed from
12249         glthread_rwlock_destroy. Return error code.
12250         (glthread_recursive_lock_init_multithreaded): Renamed from
12251         glthread_recursive_lock_init. Return error code.
12252         (glthread_recursive_lock_lock_multithreaded): Renamed from
12253         glthread_recursive_lock_lock. Return error code.
12254         (glthread_recursive_lock_unlock_multithreaded): Renamed from
12255         glthread_recursive_lock_unlock. Return error code.
12256         (glthread_recursive_lock_destroy_multithreaded): Renamed from
12257         glthread_recursive_lock_destroy. Return error code.
12258         (glthread_once_call): Make static.
12259         (glthread_once_multithreaded): Renamed from glthread_once.
12260         * lib/tls.h: Include <errno.h>.
12261         (glthread_tls_key_init): New macro/function.
12262         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
12263         (glthread_tls_set): New macro/function.
12264         (gl_tls_set): Define as wrapper around glthread_tls_set.
12265         (glthread_tls_key_destroy): New macro/function.
12266         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
12267         Update function declarations.
12268         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
12269         glthread_tls_get.
12270         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
12271
12272 2008-08-04  Eric Blake  <ebb9@byu.net>
12273
12274         gnumakefile: use space, not TAB, outside of targets
12275         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
12276
12277 2008-08-02  Jim Meyering  <meyering@redhat.com>
12278
12279         getdate.y: avoid locale-dependent date parsing failure
12280         In Turkish locales, getdate would fail to recognize keywords
12281         containing a lowercase "i".  The solution is not to rely on
12282         locale-sensitive case-conversion.
12283         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
12284         (lookup_word): Use c_toupper in place of toupper.
12285         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
12286         Reported by Vefa Bicakci <bicave@superonline.com> in
12287         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
12288         * modules/getdate (Depends-on): Add c-ctype.
12289
12290 2008-08-02  Bruno Haible  <bruno@clisp.org>
12291
12292         * gnulib-tool (func_import): When updating or creating a .gitignore
12293         file, prepend each added line with a slash, and ignore leading slashes
12294         from the existing lines.
12295         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
12296
12297 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12298
12299         Portability fix for GNU make 3.79.1.
12300         * top/GNUmakefile: Avoid 'else COND', which older GNU make
12301         versions do not understand.
12302
12303 2008-08-01  Bruno Haible  <bruno@clisp.org>
12304
12305         Work around bug of HP-UX 10.20 cc with -0.0 literal.
12306         * tests/test-isnanf.h (zero): New variable.
12307         (main): Avoid literal -0.0f.
12308         * tests/test-isnand.h (zero): New variable.
12309         (main): Avoid literal -0.0.
12310         * tests/test-isnanl.h (zero): New variable.
12311         (main): Avoid literal -0.0L.
12312         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
12313         (test_float, test_double, test_long_double): Avoid literals -0.0f,
12314         -0.0, -0.0L.
12315         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
12316         (test_signbitd): Avoid literal -0.0.
12317         (test_signbitl): Avoid literal -0.0L.
12318         * tests/test-ceilf1.c (zero): New variable.
12319         (main): Avoid literal -0.0f.
12320         * tests/test-ceill.c (zero): New variable.
12321         (main): Avoid literal -0.0L.
12322         * tests/test-floorf1.c (zero): New variable.
12323         (main): Avoid literal -0.0f.
12324         * tests/test-floorl.c (zero): New variable.
12325         (main): Avoid literal -0.0L.
12326         * tests/test-roundf1.c (zero): New variable.
12327         (main): Avoid literal -0.0f.
12328         * tests/test-round1.c (zero): New variable.
12329         (main): Avoid literal -0.0.
12330         * tests/test-roundl.c (zero): New variable.
12331         (main): Avoid literal -0.0L.
12332         * tests/test-truncf1.c (zero): New variable.
12333         (main): Avoid literal -0.0f.
12334         * tests/test-trunc1.c (zero): New variable.
12335         (main): Avoid literal -0.0.
12336         * tests/test-truncl.c (zero): New variable.
12337         (main): Avoid literal -0.0L.
12338         * tests/test-frexp.c (zero): New variable.
12339         (main): Avoid literal -0.0.
12340         * tests/test-frexpl.c (zero): New variable.
12341         (main): Avoid literal -0.0L.
12342         * tests/test-ldexpl.c (zero): New variable.
12343         (main): Avoid literal -0.0L.
12344         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
12345         (zerod, zerol): New variables.
12346         (test_function): Avoid literals -0.0, -0.0L.
12347         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
12348         (zerod, zerol): New variables.
12349         (test_function): Avoid literals -0.0, -0.0L.
12350         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
12351         (zerod, zerol): New variables.
12352         (test_function): Avoid literals -0.0, -0.0L.
12353         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
12354         (zerod, zerol): New variables.
12355         (test_function): Avoid literals -0.0, -0.0L.
12356         * tests/test-strtod.c (zero): New variable.
12357         (main): Avoid literal -0.0.
12358         Reported by Jonathan C. Patschke <jp@centtech.com>.
12359
12360 2008-07-31  Jim Meyering  <meyering@redhat.com>
12361
12362         sha256.h: correct definition of SHA224_DIGEST_SIZE
12363         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
12364         Reported by Paulie Pena IV <paulie4@gmail.com>.
12365         Define as 224 / 8, rather than as a literal.
12366         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
12367         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
12368         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
12369
12370 2008-07-31  Bruno Haible  <bruno@clisp.org>
12371
12372         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
12373         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
12374         Reported by Jonathan Patschke <jp@centtech.com>.
12375
12376 2008-07-31  Bruno Haible  <bruno@clisp.org>
12377
12378         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
12379         Reported by Paolo Bonzini <bonzini@gnu.org>.
12380
12381 2008-07-30  Eric Blake  <ebb9@byu.net>
12382
12383         test-strtod: allow compilation without -lm
12384         * tests/test-strtod.c (main): Avoid link dependence on fabs.
12385         Reported by Dennis Clarke <blastwave@gmail.com>.
12386
12387 2008-07-28  Jim Meyering  <meyering@redhat.com>
12388
12389         bootstrap: work also when there are no .po files in po/
12390         * build-aux/bootstrap (update_po_files): Complete the change
12391         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
12392
12393 2008-07-27  Jim Meyering  <meyering@redhat.com>
12394
12395         * users.txt: Add zile.
12396
12397 2008-07-26  Ben Pfaff  <blp@gnu.org>
12398
12399         Add missing dependencies on new m4/exponent[fdl].m4 files.
12400         * modules/isnanf-nolibm: Add m4/exponentf.m4.
12401         * modules/isnand-nolibm: Add m4/exponentd.m4.
12402         * modules/isnanl-nolibm: Add m4/exponentl.m4.
12403         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
12404         m4/isnan[fdl].m4, because the macros actually used moved.
12405         Reported by Jim Meyering.
12406
12407 2008-07-14  Ben Pfaff  <blp@gnu.org>
12408
12409         Add isinf module.
12410         * lib/isinf.c: New file.
12411         * lib/math.in.h: Define isinf macro if we have decided to replace
12412         it.
12413         * m4/isinf.m4: New file.
12414         * m4/math_h.m4: Initialize and substitute variables for isinf
12415         module.
12416         * modules/isinf: New file.
12417         * modules/isinf-tests: New file.
12418         * modules/math: Add substitutions for new module.
12419         * tests/test-isinf.c: New file.
12420         * doc/posix-functions/isinf.texi: Mention new module.
12421         * MODULES.html.sh: Mention new module.
12422
12423 2008-07-14  Ben Pfaff  <blp@gnu.org>
12424
12425         Factor out some macros for use by additional modules.
12426         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
12427         exponentf.m4.
12428         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
12429         exponentd.m4.
12430         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
12431         file exponentl.m4.
12432         * m4/exponentf.m4: New file.
12433         * m4/exponentd.m4: New file.
12434         * m4/exponentl.m4: New file.
12435         * modules/isnanf: Use new file m4/exponentf.m4.
12436         * modules/isnand: Use new file m4/exponentd.m4.
12437         * modules/isnanl: Use new file m4/exponentl.m4.
12438
12439 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
12440
12441         mktime.c: normalize tp->tm_isdst value to -1/0/1.
12442         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
12443         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
12444         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
12445
12446         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
12447         readlink on platforms without PATH_MAX.
12448
12449 2008-07-21  Eric Blake  <ebb9@byu.net>
12450
12451         Warn, not fail, on stale version.
12452         * top/GNUmakefile (_curr-ver): Tone down previous patch.
12453
12454         Don't allow installation with stale devel version number.
12455         * top/GNUmakefile (_is-install-target): New macro.
12456         (_curr-ver): Forbid installation with stale version number.
12457
12458 2008-07-20  Bruno Haible  <bruno@clisp.org>
12459
12460         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
12461         TESTS_ENVIRONMENT.
12462         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
12463
12464 2008-07-20  Bruno Haible  <bruno@clisp.org>
12465
12466         * lib/c-stack.h (c_stack_action): Add documentation.
12467         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
12468
12469 2008-07-20  Bruno Haible  <bruno@clisp.org>
12470
12471         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
12472         * modules/readlink (License): Likewise.
12473
12474 2008-07-17  Eric Blake  <ebb9@byu.net>
12475
12476         * modules/c-stack (Link): Fix typo.
12477
12478         Make c-stack use libsigsegv, when available.
12479         * modules/c-stack (Depends-on): Add libsigsegv.
12480         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
12481         needed.
12482         * lib/c-stack.c (SIGSTKSZ): Define fallback.
12483         (segv_handler, overflow_handler, c_stack_action)
12484         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
12485         implementation when libsigsegv is available, but only when using
12486         the library is necessary.
12487         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
12488         comment, explaining why XSI check fails on Linux.
12489         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
12490         * tests/test-c-stack2.sh: Tweak skip message.
12491         * NEWS: Document new link-time requirements.
12492
12493 2008-07-16  Eric Blake  <ebb9@byu.net>
12494
12495         c-stack: Expose false positives when not using libsigsegv.
12496         * modules/c-stack-tests (Files): Expand test.
12497         * tests/test-c-stack.c (main): Add means to conditionally trigger
12498         non-overflow SIGSEGV.
12499         * tests/test-c-stack2.sh: New file.
12500
12501 2008-07-14  Bruno Haible  <bruno@clisp.org>
12502
12503         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
12504         Reported by Eric Blake.
12505
12506 2008-07-14  Sam Steingold  <sds@gnu.org>
12507             Bruno Haible  <bruno@clisp.org>
12508
12509         New module libsigsegv.
12510         * modules/libsigsegv: New file.
12511         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
12512         modifications.
12513         * MODULES.html.sh (Signal handling): New section.
12514
12515 2008-07-14  Bruno Haible  <bruno@clisp.org>
12516
12517         * modules/unictype/ctype-* (Description): Add the word "function".
12518         Improves the resulting doc in MODULES.html.
12519
12520 2008-07-12  Ben Pfaff  <blp@gnu.org>
12521
12522         Add longlong module.
12523         * modules/longlong: New file.
12524
12525 2008-07-12  Bruno Haible  <bruno@clisp.org>
12526
12527         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
12528         to empty.
12529
12530 2008-07-10  Ben Pfaff  <blp@gnu.org>
12531
12532         Add isnan module.
12533         * doc/posix-functions/isnan.texi: Mention new module.
12534         * lib/math.in.h: Define isnan macro if we have decided to replace
12535         it.
12536         * m4/isnan.m4: New file.
12537         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
12538         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
12539         also.
12540         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
12541         redundancy.
12542         * m4/math_h.m4: Initialize and substitute variables for isnan
12543         module.
12544         * modules/isnan: New file.
12545         * modules/isnan-tests: New file.
12546         * modules/math: Add substitutions for new module.
12547         * tests/test-isnan.c: New file.
12548         * MODULES.html.sh: Mention new module.
12549
12550 2008-07-10  Ben Pfaff  <blp@gnu.org>
12551
12552         Add isnanf module.
12553         * lib/isnanf.m4: New file.
12554         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
12555         (gl_HAVE_ISNANF_IN_LIBM): New macro.
12556         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
12557         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
12558         * modules/isnanf: New file.
12559         * modules/isnanf-tests: New file.
12560         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
12561         files.
12562         * tests/test-isnanf-nolibm.c: factored most of its contents into
12563         new file tests/test-isnanf.h.
12564         * tests/test-isnanf.h: New file.
12565         * tests/test-isnanf.c: New file.
12566         * MODULES.html.sh: Mention new module.
12567         * doc/glibc-functions/isnanf.texi: Mention new module.
12568
12569 2008-07-10  Ben Pfaff  <blp@gnu.org>
12570
12571         Add isnand module.
12572         * lib/isnand.h: New file.
12573         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
12574         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
12575         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
12576         functionality also.
12577         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
12578         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
12579         (gl_HAVE_ISNAND_IN_LIBM): New macro.
12580         * modules/isnand: New file.
12581         * modules/isnand-tests: New file.
12582         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
12583         files.
12584         * tests/test-isnand-nolibm.c: factored most of its contents into
12585         new file tests/test-isnand.h.
12586         * tests/test-isnand.h: New file.
12587         * tests/test-isnand.c: New file.
12588         * MODULES.html.sh: Mention new module.
12589
12590 2008-07-10  Ben Pfaff  <blp@gnu.org>
12591
12592         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
12593         * lib/isnand.h: Rename lib/isnand-nolibm.h.
12594         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
12595         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
12596         * modules/isnanf-nolibm: Update references to renamed files.
12597         * modules/isnand-nolibm: Likewise.
12598         * modules/isnanf-nolibm-tests: Likewise.
12599         * modules/isnand-nolibm-tests: Likewise.
12600         * lib/frexp.c: Likewise.
12601         * lib/isfinite.c: Likewise.
12602         * lib/signbitd.c: Likewise.
12603         * lib/signbitf.c: Likewise.
12604         * lib/vasnprintf.c: Likewise.
12605         * tests/test-ceilf1.c: Likewise.
12606         * tests/test-ceilf2.c: Likewise.
12607         * tests/test-floorf1.c: Likewise.
12608         * tests/test-floorf2.c: Likewise.
12609         * tests/test-frexp.c: Likewise.
12610         * tests/test-round1.c: Likewise.
12611         * tests/test-round2.c: Likewise.
12612         * tests/test-roundf1.c: Likewise.
12613         * tests/test-strtod.c: Likewise.
12614         * tests/test-trunc1.c: Likewise.
12615         * tests/test-trunc2.c: Likewise.
12616         * tests/test-truncf1.c: Likewise.
12617         * tests/test-truncf2.c: Likewise.
12618         * NEWS: Mention the renamed header files.
12619
12620 2008-07-11  Jim Meyering  <meyering@redhat.com>
12621
12622         vc-list-files: make the last-resort awk code more portable
12623         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
12624         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
12625         does not support it.
12626
12627 2008-07-10  Eric Blake  <ebb9@byu.net>
12628
12629         Work with tar's bootstrap.
12630         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
12631         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
12632         an m4 comment.
12633
12634 2008-07-09  Jim Meyering  <meyering@redhat.com>
12635
12636         posix-shell.m4: fix typo that made this test malfunction
12637         * m4/posix-shell.m4: Remove capitalization in variable name.
12638
12639 2008-07-08  Bruno Haible  <bruno@clisp.org>
12640
12641         * m4/onceonly.m4: Update comments.
12642         Reported by Ben Pfaff <blp@cs.stanford.edu>.
12643
12644 2008-07-04  Jim Meyering  <meyering@redhat.com>
12645
12646         * users.txt: Add vc-dwim.
12647         (bison, coreutils): Use the gitweb URL.
12648
12649 2008-07-03  Jim Meyering  <meyering@redhat.com>
12650
12651         * users.txt: Add libffcall.  From Sam Steingold.
12652
12653 2008-07-03  OndÅ™ej Vašík  <ovasik@redhat.com>
12654
12655         getdate.y: do not ignore TZ with relative day, month or year offset
12656         * lib/getdate.y (get_date): Move the tz-handling block to follow the
12657         relative-date-handling, since otherwise, the latter would clobber the
12658         sole output (an updated Start value) of the tz-handling block.
12659         * tests/test-getdate.c: Tests for the fix
12660
12661 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12662
12663         Recognize 'foo_LIBRARIES += libgnu.a'.
12664         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
12665         makefile snippet has already specified an installation location,
12666         also using '+='.
12667
12668 2008-07-02  OndÅ™ej Vašík  <ovasik@redhat.com>
12669
12670         getdate.y: factor out common actions
12671         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
12672         Use them in place of open-coded actions.
12673
12674 2008-07-01  Simon Josefsson  <simon@josefsson.org>
12675
12676         Add self-test for getdate module.
12677         * modules/getdate-tests: New file.
12678         * tests/test-getdate.c: New file.
12679
12680 2008-06-29  Bruno Haible  <bruno@clisp.org>
12681
12682         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
12683         .gitignore.
12684         Reported by Sylvain Beucler <beuc@beuc.net>.
12685
12686 2008-06-29  Bruno Haible  <bruno@clisp.org>
12687
12688         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
12689         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
12690
12691 2008-06-29  Bruno Haible  <bruno@clisp.org>
12692
12693         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
12694         EXTRA_DIST.
12695         Reported by Sylvain Beucler <beuc@beuc.net>.
12696
12697 2008-06-26  Jim Meyering  <meyering@redhat.com>
12698
12699         make several modules depend on the "open" module
12700         This provides slightly increased consistency when opening-for-write
12701         the name of a non-directory spelled with a trailing slash.
12702         * modules/chdir-safer: Likewise.
12703         * modules/chown: Likewise.
12704         * modules/clean-temp: Likewise.
12705         * modules/copy-file: Likewise.
12706         * modules/fchdir: Likewise.
12707         * modules/fcntl-safer: Likewise.
12708         * modules/pipe: Likewise.
12709         * modules/utime: Likewise.
12710         Prompted by Eric Blake and Bruno Haible.
12711
12712 2008-06-24  Andreas Schwab  <schwab@suse.de>
12713
12714         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
12715         literals can be used as initializers for global variables.
12716
12717 2008-06-23  Eric Blake  <ebb9@byu.net>
12718
12719         Make gnulib-cache.m4 easier to diff.
12720         * gnulib-tool (func_import): Allow newlines when reading cached
12721         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
12722
12723 2008-06-23  Bruno Haible  <bruno@clisp.org>
12724
12725         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
12726         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
12727         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
12728         m4/signalblocking.m4.
12729         (gl_PREREQ_SIGACTION): Don't invoke it.
12730         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
12731         gl_PREREQ_SIG_HANDLER_H.
12732         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
12733         Don't check for sigaction here.
12734
12735 2008-06-23  Bruno Haible  <bruno@clisp.org>
12736
12737         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
12738         (install_handlers): Don't set the SA_RESETHAND flag.
12739
12740 2008-06-23  Bruno Haible  <bruno@clisp.org>
12741
12742         * m4/sigaction.m4: Comment fixes.
12743         * lib/signal.in.h: Likewise.
12744
12745 2008-06-23  Eric Blake  <ebb9@byu.net>
12746
12747         Fix typo.
12748         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
12749
12750         Avoid SA_ namespace.
12751         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
12752         Reported by Ralf Wildenhues.
12753
12754         Avoid test failure due to SA_RESTORER.
12755         * tests/test-sigaction.c (SA_MASK): New macro.
12756         (main): Avoid failing due to extension flags being set.
12757         Reported by Jim Meyering.
12758
12759         Revert use of sig-handler.h in sigprocmask.c.
12760         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
12761         it requires the existence of struct sigaction.
12762         * lib/sigprocmask.c (handler_t): Restore typedef.
12763         (rpl_signal, old_handlers): Use local type.
12764
12765 2008-06-22  Bruno Haible  <bruno@clisp.org>
12766
12767         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
12768         conditionally.
12769         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
12770
12771 2008-06-22  Bruno Haible  <bruno@clisp.org>
12772
12773         * doc/posix-functions/siginterrupt.texi: Move note.
12774
12775         * lib/signal.in.h (SA_RESTART): New macro.
12776         * lib/sigaction.c: Update comment.
12777
12778         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
12779
12780         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
12781         (gl_PREREQ_SIGPROCMASK): Invoke it.
12782         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
12783
12784         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
12785
12786         * lib/sigprocmask.c: Update a comment.
12787
12788 2008-06-21  Eric Blake  <ebb9@byu.net>
12789
12790         Use sigaction module rather than signal().
12791         * modules/c-stack (Depends-on): Add sigaction.
12792         * modules/fatal-signal (Depends-on): Likewise.
12793         * modules/nanosleep (Depends-on): Likewise.
12794         * modules/sigprocmask (Files): Add sig-handler.h.
12795         * modules/sigaction (Files): Likewise.
12796         * lib/sig-handler.h (get_handler): New file, suggested by Paul
12797         Eggert.
12798         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
12799         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
12800         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
12801         (init_fatal_signals): Likewise.
12802         * lib/nanosleep.c (rpl_nanosleep): Likewise.
12803         (siginterrupt): Delete fallback.
12804         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
12805         instead.
12806         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
12807         siginterrupt.
12808
12809         New module sigaction, for mingw.
12810         * modules/sigaction: New module...
12811         * modules/sigaction-tests: ...and its test.
12812         * m4/sigaction.m4: New file.
12813         * lib/sigaction.c: Likewise.
12814         * tests/test-sigaction.c: Likewise.
12815         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
12816         * modules/signal (Makefile.am): Likewise.
12817         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
12818         needed.
12819         * doc/posix-headers/signal.texi (signal.h): Mention provided
12820         types.
12821         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
12822         that sigaction is preferable.
12823         * doc/posix-functions/sigaction.texi (sigaction): Mention new
12824         module.
12825         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
12826         sigaction.
12827
12828         Improve robustness of sigprocmask by overriding signal.
12829         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
12830         is in use.
12831         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
12832         (SIGKILL, SIGSTOP): Provide fallbacks.
12833         (rpl_signal): Implement.
12834         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
12835         signal can be called inside handlers.
12836
12837         Fix nanosleep module on mingw.
12838         * modules/nanosleep (Depends-on): Add sys_select.
12839         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
12840
12841         Fix licensing of sigprocmask.
12842         * modules/raise (License): Relicense as LGPL.
12843
12844 2008-06-21  Bruno Haible  <bruno@clisp.org>
12845
12846         * lib/propername.c (proper_name_utf8): Don't use the transliterated
12847         result if it contains question marks.
12848         Reported by Michael Geng <linux@michaelgeng.de>.
12849
12850 2008-06-19  Bruno Haible  <bruno@clisp.org>
12851
12852         Fix CVS-ism.
12853         * doc/gnulib.texi: Include updated-stamp.texi.
12854         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
12855         (updated-stamp.texi): New rule.
12856         (gnulib.info): Depend on it.
12857         * doc/.gitignore: Add updated-stamp.texi.
12858         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
12859
12860 2008-06-19  Bruno Haible  <bruno@clisp.org>
12861
12862         * doc/Makefile (gnulib.info): Update and simplify dependencies.
12863         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
12864
12865 2008-06-19  Eric Blake  <ebb9@byu.net>
12866
12867         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
12868         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
12869         Reported by Stepan Kasal.
12870
12871 2008-06-18  Bruno Haible  <bruno@clisp.org>
12872
12873         * lib/fatal-signal.c (init_fatal_signals): Add comment.
12874         Reported by Eric Blake.
12875
12876 2008-06-18  Eric Blake  <ebb9@byu.net>
12877
12878         Work around cygwin 1.5.25 strsignal bug.
12879         * tests/test-strsignal.c: Allow for const char *.
12880         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
12881
12882 2008-06-18  Simon Josefsson  <simon@josefsson.org>
12883
12884         * users.txt: Update URL to article and add author/date
12885         information.
12886
12887 2008-06-17  Bruno Haible  <bruno@clisp.org>
12888
12889         New macro gl_DISABLE_THREADS.
12890         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
12891         if the user did not pass --enable-threads or --disable-threads option.
12892         (gl_DISABLE_THREADS): New macro.
12893         Reported by Eric Blake <ebb9@byu.net>.
12894
12895 2008-06-17  Bruno Haible  <bruno@clisp.org>
12896
12897         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
12898         when the macro ignores it.
12899         Based on a patch by Eric Blake <ebb9@byu.net>.
12900
12901 2008-06-17  Bruno Haible  <bruno@clisp.org>
12902
12903         * modules/tls (License): Change to LGPLv2+.
12904         Reported by Eric Blake.
12905
12906 2008-06-17  Eric Blake  <ebb9@byu.net>
12907
12908         Simplify c-stack prerequisites.
12909         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
12910         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
12911         no longer requires <ucontext.h> to exist.  Optimize setrlimit
12912         check.
12913         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
12914         <sys/resource.h>.
12915
12916         Move c-stack test into testsuite.
12917         * modules/c-stack-tests: New file.
12918         * lib/c-stack.c [DEBUG]: Move test program...
12919         * tests/test-c-stack.c: ...into this new file.  Skip rather than
12920         fail test if sigaltstack is lacking.
12921         * tests/test-c-stack.sh: New driver file.
12922
12923 2008-06-16  Eric Blake  <ebb9@byu.net>
12924
12925         Use raise module consistently.
12926         * modules/fatal-signal (Depends-on): Add raise.
12927         * modules/sigprocmask (Depends-on): Likewise.
12928         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
12929         * lib/sigprocmask.c (sigprocmask): Likewise.
12930         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
12931         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
12932
12933         Fix compliance bug in sigpending.
12934         * lib/sigprocmask.c (sigpending): Return pending array via
12935         parameter, not return value.
12936
12937 2008-06-14  Eric Blake  <ebb9@byu.net>
12938
12939         Improve obstack-printf test code.
12940         * tests/test-obstack-printf.c (test_function): Fix comment, and
12941         simplify usage of obstack_* in macros.  Add a test for coverage.
12942         Reported by Bruno Haible.
12943
12944 2008-06-14  Bruno Haible  <bruno@clisp.org>
12945
12946         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
12947         array size as a constant, not as a const variable.
12948         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
12949         AC_USE_SYSTEM_EXTENSIONS.
12950         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
12951         Test whether the obstack_printf function actually exists.
12952         * modules/obstack-printf (Depends-on): Add extensions.
12953         (Include): Remove obstack.h.
12954         * modules/obstack-printf-posix (Depends-on): Add extensions.
12955         (Include): Remove obstack.h.
12956
12957 2008-06-13  Eric Blake  <ebb9@byu.net>
12958
12959         Add obstack-printf and obstack-printf-posix modules.
12960         * modules/obstack-printf: New file.
12961         * modules/obstack-printf-posix: Likewise.
12962         * MODULES.html.sh (Misc): Mention them.
12963         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
12964         Likewise.
12965         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
12966         Likewise.
12967         * modules/stdio (Makefile.am): Accomodate new modules.
12968         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
12969         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
12970         Declare.
12971         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
12972         functions.
12973         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
12974         (gl_REPLACE_OBSTACK_PRINTF): New macros
12975         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
12976         * tests/test-obstack-printf.c: New file.
12977         * modules/obstack-printf-tests: Likewise.
12978         * modules/obstack-printf-posix-tests: Likewise.
12979
12980 2008-06-11  Bruno Haible  <bruno@clisp.org>
12981
12982         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
12983         * lib/open.c: Include errno.h.
12984         (open): Fail when attempting to write to a file that has a trailing
12985         slash.
12986         * tests/test-open.c (main): Test against trailing slash bug.
12987         * doc/posix-functions/open.texi: Mention the trailing slash bug.
12988
12989 2008-06-10  Bruno Haible  <bruno@clisp.org>
12990
12991         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
12992         for $? to work inside the trap command, with various /bin/sh-s.
12993         * tests/test-vc-list-files-cvs.sh: Likewise.
12994
12995 2008-06-10  Bruno Haible  <bruno@clisp.org>
12996
12997         * lib/acl-internal.h: Don't include gettext.h here.
12998         * lib/set-mode-acl.c: Include gettext.h here.
12999         * lib/copy-acl.c: Likewise.
13000
13001 2008-06-10  Bruno Haible  <bruno@clisp.org>
13002
13003         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
13004         * lib/wait-process.c (wait_subprocess): Likewise.
13005         * lib/execute.h (execute): Add termsigp argument.
13006         * lib/execute.c (execute): Likewise.
13007         * lib/csharpcomp.c (compile_csharp_using_pnet,
13008         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
13009         * lib/csharpexec.c (execute_csharp_using_pnet,
13010         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
13011         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
13012         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
13013         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
13014         is_jikes_present): Update.
13015         * lib/javaexec.c (execute_java_class): Update.
13016         * lib/javaversion.c (execute_and_read_line): Update.
13017         * NEWS: Document the changes.
13018         Reported by Eric Blake.
13019
13020 2008-06-10  Eric Blake  <ebb9@byu.net>
13021
13022         Add missing include.
13023         * tests/test-strstr.c (includes): Add <signal.h>.
13024         * tests/test-strcasestr.c (includes): Likewise.
13025         * tests/test-memmem.c (includes): Likewise.
13026
13027 2008-06-10  Bruno Haible  <bruno@clisp.org>
13028
13029         * lib/wait-process.c (wait_subprocess): Add an assertion.
13030
13031 2008-06-10  Bruno Haible  <bruno@clisp.org>
13032
13033         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
13034
13035 2008-06-10  Bruno Haible  <bruno@clisp.org>
13036
13037         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
13038         using alarm().
13039         * tests/test-strcasestr.c (main): Likewise.
13040         * tests/test-strstr.c (main): Likewise.
13041
13042 2008-06-09  Bruno Haible  <bruno@clisp.org>
13043
13044         Work around the Solaris 10 ACE ACLs ABI change.
13045         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
13046         declare if ACL_NO_TRIVIAL is present.
13047         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
13048         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
13049         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
13050         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
13051         define if ACL_NO_TRIVIAL is present.
13052         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
13053         and use the current ABI.
13054         (file_has_acl): Use same #if condition as elsewhere.
13055         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
13056         in use, and use the current ABI.
13057         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
13058         Reported by Jim Meyering.
13059
13060 2008-06-09  Eric Blake  <ebb9@byu.net>
13061
13062         Work around environments that (stupidly) ignore SIGALRM.
13063         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
13064         before using alarm().
13065         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
13066         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
13067         Reported by Ian Beckwith <ianb@erislabs.net>.
13068
13069         Produce autobuild blurb earlier in log.
13070         * modules/autobuild (configure.ac-early): Move AB_INIT here.
13071
13072 2008-06-09  Jim Meyering  <meyering@redhat.com>
13073         and OndÅ™ej Vašík  <ovasik@redhat.com>
13074
13075         utimens.c: correct kernel bug work-around
13076         OndÅ™ej Vašík found that the invalid return value of 280 indicates
13077         failure, not success, and the kernel bug we're trying to work
13078         around affects not just the utimensat call, but also the fallback
13079         futimens call.
13080         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
13081         not success.
13082         [HAVE_FUTIMENS]: Use the same work-around, here.
13083
13084 2008-06-09  Jim Meyering  <meyering@redhat.com>
13085
13086         add more guards around definition of ACE_-related code
13087         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
13088         ALLOW and ACE_OWNER are also defined.
13089
13090 2008-06-08  Bruno Haible  <bruno@clisp.org>
13091
13092         * lib/acl-internal.h: Add me as co-author.
13093         * lib/file-has-acl.c: Likewise.
13094         * lib/set-mode-acl.c: Likewise.
13095         * lib/copy-acl.c: Likewise.
13096
13097 2008-06-08  Bruno Haible  <bruno@clisp.org>
13098
13099         Add support for AIX ACLs.
13100         * lib/acl-internal.h (acl_nontrivial): New declaration.
13101         * lib/file-has-acl.c (acl_nontrivial): New function.
13102         (file_has_acl): Add implementation using AIX 4 ACL API.
13103         * lib/set-mode-acl.c (qset_acl): Likewise.
13104         * lib/copy-acl.c (qcopy_acl): Likewise.
13105
13106 2008-06-08  Bruno Haible  <bruno@clisp.org>
13107
13108         Add support for HP-UX ACLs.
13109         * lib/acl-internal.h (acl_nontrivial): New declaration.
13110         * lib/file-has-acl.c (acl_nontrivial): New function.
13111         (file_has_acl): Add implementation using HP-UX 11 ACL API.
13112         * lib/set-mode-acl.c (qset_acl): Likewise.
13113         * lib/copy-acl.c (qcopy_acl): Likewise.
13114
13115 2008-06-08  Bruno Haible  <bruno@clisp.org>
13116
13117         Add support for Cygwin ACLs.
13118         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
13119         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
13120         the chmod_or_fchmod call.
13121         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
13122
13123 2008-06-08  Bruno Haible  <bruno@clisp.org>
13124
13125         Fix bug with setuid modes in Solaris 10+ code.
13126         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
13127         succeeded, when the mode contains some special bits.
13128
13129 2008-06-08  Bruno Haible  <bruno@clisp.org>
13130
13131         Add support for Solaris 7..10 ACLs.
13132         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
13133         declarations.
13134         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
13135         functions.
13136         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
13137         * lib/set-mode-acl.c (qset_acl): Likewise.
13138         * lib/copy-acl.c (qcopy_acl): Likewise.
13139
13140 2008-06-08  Bruno Haible  <bruno@clisp.org>
13141
13142         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
13143         declaration.
13144         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
13145         (acl_access_nontrivial): Remove MacOS X case.
13146         (file_has_acl): Use acl_extended_nontrivial.
13147         * lib/copy-acl.c (qcopy_acl): Likewise.
13148
13149 2008-06-08  Bruno Haible  <bruno@clisp.org>
13150
13151         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
13152
13153 2008-06-08  Jim Meyering  <meyering@redhat.com>
13154
13155         * modules/acl (Maintainer): Add Bruno Haible.
13156
13157 2008-06-07  Bruno Haible  <bruno@clisp.org>
13158
13159         Improve support for Tru64 ACLs.
13160         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
13161         ACL on OSF/1.
13162
13163 2008-06-07  Bruno Haible  <bruno@clisp.org>
13164
13165         Add support for MacOS X ACLs.
13166         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
13167         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
13168         * lib/set-mode-acl.c (qset_acl): Likewise.
13169         * lib/copy-acl.c (qcopy_acl): Likewise.
13170
13171 2008-06-07  Bruno Haible  <bruno@clisp.org>
13172
13173         Fix memory leak introduced on 2008-05-22.
13174         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
13175         use.
13176
13177 2008-06-07  Bruno Haible  <bruno@clisp.org>
13178
13179         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
13180         to construct an empty ACL.
13181
13182 2008-06-07  Bruno Haible  <bruno@clisp.org>
13183
13184         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
13185         precisely.
13186         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
13187
13188 2008-06-07  Bruno Haible  <bruno@clisp.org>
13189
13190         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
13191         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
13192
13193 2008-06-07  Bruno Haible  <bruno@clisp.org>
13194
13195         * doc/posix-functions/_setjmp.texi: Explain the use of this function
13196         regardless of POSIX.
13197         * doc/posix-functions/_longjmp.texi: Likewise.
13198         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
13199         SystemV platform in this case.
13200
13201 2008-06-06  Eric Blake  <ebb9@byu.net>
13202
13203         Document abort() bugs.
13204         * doc/posix-functions/abort.texi (abort): Mention anomalies.
13205
13206         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
13207         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
13208         sigsetjmp.
13209         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
13210         siglongjmp, but only as a macro.
13211         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
13212         is obsolete.
13213         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
13214
13215         Tweak documentation to cover cygwin argz bugs.
13216         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
13217         argz bug fix; no code change needed since no cygwin releases
13218         occurred between the last fix and the bug being tested.
13219         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
13220         module and recently fixed cygwin bugs.
13221         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
13222         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
13223         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
13224         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
13225         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
13226         Likewise.
13227         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
13228         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
13229         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
13230         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
13231         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
13232         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
13233         Likewise.
13234
13235         Avoid gcc warning on cygwin.
13236         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
13237         !ACL_NO_TRIVIAL]: Avoid unused variable.
13238
13239 2008-06-05  Eric Blake  <ebb9@byu.net>
13240
13241         Be tolerant of UNKNOWN version in gnulib-tool test dir.
13242         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
13243         git-version-gen fails to come up with a version.
13244         Reported by Simon Josefsson.
13245
13246 2008-06-05  Jim Meyering  <meyering@redhat.com>
13247             Paul Eggert  <eggert@cs.ucla.edu>
13248
13249         utimens.c: work around a probable Linux kernel bug
13250         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
13251         appears to be a kernel bug that causes utimensat to return 280
13252         instead of 0, indicating success.
13253
13254 2008-06-04  Bruno Haible  <bruno@clisp.org>
13255
13256         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
13257         2008-06-01 commit.
13258
13259 2008-06-04  Bruno Haible  <bruno@clisp.org>
13260
13261         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
13262         * lib/file-has-acl.c (acl_access_nontrivial): New function.
13263         (file_has_acl): Use it. Save errno afterwards.
13264         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
13265
13266 2008-06-03  Bruno Haible  <bruno@clisp.org>
13267
13268         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
13269         draft code. Simplify #ifs.
13270         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
13271         Put Solaris code after POSIX-draft code. Fix comments regarding
13272         Solaris 10, HP-UX. Mention Cygwin.
13273         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
13274
13275 2008-06-03  Eric Blake  <ebb9@byu.net>
13276
13277         Provide fallback for older kernels.
13278         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
13279         Provide runtime fallback if kernel lacks support.
13280         Reported by Mike Frysinger.
13281
13282 2008-06-02  Bruno Haible  <bruno@clisp.org>
13283
13284         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
13285         it exists.
13286
13287 2008-06-02  Bruno Haible  <bruno@clisp.org>
13288
13289         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
13290         * lib/copy-acl.c (qcopy_acl): Update comment.
13291
13292 2008-06-02  Bruno Haible  <bruno@clisp.org>
13293
13294         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
13295         like ACL APIs.
13296
13297 2008-06-02  Bruno Haible  <bruno@clisp.org>
13298
13299         * tests/test-file-has-acl.sh: Use different code for Cygwin.
13300         * tests/test-set-mode-acl.sh: Likewise.
13301         * tests/test-copy-acl.sh: Likewise.
13302         * tests/test-copy-file.sh: Likewise.
13303
13304 2008-06-02  Bruno Haible  <bruno@clisp.org>
13305
13306         * tests/test-file-has-acl.sh: Remove unused code.
13307
13308 2008-06-01  Bruno Haible  <bruno@clisp.org>
13309
13310         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
13311         (copy_acl): Just a wrapper around qcopy_acl that emits the error
13312         messages.
13313         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
13314
13315 2008-06-01  Bruno Haible  <bruno@clisp.org>
13316
13317         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
13318         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
13319         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
13320         APIs.
13321         * modules/acl-tests (configure.ac): Remove tests now contained in
13322         m4/acl.m4.
13323
13324 2008-06-02  Jim Meyering  <meyering@redhat.com>
13325
13326         announce-gen: use a better key-server host name
13327         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
13328         it may be more consistently reliable.  Suggested by Werner Koch
13329         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
13330
13331 2008-06-01  Bruno Haible  <bruno@clisp.org>
13332
13333         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
13334         Reported by Voroskoi Andras <voroskoi@gmail.com>.
13335
13336 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
13337
13338         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
13339
13340 2008-06-01  Bruno Haible  <bruno@clisp.org>
13341
13342         New ACL tests.
13343         * tests/test-file-has-acl.sh: New file.
13344         * tests/test-file-has-acl.c: New file.
13345         * tests/test-set-mode-acl.sh: New file.
13346         * tests/test-set-mode-acl.c: New file.
13347         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
13348         * tests/test-copy-acl.c: New file.
13349         * modules/acl-tests: New file, based on modules/copy-file-tests.
13350         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
13351         (Depends-on): Add acl-tests.
13352         (configure.ac): Remove checks.
13353         (Makefile.am): Don't create test-sameacls program here any more.
13354
13355 2008-06-01  Bruno Haible  <bruno@clisp.org>
13356
13357         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
13358         * tests/test-sameacls.c: Include progname.h.
13359         (main): Invoke set_program_name. Portability fixes for MacOS X,
13360         Solaris, HP-UX.
13361
13362 2008-06-01  Bruno Haible  <bruno@clisp.org>
13363
13364         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
13365         function.
13366         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
13367
13368 2008-06-01  Bruno Haible  <bruno@clisp.org>
13369
13370         * modules/rpmatch (Depends-on): Add strdup.
13371
13372 2008-06-01  Bruno Haible  <bruno@clisp.org>
13373
13374         * lib/pipe.c: Include unistd-safer.h.
13375         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
13376         * modules/pipe (Depends-on): Add unistd-safer.
13377
13378 2008-05-30  Simon Josefsson  <simon@josefsson.org>
13379
13380         * modules/autobuild (configure.ac): Call AB_INIT.
13381
13382 2008-05-30  Simon Josefsson  <simon@josefsson.org>
13383
13384         * tests/test-getaddrinfo.c: Don't print debug messages by default.
13385         Suggested by Bruno Haible <bruno@clisp.org>.
13386
13387 2008-05-30  Simon Josefsson  <simon@josefsson.org>
13388
13389         * tests/test-base64.c: Cast size_t to unsigned long when invoking
13390         printf.  Use %lu instead of %d.  Reported by Bruno Haible
13391         <bruno@clisp.org>.
13392
13393 2008-05-29  Eric Blake  <ebb9@byu.net>
13394
13395         Prefer new POSIX 200x interfaces over futimesat.
13396         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
13397         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
13398         when available.
13399         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
13400
13401 2008-05-28  Bruno Haible  <bruno@clisp.org>
13402
13403         * modules/stpcpy (License): Change to LGPLv2+.
13404         Requested by David Lutterkort <dlutter@redhat.com>.
13405
13406 2008-05-27  Bruno Haible  <bruno@clisp.org>
13407
13408         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
13409         current mingw.
13410         Reported by Jose E. Marchesi <jemarch@gnu.org>.
13411
13412 2008-05-27  Bruno Haible  <bruno@clisp.org>
13413
13414         * modules/iconv_open (Link): New section, from module 'iconv'.
13415         * modules/striconv (Link): Likewise.
13416         * modules/striconveh (Link): Likewise.
13417         * modules/xstriconv (Link): Likewise.
13418         * modules/unicodeio (Link): Likewise.
13419         * modules/propername (Link): Likewise.
13420         Reported by Jim Meyering.
13421
13422 2008-05-26  Jim Meyering  <meyering@redhat.com>
13423
13424         sha256: do not artificially restrict buffer length to be < 2^32
13425         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
13426         uint32_t to size_t.
13427         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
13428         to match.
13429
13430         avoid unaligned access errors, e.g., on sparc
13431         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
13432         direct access through a possibly-unaligned uint64* pointer.
13433         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
13434         direct access through a possibly-unaligned uint32* pointer.
13435         Prompted by this patch from Tom "spot" Callaway:
13436         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
13437
13438         sha512.c: fix typo in comment
13439         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
13440
13441 2008-05-25  Bruno Haible  <bruno@clisp.org>
13442
13443         * lib/set-mode-acl.c: Renamed from lib/acl.c.
13444         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
13445         (Makefile.am): Update lib_SOURCES.
13446
13447 2008-05-25  Bruno Haible  <bruno@clisp.org>
13448
13449         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
13450
13451 2008-05-25  Jim Meyering  <meyering@redhat.com>
13452
13453         useless-if-before-free: freed expr may have white-space differences
13454         * build-aux/useless-if-before-free: Recognize cases in which the
13455         freed expression differs from the tested one in embedded white
13456         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
13457         $1 was used, so we can't make any regexp shy.  Improved tests now
13458         detect this.
13459
13460         useless-if-before-free: accept white space in the expression.
13461         * build-aux/useless-if-before-free: For now, any white space
13462         in the expression must be identical in the free argument.
13463
13464         useless-if-before-free: efficiency tweak
13465         * build-aux/useless-if-before-free: Make the expression-matching
13466         regexp "shy".
13467         Make the *outer* regexp shy, not the expr-matching one.
13468
13469         update code-in-comment to accept cast of free arg
13470         * build-aux/useless-if-before-free: Update regexp.
13471
13472 2008-05-25  Bruno Haible  <bruno@clisp.org>
13473
13474         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
13475         * modules/copy-file-tests (Files, Makefile.am): Update.
13476         * tests/test-copy-file.c (func_test_copy): Update.
13477
13478 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
13479
13480         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
13481
13482 2008-05-23  Bruno Haible  <bruno@clisp.org>
13483
13484         Improve support for ACLs on OSF/1.
13485         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
13486         Remove fallback for unknown flavors of ACLs.
13487
13488 2008-05-22  Bruno Haible  <bruno@clisp.org>
13489
13490         Add support for ACLs on OSF/1.
13491         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
13492         replacements.
13493         (acl_free_text): New macro fallback.
13494         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
13495         acl_free.
13496         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
13497         acl_free_text function. Require AC_C_INLINE.
13498
13499 2008-05-22  Bruno Haible  <bruno@clisp.org>
13500
13501         Make copy_acl work on MacOS X 10.5.
13502         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
13503         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
13504         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
13505         If MODE_INSIDE_ACL, don't assume that every system has the same text
13506         representation for ACLs as FreeBSD.
13507         * lib/copy-acl.c (copy_acl): Add support for platforms with
13508         !MODE_INSIDE_ACL.
13509         * lib/file-has-acl.c (file_has_acl): Likewise.
13510         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
13511         FreeBSD, MacOS X, or IRIX, respectively.
13512
13513 2008-05-22  Bruno Haible  <bruno@clisp.org>
13514
13515         * lib/acl.h: Don't include <sys/acl.h>.
13516         (GETACLCNT): Move fallback to lib/acl-internal.h.
13517         * lib/acl-internal.h: Include <sys/acl.h> here.
13518         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
13519
13520 2008-05-22  Bruno Haible  <bruno@clisp.org>
13521
13522         Split off copy_acl function to separate file.
13523         * lib/copy-acl.c: New file, extracted from lib/acl.c.
13524         * lib/acl.c (copy_acl): Moved function to separate file.
13525         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
13526         * modules/acl (Files): Add lib/copy-acl.c.
13527         (Makefiles.am): Augment lib_SOURCES.
13528
13529 2008-05-22  Bruno Haible  <bruno@clisp.org>
13530
13531         * modules/copy-file-tests: New file.
13532         * tests/test-copy-file.sh: New file.
13533         * tests/test-copy-file.c: New file.
13534         * tests/test-copy-file-sameacls.c: New file.
13535
13536 2008-05-22  Eric Blake  <ebb9@byu.net>
13537
13538         Avoid gcc warning.
13539         * tests/test-memcmp.c (main): Pass NULL indirectly.
13540
13541 2008-05-21  Bruno Haible  <bruno@clisp.org>
13542
13543         Add reference doc about ACLs.
13544         * doc/acl-resources.txt: New file.
13545         * doc/acl-cygwin.txt: New file.
13546
13547 2008-05-21  Bruno Haible  <bruno@clisp.org>
13548
13549         Avoid one more warning from gcc.
13550         * lib/vasnprintf.c (IF_LINT): Update comments.
13551         (VASNPRINTF): Use it also for the 'prefix' array initializer.
13552
13553 2008-05-21  Jim Meyering  <meyering@redhat.com>
13554
13555         avoid a warning from gcc
13556         * lib/vasnprintf.c (IF_LINT): Define.
13557         (scale10_round_decimal_long_double):
13558         Use it to avoid a "may be used uninitialized" warning.
13559         (scale10_round_decimal_double): Likewise.
13560
13561 2008-05-21  Simon Josefsson  <simon@josefsson.org>
13562
13563         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
13564         declared.
13565
13566 2008-05-20  Bruno Haible  <bruno@clisp.org>
13567
13568         * tests/test-memcmp.c (main): Test also the sign of the result. Test
13569         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
13570
13571 2008-05-20  Simon Josefsson  <simon@josefsson.org>
13572
13573         * modules/memcmp-tests: New file.
13574         * tests/test-memcmp.c: New file.
13575
13576 2008-05-19  Bruno Haible  <bruno@clisp.org>
13577
13578         * modules/propername (Notice, configure.ac): Put quoted "..." into
13579         --keyword option.
13580         * lib/propername.h: Update comments accordingly.
13581         Reported by Eric Blake.
13582
13583 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
13584
13585         * modules/getpass-gnu (Depends-on): Add fseeko.
13586
13587 2008-05-19  Simon Josefsson  <simon@josefsson.org>
13588
13589         * modules/base64-tests: New file.
13590
13591 2008-05-19  Bo Borgerson <gigabo@gmail.com>
13592
13593         * lib/base64.c (base64_decode_ctx): If a decode context structure
13594         was passed in use it to ignore newlines.  If a context structure
13595         was _not_ passed in, continue to treat newlines as garbage (this
13596         is the historical behavior).  Formerly base64_decode.
13597         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
13598         takes a decode context structure.
13599         * lib/base64.h (base64_decode): Macro for four-argument calls.
13600         (base64_decode_alloc): Likewise.
13601         * lib/base64.c (base64_decode_ctx): If a decode context structure
13602         was passed in use it to ignore newlines.  If a context structure
13603         was _not_ passed in, continue to treat newlines as garbage (this
13604         is the historical behavior).  Formerly base64_decode.
13605         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
13606         takes a decode context structure.
13607         * lib/base64.h (base64_decode): Macro for four-argument calls.
13608         (base64_decode_alloc): Likewise.
13609
13610 2008-05-19  Jim Meyering  <meyering@redhat.com>
13611
13612         avoid a warning from gcc
13613         * lib/trim.c (IF_LINT): Define.
13614         (trim2): Use it to avoid a "may be used uninitialized" warning.
13615
13616         Fix doc typo.
13617         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
13618
13619 2008-05-19  Bruno Haible  <bruno@clisp.org>
13620
13621         * doc/glibc-functions/getpass.texi: Document limits of other
13622         implementations.
13623
13624 2008-05-19  Simon Josefsson  <simon@josefsson.org>
13625             Bruno Haible <bruno@clisp.org>
13626
13627         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
13628
13629 2008-05-18  Bruno Haible  <bruno@clisp.org>
13630
13631         * modules/propername: New file, from GNU gettext.
13632         * lib/propername.h: New file, from GNU gettext.
13633         * lib/propername.c: New file, from GNU gettext.
13634         * MODULES.html.sh (Internationalization functions): Add propername.
13635
13636 2008-05-16  Jim Meyering  <meyering@redhat.com>
13637             Bruno Haible  <bruno@clisp.org>
13638
13639         Avoid some warnings from "gcc -Wshadow".
13640         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
13641
13642 2008-05-15  Eric Blake  <ebb9@byu.net>
13643
13644         Extend previous patch to cygwin 1.7.0.
13645         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
13646         fast implementation in cygwin >= 1.7.0.
13647         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
13648         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
13649
13650 2008-05-15  Bruno Haible  <bruno@clisp.org>
13651
13652         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
13653         implementation in glibc >= 2.9.
13654         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
13655         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
13656
13657 2008-05-15  Bruno Haible  <bruno@clisp.org>
13658
13659         * MODULES.html.sh (Internationalization functions): Remove linebreak.
13660         (Unicode string functions): Add unilbrk/*.
13661         Reported by Karl Berry.
13662
13663 2008-05-15  Eric Blake  <ebb9@byu.net>
13664
13665         Fix violation of <stdbool.h> replacement in regex.
13666         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
13667         * lib/regexec.c (re_search_internal): Likewise.
13668         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
13669
13670 2008-05-15  Jim Meyering  <meyering@redhat.com>
13671
13672         avoid distracting test output when git or cvs is not found
13673         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
13674         * tests/test-vc-list-files-git.sh: Likewise.
13675
13676 2008-05-15  Eric Blake  <ebb9@byu.net>
13677
13678         Glibc finally accepted the memmem speedup code, bugzilla #5514.
13679         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
13680         glibc version.
13681         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
13682         * doc/posix-functions/strstr.texi (strstr): Likewise.
13683         * lib/str-two-way.h (MAX): Sychronize with glibc.
13684
13685 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
13686
13687         * lib/regcomp.c (optimize_utf8): Add a note on why we test
13688         opr.ctx_type.
13689         (calc_first): Initialize constraint field.
13690         (duplicate_node_closure): Use it instead of special casing ANCHORS.
13691         Fix grammar.
13692         (duplicate_node): Merge constraint field for all node types.
13693         (calc_eclosure_iter): Look at constraint field for all node types.
13694         * lib/regex_internal.c (create_cd_newstate): Don't look at
13695         opr.ctx_type.
13696
13697 2008-05-14  Bruno Haible  <bruno@clisp.org>
13698
13699         Help GCC to do better code generation.
13700         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
13701         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
13702         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
13703         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
13704         Declare with attribute 'malloc' if supported.
13705
13706 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
13707
13708         use "echo STR|wc -c" rather than unportable "expr length STR"
13709         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
13710         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
13711
13712 2008-05-14  Jim Meyering  <meyering@redhat.com>
13713
13714         use dd ibs=$n count=1 ... rather than less-portable head -c$n
13715         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
13716         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
13717         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
13718         via Collin Lasse.
13719
13720 2008-05-14  Eric Blake  <ebb9@byu.net>
13721
13722         Avoid quadratic growth in gl_LIBSOURCES.
13723         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
13724         Suggested by Bruno Haible.
13725
13726         Test xmemdup0.
13727         * modules/xmemdup0-tests: New file.
13728         * tests/test-xmemdup0.c: Likewise.
13729
13730 2008-05-13  Eric Blake  <ebb9@byu.net>
13731
13732         Split xmemdup0 into its own module.
13733         * modules/xmemdup0: New file.
13734         * lib/xmemdup0.h: Likewise.
13735         * lib/xmemdup0.c: Likewise.
13736         * MODULES.html.sh (Memory management functions): Add xmemdup0.
13737         * lib/xalloc.h (xmemdup0): Remove.
13738         * lib/xmalloc.c (xmemdup0): Likewise.
13739
13740 2008-05-13  Eric Blake  <ebb9@byu.net>
13741             Bruno Haible  <bruno@clisp.org>
13742
13743         Reduce number of forks required during autoconf.
13744         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
13745         and gl_LIBSOURCES_DIR.
13746         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
13747         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
13748         m4_syscmd per file.
13749         <m4_foreach_w>: Move...
13750         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
13751
13752 2008-05-13  Eric Blake  <ebb9@byu.net>
13753
13754         * gnulib-tool: Fix various comment typos.
13755
13756 2008-05-12  Bruno Haible  <bruno@clisp.org>
13757
13758         Tailor the linebreaking algorithm.
13759         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
13760
13761 2008-05-12  Bruno Haible  <bruno@clisp.org>
13762
13763         Update to Unicode 5.0.0.
13764         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
13765         LBP_JV, LBP_JT. Redistribute values.
13766         (unilbrk_table): Change size.
13767         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
13768         Unicode TR#14 rev. 22.
13769         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
13770         LBP_JV, LBP_JT. Redistribute values.
13771         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
13772         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
13773         Update.
13774         * lib/unilbrk/lbrkprop1.h: Regenerated.
13775         * lib/unilbrk/lbrkprop2.h: Regenerated.
13776         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
13777         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
13778         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
13779         Likewise.
13780         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
13781         Likewise.
13782         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
13783         result.
13784         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
13785         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
13786         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
13787         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
13788         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
13789         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
13790
13791 2008-05-11  Bruno Haible  <bruno@clisp.org>
13792
13793         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
13794
13795 2008-05-11  Bruno Haible  <bruno@clisp.org>
13796
13797         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
13798         * modules/unilbrk/gen-lbrk: New file.
13799
13800 2008-05-11  Bruno Haible  <bruno@clisp.org>
13801
13802         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
13803         * m4/sha512.m4 (gl_SHA512): Likewise.
13804
13805 2008-05-11  Jim Meyering  <meyering@redhat.com>
13806
13807         New modules: crypto/sha256, crypto/sha512 (from coreutils)
13808         * modules/crypto/sha256: New file.
13809         * modules/crypto/sha512: Likewise.
13810         * lib/sha256.c: Likewise.
13811         * lib/sha256.h: Likewise.
13812         * lib/sha512.c: Likewise.
13813         * lib/sha512.h: Likewise.
13814         * lib/u64.h: Likewise.
13815         * m4/sha256.m4: Likewise.
13816         * m4/sha512.m4: Likewise.
13817         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
13818
13819 2008-05-10  Bruno Haible  <bruno@clisp.org>
13820
13821         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
13822         (Input/Output <stdio.h>): Add xprintf.
13823         (Signal handling <signal.h>): Add strsignal.
13824         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
13825         (Core language properties): Add func.
13826         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
13827         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
13828         strings.
13829         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
13830         (Input/output): New section.
13831         (File system functions): Add openat-die, stat-macros.
13832         (Networking functions): Add sockets.
13833         (Unicode string functions): Add unictype/*.
13834         (Support for building libraries and executables): Add gperf.
13835         (Support for building documentation): Add agpl-3.0.
13836         (Misc): Add nocrash.
13837
13838 2008-05-10  Bruno Haible  <bruno@clisp.org>
13839
13840         * modules/unictype/gen-ctype: New file.
13841
13842 2008-05-10  Jim Meyering  <meyering@redhat.com>
13843
13844         Make chdir-safer.c more efficient on a system with no symlinks.
13845         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
13846         also if ELOOP is zero.  Suggested by Bruno Haible.
13847
13848         Make chdir-safer.c slightly safer.
13849         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
13850         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
13851
13852         Avoid compile failure on systems without ELOOP (like mingw).
13853         * lib/chdir-safer.c (ELOOP): Define if not already defined.
13854         Reported by Bruno Haible.
13855
13856 2008-05-10  Bruno Haible  <bruno@clisp.org>
13857
13858         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
13859         (is_utf8_encoding): Use a case-insensitive comparison.
13860         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
13861         streq.
13862
13863 2008-05-10  Bruno Haible  <bruno@clisp.org>
13864
13865         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
13866         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
13867         * lib/unilbrk/ulc-common.h (iconv_string_length,
13868         iconv_string_keeping_offsets): Remove declarations.
13869         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
13870         Don't include <iconv.h>, streq.h, xsize.h.
13871         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
13872         conversion.
13873         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
13874         <iconv.h>, streq.h, xsize.h.
13875         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
13876         conversion.
13877         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
13878         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
13879         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
13880         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
13881
13882 2008-05-10  Bruno Haible  <bruno@clisp.org>
13883
13884         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
13885         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
13886
13887         * modules/unilbrk/u32-width-linebreaks-tests: New file.
13888         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
13889
13890         * modules/unilbrk/u16-width-linebreaks-tests: New file.
13891         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
13892
13893         * modules/unilbrk/u8-width-linebreaks-tests: New file.
13894         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
13895
13896         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
13897         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
13898
13899         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
13900         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
13901
13902         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
13903         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
13904
13905         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
13906         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
13907
13908 2008-05-10  Bruno Haible  <bruno@clisp.org>
13909
13910         Split up 'linebreak' module.
13911         * lib/unilbrk.h: New file, based on lib/linebreak.h.
13912         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
13913         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
13914         modifications.
13915         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
13916         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
13917         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
13918         lib/linebreak.c.
13919         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
13920         lib/linebreak.c.
13921         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
13922         lib/linebreak.c.
13923         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
13924         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
13925         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
13926         lib/linebreak.c.
13927         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
13928         lib/linebreak.c.
13929         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
13930         lib/linebreak.c.
13931         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
13932         lib/linebreak.c.
13933         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
13934         lib/linebreak.c.
13935         * modules/unilbrk/base: New file.
13936         * modules/unilbrk/tables: New file.
13937         * modules/unilbrk/u8-possible-linebreaks: New file.
13938         * modules/unilbrk/u16-possible-linebreaks: New file.
13939         * modules/unilbrk/u32-possible-linebreaks: New file.
13940         * modules/unilbrk/ulc-common: New file.
13941         * modules/unilbrk/ulc-possible-linebreaks: New file.
13942         * modules/unilbrk/u8-width-linebreaks: New file.
13943         * modules/unilbrk/u16-width-linebreaks: New file.
13944         * modules/unilbrk/u32-width-linebreaks: New file.
13945         * modules/unilbrk/ulc-width-linebreaks: New file.
13946         * lib/linebreak.h: Remove file.
13947         * lib/linebreak.c: Remove file.
13948         * m4/linebreak.m4: Remove file.
13949         * modules/linebreak: Remove file.
13950         * NEWS: Mention the changes.
13951
13952 2008-05-09  Eric Blake  <ebb9@byu.net>
13953
13954         Add xmemdup0.
13955         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
13956         implementation.
13957         * lib/xmalloc.c (xmemdup0): New C implementation.
13958
13959 2008-05-08  Bruno Haible  <bruno@clisp.org>
13960
13961         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
13962
13963 2008-05-07  Eric Blake  <ebb9@byu.net>
13964
13965         Support cross-compilation of <wctype.h>.
13966         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
13967         AC_CACHE_CHECK.
13968
13969 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
13970
13971         * build-aux/vc-list-files: Add support for bzr.
13972
13973 2008-05-03  Jim Meyering  <meyering@redhat.com>
13974
13975         avoid failed assertion with tight malloc
13976         * tests/test-getndelim2.c: Correct an off-by-one assertion.
13977
13978 2008-05-03  Simon Josefsson  <simon@josefsson.org>
13979
13980         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
13981         are needed from arpa/inet.h.
13982         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
13983         Reported by Bruno Haible.
13984
13985 2008-05-02  Jim Meyering  <meyering@redhat.com>
13986
13987         avoid compilation error on FreeBSD 6
13988         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
13989
13990 2008-05-01  Jim Meyering  <meyering@redhat.com>
13991
13992         useless-if-before-free: correct --help's exit status description
13993         * build-aux/useless-if-before-free (usage): Like grep, exit 0
13994         for one or more matches, etc.  Reported by Bruno Haible.
13995
13996         vc-list-files: make the stand-alone gnulib test work
13997         * modules/vc-list-files-tests (configure.ac):
13998         Define and AC_SUBST abs_aux_dir.
13999         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
14000         $(abs_top_srcdir) to each script and having each of them
14001         duplicate the work of setting PATH, set PATH here, using
14002         the new variable, abs_aux_dir instead.
14003         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
14004         * tests/test-vc-list-files-git.sh: Likewise.
14005         Reported by Bruno Haible.
14006
14007 2008-05-01  Bruno Haible  <bruno@clisp.org>
14008
14009         * lib/getndelim2.c (getndelim2): Fix newsize computation during
14010         reallocation. Rename 'done' to 'found_delimiter'.
14011
14012 2008-05-01  Jim Meyering  <meyering@redhat.com>
14013
14014         vc-list-files: accommodate /bin/sh like the one from Solaris 10
14015         * build-aux/vc-list-files: Use `...`, not $(...).
14016
14017 2008-04-30  Jim Meyering  <meyering@redhat.com>
14018
14019         add tests for vc-list-files
14020         * modules/vc-list-files-tests: New module.
14021         * tests/test-vc-list-files-cvs.sh: New file.
14022         * tests/test-vc-list-files-git.sh: New file.
14023
14024         avoid a warning from gcc
14025         * lib/getndelim2.c (IF_LINT): Define.
14026         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
14027
14028         vc-list-files: work properly with build-aux/cvsu, too
14029         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
14030         to all cvs-based clauses.
14031
14032         vc-list-files: work properly in the CVS+awk case, too
14033         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
14034
14035         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
14036         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
14037         take more than one file argument, so .  Add quotes, just in case $dir
14038         ever contains a shell meta-character.  Prompted by Soren Hansen in
14039         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
14040
14041 2008-04-29  Eric Blake  <ebb9@byu.net>
14042
14043         Optimize getndelim2 to use block operations when possible.
14044         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
14045         freadseek, and memchr2.
14046         * lib/getndelim2.c (getndelim2): Use them for block reads.
14047
14048 2008-04-29  Bruno Haible  <bruno@clisp.org>
14049
14050         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
14051         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
14052         * modules/inet_ntop (Depends-on): Add extensions.
14053         * modules/inet_pton (Depends-on): Likewise.
14054         Reported by Simon Josefsson.
14055
14056 2008-04-29  Jim Meyering  <meyering@redhat.com>
14057
14058         When the is more than one match in a block, match all of them.
14059         * build-aux/useless-if-before-free: Iterate through each block
14060         until there are no more matches.
14061
14062         Fix broken useless-if-before-free script.
14063         * build-aux/useless-if-before-free: Fix typo: missing "?" after
14064         the expression to match cast of argument to free-like function.
14065
14066 2008-04-29  Eric Blake  <ebb9@byu.net>
14067
14068         Use new header.
14069         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
14070
14071 2008-04-29  Jim Meyering  <meyering@redhat.com>
14072
14073         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
14074         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
14075         by gnulib to exist and to declare e.g., inet_ntop.
14076         Don't include "inet_ntop.h", now removed.
14077
14078         * m4/arpa_inet_h.m4: Remove trailing blanks.
14079
14080 2008-04-29  Eric Blake  <ebb9@byu.net>
14081
14082         Silence valgrind on safe reads beyond potential array bounds.
14083         * lib/rawmemchr.valgrind: New file.
14084         * lib/strchrnul.valgrind: Likewise.
14085         * modules/rawmemchr (Files): Distribute new file.
14086         * modules/strchrnul (Files): Likewise.
14087         Suggested by Bruno Haible.
14088
14089 2008-04-29  Bruno Haible  <bruno@clisp.org>
14090
14091         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
14092         (inet_ntop, inet_pton): Change portability warning's wording.
14093         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
14094         Invoke gl_CHECK_NEXT_HEADERS.
14095         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
14096         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
14097         set ARPA_INET_H.
14098         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
14099         * modules/arpa_inet (Description): No longer only for systems that
14100         lack it.
14101         (Depends-on): Add include_next.
14102         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
14103         HAVE_ARPA_INET_H.
14104
14105 2008-04-29  Jim Meyering  <meyering@redhat.com>
14106
14107         * modules/mkdir (License): Re-license as LGPLv2+.
14108
14109 2008-04-29  Bruno Haible  <bruno@clisp.org>
14110
14111         * modules/rawmemchr (Maintainer): Set to Eric.
14112         * modules/strchrnul (Maintainer): Likewise.
14113
14114 2008-04-29  Simon Josefsson  <simon@josefsson.org>
14115
14116         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
14117         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
14118
14119         * modules/arpa_inet (arpa/inet.h): Use them.
14120
14121 2008-04-28  Eric Blake  <ebb9@byu.net>
14122
14123         Test getndelim2.
14124         * modules/getndelim2-tests: New file.
14125         * tests/test-getndelim2.c: Likewise.
14126         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
14127         stream.
14128         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
14129
14130         * MODULES.html.sh: Document new module.
14131
14132 2008-04-20  Bruno Haible  <bruno@clisp.org>
14133
14134         * lib/c-stack.c (die): Use raise.
14135         * modules/c-stack (Depends-on): Add raise.
14136
14137 2008-04-28  Bruno Haible  <bruno@clisp.org>
14138
14139         Expect rpmatch to be declared.
14140         * lib/yesno.c (rpmatch): Remove declaration.
14141
14142         Declare rpmatch.
14143         * lib/stdlib.in.h (rpmatch): New declaration.
14144         * lib/rpmatch.c: Include <stdlib.h> first.
14145         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
14146         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
14147         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
14148         HAVE_RPMATCH.
14149         * modules/rpmatch (Depends-on): Add stdlib, extensions.
14150         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
14151         (Include): Set to <stdlib.h>.
14152         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
14153         HAVE_RPMATCH.
14154         * NEWS: Document the change.
14155
14156 2008-04-28  Bruno Haible  <bruno@clisp.org>
14157
14158         Change rpmatch to use nl_langinfo when appropriate.
14159         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
14160         (N_): New macro.
14161         (localized_pattern): New function/macro.
14162         (try): Remove match, nomatch arguments. Copy the pattern into safe
14163         memory before caching it.
14164         (rpmatch): Use localized_pattern. Add translator comments.
14165         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
14166         Suggested by Eric Blake.
14167         * modules/rpmatch (Depends-on): Add stdbool.
14168
14169 2008-04-28  Eric Blake  <ebb9@byu.net>
14170
14171         Add rawmemchr module, matching glibc.
14172         * modules/string (Makefile.am): New indicator.
14173         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
14174         * lib/string.in.h (rawmemchr): Declare when appropriate.
14175         * modules/rawmemchr: New file.
14176         * m4/rawmemchr.m4: Likewise.
14177         * lib/rawmemchr.c: Likewise.
14178         * modules/rawmemchr-tests: Likewise.
14179         * tests/test-rawmemchr.c: Likewise.
14180         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
14181         module.
14182         * modules/strchrnul (Depends-on): Add rawmemchr.
14183         * lib/strchrnul.c (strchrnul): Optimize a corner case.
14184
14185         Whitespace cleanup.
14186         * tests/test-strchrnul.c: Reindent.
14187         * lib/strchrnul.c: Likewise.
14188
14189         Optimize and test strchrnul.
14190         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
14191         * modules/strchrnul-tests: New file.
14192         * tests/test-strchrnul.c: Likewise.
14193
14194         Remove intprops dependency.
14195         * modules/memchr (Depends-on): Remove intprops.
14196         * modules/memrchr (Depends-on): Likewise.
14197         * modules/memchr2 (Depends-on): Likewise.
14198         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
14199         * lib/memrchr.c (__memrchr): Likewise.
14200         * lib/memrchr2.c (memchr2): Likewise.
14201         Reported by Simon Josefsson.
14202
14203 2008-04-28  Simon Josefsson  <simon@josefsson.org>
14204
14205         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
14206         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14207
14208 2008-04-28  Simon Josefsson  <simon@josefsson.org>
14209
14210         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
14211
14212         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
14213
14214         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
14215
14216         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
14217         declarations.
14218         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
14219
14220         * m4/inet_pton.m4: Don't check for header files.
14221
14222         * m4/inet_ntop.m4: Don't check for header files.
14223
14224 2008-04-28  Simon Josefsson  <simon@josefsson.org>
14225
14226         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
14227         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
14228         trigger for cygwin).
14229         Reported by Bruno Haible  <bruno@clisp.org>.
14230
14231 2008-04-28  Bruno Haible  <bruno@clisp.org>
14232
14233         * doc/posix-functions/strdup.texi: Mention mingw problem.
14234
14235 2008-04-27  Bruno Haible  <bruno@clisp.org>
14236
14237         * modules/stat-time-tests (Depends-on): Add sleep.
14238         * tests/test-stat-time.c (force_unlink): New function.
14239         (cleanup): Use it.
14240         (test_mtime): Remove the ctime related tests.
14241         (test_ctime): New function, containing the ctime related tests.
14242         (main): Call test_ctime, except on native Windows platforms.
14243
14244 2008-04-27  Bruno Haible  <bruno@clisp.org>
14245
14246         * lib/rpmatch.c (rpmatch): Add some comments.
14247         Reported by James Youngman <jay@gnu.org>.
14248
14249 2008-04-27  Bruno Haible  <bruno@clisp.org>
14250
14251         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
14252         quiet NaNs.
14253
14254 2008-04-27  Bruno Haible  <bruno@clisp.org>
14255
14256         Make test-yesno.sh work on mingw.
14257         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
14258         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
14259         (main): Set stdin to binary mode.
14260         * modules/yesno-tests (Depends-on): Add binary-io.
14261
14262 2008-04-27  Bruno Haible  <bruno@clisp.org>
14263
14264         Fix 'isfinite' on x86, x86_64, ia64 platforms.
14265         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
14266         argument that lie outside the IEEE 854 domain.
14267         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
14268         (gl_ISFINITE): Use it.
14269         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
14270
14271 2008-04-27  Bruno Haible  <bruno@clisp.org>
14272
14273         Allow local renaming in config.h.
14274         * lib/memrchr.c (memrchr): Don't undefine outside libc.
14275
14276 2008-04-27  Bruno Haible  <bruno@clisp.org>
14277
14278         * lib/memchr.c (__memchr): Change type of 'i'.
14279         * lib/memchr2.c (memchr2): Likewise.
14280
14281 2008-04-26  Eric Blake  <ebb9@byu.net>
14282         and Bruno Haible  <bruno@clisp.org>
14283
14284         Optimize and test memrchr.
14285         * modules/memrchr (Depends-on): Add intprops.
14286         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
14287         * modules/memrchr-tests: New file.
14288         * tests/test-memrchr.c: New file.
14289
14290 2008-04-26  Bruno Haible  <bruno@clisp.org>
14291
14292         Add tentative support for DragonFly BSD.
14293         * lib/stdio-impl.h: Add macros for DragonFly BSD.
14294         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
14295         fp.
14296         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
14297         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
14298         * lib/fpurge.c (fpurge): Likewise.
14299         * lib/freadable.c (freaadable): Likewise.
14300         * lib/freadahead.c (freadahead): Likewise.
14301         * lib/freading.c (freading): Likewise.
14302         * lib/freadptr.c (freadptr): Likewise.
14303         * lib/freadseek.c (freadptrinc): Likewise.
14304         * lib/fseeko.c (fseeko): Likewise.
14305         * lib/fseterr.c (fseterr): Likewise.
14306         * lib/fwritable.c (fwritable): Likewise.
14307         * lib/fwriting.c (fwriting): Likewise.
14308
14309 2008-04-26  Bruno Haible  <bruno@clisp.org>
14310
14311         * lib/stdio-impl.h: New file.
14312         * lib/fbufmode.c: Include stdio-impl.h.
14313         (fbufmode): Use fp_, remove redundant #defines.
14314         * lib/fflush.c: Include stdio-impl.h.
14315         (clear_ungetc_buffer): Remove redundant #defines.
14316         * lib/fpurge.c: Include stdio-impl.h.
14317         (fpurge): Remove redundant #defines.
14318         * lib/freadable.c: Include stdio-impl.h.
14319         (freadable): Remove redundant #defines.
14320         * lib/freadahead.c: Include stdio-impl.h.
14321         (freadahead): Remove redundant #defines.
14322         * lib/freading.c: Include stdio-impl.h.
14323         (freading): Remove redundant #defines.
14324         * lib/freadptr.c: Include stdio-impl.h.
14325         (freadptr): Remove redundant #defines.
14326         * lib/freadseek.c: Include stdio-impl.h.
14327         (freadptrinc): Remove redundant #defines.
14328         * lib/fseeko.c: Include stdio-impl.h.
14329         (rpl_fseeko): Remove redundant #defines.
14330         * lib/fseterr.c: Include stdio-impl.h.
14331         (fseterr): Remove redundant #defines.
14332         * lib/fwritable.c: Include stdio-impl.h.
14333         (fwritable: Remove redundant #defines.
14334         * lib/fwriting.c: Include stdio-impl.h.
14335         (fwriting): Remove redundant #defines.
14336         * modules/fbufmode (Files): Add lib/stdio-impl.h.
14337         * modules/fflush (Files): Likewise.
14338         * modules/fpurge (Files): Likewise.
14339         * modules/freadable (Files): Likewise.
14340         * modules/freadahead (Files): Likewise.
14341         * modules/freading (Files): Likewise.
14342         * modules/freadptr (Files): Likewise.
14343         * modules/freadseek (Files): Likewise.
14344         * modules/fseeko (Files): Likewise.
14345         * modules/fseterr (Files): Likewise.
14346         * modules/fwritable (Files): Likewise.
14347         * modules/fwriting (Files): Likewise.
14348
14349 2008-04-26  Bruno Haible  <bruno@clisp.org>
14350
14351         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
14352         restore_seek_optimization, update_fpos_cache): New functions, extracted
14353         from rpl_fflush.
14354         (rpl_fflush): Use them.
14355         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
14356         (gl_REPLACE_FFLUSH): Use it.
14357
14358 2008-04-26  Bruno Haible  <bruno@clisp.org>
14359
14360         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
14361         on Solaris.
14362         * tests/test-xstrtoimax.sh: Likewise.
14363         * tests/test-xstrtoumax.sh: Likewise.
14364         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14365
14366 2008-04-26  Bruno Haible  <bruno@clisp.org>
14367
14368         * modules/memchr-tests: New file.
14369         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
14370
14371 2008-04-26  Eric Blake  <ebb9@byu.net>
14372             Bruno Haible  <bruno@clisp.org>
14373
14374         * lib/memchr.c: Include intprops.h.
14375         (__memchr): Optimize parallel detection of matching bytes. Rename local
14376         variables. Add explanatory comments.
14377
14378 2008-04-26  Bruno Haible  <bruno@clisp.org>
14379
14380         Fix module 'memchr', broken since 2000-10-28.
14381         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
14382
14383 2008-04-26  Bruno Haible  <bruno@clisp.org>
14384
14385         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
14386         comments.
14387
14388 2008-04-25  Eric Blake  <ebb9@byu.net>
14389
14390         Use native fstatat on cygwin 1.7.0.
14391         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
14392         first.
14393
14394 2008-04-23  Eric Blake  <ebb9@byu.net>
14395
14396         Improve memchr2 performance.
14397         * lib/memchr2.c (memchr2): Further optimize parallel detection of
14398         NUL bytes.
14399         * modules/memchr2 (Depends-on): Use intprops.h.
14400
14401 2008-04-23  Simon Josefsson  <simon@josefsson.org>
14402
14403         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
14404         an inline function instead of a CPP macro.  Patch by Ben Pfaff
14405         <blp@cs.stanford.edu>.
14406
14407 2008-04-23  Simon Josefsson  <simon@josefsson.org>
14408
14409         * lib/arpa_inet.in.h: New file.
14410
14411         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
14412         (Makefile.am): Sed in substitute header file.
14413
14414         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
14415         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
14416
14417         * modules/inet_ntop (configure.ac): Use
14418         gl_ARPA_INET_MODULE_INDICATOR.
14419
14420         * modules/inet_pton (configure.ac): Use
14421         gl_ARPA_INET_MODULE_INDICATOR.
14422
14423 2008-04-22  Jim Meyering  <meyering@redhat.com>
14424
14425         * modules/verify (License): Re-license as LGPLv2+.
14426
14427 2008-04-22  Simon Josefsson  <simon@josefsson.org>
14428
14429         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
14430         parameter to void* as per POSIX standard (MinGW uses char*).
14431
14432 2008-04-21  Bruno Haible  <bruno@clisp.org>
14433
14434         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
14435         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
14436         Define to replacements if REPLACE_ISWCNTRL is 1.
14437         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
14438         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
14439         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
14440         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
14441         what it fixes.
14442         * doc/posix-functions/iswalpha.texi: Likewise.
14443         * doc/posix-functions/iswblank.texi: Likewise.
14444         * doc/posix-functions/iswcntrl.texi: Likewise.
14445         * doc/posix-functions/iswdigit.texi: Likewise.
14446         * doc/posix-functions/iswgraph.texi: Likewise.
14447         * doc/posix-functions/iswlower.texi: Likewise.
14448         * doc/posix-functions/iswprint.texi: Likewise.
14449         * doc/posix-functions/iswpunct.texi: Likewise.
14450         * doc/posix-functions/iswspace.texi: Likewise.
14451         * doc/posix-functions/iswupper.texi: Likewise.
14452         * doc/posix-functions/iswxdigit.texi: Likewise.
14453         Reported by Alain Guibert.
14454
14455 2008-04-21  Bruno Haible  <bruno@clisp.org>
14456
14457         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
14458         Patch by Alain Guibert.
14459
14460 2008-04-21  Bruno Haible  <bruno@clisp.org>
14461
14462         Fix test failures on mingw.
14463         * tests/test-xstrtol.c (print_no_progname): New function.
14464         (main): Install it in error_print_progname hook.
14465         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
14466         * tests/test-xstrtoimax.sh: Likewise.
14467         * tests/test-xstrtoumax.sh: Likewise.
14468
14469 2008-04-21  Bruno Haible  <bruno@clisp.org>
14470
14471         Fix test failure on mingw.
14472         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
14473
14474 2008-04-21  Bruno Haible  <bruno@clisp.org>
14475
14476         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
14477         Actually assign a value.
14478
14479 2008-04-20  Bruno Haible  <bruno@clisp.org>
14480
14481         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
14482         take 2.
14483         * lib/canonicalize.c (canonicalize_file_name): Elide if the
14484         'canonicalize-lgpl' module is also used.
14485         * lib/canonicalize-lgpl.c: Undo last change.
14486         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
14487
14488 2008-04-20  Bruno Haible  <bruno@clisp.org>
14489
14490         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
14491         config.h. Provide _mkdir based fallback for mingw.
14492         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
14493         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
14494         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
14495         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
14496         rather than defining mkdir in config.h.
14497         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
14498         (gl_SYS_STAT_H_DEFAULTS): New macro.
14499         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
14500         HAVE_IO_H any more.
14501         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
14502         HAVE_DECL_MKDIR and HAVE_IO_H.
14503
14504 2008-04-20  Bruno Haible  <bruno@clisp.org>
14505
14506         * lib/isapipe.c: Port to native Windows platforms.
14507
14508 2008-04-20  Bruno Haible  <bruno@clisp.org>
14509
14510         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
14511
14512 2008-04-21  Eric Blake  <ebb9@byu.net>
14513
14514         Work around preprocessors that don't handle UINTMAX_MAX.
14515         * lib/memchr2.c (memchr2): Avoid embedded #if.
14516         Reported by Alain Guibert, fix suggested by Bruno Haible.
14517
14518 2008-04-21  Simon Josefsson  <simon@josefsson.org>
14519
14520         * doc/posix-functions/strftime.texi (strftime): Explain better
14521         Windows incompatibility.  Suggested by Micah Cowan
14522         <micah@cowan.name>.
14523
14524 2008-04-20  Bruno Haible  <bruno@clisp.org>
14525
14526         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
14527         unistr/u8-mblen.
14528
14529 2008-04-20  Bruno Haible  <bruno@clisp.org>
14530
14531         Fix test failure on platforms with non-GNU iconv.
14532         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
14533         (U_TO_U8): Use it, rather than u16_to_u8.
14534         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
14535         units at the end of the input string.
14536         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
14537
14538 2008-04-20  Bruno Haible  <bruno@clisp.org>
14539
14540         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
14541         when the resulting length is 0.
14542         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
14543
14544 2008-04-20  Bruno Haible  <bruno@clisp.org>
14545
14546         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
14547         works.
14548         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
14549
14550 2008-04-20  Bruno Haible  <bruno@clisp.org>
14551
14552         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
14553         * modules/tsearch-tests (configure.ac): Test for initstate function.
14554
14555 2008-04-20  Bruno Haible  <bruno@clisp.org>
14556
14557         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
14558         for nlink_t if missing.
14559         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
14560
14561 2008-04-19  Bruno Haible  <bruno@clisp.org>
14562
14563         Work around snprintf bug on Linux libc5.
14564         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
14565         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
14566         gl_SNPRINTF_SIZE1.
14567         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14568         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
14569         that test failed.
14570         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
14571         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
14572         * modules/snprintf (Files): Add m4/printf.m4.
14573         * modules/vsnprintf (Files): Likewise.
14574         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
14575         * doc/posix-functions/vsnprintf.texi: Likewise.
14576
14577 2008-04-19  Bruno Haible  <bruno@clisp.org>
14578
14579         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
14580         from 0.0058 to less than 10^-7.
14581
14582 2008-04-19  Bruno Haible  <bruno@clisp.org>
14583
14584         Fix rounding when a precision is given.
14585         * lib/vasnprintf.c (is_borderline): New function.
14586         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
14587         9...9x.
14588         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
14589         %e, %g.
14590         * tests/test-vasprintf-posix.c (test_function): Likewise.
14591         * tests/test-snprintf-posix.h (test_function): Likewise.
14592         * tests/test-sprintf-posix.h (test_function): Likewise.
14593         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
14594         * tests/test-printf-posix.h (test_function): Likewise.
14595         * tests/test-printf-posix.output: Update.
14596         Reported by John Darrington <john@darrington.wattle.id.au> via
14597         Ben Pfaff <blp@cs.stanford.edu>.
14598
14599 2008-04-18  Simon Josefsson  <simon@josefsson.org>
14600
14601         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
14602         Suggested by Bruno Haible <bruno@clisp.org>.
14603
14604 2008-04-17  Bruno Haible  <bruno@clisp.org>
14605
14606         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
14607         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
14608         implementation.
14609         Patch by Bruce Merry <bmerry@gmail.com>.
14610
14611 2008-04-17  Simon Josefsson  <simon@josefsson.org>
14612
14613         * doc/posix-functions/strftime.texi (strftime): Mention that %e
14614         doesn't work under Windows.
14615
14616 2008-04-16  Bruno Haible  <bruno@clisp.org>
14617
14618         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
14619         New macros.
14620         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
14621         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
14622         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
14623         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
14624         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
14625         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
14626         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
14627         macros.
14628         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
14629         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
14630         Northern Sotho, Uighur.
14631
14632 2008-04-16  Bruno Haible  <bruno@clisp.org>
14633
14634         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
14635         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
14636         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
14637         Reported by Daniel Bergström <daniel@octocode.com>.
14638
14639 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
14640             Bruno Haible  <bruno@clisp.org>
14641
14642         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
14643         function.
14644         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
14645         New functions, mostly extracted from gl_locale_name_default.
14646         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
14647
14648 2008-04-16  Eric Blake  <ebb9@byu.net>
14649
14650         Adjust strtod detection to catch glibc 2.7 bug.
14651         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
14652         Reported by John Gatewood Ham.
14653
14654 2008-04-16  Bruno Haible  <bruno@clisp.org>
14655
14656         Add tentative support for Linux libc5.
14657         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
14658         * lib/fpurge.c (fpurge): Likewise.
14659         * lib/freadable.c (freadable): Likewise.
14660         * lib/freadahead.c (freadahead): Likewise.
14661         * lib/freading.c (freading): Likewise.
14662         * lib/freadptr.c (freadptr): Likewise.
14663         * lib/freadseek.c (freadptrinc): Likewise.
14664         * lib/fseeko.c (rpl_fseeko): Likewise.
14665         * lib/fseterr.c (fseterr): Likewise.
14666         * lib/fwritable.c (fwritable): Likewise.
14667         * lib/fwriting.c (fwriting): Likewise.
14668         Reported by Alain Guibert <alguibert+bts@free.fr>.
14669
14670 2008-04-15  Bruno Haible  <bruno@clisp.org>
14671
14672         * modules/mathl (configure.ac): Define module indicator.
14673
14674 2008-04-15  Bruno Haible  <bruno@clisp.org>
14675
14676         * lib/logl.c (logl): Remove unused variables.
14677
14678 2008-04-15  Bruno Haible  <bruno@clisp.org>
14679
14680         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
14681         fails.
14682
14683 2008-04-15  Bruno Haible  <bruno@clisp.org>
14684
14685         * lib/trim.c (trim2): Fix argument of isspace() macro.
14686
14687 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
14688
14689         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
14690         to 0.
14691         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
14692
14693 2008-04-14  Bruno Haible  <bruno@clisp.org>
14694
14695         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
14696         AC_LANG_PROGRAM argument.
14697         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
14698         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
14699         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
14700         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
14701         * m4/math_h.m4 (gl_MATH_H): Likewise.
14702         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
14703         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
14704         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
14705         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
14706         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
14707         * m4/regex.m4 (gl_REGEX): Likewise.
14708         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
14709         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
14710         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
14711         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
14712         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
14713         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
14714         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
14715         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
14716
14717 2008-04-14  Jim Meyering  <meyering@redhat.com>
14718
14719         test-strtod: fix typos: s/abs/fabs/
14720         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
14721
14722 2008-04-13  Bruno Haible  <bruno@clisp.org>
14723
14724         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
14725         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
14726         module is also used and while not building the reloc-wrapper.
14727
14728 2008-04-13  Bruno Haible  <bruno@clisp.org>
14729
14730         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
14731
14732 2008-04-13  Bruno Haible  <bruno@clisp.org>
14733
14734         Fix AIX compilation failure introduced on 2008-04-02.
14735         * tests/test-frexp.c (exp): Undefine before redefining.
14736         * tests/test-frexpl.c (exp): Likewise.
14737
14738 2008-04-13  Bruno Haible  <bruno@clisp.org>
14739
14740         Work around a HP-UX stdio bug.
14741         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
14742         * tests/test-ftello.c (main): Likewise.
14743         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
14744         * doc/posix-functions/ftello.texi: Likewise.
14745
14746 2008-04-13  Bruno Haible  <bruno@clisp.org>
14747
14748         Make test-signbit pass on HP-UX/hppa.
14749         * tests/test-signbit.c (minus_zerol): New variable.
14750         (test_signbitl): Use it.
14751
14752 2008-04-13  Bruno Haible  <bruno@clisp.org>
14753
14754         Make truncl work on OSF/1 4.0.
14755         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
14756         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
14757         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
14758         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
14759         HAVE_DECL_TRUNCL.
14760         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
14761         HAVE_DECL_TRUNCL.
14762         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
14763
14764 2008-04-13  Bruno Haible  <bruno@clisp.org>
14765
14766         * lib/unictype.h: Remove trailing comma from enumeration definitions.
14767
14768 2008-04-13  Bruno Haible  <bruno@clisp.org>
14769
14770         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
14771         expression, so as to avoid HP-UX 11 cc compiler bug.
14772
14773 2008-04-13  Bruno Haible  <bruno@clisp.org>
14774
14775         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
14776
14777 2008-04-13  Bruno Haible  <bruno@clisp.org>
14778
14779         * lib/git-merge-changelog.c: Remove empty declaration outside of
14780         functions.
14781
14782 2008-04-13  Bruno Haible  <bruno@clisp.org>
14783
14784         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
14785
14786 2008-04-13  Bruno Haible  <bruno@clisp.org>
14787
14788         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
14789         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
14790         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
14791         also if it exists but lacks definitions of the SHUT_* macros.
14792         * modules/sys_socket (Description): Update.
14793         Reported by Elbert Pol <e.pol@chello.nl>.
14794
14795 2008-04-13  Bruno Haible  <bruno@clisp.org>
14796
14797         * lib/localcharset.c (OS2): Don't redefine if already defined.
14798         Reported by Elbert Pol <e.pol@chello.nl>.
14799
14800 2008-04-13  Bruno Haible  <bruno@clisp.org>
14801
14802         * lib/binary-io.h [__EMX__]: Include <io.h>.
14803         Reported by Elbert Pol <e.pol@chello.nl>.
14804
14805 2008-04-12  Bruno Haible  <bruno@clisp.org>
14806
14807         * lib/fpucw.h: Enable the definitions also for x86_64.
14808         Needed for NetBSD/x86_64.
14809         Reported by Thomas Klausner <tk@giga.or.at>.
14810
14811 2008-04-12  Bruno Haible  <bruno@clisp.org>
14812
14813         * tests/test-strtod.c: Include isnand.h.
14814         (main): Use isnand instead of isnan.
14815         Reported by Jim Meyering.
14816
14817 2008-04-12  Bruno Haible  <bruno@clisp.org>
14818
14819         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
14820         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
14821
14822 2008-04-12  Jim Meyering  <meyering@redhat.com>
14823
14824         * m4/math_h.m4 (gl_MATH_H): Fix typos.
14825
14826 2008-04-12  Bruno Haible  <bruno@clisp.org>
14827
14828         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
14829         Reported by Elbert Pol <e.pol@chello.nl>.
14830
14831 2008-04-12  Eric Blake  <ebb9@byu.net>
14832
14833         Work around Solaris 10 math.h bug.
14834         * m4/math_h.m4 (gl_MATH_H): Check for bug.
14835         (gl_MATH_H_DEFAULTS): Set up default.
14836         * modules/math (Makefile.am): Replace new indicators.
14837         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
14838         * tests/test-math.c (main): Test this.
14839         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
14840         * doc/posix-headers/math.texi (math.h): Mention bug.
14841         Reported by Nelson H. F. Beebe and Jim Meyering.
14842
14843 2008-04-11  Bruno Haible  <bruno@clisp.org>
14844
14845         Adapt to future versions of Apple GCC.
14846         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
14847         Reported by Peter O'Gorman <peter@pogma.com>.
14848
14849 2008-04-11  Bruno Haible  <bruno@clisp.org>
14850
14851         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
14852
14853 2008-04-11  Bruno Haible  <bruno@clisp.org>
14854
14855         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
14856
14857         * modules/getaddrinfo-tests (Makefile.am): Define
14858         test_getaddrinfo_LDADD.
14859
14860 2008-04-11  Bruno Haible  <bruno@clisp.org>
14861
14862         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
14863         (init): Fix syntax error.
14864         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
14865         is declared.
14866
14867 2008-04-11  Bruno Haible  <bruno@clisp.org>
14868
14869         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
14870         * modules/glob (Depends-on): Add stdbool.
14871
14872 2008-04-11  Bruno Haible  <bruno@clisp.org>
14873
14874         * lib/trim.c: Include <string.h>.
14875
14876 2008-04-11  Eric Blake  <ebb9@byu.net>
14877
14878         Avoid compile failure on OS/2.
14879         * lib/regex_internal.h (internal_function): Disable optimization
14880         on OS/2 (__EMX__), where it caused compiler error.
14881         Reported by Elbert Pol.
14882
14883 2008-04-11  Bruno Haible  <bruno@clisp.org>
14884
14885         Flush the standard error stream before aborting. Needed on mingw.
14886         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
14887         * tests/test-array_list.c (ASSERT): Likewise.
14888         * tests/test-array_oset.c (ASSERT): Likewise.
14889         * tests/test-avltree_list.c (ASSERT): Likewise.
14890         * tests/test-avltree_oset.c (ASSERT): Likewise.
14891         * tests/test-avltreehash_list.c (ASSERT): Likewise.
14892         * tests/test-binary-io.c (ASSERT): Likewise.
14893         * tests/test-byteswap.c (ASSERT): Likewise.
14894         * tests/test-c-ctype.c (ASSERT): Likewise.
14895         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
14896         * tests/test-c-strcasestr.c (ASSERT): Likewise.
14897         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
14898         * tests/test-c-strstr.c (ASSERT): Likewise.
14899         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
14900         * tests/test-canonicalize.c (ASSERT): Likewise.
14901         * tests/test-carray_list.c (ASSERT): Likewise.
14902         * tests/test-ceilf1.c (ASSERT): Likewise.
14903         * tests/test-ceilf2.c (ASSERT): Likewise.
14904         * tests/test-ceill.c (ASSERT): Likewise.
14905         * tests/test-count-one-bits.c (ASSERT): Likewise.
14906         * tests/test-fbufmode.c (ASSERT): Likewise.
14907         * tests/test-fflush2.c (ASSERT): Likewise.
14908         * tests/test-floorf1.c (ASSERT): Likewise.
14909         * tests/test-floorf2.c (ASSERT): Likewise.
14910         * tests/test-floorl.c (ASSERT): Likewise.
14911         * tests/test-fopen.c (ASSERT): Likewise.
14912         * tests/test-fpending.c (ASSERT): Likewise.
14913         * tests/test-fprintf-posix.c (ASSERT): Likewise.
14914         * tests/test-fpurge.c (ASSERT): Likewise.
14915         * tests/test-freadable.c (ASSERT): Likewise.
14916         * tests/test-freadahead.c (ASSERT): Likewise.
14917         * tests/test-freading.c (ASSERT): Likewise.
14918         * tests/test-freadptr.c (ASSERT): Likewise.
14919         * tests/test-freadptr2.c (ASSERT): Likewise.
14920         * tests/test-freadseek.c (ASSERT): Likewise.
14921         * tests/test-freopen.c (ASSERT): Likewise.
14922         * tests/test-frexp.c (ASSERT): Likewise.
14923         * tests/test-frexpl.c (ASSERT): Likewise.
14924         * tests/test-fseek.c (ASSERT): Likewise.
14925         * tests/test-fseeko.c (ASSERT): Likewise.
14926         * tests/test-fstrcmp.c (ASSERT): Likewise.
14927         * tests/test-ftell.c (ASSERT): Likewise.
14928         * tests/test-ftello.c (ASSERT): Likewise.
14929         * tests/test-func.c (ASSERT): Likewise.
14930         * tests/test-fwritable.c (ASSERT): Likewise.
14931         * tests/test-fwriting.c (ASSERT): Likewise.
14932         * tests/test-getdelim.c (ASSERT): Likewise.
14933         * tests/test-getline.c (ASSERT): Likewise.
14934         * tests/test-i-ring.c (ASSERT): Likewise.
14935         * tests/test-iconv-utf.c (ASSERT): Likewise.
14936         * tests/test-iconv.c (ASSERT): Likewise.
14937         * tests/test-isfinite.c (ASSERT): Likewise.
14938         * tests/test-isnand.c (ASSERT): Likewise.
14939         * tests/test-isnanf.c (ASSERT): Likewise.
14940         * tests/test-isnanl.h (ASSERT): Likewise.
14941         * tests/test-ldexpl.c (ASSERT): Likewise.
14942         * tests/test-linked_list.c (ASSERT): Likewise.
14943         * tests/test-linkedhash_list.c (ASSERT): Likewise.
14944         * tests/test-localename.c (ASSERT): Likewise.
14945         * tests/test-lseek.c (ASSERT): Likewise.
14946         * tests/test-mbscasecmp.c (ASSERT): Likewise.
14947         * tests/test-mbscasestr1.c (ASSERT): Likewise.
14948         * tests/test-mbscasestr2.c (ASSERT): Likewise.
14949         * tests/test-mbscasestr3.c (ASSERT): Likewise.
14950         * tests/test-mbscasestr4.c (ASSERT): Likewise.
14951         * tests/test-mbschr.c (ASSERT): Likewise.
14952         * tests/test-mbscspn.c (ASSERT): Likewise.
14953         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
14954         * tests/test-mbspbrk.c (ASSERT): Likewise.
14955         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
14956         * tests/test-mbsrchr.c (ASSERT): Likewise.
14957         * tests/test-mbsspn.c (ASSERT): Likewise.
14958         * tests/test-mbsstr1.c (ASSERT): Likewise.
14959         * tests/test-mbsstr2.c (ASSERT): Likewise.
14960         * tests/test-mbsstr3.c (ASSERT): Likewise.
14961         * tests/test-memchr2.c (ASSERT): Likewise.
14962         * tests/test-memmem.c (ASSERT): Likewise.
14963         * tests/test-open.c (ASSERT): Likewise.
14964         * tests/test-printf-frexp.c (ASSERT): Likewise.
14965         * tests/test-printf-frexpl.c (ASSERT): Likewise.
14966         * tests/test-printf-posix.c (ASSERT): Likewise.
14967         * tests/test-quotearg.c (ASSERT): Likewise.
14968         * tests/test-rbtree_list.c (ASSERT): Likewise.
14969         * tests/test-rbtree_oset.c (ASSERT): Likewise.
14970         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
14971         * tests/test-round1.c (ASSERT): Likewise.
14972         * tests/test-roundf1.c (ASSERT): Likewise.
14973         * tests/test-roundl.c (ASSERT): Likewise.
14974         * tests/test-signbit.c (ASSERT): Likewise.
14975         * tests/test-sleep.c (ASSERT): Likewise.
14976         * tests/test-snprintf-posix.c (ASSERT): Likewise.
14977         * tests/test-snprintf.c (ASSERT): Likewise.
14978         * tests/test-sprintf-posix.c (ASSERT): Likewise.
14979         * tests/test-stat-time.c (ASSERT): Likewise.
14980         * tests/test-strcasestr.c (ASSERT): Likewise.
14981         * tests/test-strerror.c (ASSERT): Likewise.
14982         * tests/test-striconv.c (ASSERT): Likewise.
14983         * tests/test-striconveh.c (ASSERT): Likewise.
14984         * tests/test-striconveha.c (ASSERT): Likewise.
14985         * tests/test-strsignal.c (ASSERT): Likewise.
14986         * tests/test-strstr.c (ASSERT): Likewise.
14987         * tests/test-strtod.c (ASSERT): Likewise.
14988         * tests/test-trunc1.c (ASSERT): Likewise.
14989         * tests/test-trunc2.c (ASSERT): Likewise.
14990         * tests/test-truncf1.c (ASSERT): Likewise.
14991         * tests/test-truncf2.c (ASSERT): Likewise.
14992         * tests/test-truncl.c (ASSERT): Likewise.
14993         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
14994         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
14995         * tests/test-vasnprintf.c (ASSERT): Likewise.
14996         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
14997         * tests/test-vasprintf.c (ASSERT): Likewise.
14998         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
14999         * tests/test-vprintf-posix.c (ASSERT): Likewise.
15000         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
15001         * tests/test-vsnprintf.c (ASSERT): Likewise.
15002         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
15003         * tests/test-wcwidth.c (ASSERT): Likewise.
15004         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
15005         * tests/test-xprintf-posix.c (ASSERT): Likewise.
15006         * tests/test-xvasprintf.c (ASSERT): Likewise.
15007         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
15008         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
15009         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
15010         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
15011         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
15012         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
15013         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
15014         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
15015         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
15016         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
15017         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
15018         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
15019         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
15020         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
15021         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
15022         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
15023         * tests/unictype/test-block_list.c (ASSERT): Likewise.
15024         * tests/unictype/test-block_of.c (ASSERT): Likewise.
15025         * tests/unictype/test-block_test.c (ASSERT): Likewise.
15026         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
15027         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
15028         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
15029         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
15030         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
15031         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
15032         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
15033         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
15034         * tests/unictype/test-combining.c (ASSERT): Likewise.
15035         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
15036         * tests/unictype/test-digit.c (ASSERT): Likewise.
15037         * tests/unictype/test-mirror.c (ASSERT): Likewise.
15038         * tests/unictype/test-numeric.c (ASSERT): Likewise.
15039         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
15040         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
15041         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
15042         * tests/unictype/test-scripts.c (ASSERT): Likewise.
15043         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
15044         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
15045         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
15046         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
15047         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
15048         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
15049         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
15050         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
15051         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
15052         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
15053         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
15054         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
15055         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
15056         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
15057         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
15058         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
15059         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
15060         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
15061         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
15062         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
15063         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
15064         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
15065         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
15066         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
15067         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
15068         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
15069         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
15070         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
15071         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
15072         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
15073         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
15074         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
15075         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
15076         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
15077         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
15078         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
15079         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
15080         Reported by Eric Blake.
15081
15082 2008-04-11  Bruno Haible  <bruno@clisp.org>
15083
15084         * lib/wchar.in.h: Tweak comment.
15085
15086 2008-04-11  Bruno Haible  <bruno@clisp.org>
15087
15088         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
15089         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
15090         gl_COMMON.
15091         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
15092
15093 2008-04-11  Bruno Haible  <bruno@clisp.org>
15094
15095         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
15096
15097 2008-04-11  Simon Josefsson  <simon@josefsson.org>
15098
15099         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
15100         of attempting to use non-existing /dev/*random.  Based on patch
15101         from Adam Strzelecki <ono@java.pl> in
15102         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
15103
15104 2008-04-08  Bruno Haible  <bruno@clisp.org>
15105
15106         Add tentative support for emx+gcc.
15107         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
15108         * lib/fpurge.c (fpurge): Likewise.
15109         * lib/freadable.c (freadable): Likewise.
15110         * lib/freadahead.c (freadahead): Likewise.
15111         * lib/freading.c (freading): Likewise.
15112         * lib/freadptr.c (freadptr): Likewise.
15113         * lib/freadseek.c (freadptrinc): Likewise.
15114         * lib/fseeko.c (rpl_fseeko): Likewise.
15115         * lib/fseterr.c (fseterr): Likewise.
15116         * lib/fwritable.c (fwritable): Likewise.
15117         * lib/fwriting.c (fwriting): Likewise.
15118         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
15119
15120 2008-04-09  Eric Blake  <ebb9@byu.net>
15121
15122         Avoid some autoconf warnings.
15123         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
15124         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
15125         * m4/afs.m4 (gl_AFS): Likewise.
15126         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
15127         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
15128         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
15129         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
15130         (gl_INTEGER_TYPE_SUFFIX): Likewise.
15131         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
15132         (AC_CHECK_DECLS_ONCE): Likewise.
15133         Rename file...
15134         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
15135         gnulib-tool requires autoconf 2.59 or better.
15136         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
15137
15138 2008-04-08  Eric Blake  <ebb9@byu.net>
15139
15140         Use 'git describe --match' if present (added in git 1.5.5).
15141         * build-aux/git-version-gen: Limit result to tags that match 'v*'
15142         if possible.
15143
15144 2008-04-08  Bruno Haible  <bruno@clisp.org>
15145
15146         Add tentative support for OpenServer.
15147         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
15148         _ptr, _cnt.
15149         * lib/fpurge.c (fpurge): Likewise.
15150         * lib/freadable.c (freadable): Likewise.
15151         * lib/freadahead.c (freadahead): Likewise.
15152         * lib/freading.c (freading): Likewise.
15153         * lib/freadptr.c (freadptr): Likewise.
15154         * lib/freadseek.c (freadptrinc): Likewise.
15155         * lib/fseeko.c (rpl_fseeko): Likewise.
15156         * lib/fseterr.c (fseterr): Likewise.
15157         * lib/fwritable.c (fwritable): Likewise.
15158         * lib/fwriting.c (fwriting): Likewise.
15159         Reported by Roger Cornelius <rac@tenzing.org> and
15160         Brian K. White <brian@aljex.com>.
15161
15162 2008-04-06  Jim Meyering  <meyering@redhat.com>
15163
15164         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
15165
15166 2008-04-06  Bruno Haible  <bruno@clisp.org>
15167
15168         Avoid possible error with non-ASCII bytes in UTF-8 locales.
15169         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
15170         * tests/test-printf-posix.sh: Likewise.
15171         * tests/test-vfprintf-posix.sh: Likewise.
15172         * tests/test-vprintf-posix.sh: Likewise.
15173         * tests/test-xprintf-posix.sh: Likewise.
15174
15175 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15176
15177         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
15178         hide error from 'ls', needed on OS/2.
15179         Report by Elbert Pol <elbert.pol@gmail.com>.
15180
15181 2008-04-04  Eric Blake  <ebb9@byu.net>
15182
15183         Make test-fseeko.c failures meaningful.
15184         * tests/test-fseeko.c: Print line number on failure.
15185         * tests/test-fseek.c: Likewise.
15186         Reported by Nelson H. F. Beebe.
15187
15188         Improve strtod bug detection check.
15189         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
15190         required for Solaris 10.
15191         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
15192
15193 2008-04-04  Bruno Haible  <bruno@clisp.org>
15194
15195         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
15196         by m4/setenv.m4.
15197
15198 2008-04-03  Eric Blake  <ebb9@byu.net>
15199
15200         Ensure sane .version contents.
15201         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
15202         version string.
15203         * build-aux/git-version-gen: Improve documentation.
15204
15205         Make GNU make output nicer.
15206         * top/GNUmakefile [!_have-Makefile]: Add dependency on
15207         MAKECMDGOALS to enforce message for all command line targets.  Set
15208         srcdir for use in maint.mk.
15209
15210         Another maintainer tweak.
15211         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
15212         a target that regenerates version.
15213
15214 2008-04-03  Jim Meyering  <meyering@redhat.com>
15215
15216         vc-list-files: don't cause coreutils "make po-check" failure
15217         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
15218
15219 2008-04-03  Eric Blake  <ebb9@byu.net>
15220
15221         Allow VPATH usage of vc-list-files.
15222         * build-aux/vc-list-files (scriptversion): Add timestamp.
15223         (options): Add --help, --version, -C.
15224         (CVS): Support installed cvsu.
15225
15226 2008-04-02  Bruno Haible  <bruno@clisp.org>
15227
15228         Avoid some "statement with no effect" warnings from gcc.
15229         * tests/test-wctype.c (main): Explicitly ignore unused values.
15230         Reported by Jim Meyering.
15231
15232 2008-04-02  Jim Meyering  <meyering@redhat.com>
15233
15234         Avoid some warnings from "gcc -Wshadow".
15235         * tests/test-frexp.c (exp): Define to a different identifier.
15236         * tests/test-frexpl.c (exp): Likewise.
15237
15238 2008-04-03  Jim Meyering  <meyering@redhat.com>
15239
15240         bootstrap: remove dangling *.[ch] symlinks from lib
15241         * build-aux/bootstrap [dangling symlink removal]: Move find's
15242         -depth option to precede all others, to avoid a warning.
15243         Remove *.[ch] files too, and from "$source_base" (usually lib/).
15244
15245 2008-04-02  Bruno Haible  <bruno@clisp.org>
15246
15247         Avoid some warnings from "gcc -Wshadow".
15248         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
15249         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
15250         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
15251         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
15252         Reported by Jim Meyering.
15253
15254 2008-04-01  Bruno Haible  <bruno@clisp.org>
15255
15256         Fix test to work on IRIX 6.5 with cc.
15257         * tests/test-math.c (numeric_equal): New function.
15258         (main): Use it.
15259
15260 2008-04-01  Bruno Haible  <bruno@clisp.org>
15261
15262         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
15263
15264 2008-04-01  Bruno Haible  <bruno@clisp.org>
15265
15266         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
15267         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
15268         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
15269         (Depends-on): Remove math.
15270
15271         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
15272         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
15273         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
15274         (Depends-on): Remove math.
15275
15276         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
15277         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
15278         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
15279         (Depends-on): Remove math.
15280         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
15281         (Depends-on): Remove math.
15282
15283         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
15284         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
15285         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
15286         (Depends-on): Remove math.
15287         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
15288         (Depends-on): Remove math.
15289
15290         * tests/test-round1.c: Include nan.h.
15291         (main): Use NaNd instead of NAN.
15292         * modules/round-tests (Files): Add tests/nan.h.
15293
15294         * tests/test-trunc1.c: Include nan.h.
15295         (main): Use NaNd instead of NAN.
15296         * modules/trunc-tests (Files): Add tests/nan.h.
15297
15298         * tests/test-roundf1.c: Include nan.h.
15299         (main): Use NaNf instead of NAN.
15300         * modules/roundf-tests (Files): Add tests/nan.h.
15301
15302         * tests/test-truncf1.c: Include nan.h.
15303         (main): Use NaNf instead of NAN.
15304         * modules/truncf-tests (Files): Add tests/nan.h.
15305
15306         * tests/test-ceilf1.c: Include nan.h.
15307         (main): Use NaNf instead of NAN.
15308         * modules/ceilf-tests (Files): Add tests/nan.h.
15309
15310         * tests/test-floorf1.c: Include nan.h.
15311         (main): Use NaNf instead of NAN.
15312         * modules/floorf-tests (Files): Add tests/nan.h.
15313
15314         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
15315         (main): Use NaNf instead of NAN.
15316         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
15317
15318         * tests/test-isnand.c: Include nan.h instead of <math.h>.
15319         (main): Use NaNd instead of NAN.
15320         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
15321
15322         * tests/test-frexp.c: Include nan.h.
15323         (main): Use NaNd instead of NAN.
15324         * modules/frexp-tests (Files): Add tests/nan.h.
15325
15326         * lib/isnan.c: Don't include <math.h>.
15327         (FUNC): Don't use NAN macro.
15328         * modules/isnand-nolibm (Depends-on): Remove math.
15329         * modules/isnanf-nolibm (Depends-on): Remove math.
15330         * modules/isnanl (Depends-on): Remove math.
15331         * modules/isnanl-nolibm (Depends-on): Remove math.
15332
15333         * tests/nan.h: New file.
15334
15335 2008-04-01  Eric Blake  <ebb9@byu.net>
15336
15337         Fix typos.
15338         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
15339         values to be the right type.
15340
15341         For now, cater to gnulib strtod inaccuracies.
15342         * tests/test-strtod.c (main): Allow 1-ulp error on expected
15343         fractional results.  While not as nice from a QoI perspective, it
15344         is a quicker patch than correctly implementing decimal to binary
15345         rounding.
15346
15347 2008-03-31  Eric Blake  <ebb9@byu.net>
15348
15349         Guarantee a definition of NAN.
15350         * lib/math.in.h (NAN): Define if missing.
15351         * tests/test-math.c (main): Test it.
15352         * doc/posix-headers/math.texi (math.h): Document this.
15353         * lib/isnan.c (rpl_isnand): Use it.
15354         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
15355         * tests/test-floorf1.c (NaN): Likewise.
15356         * tests/test-frexp.c (NaN): Likewise.
15357         * tests/test-isnand.c (NaN): Likewise.
15358         * tests/test-isnanf.c (NaN): Likewise.
15359         * tests/test-round1.c (NaN): Likewise.
15360         * tests/test-roundf1.c (NaN): Likewise.
15361         * tests/test-snprintf-posix.h (NaN): Likewise.
15362         * tests/test-sprintf-posix.h (NaN): Likewise.
15363         * tests/test-trunc1.c (NaN): Likewise.
15364         * tests/test-truncf1.c (NaN): Likewise.
15365         * tests/test-vasnprintf-posix.c (NaN): Likewise.
15366         * tests/test-vasprintf-posix.c (NaN): Likewise.
15367         * modules/isnand-nolibm (Depends-on): Add math.
15368         * modules/isnanf-nolibm (Depends-on): Likewise.
15369         * modules/isnanl (Depends-on): Likewise.
15370         * modules/isnanl-nolibm (Depends-on): Likewise.
15371         * modules/snprintf-posix-tests (Depends-on): Likewise.
15372         * modules/sprintf-posix-tests (Depends-on): Likewise.
15373         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
15374         * modules/vsprintf-posix-tests (Depends-on): Likewise.
15375         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
15376         * modules/vasprintf-posix-tests (Depends-on): Likewise.
15377
15378 2008-03-31  Bruno Haible  <bruno@clisp.org>
15379
15380         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
15381         * doc/posix-functions/strtod.texi: Likewise.
15382
15383 2008-03-31  Bruno Haible  <bruno@clisp.org>
15384
15385         * tests/test-strtod.c (main): Don't use C99 syntax.
15386
15387 2008-03-31  Bruno Haible  <bruno@clisp.org>
15388
15389         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
15390         Reported by Eric Blake.
15391
15392 2008-03-31  Jim Meyering  <meyering@redhat.com>
15393
15394         Don't compare actual signbit return values.
15395         * tests/test-strtod.c (main): Rather, compare only their
15396         zero/non-zero nature.
15397
15398 2008-03-31  Eric Blake  <ebb9@byu.net>
15399
15400         More strtod documentation.
15401         * doc/posix-functions/strtod.texi (strtod): Interpret more test
15402         failures as distinct bugs.
15403
15404 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
15405
15406         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
15407         Problem reported by Erik Benada in
15408         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
15409
15410 2008-03-30  Bruno Haible  <bruno@clisp.org>
15411
15412         * tests/test-strtod.c: Add comments about which assertion fails on which
15413         platform.
15414         * doc/posix-functions/strtod.texi: Add info about many more platforms.
15415
15416 2008-03-30  Eric Blake  <ebb9@byu.net>
15417
15418         Test signbit behavior on zeros.
15419         * tests/test-signbit.c (test_signbitf): Add tests for zero.
15420         (test_signbitd, test_signbitl): Likewise.
15421
15422         More strtod touchups.
15423         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
15424         sign of negative underflow, for now.  Use .5, not .1.
15425         * doc/posix-functions/strtod.texi (strtod): Mention these
15426         limitations.
15427         Reported by Jim Meyering.
15428
15429 2008-03-30  Bruno Haible  <bruno@clisp.org>
15430
15431         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
15432         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
15433
15434 2008-03-30  Bruno Haible  <bruno@clisp.org>
15435
15436         Avoid failure when attempting to return empty iconv results on some
15437         platforms.
15438         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
15439         allocation, don't report ENOMEM when the resulting string is empty.
15440
15441 2008-03-30  Bruno Haible  <bruno@clisp.org>
15442
15443         Fix buffer overrun.
15444         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
15445         Don't consider the width for tmp_length. Check count against tmp_length
15446         before doing the padding. Ensure enough allocation during padding.
15447
15448 2008-03-30  Eric Blake  <ebb9@byu.net>
15449
15450         strtod touchups.
15451         * lib/strtod.c (strtod): Avoid compiler warnings.
15452         Reported by Jim Meyering.
15453
15454 2008-03-30  Bruno Haible  <bruno@clisp.org>
15455
15456         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
15457         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
15458         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
15459         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
15460         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
15461         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
15462         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
15463         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
15464
15465         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
15466         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
15467         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
15468         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
15469         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
15470         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
15471         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
15472         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
15473
15474         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
15475         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
15476         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
15477         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
15478         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
15479         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
15480         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
15481         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
15482
15483         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
15484         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
15485
15486         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
15487         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
15488
15489         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
15490         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
15491
15492         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
15493         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
15494         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
15495
15496         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
15497         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
15498         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
15499
15500         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
15501         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
15502         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
15503
15504         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
15505         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
15506         * modules/vasprintf (Depends-on): Add EOVERFLOW.
15507
15508         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
15509         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
15510         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
15511         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
15512         (Depends-on): Add EOVERFLOW.
15513         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
15514         (Depends-on): Add EOVERFLOW.
15515         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
15516         (Depends-on): Add EOVERFLOW.
15517         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
15518         (Depends-on): Add EOVERFLOW.
15519         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
15520         (Depends-on): Add EOVERFLOW.
15521         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
15522         (Depends-on): Add EOVERFLOW.
15523         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
15524         (Depends-on): Add EOVERFLOW.
15525         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
15526         (Depends-on): Add EOVERFLOW.
15527
15528         * lib/sprintf.c (EOVERFLOW): Remove fallback.
15529         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
15530         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
15531
15532         * lib/snprintf.c (EOVERFLOW): Remove fallback.
15533         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
15534         * modules/snprintf (Depends-on): Add EOVERFLOW.
15535
15536         * lib/poll.c (EOVERFLOW): Remove fallback.
15537         * modules/poll (Depends-on): Add EOVERFLOW.
15538
15539         * lib/getugroups.c (EOVERFLOW): Remove fallback.
15540         * modules/getugroups (Depends-on): Add EOVERFLOW.
15541
15542         * lib/getdelim.c (EOVERFLOW): Remove fallback.
15543         * modules/getdelim (Depends-on): Add EOVERFLOW.
15544
15545         * lib/ftell.c (EOVERFLOW): Remove fallback.
15546         * modules/ftell (Depends-on): Add EOVERFLOW.
15547
15548         * lib/fprintf.c (EOVERFLOW): Remove fallback.
15549         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
15550         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
15551
15552         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
15553
15554         * modules/EOVERFLOW-tests: New file.
15555         * tests/test-EOVERFLOW.c: New file.
15556
15557         * modules/EOVERFLOW: New file.
15558         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
15559
15560 2008-03-30  Bruno Haible  <bruno@clisp.org>
15561
15562         Fix bug introduced on 2007-06-10.
15563         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
15564         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
15565
15566 2008-03-30  Bruno Haible  <bruno@clisp.org>
15567
15568         Improve freadseek's efficiency after ungetc.
15569         * lib/freadseek.c: Include freadahead.h.
15570         (freadptrinc): New function, extracted from freadseek.
15571         (freadseek): Use it in a loop. Use freadahead to determine the number
15572         of loop iterations.
15573         * modules/freadseek (Depends-on): Add freadahead.
15574         (configure.ac): Require AC_C_INLINE.
15575
15576 2008-03-30  Bruno Haible  <bruno@clisp.org>
15577
15578         * lib/freadseek.c (freadseek): Don't ignore the return value of
15579         freadptr.
15580
15581 2008-03-29  Eric Blake  <ebb9@byu.net>
15582
15583         Add hex float support.
15584         * modules/strtod (Depends-on): Add c-ctype.
15585         (Link): Mention POW_LIB.
15586         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
15587         whitespace between 'e' and exponent.
15588         * tests/test-strtod.c (main): Enable hex float tests.
15589         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
15590         now provides.
15591
15592         Document various strtod bugs, with some fixes.
15593         * doc/posix-functions/strtod.texi (strtod): Document bugs with
15594         "-0x", "inf", "nan", and hex constants.
15595         * doc/posix-functions/atof.texi (atof): Likewise.
15596         * modules/stdlib (Makefile.am): Support strtod.
15597         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
15598         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
15599         detect additional strtod bugs.
15600         * lib/stdlib.in.h (rpl_strtod): Add declarations.
15601         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
15602         bool where appropriate.  Parse 'inf' and 'nan'.
15603         * tests/test-strtod.c: New file.
15604         * modules/strtod (Depends-on): Add stdbool, stdlib.
15605         (configure.ac): Turn on module indicator.
15606         * modules/strtod-tests: New module.
15607
15608 2008-03-29  Eric Blake  <ebb9@byu.net>
15609
15610         Fix ftell on mingw.
15611         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
15612         * modules/ftell-tests (Depends-on): Add binary-io.
15613         * modules/ftello-tests (Depends-on): Likewise.
15614         * tests/test-ftell.c (main): Enhance test to cover behavior after
15615         ungetc.  Enforce binary mode.
15616         * tests/test-ftello.c (main): Likewise.
15617
15618         Pass test-freadseek on cygwin.
15619         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
15620         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
15621         ungetc buffer.
15622
15623         * tests/test-fflush2.c (main): Fix typo.
15624
15625 2008-03-29  Bruno Haible  <bruno@clisp.org>
15626
15627         * tests/test-fflush2.c (main): Temporarily disable the contents of
15628         this test.
15629         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
15630         Reported by Eric Blake.
15631
15632 2008-03-28  Simon Josefsson  <simon@josefsson.org>
15633
15634         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
15635         (GC_SHA224_DIGEST_SIZE): Add.
15636
15637         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
15638         (gc_hash_digest_length): Likewise.
15639         (gc_hash_buffer): Likewise.
15640
15641 2008-03-25  Bruno Haible  <bruno@clisp.org>
15642
15643         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
15644         detail which gettext release to use.
15645         Reported by Simon Josefsson.
15646
15647 2008-03-26  Jim Meyering  <meyering@redhat.com>
15648
15649         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
15650         * modules/gnumakefile (clean-GNUmakefile): Also, use
15651         test ... && ... || : syntax rather than if-then ... fi.
15652
15653         gnumakefile: Don't double-quote-expand $(VPATH) value.
15654         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
15655
15656 2008-03-24  Eric Blake  <ebb9@byu.net>
15657
15658         Alter GNUmakefile to install into top directory.
15659         * modules/maintainer-makefile: Split, and add dependency...
15660         * modules/gnumakefile: to this new module.
15661         * build-aux/GNUmakefile: Move...
15662         * top/GNUmakefile: ...here.
15663         * build-aux/maint.mk: Move...
15664         * top/maint.mk: ...here.
15665         * MODULES.html.sh (Support for maintaining...): Document new
15666         module.
15667
15668 2008-03-23  Bruno Haible  <bruno@clisp.org>
15669
15670         * gnulib-tool: New options --vc-files, --no-vc-files.
15671         (func_usage): Document them.
15672         (vc_files): New variable.
15673         (func_import): Consider vc_files.
15674         (func_create_testdir): Set vc_files to empty.
15675         Suggested by Jim Meyering and Karl Berry.
15676
15677 2008-03-23  Bruno Haible  <bruno@clisp.org>
15678
15679         Fix regex compilation error on HP-UX 11.
15680         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
15681         * modules/regex (Files): Add m4/mbstate_t.m4.
15682         Reported by Ton Voon <ton.voon@altinity.com>.
15683
15684 2008-03-23  Bruno Haible  <bruno@clisp.org>
15685
15686         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
15687
15688 2008-03-23  Eric Blake  <ebb9@byu.net>
15689             Bruno Haible  <bruno@clisp.org>
15690
15691         Install files from top/ in the destination directory.
15692         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
15693         augmentation also for the files from top/.
15694         (func_import, func_create_testdir): Rewrite file names:
15695         top/filename -> filename.
15696
15697 2008-03-23  Bruno Haible  <bruno@clisp.org>
15698
15699         Tweak "gnulib --version" output.
15700         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
15701
15702 2008-03-23  Bruno Haible  <bruno@clisp.org>
15703
15704         Tweak "gnulib --version" output.
15705         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
15706         rather than contents of ChangeLog, when possible.
15707
15708 2008-03-21  Eric Blake  <ebb9@byu.net>
15709
15710         More --version tweaks.
15711         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
15712         date of last ChangeLog entry.
15713
15714 2008-03-21  Jim Meyering  <meyering@redhat.com>
15715
15716         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
15717
15718 2008-03-20  Eric Blake  <ebb9@byu.net>
15719
15720         VPATH fix.
15721         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
15722
15723 2008-03-20  Simon Josefsson  <simon@josefsson.org>
15724
15725         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
15726         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
15727
15728 2008-03-20  Eric Blake  <ebb9@byu.net>
15729
15730         Sync GNUmakefile with coreutils.
15731         * build-aux/GNUmakefile (have-Makefile): Rename...
15732         (_have-Makefile): ...to this, for namespace consideration.
15733         (GNUmakefile.cfg): Include, if present.
15734         (_autoreconf): Define a default.
15735         (_is-dist-target): New rule for rebuilds to pick up intra-release
15736         version.
15737         (maint-cfg.mk): Rename...
15738         (cfg.mk): ...to this.
15739
15740 2008-03-18  Jim Meyering  <meyering@redhat.com>
15741
15742         New script and module: mktempd
15743         * MODULES.html.sh (maint+release support): Add mktempd.
15744         * build-aux/mktempd: New file.
15745         * modules/mktempd: New file.
15746
15747 2008-03-15  Jim Meyering  <meyering@redhat.com>
15748
15749         Undo last change.
15750         * lib/sha1.c, lib/md5.c: 63 != ~63.
15751         Reported by Andreas Schwab.
15752
15753         sha1.c, md5.c: Hoist a redundant expression.
15754         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
15755         "ctx->buflen" only once, before calling *_process_block.
15756         * lib/md5.c (md5_process_bytes): Likewise.
15757
15758 2008-03-14  Eric Blake  <ebb9@byu.net>
15759
15760         Bump copyright year in files generated by gnulib-tool.
15761         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
15762         gnulib-tool, rather than hard-coding it.
15763
15764         Fix 'gnulib-tool --version' output to work with git.
15765         * gnulib-tool (func_gnulib_dir): New function, extracted from...
15766         (startup): ...here.
15767         (func_version): Use it to invoke git-version-gen, rather than
15768         relying on CVS keyword expansion.  Modernize wording.
15769         (cvsdatestamp, last_checkin_date, version): Kill unused
15770         variables.
15771
15772 2008-03-12  Jim Meyering  <meyering@redhat.com>
15773
15774         Recognize optional cast of the argument to free.
15775         * build-aux/useless-if-before-free: Update regexps.
15776
15777         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
15778
15779 2008-03-11  Bruno Haible  <bruno@clisp.org>
15780
15781         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
15782         by a single package.
15783         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
15784         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
15785         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
15786         Reported by Sam Steingold <sds@gnu.org>.
15787
15788 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
15789
15790         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
15791         repositories.
15792
15793 2008-03-11  Bruno Haible  <bruno@clisp.org>
15794
15795         Avoid conflicts between local macro definitions.
15796         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
15797         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
15798
15799 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
15800             Bruno Haible  <bruno@clisp.org>
15801
15802         Make va_copy work with some version of xlc on AIX 5.1.
15803         * lib/stdarg.in.h: New file.
15804         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
15805         On AIX, use a <stdarg.h> file substitute.
15806         * modules/stdarg (Files): Add lib/stdarg.in.h.
15807         (Depends-on): Add include_next.
15808         (Makefile.am): Build a stdarg.h substitute if requested.
15809         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
15810
15811 2008-03-10  Bruno Haible  <bruno@clisp.org>
15812
15813         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
15814         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
15815         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
15816
15817 2008-03-10  Bruno Haible  <bruno@clisp.org>
15818
15819         * modules/stdlib (Depends-on): Add include_next, remove
15820         absolute-header.
15821
15822 2008-03-09  Bruno Haible  <bruno@clisp.org>
15823
15824         * lib/freadahead.h (freadahead): Document more precisely.
15825         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
15826         the sum of both buffer sizes.
15827         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
15828         * NEWS: Document the change.
15829
15830 2008-03-09  Bruno Haible  <bruno@clisp.org>
15831
15832         Extend freadptr to return also the buffer size.
15833         * lib/freadptr.h (freadptr): Add sizep argument.
15834         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
15835         (freadptr): Add sizep argument. Determine buffer size like freadahead
15836         does.
15837         * tests/test-freadptr.c: Don't include freadahead.h.
15838         (main): Adapt for new calling convention of freadptr.
15839         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
15840         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
15841         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
15842         tests/test-freadptr2.sh.
15843         (Depends): Remove freadahead.
15844         (TESTS): Add test-freadptr2.sh.
15845         (check_PROGRAMS): Add test-freadptr2.
15846
15847 2008-03-09  Bruno Haible  <bruno@clisp.org>
15848
15849         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
15850         Report and solution by Simon Josefsson.
15851
15852 2008-03-06  Bruno Haible  <bruno@clisp.org>
15853
15854         Make fflush after ungetc work on BSD platforms.
15855         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
15856         * tests/test-fflush2.c: New file.
15857         * tests/test-fflush2.sh: New file.
15858         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
15859         tests/test-fflush2.c.
15860         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
15861         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
15862
15863 2008-03-06  Eric Blake  <ebb9@byu.net>
15864
15865         Likewise for ftello.
15866         * modules/ftello (Dependencies): Add extensions.
15867         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
15868
15869 2008-03-06  Bruno Haible  <bruno@clisp.org>
15870
15871         * modules/fseeko (Dependencies): Add extensions.
15872         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
15873         Needed on glibc systems.
15874
15875 2008-03-06  Bruno Haible  <bruno@clisp.org>
15876
15877         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
15878         email address.
15879         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
15880
15881 2008-03-06  Bruno Haible  <bruno@clisp.org>
15882
15883         * users.txt: Add libgnupdf.
15884
15885 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
15886
15887         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
15888         (Header File Substitutes, Function Substitutes,
15889         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
15890         (Build robot for gnulib): Fix typo.
15891
15892 2008-03-06  Bruno Haible  <bruno@clisp.org>
15893
15894         * doc/gnulib-tool.texi (VCS Issues): Small updates.
15895         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
15896
15897 2008-03-06  Bruno Haible  <bruno@clisp.org>
15898
15899         * doc/func.texi: New file, extracted from doc/gnulib.texi.
15900         * doc/gnulib.texi: Include it.
15901
15902 2008-03-06  Simon Josefsson  <simon@josefsson.org>
15903
15904         * modules/func (License): Change license to unlimited; there was
15905         no LGPL parts in the module anyway.
15906
15907 2008-03-06  Simon Josefsson  <simon@josefsson.org>
15908
15909         * modules/__func__: Renamed to modules/func.
15910         * modules/__func__-tests: Renamed to modules/func-tests.
15911         * tests/test-__func__.c: Renamed to tests/test-func.c.
15912         * m4/__func__.m4: Renamed to m4/func.m4.
15913         * doc/gnulib.texi (__func__): Section renamed to func.
15914         Suggested by Eric Blake <ebb9@byu.net>.
15915
15916 2008-03-06  Simon Josefsson  <simon@josefsson.org>
15917
15918         * doc/gnulib.texi (__func__): Use C99 terminology when talking
15919         about __func__.  Make example self-contained.  Suggested by Eric
15920         Blake <ebb9@byu.net>.
15921
15922         * tests/test-__func__.c (main): Avoid extraneous () around __func.
15923         Suggested by Eric Blake <ebb9@byu.net>.
15924
15925 2008-03-06  Simon Josefsson  <simon@josefsson.org>
15926
15927         * modules/__func__: New file.
15928         * modules/__func__-tests: New file.
15929         * tests/test-__func__.c: New file.
15930         * m4/__func__.m4: New file.
15931         * doc/gnulib.texi (__func__): Document __func__ module.
15932
15933 2008-03-05  Simon Josefsson  <simon@josefsson.org>
15934
15935         * modules/byteswap (License): Re-license as LGPLv2+.
15936
15937 2008-03-05  Simon Josefsson  <simon@josefsson.org>
15938
15939         * doc/Makefile: Add pdf target.
15940
15941 2008-03-05  Simon Josefsson  <simon@josefsson.org>
15942
15943         * modules/inline (License): Use 'unlimited', since there are only
15944         *.m4 files in this module.
15945
15946 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
15947             Bruno Haible  <bruno@clisp.org>
15948
15949         Add support for HP C 7.1 on OpenVMS 8.3.
15950         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
15951
15952 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
15953
15954         Update VMS specifics.
15955         * lib/getopt.c [VMS]: Remove include of unixlib.h.
15956
15957 2008-03-02  Jim Meyering  <meyering@redhat.com>
15958
15959         Remove the last dependency on the "free" module.
15960         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
15961         Reported by Bob Proulx.
15962
15963         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
15964
15965         Remove useless "if" tests before free.  Deprecate "free" module.
15966         * doc/posix-functions/free.texi: Mention that this
15967         module is no longer useful.
15968         * modules/free (Notice): Say this module is obsolete.
15969         * modules/readutmp (Depends-on): Remove free.
15970         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
15971         * lib/putenv.c (putenv): Likewise.
15972         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
15973         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
15974         * tests/test-c-strcasestr.c (main): Likewise.
15975         * tests/test-c-strstr.c (main): Likewise.
15976         * tests/test-mbscasestr1.c (main): Likewise.
15977         * tests/test-mbscasestr2.c (main): Likewise.
15978         * tests/test-mbsstr1.c (main): Likewise.
15979         * tests/test-mbsstr2.c (main): Likewise.
15980         * tests/test-memmem.c (main): Likewise.
15981         * tests/test-strcasestr.c (main): Likewise.
15982         * tests/test-striconv.c (main): Likewise.
15983         * tests/test-striconveh.c (main): Likewise.
15984         * tests/test-striconveha.c (main): Likewise.
15985         * tests/test-strstr.c (main): Likewise.
15986
15987         * build-aux/git-version-gen: Adjust a comment and the Usage string.
15988
15989         bootstrap: sync from coreutils again
15990         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
15991
15992 2008-03-01  Jim Meyering  <meyering@redhat.com>
15993
15994         bootstrap: sync from coreutils
15995         * build-aux/bootstrap (update_po_files): Copy a .po file into place
15996         also when the target doesn't exist.
15997
15998 2008-03-01  Eric Blake  <ebb9@byu.net>
15999
16000         Fix bugs in last patch.
16001         * lib/memchr2.c (memchr2): Fix typo.
16002         * tests/test-memchr2.c: Test previous bug, and don't use GNU
16003         extension.
16004         Reported by Bruce Korb.
16005
16006         New module 'memchr2'.
16007         * modules/memchr2: New file.
16008         * modules/memchr2-tests: Likewise.
16009         * lib/memchr2.h: Likewise.
16010         * lib/memchr2.c: Likewise, based on memchr.c.
16011         * tests/test-memchr2.c: New test.
16012         * MODULES.html.sh (String handling): Add memchr2.
16013
16014 2008-02-29  Bruno Haible  <bruno@clisp.org>
16015
16016         * modules/freadseek-tests: New file.
16017         * tests/test-freadseek.sh: New file.
16018         * tests/test-freadseek.c: New file.
16019
16020         New module 'freadseek'.
16021         * modules/freadseek: New file.
16022         * lib/freadseek.h: New file.
16023         * lib/freadseek.c: New file.
16024         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
16025
16026 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
16027
16028         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
16029         wydawca.
16030
16031         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
16032         program_invocation_name and program_invocation_short_name are
16033         present.
16034
16035 2008-02-28  Bruno Haible  <bruno@clisp.org>
16036
16037         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
16038         * tests/test-freadptr.sh: Also test non-seekable stdin.
16039
16040 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
16041
16042         * build-aux/bootstrap (source_base, m4_base)
16043         (doc_base, tests_base): New variables.
16044         (gnulib_tool_options): Do not hardcode base directories, use
16045         the above variables instead.
16046
16047 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
16048
16049         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
16050
16051 2008-02-28  Bruno Haible  <bruno@clisp.org>
16052
16053         * modules/freadptr-tests: New file.
16054         * tests/test-freadptr.sh: New file.
16055         * tests/test-freadptr.c: New file.
16056
16057         New module 'freadptr'.
16058         * modules/freadptr: New file.
16059         * lib/freadptr.h: New file.
16060         * lib/freadptr.c: New file.
16061         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
16062
16063 2008-02-26  Karl Berry  <karl@freefriends.org>
16064
16065         Sync from Libtool:
16066         * libltdl/argz.c (argz_add, argz_count): New functions.
16067         * libltdl/argz.in.h: Declare them.
16068         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
16069
16070 2008-02-22  Bruno Haible  <bruno@clisp.org>
16071
16072         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
16073         is a pointer type.  Needed for HP-UX 10.
16074         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
16075         * doc/posix-functions/gmtime_r.texi: Likewise.
16076         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
16077
16078 2008-02-24  Bruno Haible  <bruno@clisp.org>
16079
16080         * modules/environ-tests: New file.
16081         * tests/test-environ.c: New file.
16082
16083         New module 'environ'.
16084         * modules/environ: New file.
16085         * lib/unistd.in.h (environ): New declaration.
16086         * m4/environ.m4: New file.
16087         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
16088         after use.
16089         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
16090         HAVE_DECL_ENVIRON.
16091         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
16092         HAVE_DECL_ENVIRON.
16093         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
16094         wrong claim that 'environ' is missing on some systems.
16095         * modules/execute (Depends-on): Add environ.
16096         * lib/execute.c (environ): Remove fallback declaration.
16097         * modules/pipe (Depends-on): Add environ.
16098         * lib/pipe.c (environ): Remove fallback declaration.
16099         * modules/setenv (Depends-on): Add environ.
16100         * lib/setenv.c (environ): Remove fallback declaration.
16101         * modules/unsetenv (Depends-on): Add environ.
16102         * lib/unsetenv.c (environ): Remove fallback declaration.
16103         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
16104         m4/environ.m4.
16105         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
16106         (gl_PREREQ_UNSETENV): Likewise.
16107
16108 2008-02-24  Bruno Haible  <bruno@clisp.org>
16109
16110         * doc/posix-functions/environ.texi: Document the MacOS X problem.
16111
16112 2008-02-20  Bob Proulx  <bob@proulx.com>
16113
16114         Enable use of older two part flavor 'git describe'.
16115         * build-aux/git-version-gen: If using the older two part flavor of
16116         git version then recreate the third part now present in the
16117         newer three part flavor of git describe.
16118
16119 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
16120
16121         * lib/fts.c (fts_build): Typo correction to comment.
16122
16123 2008-02-17  Bruno Haible  <bruno@clisp.org>
16124
16125         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
16126         generating no-op conflicts.
16127
16128 2008-02-17  Bruno Haible  <bruno@clisp.org>
16129
16130         Speed up by 10%.
16131         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
16132         result_entries, rather than an index-based loop.
16133
16134 2008-02-17  Bruno Haible  <bruno@clisp.org>
16135
16136         Speed up by 25%.
16137         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
16138         'hashcode_cached'.
16139         (entry_create): New function.
16140         (entry_hashcode): Use the cached hashcode if possible.
16141         (read_changelog_file, try_split_merged_entry): Use entry_create.
16142
16143 2008-02-17  Bruno Haible  <bruno@clisp.org>
16144
16145         Speed up from O(n^2) to O(n) for long ChangeLog files.
16146         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
16147         (read_changelog_file): Change implementation of entries_reversed list
16148         to rbtreehash.
16149         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
16150
16151 2008-02-17  Bruno Haible  <bruno@clisp.org>
16152
16153         New option --split-merged-entry.
16154         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
16155         (find_paragraph_end, try_split_merged_entry): New functions.
16156         (long_options): Add option --split-merged-entry.
16157         (usage): Document option --split-merged-entry.
16158         (main): Implement option --split-merged-entry.
16159         Reported by Eric Blake.
16160
16161 2008-02-17  Bruno Haible  <bruno@clisp.org>
16162
16163         * lib/git-merge-changelog.c: Include c-strstr.h.
16164         (main): Support the "git pull --rebase" situation.
16165         * modules/git-merge-changelog (Depends-on): Add c-strstr.
16166         Reported by Eric Blake.
16167
16168 2008-02-16  Eric Blake  <ebb9@byu.net>
16169
16170         Avoid doubling \ in common case of "c-maybe" quoting style.
16171         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
16172         eliding outer quotes.
16173         * lib/quotearg.h: Document this.
16174         * tests/test-quotearg.c (result_strings, inputs, results_g)
16175         (flag_results, locale_results): Test it by adding a new string to
16176         each test group.
16177         (compare_strings): Test new string.
16178
16179 2008-02-13  Eric Blake  <ebb9@byu.net>
16180
16181         Avoid trigraph quoting in default output.
16182         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
16183         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
16184         unless explicitly requested.
16185         * tests/test-quotearg.c (flag_results, main): Add additional tests.
16186
16187 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
16188
16189         Don't rely on signed integer overflowing to negative value.
16190         * lib/getugroups.c (getugroups): Include <limits.h>.
16191         Instead, compare against INT_MAX, and increment only if the test passes.
16192
16193 2008-02-13  Jim Meyering  <meyering@redhat.com>
16194         and Eric Blake  <ebb9@byu.net>
16195
16196         Avoid shadowing warning and compile errors on Linux.
16197         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
16198         forwarding macros on Linux.
16199         (dcgettext): Define a stub, for Linux.
16200         (results_g, main): Avoid warnings.
16201
16202 2008-02-12  Eric Blake  <ebb9@byu.net>
16203
16204         Silence warning in last patch.
16205         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
16206
16207         Quotearg part 4: add tests, fix c-maybe colon quoting.
16208         * lib/quotearg.h: Improve documentation.
16209         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
16210         escapes when adding outer quotes.  When quoting trigraphs, use
16211         valid C notation.  When quoting NUL, omit extra characters if next
16212         character is not digit.  Alter prototype.
16213         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
16214         callers.
16215         * modules/quotearg-tests: New module.
16216         * tests/test-quotearg.c: New test.
16217
16218 2008-02-07  Eric Blake  <ebb9@byu.net>
16219
16220         Quotearg part 3: add flag to control outer quote elision.
16221         * lib/quotearg.h (c_maybe_quoting_style): New style.
16222         (enum quoting_flags): Better documentation of flags.
16223         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
16224         c-maybe style.
16225         (quotearg_buffer_restyled): Handle new flag to elide outer
16226         quotes.
16227
16228         Quotearg part 2: add flag that can control NUL elision.
16229         * lib/quotearg.h (set_quoting_flags): New prototype.
16230         * lib/quotearg.c (struct quoting_options): Add flag field.
16231         (set_quoting_flags): New function.
16232         (quotearg_buffer_restyled): Add flags parameter.
16233         (quotearg_alloc_mem): Set the flag if length cannot be returned.
16234         (quotearg_n_options): Set the flag, since length cannot be
16235         returned.
16236         (quoting_options_from_style): Default flags correctly.
16237
16238         Quotearg part 1: more wrappers, restore quotearg_char state.
16239         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
16240         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
16241         (quotearg_colon_mem): New wrappers.
16242         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
16243         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
16244         functions.
16245         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
16246         (quotearg_colon_mem): New functions.
16247
16248 2008-02-11  Bruno Haible  <bruno@clisp.org>
16249
16250         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
16251         library in the current directory: it does not work with parallel make.
16252         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16253
16254 2008-02-11  Bruno Haible  <bruno@clisp.org>
16255
16256         * .gitattributes: New file.
16257
16258 2008-02-11  Jim Meyering  <meyering@redhat.com>
16259
16260         useless-if-before-free: Fix reversed exit values.
16261         * build-aux/useless-if-before-free: Use correct values
16262         for EXIT_MATCH and EXIT_NO_MATCH.
16263
16264         * build-aux/useless-if-before-free: Close stdout carefully.
16265
16266 2008-02-10  Bruno Haible  <bruno@clisp.org>
16267
16268         New module 'git-merge-changelog'.
16269         * modules/git-merge-changelog: New file.
16270         * lib/git-merge-changelog.c: New file.
16271
16272 2008-02-10  Jim Meyering  <meyering@redhat.com>
16273
16274         useless-if-before-free: New option: --list (-l).
16275
16276         useless-if-before-free: Don't exit immediately upon open failure.
16277         * build-aux/useless-if-before-free: Exit 2 for errors.
16278         Upon failure to open a file, don't exit immediately.
16279         Rather, just warn and continue with any remaining files.
16280
16281 2008-02-10  Bruno Haible  <bruno@clisp.org>
16282
16283         New abstract list operation 'node_set_value'.
16284         * lib/gl_list.h (gl_list_node_set_value): New function.
16285         (struct gl_list_implementation): New field node_set_value.
16286         * lib/gl_list.c (gl_list_node_set_value): New function.
16287         * lib/gl_array_list.c (gl_array_node_set_value): New function.
16288         (gl_array_list_implementation): Update.
16289         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
16290         (gl_carray_list_implementation): Update.
16291         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
16292         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
16293         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
16294         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
16295         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
16296         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
16297         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
16298         Update.
16299         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
16300         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
16301         (gl_sublist_list_implementation): Update.
16302
16303 2008-02-10  Bruno Haible  <bruno@clisp.org>
16304
16305         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
16306         Needed when ELEMENT is #defined to 'some_type *'.
16307
16308 2008-02-10  Jim Meyering  <meyering@redhat.com>
16309
16310         New script and module: useless-if-before-free
16311         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
16312         * build-aux/useless-if-before-free: New file.
16313         * modules/useless-if-before-free: New file.
16314
16315         * build-aux/gitlog-to-changelog: Use committer date, not author date.
16316
16317         xstrtol_error: Fix typo.
16318         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
16319         s/exit_failure/exit_status/.
16320
16321 2008-02-09  Jim Meyering  <meyering@redhat.com>
16322
16323         New script and module: gitlog-to-changelog
16324         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
16325         * modules/gitlog-to-changelog: New file.
16326         * build-aux/gitlog-to-changelog: New file.
16327
16328 2008-02-08  Jim Meyering  <meyering@redhat.com>
16329
16330         Avoid two "parameter unused" warnings.
16331         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
16332         Mark "st" as used.
16333
16334         Use "git COMMAND", not "git-COMMAND".
16335         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
16336         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
16337         * build-aux/git-version-gen: Use "git status", not "git-status".
16338
16339 2008-02-07  Bruno Haible  <bruno@clisp.org>
16340
16341         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
16342         Avoids a crash on Windows Vista.
16343         Reported by Adam Strzelecki <ono@java.pl> via
16344         Simon Josefsson <simon@josefsson.org>.
16345
16346 2008-02-06  Bruno Haible  <bruno@clisp.org>
16347
16348         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
16349         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
16350         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
16351         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
16352         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
16353         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
16354         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
16355         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
16356         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
16357         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
16358         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
16359         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
16360         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
16361         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
16362         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
16363         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
16364         left-adjust flag.
16365         * tests/test-snprintf-posix.h (test_function): Likewise.
16366         * tests/test-sprintf-posix.h (test_function): Likewise.
16367         * tests/test-vasprintf-posix.c (test_function): Likewise.
16368         * doc/posix-functions/fprintf.texi: Update.
16369         * doc/posix-functions/printf.texi: Update.
16370         * doc/posix-functions/snprintf.texi: Update.
16371         * doc/posix-functions/sprintf.texi: Update.
16372         * doc/posix-functions/vfprintf.texi: Update.
16373         * doc/posix-functions/vprintf.texi: Update.
16374         * doc/posix-functions/vsnprintf.texi: Update.
16375         * doc/posix-functions/vsprintf.texi: Update.
16376         Reported by Peter Fales <psfales@alcatel-lucent.com>.
16377
16378 2008-02-06  Bruno Haible  <bruno@clisp.org>
16379
16380         Fix bug introduced on 2008-01-26.
16381         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
16382
16383 2008-02-06  Bruno Haible  <bruno@clisp.org>
16384
16385         Fix bug introduced on 2007-06-10.
16386         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
16387         !NEED_PRINTF_FLAG_ZERO.
16388
16389 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
16390
16391         getloadavg: use libperfstat on AIX5
16392         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
16393
16394 2008-02-03  Bruno Haible  <bruno@clisp.org>
16395
16396         * lib/diffseq.h: Add comments about required #includes.
16397         Reported by Michael Biggs <gnulib@doubleplum.net>.
16398
16399 2008-02-01  Bruno Haible  <bruno@clisp.org>
16400
16401         * users.txt: Add gnuit.
16402
16403 2008-01-31  Bruno Haible  <bruno@clisp.org>
16404
16405         * lib/md4.c (set_uint32): Mark as inline.
16406         * lib/md5.c (set_uint32): Likewise.
16407         * lib/sha1.c (set_uint32): Likewise.
16408         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
16409         * m4/md5.m4 (gl_MD5): Likewise.
16410         * m4/sha1.m4 (gl_SHA1): Likewise.
16411
16412 2008-01-31  Jim Meyering  <meyering@redhat.com>
16413
16414         Use "sizeof VAR", rather than a literal "4".
16415         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
16416         * lib/md4.c (md4_read_ctx): Likewise.
16417         * lib/sha1.c (sha1_read_ctx): Likewise.
16418
16419 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16420
16421         * tests/test-sha1.c: New file, based on test-md5.c.
16422
16423         * modules/crypto/sha1-tests: New file.
16424
16425 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16426
16427         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
16428
16429 2008-01-31  Jim Meyering  <meyering@redhat.com>
16430
16431         Prefer "sizeof v" over the equivalent "4".
16432         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
16433         * lib/md5.c (set_uint32): Likewise.
16434         * lib/sha1.c (set_uint32): Likewise.
16435
16436 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16437
16438         * lib/sha1.c (set_uint32): Mark function as static.
16439
16440 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16441
16442         md2: clarify comments to say that alignment is not required.
16443         * lib/md2.h: Remove warning about alignment in comment.
16444         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
16445         never been required.
16446
16447 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16448
16449         md4: adapt alignment constraint fix from sha1.
16450         * lib/md4.c (set_uint32): New function, from sha1.c
16451         (md4_read_ctx): Use it.
16452         (md4_finish_ctx): Doc fix.
16453         * lib/md4.h: Doc fix.
16454
16455 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16456
16457         md5: adapt alignment constraint fix from sha1.
16458         * lib/md5.c (set_uint32): New function, from sha1.c
16459         (md5_read_ctx): Use it.
16460         (md5_finish_ctx): Doc fix.
16461         * lib/md5.h: Doc fix.
16462
16463 2008-01-30  Peter Palfrader  <weasel@debian.org>
16464
16465         sha1: remove the result buffer alignment constraint
16466         * lib/sha1.c (set_uint32): New function.
16467         (sha1_read_ctx): Rewrite to remove the result buffer alignment
16468         constraint.
16469         (sha1_finish_ctx): Remove comment warning about alignment constraint.
16470         * lib/sha1.h: Likewise.
16471
16472 2008-01-30  Andreas Schwab  <schwab@suse.de>
16473             Bruno Haible  <bruno@clisp.org>
16474
16475         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
16476         correct definition of LDBL_MIN_EXP.
16477
16478 2008-01-30  Karl Berry  <karl@gnu.org>
16479
16480         * config/srclist-update: try to preserve x bit on updates.
16481         * config/srclistvars.sh: update for karl.
16482
16483 2008-01-29  Jim Meyering  <meyering@redhat.com>
16484
16485         vasnprintf.c: Avoid warning about unused label
16486         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
16487         "overflow" label definition and associated code with the
16488         same cpp condition that guards the sole use of that label.
16489
16490 2008-01-26  Bruno Haible  <bruno@clisp.org>
16491
16492         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
16493         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
16494         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
16495         * lib/isnanl-nolibm.h (isnanl): Likewise.
16496         Reported by Paul Eggert <eggert@cs.ucla.edu>.
16497
16498 2008-01-26  Bruno Haible  <bruno@clisp.org>
16499
16500         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
16501         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
16502
16503 2008-01-26  Bruno Haible  <bruno@clisp.org>
16504
16505         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
16506         GCC >= 4.0 built-in.
16507         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
16508
16509 2008-01-26  Bruno Haible  <bruno@clisp.org>
16510
16511         Rename isnan, applicable to 'double' only, to isnand.
16512         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
16513         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
16514         (configure.ac): Update.
16515         (Include): Replace "isnan.h" with "isnand.h".
16516         * m4/isnand.m4: Renamed from m4/isnan.m4.
16517         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
16518         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
16519         instead of isnan.c.
16520         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
16521         instead of HAVE_ISNAN_IN_LIBC.
16522         (isnand): Renamed from isnan.
16523         * lib/isnand.c: New file.
16524         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
16525         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
16526         (Makefile.am): Update.
16527         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
16528         Include isnand.h instead of isnan.h.
16529         (main): Test isnand instead of isnan.
16530         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
16531         isnan-nolibm.
16532         * modules/frexp (Depends-on): Likewise.
16533         * modules/frexp-tests (Depends-on): Likewise.
16534         * modules/frexp-nolibm (Depends-on): Likewise.
16535         * modules/frexp-nolibm-tests (Depends-on): Likewise.
16536         * modules/isfinite (Depends-on): Likewise.
16537         * modules/round-tests (Depends-on): Likewise.
16538         * modules/signbit (Depends-on): Likewise.
16539         * modules/signbit-tests (Depends-on): Likewise.
16540         * modules/snprintf-posix (Depends-on): Likewise.
16541         * modules/sprintf-posix (Depends-on): Likewise.
16542         * modules/trunc-tests (Depends-on): Likewise.
16543         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
16544         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
16545         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
16546         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
16547         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
16548         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
16549         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
16550         * modules/vasnprintf-posix (Depends-on): Likewise.
16551         * modules/vasprintf-posix (Depends-on): Likewise.
16552         * modules/vfprintf-posix (Depends-on): Likewise.
16553         * modules/vsnprintf-posix (Depends-on): Likewise.
16554         * modules/vsprintf-posix (Depends-on): Likewise.
16555         * lib/frexp.c: Include isnand.h instead of isnan.h.
16556         (ISNAN): Set to isnand instead of isnan.
16557         * lib/isfinite.c: Include isnand.h instead of isnan.h.
16558         (gl_isfinited): Use isnand instead of isnan.
16559         * lib/signbitd.c: Include isnand.h instead of isnan.h.
16560         (gl_signbitd): Use isnand instead of isnan.
16561         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
16562         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
16563         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
16564         (main): Use isnand instead of isnan.
16565         * tests/test-round1.c: Include isnand.h.
16566         (main): Use isnand instead of isnan.
16567         * tests/test-round2.c: Include isnand.h instead of isnan.h.
16568         (ISNAN): Set to isnand instead of isnan.
16569         * tests/test-trunc1.c: Include isnand.h.
16570         (main): Use isnand instead of isnan.
16571         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
16572         (equal): Use isnand instead of isnan.
16573         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
16574         isnand-nolibm.
16575         * NEWS: Mention the change.
16576
16577 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
16578             Bruno Haible  <bruno@clisp.org>
16579
16580         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
16581         the GCC builtins for signbits are present and set
16582         REPLACE_SIGNBIT_USING_GCC if so.
16583         * lib/math.in.h (signbit): Define using GCC builtins if
16584         REPLACE_SIGNBIT_USING_GCC is set.
16585         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
16586         REPLACE_SIGNBIT_USING_GCC.
16587         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
16588
16589 2008-01-25  Jim Meyering  <meyering@redhat.com>
16590
16591         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
16592         * lib/poll.c: Include <config.h>, not "config.h".
16593         * tests/test-getaddrinfo.c: Likewise.
16594
16595 2008-01-25  Simon Josefsson  <simon@josefsson.org>
16596
16597         * modules/sockets-tests: New file.
16598
16599 2008-01-24  Simon Josefsson  <simon@josefsson.org>
16600
16601         * modules/sockets: New module, can be used to call WSA_Startup and
16602         WSA_Cleanup when needed.
16603
16604         * lib/sockets.h, lib/sockets.c: New files.
16605
16606         * m4/sockets.m4: New file.
16607
16608         * tests/test-sockets.c: New file.
16609
16610 2008-01-19  Bruno Haible  <bruno@clisp.org>
16611
16612         * doc/posix-headers: Renamed from doc/headers.
16613         * doc/posix-functions: Renamed from doc/functions.
16614         * doc/gnulib.texi: Update.
16615
16616 2008-01-19  Bruno Haible  <bruno@clisp.org>
16617
16618         * doc/glibc-functions/strcasestr.texi: Include contents of
16619         doc/functions/strcasestr.texi, fixing the list of platforms.
16620         * doc/functions/strcasestr.texi: Remove file.
16621
16622 2008-01-19  Bruno Haible  <bruno@clisp.org>
16623
16624         * doc/glibc-functions/memmem.texi: Include contents of
16625         doc/functions/memmem.texi.
16626         * doc/functions/memmem.texi: Remove file.
16627
16628 2008-01-18  Bruno Haible  <bruno@clisp.org>
16629
16630         * doc/glibc-functions/*.texi: New files.
16631         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
16632         to use the new files.
16633
16634 2008-01-17  Bruno Haible  <bruno@clisp.org>
16635
16636         * tests/test-gethostname.c (main): Fix printf statement.
16637
16638 2008-01-17  Simon Josefsson  <simon@josefsson.org>
16639
16640         * modules/gethostname-tests: New file.
16641
16642         * tests/test-gethostname.c: New file.
16643
16644 2008-01-17  Simon Josefsson  <simon@josefsson.org>
16645
16646         * lib/gethostname.c: Include string.h unconditionally, strncpy is
16647         used by the UNAME case.  Reported by Bruno Haible
16648         <bruno@clisp.org>.
16649
16650 2008-01-17  Eric Blake  <ebb9@byu.net>
16651
16652         Convert c-strcasestr to be more efficient.
16653         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
16654         (Depends-on): Add c-strcase, remove malloca, strnlen.
16655         * tests/test-c-strcasestr.c (main): Enhance test.
16656         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
16657
16658 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
16659
16660         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
16661         Use it in creating po/Makevars.
16662
16663 2008-01-15  Simon Josefsson  <simon@josefsson.org>
16664
16665         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
16666         Applications that requires it should initialize libgcrypt
16667         manually.
16668
16669 2008-01-16  Simon Josefsson  <simon@josefsson.org>
16670
16671         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
16672
16673 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
16674
16675         Fix problem with getdate on mingw32 reported by Simon Josefsson
16676         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
16677         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
16678         tzname", when deciding whether to declare tzname.
16679         * lib/strftime.c (tzname): Likewise.
16680
16681 2008-01-15  Bruno Haible  <bruno@clisp.org>
16682
16683         Work around a MacOS X 10.5 bug in frexpl().
16684         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
16685         * doc/functions/frexpl.texi: Document the bug.
16686         Reported by Elias Pipping <pipping@gentoo.org>.
16687
16688 2008-01-14  Eric Blake  <ebb9@byu.net>
16689
16690         Touch up previous patch.
16691         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
16692         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
16693
16694         Convert strcasestr module to use Two-Way algorithm.
16695         * modules/strcasestr-simple: New module, based on the old
16696         strcasestr, but with Two-Way rather than KMP.
16697         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
16698         * lib/string.in.h (rpl_strcasestr): Declare.
16699         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
16700         performance.
16701         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
16702         * modules/string (Makefile.am): Support strcasestr.
16703         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
16704         * modules/strcasestr-tests (Depends-on): Check for alarm.
16705         * tests/test-strcasestr.c: Augment test.
16706         * lib/str-two-way.h: Clean up stray macro.
16707         * NEWS: Document new module.
16708         * MODULES.html.sh (string handling): Likewise.
16709         * doc/functions/strcasestr.texi: New file.
16710         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
16711         here, since it is not a POSIX function.
16712
16713 2008-01-14  Colin Watson  <cjwatson@debian.org>
16714             Bruno Haible  <bruno@clisp.org>
16715
16716         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
16717         works fine; if not, set REPLACE_STRSIGNAL.
16718         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
16719         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16720         REPLACE_STRSIGNAL.
16721         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
16722         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
16723         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
16724
16725 2008-01-14  Bruno Haible  <bruno@clisp.org>
16726
16727         * modules/strsignal (Include): Change to <string.h>.
16728
16729 2008-01-14  Colin Watson  <cjwatson@debian.org>
16730
16731         * modules/argp (Notice): Add a notice recommending to change
16732         XGETTEXT_OPTIONS.
16733         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
16734
16735 2008-01-13  Colin Watson  <cjwatson@debian.org>
16736
16737         * modules/strsignal-tests: New file.
16738         * tests/test-strsignal.c: New file.
16739
16740         * lib/strsignal.c: New file, from glibc with modifications.
16741         * lib/siglist.h: New file, from glibc with modifications.
16742         * lib/string.in.h (strsignal): New declaration.
16743         * m4/strsignal.m4: New file.
16744         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16745         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
16746         * modules/strsignal: New file.
16747         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
16748         HAVE_DECL_STRSIGNAL.
16749
16750 2008-01-13  Bruno Haible  <bruno@clisp.org>
16751
16752         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
16753         locale encoding is not ASCII. Needed for OpenBSD 4.0.
16754         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
16755         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
16756
16757 2008-01-13  Bruno Haible  <bruno@clisp.org>
16758
16759         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
16760         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
16761         * lib/argp.h (__attribute__): Likewise.
16762         * lib/c-stack.c (__attribute__): Likewise.
16763         * lib/error.h (__attribute__): Likewise.
16764         * lib/fts.c (__attribute__): Likewise.
16765         * lib/openat.h (__attribute__): Likewise.
16766         * lib/stdio.in.h (__attribute__): Likewise.
16767         * lib/string.in.h (__attribute__): Likewise.
16768         * lib/utimens.c (__attribute__): Likewise.
16769         * lib/vasnprintf.h (__attribute__): Likewise.
16770         * lib/xalloc.h (__attribute__): Likewise.
16771         * lib/xprintf.h (__attribute__): Likewise.
16772         * lib/xstrtol.h (__attribute__): Likewise.
16773         * lib/xvasprintf.h (__attribute__): Likewise.
16774
16775 2008-01-12  Bruno Haible  <bruno@clisp.org>
16776
16777         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
16778         * doc/glibc-headers/a.out.texi: New file.
16779         * doc/glibc-headers/aliases.texi: New file.
16780         * doc/glibc-headers/alloca.texi: New file.
16781         * doc/glibc-headers/ar.texi: New file.
16782         * doc/glibc-headers/argp.texi: New file.
16783         * doc/glibc-headers/argz.texi: New file.
16784         * doc/glibc-headers/byteswap.texi: New file.
16785         * doc/glibc-headers/crypt.texi: New file.
16786         * doc/glibc-headers/endian.texi: New file.
16787         * doc/glibc-headers/envz.texi: New file.
16788         * doc/glibc-headers/err.texi: New file.
16789         * doc/glibc-headers/error.texi: New file.
16790         * doc/glibc-headers/execinfo.texi: New file.
16791         * doc/glibc-headers/fpu_control.texi: New file.
16792         * doc/glibc-headers/fstab.texi: New file.
16793         * doc/glibc-headers/fts.texi: New file.
16794         * doc/glibc-headers/getopt.texi: New file.
16795         * doc/glibc-headers/ieee754.texi: New file.
16796         * doc/glibc-headers/ifaddrs.texi: New file.
16797         * doc/glibc-headers/libintl.texi: New file.
16798         * doc/glibc-headers/mcheck.texi: New file.
16799         * doc/glibc-headers/mntent.texi: New file.
16800         * doc/glibc-headers/obstack.texi: New file.
16801         * doc/glibc-headers/paths.texi: New file.
16802         * doc/glibc-headers/printf.texi: New file.
16803         * doc/glibc-headers/pty.texi: New file.
16804         * doc/glibc-headers/resolv.texi: New file.
16805         * doc/glibc-headers/shadow.texi: New file.
16806         * doc/glibc-headers/sysexits.texi: New file.
16807         * doc/glibc-headers/ttyent.texi: New file.
16808
16809 2008-01-12  Jim Meyering  <meyering@redhat.com>
16810
16811         announce-gen: emit Gnulib's git-based version string.
16812         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
16813         New option --gnulib-version=V, where V is expected to be
16814         the output of running git describe in the gnulib directory.
16815         (get_tool_versions): Request feedback on xdelta.  I suspect it's
16816         not useful, and plan to stop publishing an xdelta file with each
16817         coreutils release.
16818
16819         * build-aux/announce-gen: Also check for lzma-compressed files.
16820
16821 2008-01-11  Bruno Haible  <bruno@clisp.org>
16822
16823         * tests/test-memmem.c (main): Increase maximum allowed time.
16824         * tests/test-strstr.c (main): Likewise.
16825
16826 2008-01-11  Bruno Haible  <bruno@clisp.org>
16827
16828         * doc/functions/memmem.texi: Add more precisions about platforms.
16829         * doc/functions/strstr.texi: Likewise.
16830
16831 2008-01-10  Eric Blake  <ebb9@byu.net>
16832
16833         * m4/strstr.m4: Delete cruft from copy-n-paste.
16834         Reported by Bruno Haible.
16835
16836 2008-01-10  Bruno Haible  <bruno@clisp.org>
16837
16838         Make c-strstr rely on strstr.
16839         * lib/c-strstr.c: Don't include str-kmp.h.
16840         (c_strstr): Define in terms of strstr.
16841         * modules/c-strstr (Files): Remove lib/str-kmp.h.
16842         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
16843
16844 2008-01-10  Bruno Haible  <bruno@clisp.org>
16845
16846         * doc/gnulib.texi (String Functions in C Locale): New section.
16847         * doc/c-ctype.texi: New file.
16848         * doc/c-strcase.texi: New file.
16849         * doc/c-strcaseeq.texi: New file.
16850         * doc/c-strcasestr.texi: New file.
16851         * doc/c-strstr.texi: New file.
16852         * doc/c-strtod.texi: New file.
16853         * doc/c-strtold.texi: New file.
16854
16855 2008-01-10  Eric Blake  <ebb9@byu.net>
16856
16857         * lib/relocatable.h: Fix a comment.
16858
16859 2008-01-10  Eric Blake  <ebb9@byu.net>
16860
16861         Share two-way algorithm.
16862         * lib/str-two-way.h: New file, merged from...
16863         * lib/memmem.c: ...here...
16864         * lib/strstr.c: ...and here.
16865         * modules/memmem (Files): Use it.
16866         * modules/strstr (Files): Likewise.
16867
16868         Avoid quadratic strstr implementations.
16869         * lib/strstr.c: New file.
16870         * m4/strstr.m4: Likewise.
16871         * modules/strstr: Likewise.
16872         * modules/strstr-tests: Likewise.
16873         * tests/test-strstr.c: Likewise.
16874         * lib/string.in.h (rpl_strstr): Declare.
16875         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
16876         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
16877         * modules/string (Makefile.am): Likewise.
16878         * MODULES.html.sh (string handling): Mention new module.
16879         * doc/functions/strstr.texi (strstr): Document the bug.
16880
16881 2008-01-10  Bruno Haible  <bruno@clisp.org>
16882
16883         * lib/relocatable.h (relocate): State whether result is freshly
16884         allocated or not.
16885         * lib/relocatable.c (relocate): Return a freshly allocated string
16886         instead of a pointer to a privately held string.
16887         Reported by Sylvain Beucler <beuc@gnu.org>.
16888
16889 2008-01-10  Colin Watson  <cjwatson@debian.org>
16890
16891         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
16892         s/S_ISNLK/S_ISLNK/.
16893
16894 2008-01-09  Bruno Haible  <bruno@clisp.org>
16895
16896         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
16897         and other files.
16898         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
16899         if it's only a guess.
16900         * modules/memmem: Simplify by depending on memmem-simple.
16901
16902 2008-01-09  Bruno Haible  <bruno@clisp.org>
16903
16904         Work around OpenBSD 4.0 tdelete() bug.
16905         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
16906         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
16907         macros and don't redefine the enum values.
16908         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
16909         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
16910         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
16911
16912 2008-01-09  Bruno Haible  <bruno@clisp.org>
16913
16914         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
16915         (main): Don't perform the tests if setlocale did not install a UTF-8
16916         locale. Needed on OpenBSD 4.0.
16917         * modules/wcwidth-tests (Depends-on): Add localcharset.
16918
16919 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
16920
16921         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
16922         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
16923         * NEWS: announce this.
16924         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
16925
16926 2008-01-09  Simon Josefsson  <simon@josefsson.org>
16927         and Eric Blake  <ebb9@byu.net>
16928
16929         Add memmem-simple module.
16930         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
16931         (gl_FUNC_MEMMEM): Separate performance from presence checks.
16932         * modules/memmem-simple: New file.
16933         * modules/memmem (Description): Tweak.
16934         * MODULES.html.sh (string handling): Mention new module.
16935         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
16936         addressed by memmem-simple.
16937         * NEWS: Document the difference.
16938
16939 2008-01-09  Eric Blake  <ebb9@byu.net>
16940
16941         Give gcc some memmem optimization hints.
16942         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
16943         (strcasestr): Declare as pure.
16944         * modules/memmem (Maintainer): Claim my implementation.
16945
16946 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16947
16948         Support AIX 6.1 and higher.
16949         * build-aux/config.libpath: Likewise.
16950         * build-aux/config.rpath: Likewise.
16951
16952 2008-01-08  Jim Meyering  <meyering@redhat.com>
16953             Bruno Haible  <bruno@clisp.org>
16954
16955         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
16956         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
16957         Reported by Peter Fales in
16958         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
16959
16960 2008-01-08  Bruno Haible  <bruno@clisp.org>
16961
16962         * modules/unictype/category-of (Depends-on): Add
16963         unictype/category-none.
16964         * modules/unictype/category-and-tests (Depends-on): Add
16965         unictype/category-{L,N,Lu,Nd}.
16966         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
16967         * modules/unictype/category-or-tests (Depends-on): Add
16968         unictype/category-{L,N}.
16969         * modules/unictype/category-name-tests (Depends-on): Add
16970         unictype/category-{Z,Nl}.
16971         Reported by Simon Josefsson.
16972
16973 2008-01-08  Bruno Haible  <bruno@clisp.org>
16974
16975         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
16976         convention better.
16977         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
16978         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
16979         Reported by Peter Miller <millerp@canb.auug.org.au>.
16980
16981 2008-01-08  Eric Blake  <ebb9@byu.net>
16982
16983         Rewrite memmem to guarantee linear complexity without malloc.
16984         * lib/memmem.c (memmem): Use Two-Way rather than
16985         Knuth-Morris-Pratt, to allow O(1) space usage.
16986         (critical_factorization, two_way_short_needle)
16987         (two_way_long_needle): New functions.
16988         (knuth_morris_pratt): Delete.
16989         * modules/memmem (Depends-on): No longer need malloca or stdbool.
16990         Add stdint.
16991         * tests/test-memmem.c (main): Add tests for periodic needle and
16992         sublinear performance.
16993         * doc/functions/memmem.texi (memmem): Document other deficiencies
16994         in cygwin and older glibc.
16995
16996 2008-01-08  Bruno Haible  <bruno@clisp.org>
16997
16998         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
16999         augmentation.
17000
17001 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
17002
17003         Add a configure time option: --disable-acl.
17004         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
17005         AC_ARG_ENABLE(acl).
17006
17007 2008-01-06  Simon Josefsson  <simon@josefsson.org>
17008
17009         * tests/test-localename.c: Don't include obsolete "setenv.h".
17010
17011         * modules/localename-tests (Depends-on): Need unsetenv.
17012
17013 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17014
17015         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
17016
17017 2008-01-06  Colin Watson  <cjwatson@debian.org>
17018
17019         * users.txt: Add man-db.
17020
17021 2008-01-07  Bruno Haible  <bruno@clisp.org>
17022
17023         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
17024         previous section name.
17025
17026 2008-01-07  Bruno Haible  <bruno@clisp.org>
17027
17028         * lib/progname.c (set_program_name): Don't strip off a leading
17029         "lt-" prefix outside a .libs directory.
17030         Suggested by Paul Eggert.
17031
17032 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
17033             Bruno Haible  <bruno@clisp.org>
17034
17035         Improve memory cleanup in 'relocatable' module.
17036         * lib/relocatable.h (compute_curr_prefix): Change return type to
17037         'char *'.
17038         * lib/relocatable.c (compute_curr_prefix): Change return type to
17039         'char *'. Free curr_installdir after use.
17040         (relocate): Free curr_prefix_better after use.
17041         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
17042
17043 2008-01-01  Bruno Haible  <bruno@clisp.org>
17044
17045         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
17046         failure on older glibc systems.
17047         Reported by Peter Fales <psfales@alcatel-lucent.com>.
17048
17049 2008-01-05  Eric Blake  <ebb9@byu.net>
17050
17051         Avoid quadratic system memmem.
17052         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
17053         Reported by Ralf Wildenhues.
17054
17055         Fix memmem test for mingw.
17056         * modules/memmem-tests (configure.ac): Check for alarm.
17057         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
17058         it.
17059         * doc/functions/memmem.texi: New file.
17060         * doc/gnulib.texi (Function Substitutes): Add memmem.
17061         Reported by Bruno Haible.
17062
17063 2008-01-04  Bruno Haible  <bruno@clisp.org>
17064
17065         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
17066         Require gl_HEADER_STRINGS_H_DEFAULTS, not
17067         gl_HEADER_STRING_H_DEFAULTS.
17068
17069 2008-01-04  Eric Blake  <ebb9@byu.net>
17070
17071         Shorten duration of memmem test.
17072         * tests/test-memmem.c (main): Use alarm to declare failure if test
17073         is taking too long.
17074         Reported by Ralf Wildenhues.
17075
17076 2007-12-21  Simon Josefsson  <simon@josefsson.org>
17077
17078         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
17079         string, needed by strerror.
17080
17081 2008-01-03  Colin Watson  <cjwatson@debian.org>
17082             Bruno Haible  <bruno@clisp.org>
17083
17084         * doc/gnulib-tool.texi (Localization): New section.
17085
17086 2008-01-02  Bruno Haible  <bruno@clisp.org>
17087
17088         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
17089         variables to 'unsigned char *' type.
17090         Reported by Paul Eggert.
17091
17092 2008-01-02  Jim Meyering  <jim@meyering.net>
17093
17094         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
17095
17096 2007-12-31  Jim Meyering  <jim@meyering.net>
17097
17098         Avoid use of private FTS type name.
17099         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
17100
17101 2007-12-30  Karl Berry  <karl@gnu.org>
17102
17103         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
17104         work around defect in Texinfo and/or the standalone Info browser.
17105
17106 2007-12-30  Bruno Haible  <bruno@clisp.org>
17107
17108         Unify 5 copies of the KMP code.
17109         * lib/str-kmp.h: New file.
17110         * lib/c-strcasestr.c: Include str-kmp.h.
17111         (knuth_morris_pratt): Remove function.
17112         (c_strcasestr): Update.
17113         * lib/c-strstr.c: Include str-kmp.h.
17114         (knuth_morris_pratt): Remove function.
17115         (c_strcasestr): Update.
17116         * lib/mbscasestr.c: Include str-kmp.h.
17117         (knuth_morris_pratt_unibyte): Remove function.
17118         * lib/mbsstr.c: Include str-kmp.h.
17119         (knuth_morris_pratt_unibyte): Remove function.
17120         * lib/strcasestr.c: Include str-kmp.h.
17121         (knuth_morris_pratt): Remove function.
17122         (strcasestr): Update.
17123         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
17124         * modules/c-strstr (Files): Likewise.
17125         * modules/mbscasestr (Files): Likewise.
17126         * modules/mbsstr (Files): Likewise.
17127         * modules/strcasestr (Files): Likewise.
17128         Suggested by Paul Eggert.
17129
17130 2007-12-30  Bruno Haible  <bruno@clisp.org>
17131
17132         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
17133         defined.
17134
17135 2007-12-30  Bruno Haible  <bruno@clisp.org>
17136
17137         * lib/xmalloca.h: Include xalloc.h.
17138         (xnmalloca): New macro.
17139
17140 2007-12-30  Bruno Haible  <bruno@clisp.org>
17141
17142         * lib/malloca.h (nmalloca): New macro.
17143         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
17144         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
17145         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
17146         knuth_morris_pratt_multibyte): Likewise.
17147         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
17148         knuth_morris_pratt_multibyte): Likewise.
17149         * lib/memmem.c (knuth_morris_pratt): Likewise.
17150         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
17151
17152 2007-12-25  Bruno Haible  <bruno@clisp.org>
17153
17154         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
17155         * lib/glob.c: Don't include openat.h.
17156         (link_exists2_p): Add back the code that deals with the
17157         !GLOB_ALTDIRFUNC case.
17158         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
17159         let it do the filename concatenation.
17160         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
17161         * modules/glob (Depends-on): Remove openat.
17162
17163 2007-12-31  Bruno Haible  <bruno@clisp.org>
17164
17165         * modules/dirfd (License): Change to LGPLv2+.
17166         Approved by Jim Meyering.
17167
17168 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
17169
17170         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
17171         when multiplying M by sizeof (size_t).
17172
17173 2007-12-10  Martin Lambers  <marlam@marlam.de>
17174
17175         Override getpagesize on mingw.
17176         * lib/getpagesize.c: New file.
17177         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
17178         * modules/getpagesize (Files): Add lib/getpagesize.c.
17179         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
17180         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
17181         REPLACE_GETPAGESIZE.
17182         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
17183
17184 2007-12-25  Bruno Haible  <bruno@clisp.org>
17185
17186         * modules/localcharset (Notice): New field.
17187         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
17188         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
17189
17190 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
17191             Bruno Haible  <bruno@clisp.org>
17192
17193         Avoid using the syntax symbol() in formatted documentation.
17194         * MODULES.html.sh (func_module): When replacing symbol() with a
17195         hyperlink, remove the parentheses. Show an error if some remain.
17196         Recognize and render the '...' syntax.
17197         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
17198         Rework. Add paragraph about GCC's inlining.
17199         * doc/alloca.texi: Likewise.
17200         * doc/error.texi: Remove parentheses from symbol reference.
17201         * doc/gnulib-intro.texi: Likewise.
17202         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
17203         * modules/fnmatch (Description): Reword to say "the ... function".
17204         * modules/full-read (Description): Likewise.
17205         * modules/full-write (Description): Likewise.
17206         * modules/safe-read (Description): Likewise.
17207         * modules/safe-write (Description): Likewise.
17208         * modules/strchrnul (Description): Likewise.
17209         * modules/trim (Description): Likewise.
17210         * modules/error (Description): Remove parentheses from symbol
17211         references.
17212         * modules/verror (Description): Likewise.
17213         Reported by Karl Berry.
17214
17215 2007-12-25  Bruno Haible  <bruno@clisp.org>
17216
17217         Fixup after 2007-10-16 commit.
17218         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
17219
17220 2007-12-24  Bruno Haible  <bruno@clisp.org>
17221
17222         Make --enable-relocatable work with DESTDIR.
17223         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
17224         to compute installdir from destprog.
17225         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
17226         also set the RELOC_DESTDIR variable.
17227         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
17228
17229 2007-12-24  Bruno Haible  <bruno@clisp.org>
17230
17231         Fix link error due to xalloc_die().
17232         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
17233         of xreadlink.
17234         * lib/relocwrapper.c: Update comments.
17235         * build-aux/install-reloc: Remove xreadlink.c from file list.
17236         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
17237         xreadlink.c.
17238         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
17239
17240 2007-12-24  Bruno Haible  <bruno@clisp.org>
17241
17242         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
17243         * lib/setenv.h: Remove file.
17244         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
17245         lib/setenv.h.
17246         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
17247         (Depends-on): Add stdlib.
17248         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
17249         gl_FUNC_UNSETENV.
17250         (Include): Replace setenv.h with <stdlib.h>.
17251         * modules/unsetenv: New file.
17252         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
17253         * lib/unsetenv.c: Include <stdlib.h> first.
17254         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
17255         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
17256         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
17257         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
17258         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
17259         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
17260         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
17261         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
17262         * doc/functions/unsetenv.texi: Update.
17263         * modules/xsetenv (Depends-on): Add unsetenv.
17264         * modules/getdate (Depends-on): Likewise.
17265         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
17266         * lib/xsetenv.c: Don't include setenv.h.
17267         * lib/getdate.y: Likewise.
17268         * lib/relocwrapper.c: Likewise.
17269         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
17270         (Depends-on): Add stdlib.
17271         * NEWS: Mention the changes.
17272         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
17273
17274 2007-12-23  Bruno Haible  <bruno@clisp.org>
17275
17276         * lib/memmem.c (memmem): Use lowercase variable names. Tab
17277         indentation.
17278
17279 2007-12-23  Bruno Haible  <bruno@clisp.org>
17280
17281         * lib/c-strcasestr.c: Add more comments.
17282         * lib/c-strstr.c: Likewise.
17283         * lib/mbscasestr.c: Likewise.
17284         * lib/mbsstr.c: Likewise.
17285         * lib/strcasestr.c: Likewise.
17286         * lib/memmem.c: Likewise.
17287
17288 2007-12-23  Bruno Haible  <bruno@clisp.org>
17289
17290         * tests/test-memmem.c: Include <string.h> first.
17291
17292 2007-12-22  Bruno Haible  <bruno@clisp.org>
17293
17294         * gnulib-tool (func_create_testdir): Change $auxdir while generating
17295         the contents of $testsbase.
17296         Reported by Ralf Wildenhues.
17297
17298 2007-12-22  Bruno Haible  <bruno@clisp.org>
17299
17300         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
17301         two variables local_ldadd_before, local_ldadd_last.
17302
17303 2007-12-20  Eric Blake  <ebb9@byu.net>
17304
17305         Work around circular library issue when cross-compiling.
17306         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
17307         that progname.o does not need to pull in rpl_memcmp.
17308
17309 2007-12-19  Eric Blake  <ebb9@byu.net>
17310
17311         Fix memmem to avoid O(n^2) worst-case complexity.
17312         * lib/memmem.c (knuth_morris_pratt): New function.
17313         (memmem): Use it if first few naive iterations fail.
17314         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
17315         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
17316         * modules/memchr (License): Likewise.
17317         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
17318         malloca.
17319         * tests/test-memmem.c: Rewrite, borrowing ideas from
17320         test-mbsstr1.c; the old version wouldn't even compile!
17321         * modules/memmem-tests: New file.
17322         * lib/string.in.h (rpl_memmem): Add declaration.
17323         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
17324         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
17325         REPLACE_MEMMEM.
17326
17327 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
17328
17329         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
17330         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
17331         before any system include files, and undef after them all.  This
17332         should fix a problem on VMS reported by John E. Malmberg in
17333         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
17334
17335 2007-12-17  Eric Blake  <ebb9@byu.net>
17336
17337         Revert addition of verify, for BSD/OS.
17338         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
17339         can't handle large files, for the sake of obsolete platforms.
17340         * modules/fseeko (Depends-on): Remove verify.
17341         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
17342         * doc/functions/ftello.texi (ftello): Likewise.
17343         * doc/functions/fgetpos.texi (fgetpos): Likewise.
17344         Reported by Larry Jones.
17345
17346 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
17347
17348         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
17349         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
17350
17351 2007-12-17  Jim Meyering  <meyering@redhat.com>
17352
17353         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
17354         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
17355         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
17356         * modules/getcwd (Depends-on): Add openat.
17357         Reported by Petr Salinger.
17358
17359 2007-12-17  Bruno Haible  <bruno@clisp.org>
17360
17361         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
17362         avoid a segmentation fault of the configure test on x86_64 systems.
17363
17364 2007-12-15  Jim Meyering  <meyering@redhat.com>
17365
17366         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
17367
17368 2007-12-13  Eric Blake  <ebb9@byu.net>
17369
17370         Another fseek test.
17371         * tests/test-fseek.c (main): Also test ungetc handling.
17372         * tests/test-fseeko.c (main): Likewise.
17373         * modules/fseeko (Depends-on): Add verify.
17374         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
17375         large.
17376         Reported by Larry Jones.
17377
17378         Fix fseeko on mingw.
17379         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
17380         seek.
17381
17382         Beef up fseek tests.
17383         * tests/test-fseek.c (main): Also test eof handling.
17384         * tests/test-fseeko.c (main): Likewise.
17385         Reported by Larry Jones.
17386
17387 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
17388
17389         Fix fseeko on BSD-based platforms.
17390         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
17391         successful seek.
17392
17393 2007-12-12  Eric Blake  <ebb9@byu.net>
17394
17395         Allow circular dependency of separate libtests.a
17396         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
17397         when use_libtests.
17398
17399 2007-12-11  Eric Blake  <ebb9@byu.net>
17400
17401         Fix bug with -0.0L in previous patch.
17402         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
17403         * tests/test-isnan.c (main): Also test on zeroes.
17404         * tests/test-isnanf.c (main): Likewise.
17405         * tests/test-isnanl.h (main): Likewise.
17406
17407         Detect pseudo-denormals on x86 even when cross-compiling.
17408         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
17409         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
17410         invalid bit patterns that happen to satisfy ==.
17411
17412         Avoid link failures with separate libtests.a.
17413         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
17414         last, to satisfy circular dependencies.
17415
17416 2007-12-11  Eric Blake  <ebb9@byu.net>
17417         and Bruno Haible  <bruno@clisp.org>
17418
17419         Fix OpenBSD 4.0 <float.h> handling of long double.
17420         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
17421         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
17422         * doc/headers/float.texi (float.h): Document OpenBSD bug.
17423
17424 2007-12-11  Jim Meyering  <meyering@redhat.com>
17425
17426         * users.txt: Add libvirt.
17427
17428         Support versions of autoconf prior to 2.59c.
17429         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
17430         if it is not already defined.
17431
17432 2007-12-09  Bruno Haible  <bruno@clisp.org>
17433
17434         Let 'gnulib-tool --import' collect sources needed for the tests in
17435         tests/ rather than in lib/.
17436         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
17437         argument. If true, add rules to generate libtests.a, and put libtests.a
17438         into $(LDADD). Consider source files in subdirectories and set
17439         uses_subdirs.
17440         (func_emit_initmacro_start, func_emit_initmacro_end,
17441         func_emit_initmacro_done): Pass all arguments explicitly.
17442         (func_import): Determine two module lists main_modules,
17443         testsrelated_modules. Determine use_libtests. Determine two variables
17444         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
17445         instead of just sed_transform_lib_file. Determine two variables
17446         main_files and testsrelated_files. Compute 'files' as the union of
17447         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
17448         func_add_or_update. In the generated gnulib-comp.m4, collect the
17449         object files for tests/ in different variables than those for lib/.
17450         Substitute LIBTESTS_LIBDEPS.
17451         (func_create_testdir): Combine the uses_subdirs results from
17452         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
17453
17454 2007-12-09  Bruno Haible  <bruno@clisp.org>
17455
17456         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
17457         the build-aux directory.
17458
17459 2007-12-09  Bruno Haible  <bruno@clisp.org>
17460
17461         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
17462         introduced on 2006-09-09.
17463
17464 2007-12-07  Jim Meyering  <meyering@redhat.com>
17465
17466         Let these macros work also with autoconf-2.59.
17467         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
17468         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
17469         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
17470
17471 2007-12-06  Jim Meyering  <meyering@redhat.com>
17472
17473         Avoid a configure-time syntax error in gl_FUNC_ACL.
17474         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
17475         function in each branch, before testing the cache variable.
17476
17477 2007-12-04  Eric Blake  <ebb9@byu.net>
17478
17479         Make scripts executable.
17480         * build-aux/config.guess: Add execute permissions.
17481         * build-aux/config.sub: Likewise.
17482         * build-aux/gendocs.sh: Likewise.
17483
17484         Fix frexp on mingw.
17485         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
17486         cross-compiling.
17487         * doc/functions/frexp.texi (frexp): Document the bug.
17488
17489         Make cygwin fseeko check more reliable.
17490         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
17491         version numbers, rather than unrelated feature check.
17492         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
17493         * doc/functions/ftello.texi (ftello): Likewise.
17494         Reported by Bruno Haible.
17495
17496         * m4/strerror.m4: Bump version number.
17497
17498 2007-12-03  Bruno Haible  <bruno@clisp.org>
17499
17500         * doc/functions/mprotect.texi: Mention the mingw problem.
17501
17502 2007-12-03  Eric Blake  <ebb9@byu.net>
17503
17504         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
17505         REPLACE_STRERROR is initialized before this macro.
17506
17507 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
17508
17509         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
17510         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
17511         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
17512         put -lsec in even for programs other than 'ls'.  This fixes a problem
17513         for gettext reported by Bruno Haible in
17514         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
17515         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
17516         Add support for Solaris 10.  This isn't efficient, but should get the
17517         job done for now.
17518
17519 2007-12-03  James Youngman  <jay@gnu.org>
17520
17521         * doc/regexprops-generic.texi: change "an close-group" to "a
17522         close-group" and "illegal" to "not allowed".
17523
17524 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17525
17526         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
17527         pr_byname.h. Needed for the rare case when the maintainer has done
17528         "make maintainer-clean" in the source directory and then attempts a
17529         build outside the source directory.
17530         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
17531         scripts_byname.h.
17532
17533 2007-12-02  Martin Lambers <marlam@marlam.de>
17534             Bruno Haible  <bruno@clisp.org>
17535
17536         * lib/getpagesize.h: Remove file.
17537         * lib/unistd.in.h: Include declaration of getpagesize here.
17538         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
17539         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
17540         HAVE_SYS_PARAM_H.
17541         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
17542         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
17543         * modules/getpagesize (Files): Remove lib/getpagesize.h.
17544         (Depends-on): Add unistd.
17545         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
17546         (Include): Use <unistd.h> instead of getpagesize.h.
17547         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
17548         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
17549         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
17550         gl_GETPAGESIZE invocation, already handled by module dependency.
17551         * lib/pagealign_alloc.c: Don't include getpagesize.h.
17552
17553 2007-12-02  Bruno Haible  <bruno@clisp.org>
17554
17555         * modules/strings-tests: New file.
17556         * tests/test-strings.c: New file.
17557
17558         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
17559         * lib/strings.in.h: New file.
17560         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
17561         * m4/strings_h.m4: New file.
17562         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
17563         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
17564         * modules/strings: New file.
17565         * modules/string (Makefile.am): Update.
17566         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
17567         Reported by Karl Berry.
17568
17569 2007-12-01  Eric Blake  <ebb9@byu.net>
17570
17571         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
17572         accomodate fix in cygwin 1.5.25.
17573
17574 2007-12-01  Jim Meyering  <meyering@redhat.com>
17575
17576         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
17577         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
17578         that would inhibit utf8-optimization of a regexp containing line-
17579         or buffer-anchors, e.g., `^', `$'.
17580
17581 2007-11-30  Bruno Haible  <bruno@clisp.org>
17582
17583         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
17584         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
17585         glthread_recursive_lock_init.
17586         * lib/lock.c (glthread_recursive_lock_init)
17587         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
17588         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
17589
17590 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
17591
17592         New function qset_acl, like set_acl but with syscall semantics.
17593         * lib/acl.h (qset_acl): New decl.
17594         * lib/acl.c (qset_acl): New function.
17595         (set_acl): Use new function.  Use more-consistent diagnostics.
17596
17597 2007-11-28  Jim Meyering  <meyering@redhat.com>
17598
17599         * modules/physmem (License): Change from GPL to LGPLv2+.
17600
17601 2007-11-26  Bruno Haible  <bruno@clisp.org>
17602
17603         * lib/vasnprintf.c (decode_long_double): Don't abort if the
17604         'long double' type has excess precision.
17605         Reported by Jim Meyering in
17606         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
17607
17608 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17609
17610         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
17611         Sync from <http://gnu.org/licenses>.
17612         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
17613         with license text from same location.
17614         * doc/maintain.texi, doc/standards.texi:  Sync from
17615         <http://savannah.gnu.org/projects/gnustandards>.
17616
17617 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
17618         and Jim Meyering  <meyering@redhat.com>
17619
17620         Adjust getdate' grammar to accept a slightly more regular language.
17621         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
17622         Before, the former was rejected.
17623         * lib/getdate.y (digits_to_date_time): New function, factored
17624         out of ...
17625         (number): ...here.  Just call digits_to_date_time.
17626         (hybrid): New non-terminal to handle an <unsigned number,
17627         signed relative offset> sequence consistently.
17628
17629 2007-11-18  Jim Meyering  <meyering@redhat.com>
17630
17631         Pull my changes from coreutils:
17632         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
17633         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
17634         use of $gnulib_tool_option_extras, so that it's separated from the
17635         preceding argument.
17636
17637         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
17638         * build-aux/bootstrap (cp_mark_as_generated): Create any required
17639         parent destination directories before copying a file into place.
17640
17641 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
17642
17643         bootstrap: work also with 4-argument variant of AC_INIT
17644         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
17645
17646 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
17647
17648         Port test-getaddrinfo to Solaris.
17649         Problem reported by Bruno Haible in
17650         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
17651         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
17652         explanation of setting 'hints'.
17653         Don't reject an implementation merely because it returns EAI_SERVICE.
17654         (EAI_SERVICE): Define to 0 if not defined.
17655
17656 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
17657
17658         The license of gnu-make and posix-shell is now "GPLed build tool".
17659         * modules/gnu-make (License): Likewise.
17660         * modules/posix-shell (License): Likewise.
17661
17662         New module posix-shell, for determining a POSIX shell
17663         or perhaps something that is close enough to a POSIX shell.
17664         * m4/posix-shell.m4: New file.
17665         * modules/posix-shell: New file.
17666
17667         * MODULES.html.sh: Mention new module.
17668
17669         New module gnu-make, for determining whether we're using GNU Make.
17670         * m4/gnu-make.m4: New file.
17671         * modules/gnu-make: New file.
17672         * MODULES.html.sh: Mention new module.
17673
17674 2007-11-14  Jim Meyering  <meyering@redhat.com>
17675
17676         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
17677         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
17678         use this macro to create a function _definition_.
17679         Remove useless "#undef ARGMATCH_DIE".
17680
17681 2007-11-14  Bruno Haible  <bruno@clisp.org>
17682
17683         * lib/config.charset: Update for OpenBSD 4.1.
17684         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
17685
17686 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
17687
17688         Document 64-bit #if problems in stdint.texi.
17689         * doc/headers/stdint.texi (stdint.h): Mention problems with
17690         64-bit-#if, and how to work around them.
17691
17692         Don't insist on 'long long int' support in the preprocessor.  It
17693         breaks too many things.  For example, PRIdMAX still uses a 'long
17694         long int' format with the latest Sun compiler, even though
17695         HAVE_LONG_LONG_INT isn't defined due to that compiler's
17696         preprocessor problem.  This causes the latest coreutils to dump
17697         core on Solaris 10 sparc with the Sun C compiler.
17698         Instead, fix the 2007-10-16 problem in a different way, by evaluating
17699         the troublesome expressions at configure-time, not at #if-time.
17700         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
17701         preprocessor.
17702         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
17703         compile-time C checks, done at 'configure'-time.
17704         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
17705         * modules/inttypes (Makefile): Substitute the new symbols that
17706         gl_INTTYPES_H now generates.
17707         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
17708
17709 2007-11-12  Bruno Haible  <bruno@clisp.org>
17710
17711         Tests for Unicode character classification functions.
17712
17713         * modules/unictype/bidicategory-byname-tests: New file.
17714         * modules/unictype/bidicategory-name-tests: New file.
17715         * modules/unictype/bidicategory-of-tests: New file.
17716         * modules/unictype/bidicategory-test-tests: New file.
17717         * modules/unictype/block-list-tests: New file.
17718         * modules/unictype/block-of-tests: New file.
17719         * modules/unictype/block-test-tests: New file.
17720         * modules/unictype/category-C-tests: New file.
17721         * modules/unictype/category-Cc-tests: New file.
17722         * modules/unictype/category-Cf-tests: New file.
17723         * modules/unictype/category-Cn-tests: New file.
17724         * modules/unictype/category-Co-tests: New file.
17725         * modules/unictype/category-Cs-tests: New file.
17726         * modules/unictype/category-L-tests: New file.
17727         * modules/unictype/category-Ll-tests: New file.
17728         * modules/unictype/category-Lm-tests: New file.
17729         * modules/unictype/category-Lo-tests: New file.
17730         * modules/unictype/category-Lt-tests: New file.
17731         * modules/unictype/category-Lu-tests: New file.
17732         * modules/unictype/category-M-tests: New file.
17733         * modules/unictype/category-Mc-tests: New file.
17734         * modules/unictype/category-Me-tests: New file.
17735         * modules/unictype/category-Mn-tests: New file.
17736         * modules/unictype/category-N-tests: New file.
17737         * modules/unictype/category-Nd-tests: New file.
17738         * modules/unictype/category-Nl-tests: New file.
17739         * modules/unictype/category-No-tests: New file.
17740         * modules/unictype/category-P-tests: New file.
17741         * modules/unictype/category-Pc-tests: New file.
17742         * modules/unictype/category-Pd-tests: New file.
17743         * modules/unictype/category-Pe-tests: New file.
17744         * modules/unictype/category-Pf-tests: New file.
17745         * modules/unictype/category-Pi-tests: New file.
17746         * modules/unictype/category-Po-tests: New file.
17747         * modules/unictype/category-Ps-tests: New file.
17748         * modules/unictype/category-S-tests: New file.
17749         * modules/unictype/category-Sc-tests: New file.
17750         * modules/unictype/category-Sk-tests: New file.
17751         * modules/unictype/category-Sm-tests: New file.
17752         * modules/unictype/category-So-tests: New file.
17753         * modules/unictype/category-Z-tests: New file.
17754         * modules/unictype/category-Zl-tests: New file.
17755         * modules/unictype/category-Zp-tests: New file.
17756         * modules/unictype/category-Zs-tests: New file.
17757         * modules/unictype/category-and-not-tests: New file.
17758         * modules/unictype/category-and-tests: New file.
17759         * modules/unictype/category-byname-tests: New file.
17760         * modules/unictype/category-name-tests: New file.
17761         * modules/unictype/category-none-tests: New file.
17762         * modules/unictype/category-of-tests: New file.
17763         * modules/unictype/category-or-tests: New file.
17764         * modules/unictype/category-test-withtable-tests: New file.
17765         * modules/unictype/combining-class-tests: New file.
17766         * modules/unictype/ctype-alnum-tests: New file.
17767         * modules/unictype/ctype-alpha-tests: New file.
17768         * modules/unictype/ctype-blank-tests: New file.
17769         * modules/unictype/ctype-cntrl-tests: New file.
17770         * modules/unictype/ctype-digit-tests: New file.
17771         * modules/unictype/ctype-graph-tests: New file.
17772         * modules/unictype/ctype-lower-tests: New file.
17773         * modules/unictype/ctype-print-tests: New file.
17774         * modules/unictype/ctype-punct-tests: New file.
17775         * modules/unictype/ctype-space-tests: New file.
17776         * modules/unictype/ctype-upper-tests: New file.
17777         * modules/unictype/ctype-xdigit-tests: New file.
17778         * modules/unictype/decimal-digit-tests: New file.
17779         * modules/unictype/digit-tests: New file.
17780         * modules/unictype/mirror-tests: New file.
17781         * modules/unictype/numeric-tests: New file.
17782         * modules/unictype/property-alphabetic-tests: New file.
17783         * modules/unictype/property-ascii-hex-digit-tests: New file.
17784         * modules/unictype/property-bidi-arabic-digit-tests: New file.
17785         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
17786         * modules/unictype/property-bidi-block-separator-tests: New file.
17787         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
17788         * modules/unictype/property-bidi-common-separator-tests: New file.
17789         * modules/unictype/property-bidi-control-tests: New file.
17790         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
17791         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
17792         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
17793         * modules/unictype/property-bidi-european-digit-tests: New file.
17794         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
17795         * modules/unictype/property-bidi-left-to-right-tests: New file.
17796         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
17797         * modules/unictype/property-bidi-other-neutral-tests: New file.
17798         * modules/unictype/property-bidi-pdf-tests: New file.
17799         * modules/unictype/property-bidi-segment-separator-tests: New file.
17800         * modules/unictype/property-bidi-whitespace-tests: New file.
17801         * modules/unictype/property-byname-tests: New file.
17802         * modules/unictype/property-combining-tests: New file.
17803         * modules/unictype/property-composite-tests: New file.
17804         * modules/unictype/property-currency-symbol-tests: New file.
17805         * modules/unictype/property-dash-tests: New file.
17806         * modules/unictype/property-decimal-digit-tests: New file.
17807         * modules/unictype/property-default-ignorable-code-point-tests: New file.
17808         * modules/unictype/property-deprecated-tests: New file.
17809         * modules/unictype/property-diacritic-tests: New file.
17810         * modules/unictype/property-extender-tests: New file.
17811         * modules/unictype/property-format-control-tests: New file.
17812         * modules/unictype/property-grapheme-base-tests: New file.
17813         * modules/unictype/property-grapheme-extend-tests: New file.
17814         * modules/unictype/property-grapheme-link-tests: New file.
17815         * modules/unictype/property-hex-digit-tests: New file.
17816         * modules/unictype/property-hyphen-tests: New file.
17817         * modules/unictype/property-id-continue-tests: New file.
17818         * modules/unictype/property-id-start-tests: New file.
17819         * modules/unictype/property-ideographic-tests: New file.
17820         * modules/unictype/property-ids-binary-operator-tests: New file.
17821         * modules/unictype/property-ids-trinary-operator-tests: New file.
17822         * modules/unictype/property-ignorable-control-tests: New file.
17823         * modules/unictype/property-iso-control-tests: New file.
17824         * modules/unictype/property-join-control-tests: New file.
17825         * modules/unictype/property-left-of-pair-tests: New file.
17826         * modules/unictype/property-line-separator-tests: New file.
17827         * modules/unictype/property-logical-order-exception-tests: New file.
17828         * modules/unictype/property-lowercase-tests: New file.
17829         * modules/unictype/property-math-tests: New file.
17830         * modules/unictype/property-non-break-tests: New file.
17831         * modules/unictype/property-not-a-character-tests: New file.
17832         * modules/unictype/property-numeric-tests: New file.
17833         * modules/unictype/property-other-alphabetic-tests: New file.
17834         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
17835         * modules/unictype/property-other-grapheme-extend-tests: New file.
17836         * modules/unictype/property-other-id-continue-tests: New file.
17837         * modules/unictype/property-other-id-start-tests: New file.
17838         * modules/unictype/property-other-lowercase-tests: New file.
17839         * modules/unictype/property-other-math-tests: New file.
17840         * modules/unictype/property-other-uppercase-tests: New file.
17841         * modules/unictype/property-paired-punctuation-tests: New file.
17842         * modules/unictype/property-paragraph-separator-tests: New file.
17843         * modules/unictype/property-pattern-syntax-tests: New file.
17844         * modules/unictype/property-pattern-white-space-tests: New file.
17845         * modules/unictype/property-private-use-tests: New file.
17846         * modules/unictype/property-punctuation-tests: New file.
17847         * modules/unictype/property-quotation-mark-tests: New file.
17848         * modules/unictype/property-radical-tests: New file.
17849         * modules/unictype/property-sentence-terminal-tests: New file.
17850         * modules/unictype/property-soft-dotted-tests: New file.
17851         * modules/unictype/property-space-tests: New file.
17852         * modules/unictype/property-terminal-punctuation-tests: New file.
17853         * modules/unictype/property-test-tests: New file.
17854         * modules/unictype/property-titlecase-tests: New file.
17855         * modules/unictype/property-unassigned-code-value-tests: New file.
17856         * modules/unictype/property-unified-ideograph-tests: New file.
17857         * modules/unictype/property-uppercase-tests: New file.
17858         * modules/unictype/property-variation-selector-tests: New file.
17859         * modules/unictype/property-white-space-tests: New file.
17860         * modules/unictype/property-xid-continue-tests: New file.
17861         * modules/unictype/property-xid-start-tests: New file.
17862         * modules/unictype/property-zero-width-tests: New file.
17863         * modules/unictype/scripts-tests: New file.
17864         * modules/unictype/syntax-c-ident-tests: New file.
17865         * modules/unictype/syntax-c-whitespace-tests: New file.
17866         * modules/unictype/syntax-java-ident-tests: New file.
17867         * modules/unictype/syntax-java-whitespace-tests: New file.
17868         * tests/unictype/test-bidi_byname.c: New file.
17869         * tests/unictype/test-bidi_name.c: New file.
17870         * tests/unictype/test-bidi_of.c: New file.
17871         * tests/unictype/test-bidi_test.c: New file.
17872         * tests/unictype/test-block_list.c: New file.
17873         * tests/unictype/test-block_of.c: New file.
17874         * tests/unictype/test-block_test.c: New file.
17875         * tests/unictype/test-categ_and.c: New file.
17876         * tests/unictype/test-categ_and_not.c: New file.
17877         * tests/unictype/test-categ_byname.c: New file.
17878         * tests/unictype/test-categ_name.c: New file.
17879         * tests/unictype/test-categ_none.c: New file.
17880         * tests/unictype/test-categ_of.c: New file.
17881         * tests/unictype/test-categ_or.c: New file.
17882         * tests/unictype/test-categ_test_withtable.c: New file.
17883         * tests/unictype/test-combining.c: New file.
17884         * tests/unictype/test-decdigit.c: New file.
17885         * tests/unictype/test-digit.c: New file.
17886         * tests/unictype/test-mirror.c: New file.
17887         * tests/unictype/test-numeric.c: New file.
17888         * tests/unictype/test-pr_byname.c: New file.
17889         * tests/unictype/test-pr_test.c: New file.
17890         * tests/unictype/test-predicate-part1.h: New file.
17891         * tests/unictype/test-predicate-part2.h: New file.
17892         * tests/unictype/test-scripts.c: New file.
17893         * tests/unictype/test-sy_c_ident.c: New file.
17894         * tests/unictype/test-sy_java_ident.c: New file.
17895
17896         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
17897         for Unicode 5.0.0.
17898         * tests/unictype/test-categ_Cc.c: Likewise.
17899         * tests/unictype/test-categ_Cf.c: Likewise.
17900         * tests/unictype/test-categ_Cn.c: Likewise.
17901         * tests/unictype/test-categ_Co.c: Likewise.
17902         * tests/unictype/test-categ_Cs.c: Likewise.
17903         * tests/unictype/test-categ_L.c: Likewise.
17904         * tests/unictype/test-categ_Ll.c: Likewise.
17905         * tests/unictype/test-categ_Lm.c: Likewise.
17906         * tests/unictype/test-categ_Lo.c: Likewise.
17907         * tests/unictype/test-categ_Lt.c: Likewise.
17908         * tests/unictype/test-categ_Lu.c: Likewise.
17909         * tests/unictype/test-categ_M.c: Likewise.
17910         * tests/unictype/test-categ_Mc.c: Likewise.
17911         * tests/unictype/test-categ_Me.c: Likewise.
17912         * tests/unictype/test-categ_Mn.c: Likewise.
17913         * tests/unictype/test-categ_N.c: Likewise.
17914         * tests/unictype/test-categ_Nd.c: Likewise.
17915         * tests/unictype/test-categ_Nl.c: Likewise.
17916         * tests/unictype/test-categ_No.c: Likewise.
17917         * tests/unictype/test-categ_P.c: Likewise.
17918         * tests/unictype/test-categ_Pc.c: Likewise.
17919         * tests/unictype/test-categ_Pd.c: Likewise.
17920         * tests/unictype/test-categ_Pe.c: Likewise.
17921         * tests/unictype/test-categ_Pf.c: Likewise.
17922         * tests/unictype/test-categ_Pi.c: Likewise.
17923         * tests/unictype/test-categ_Po.c: Likewise.
17924         * tests/unictype/test-categ_Ps.c: Likewise.
17925         * tests/unictype/test-categ_S.c: Likewise.
17926         * tests/unictype/test-categ_Sc.c: Likewise.
17927         * tests/unictype/test-categ_Sk.c: Likewise.
17928         * tests/unictype/test-categ_Sm.c: Likewise.
17929         * tests/unictype/test-categ_So.c: Likewise.
17930         * tests/unictype/test-categ_Z.c: Likewise.
17931         * tests/unictype/test-categ_Zl.c: Likewise.
17932         * tests/unictype/test-categ_Zp.c: Likewise.
17933         * tests/unictype/test-categ_Zs.c: Likewise.
17934         * tests/unictype/test-ctype_alnum.c: Likewise.
17935         * tests/unictype/test-ctype_alpha.c: Likewise.
17936         * tests/unictype/test-ctype_blank.c: Likewise.
17937         * tests/unictype/test-ctype_cntrl.c: Likewise.
17938         * tests/unictype/test-ctype_digit.c: Likewise.
17939         * tests/unictype/test-ctype_graph.c: Likewise.
17940         * tests/unictype/test-ctype_lower.c: Likewise.
17941         * tests/unictype/test-ctype_print.c: Likewise.
17942         * tests/unictype/test-ctype_punct.c: Likewise.
17943         * tests/unictype/test-ctype_space.c: Likewise.
17944         * tests/unictype/test-ctype_upper.c: Likewise.
17945         * tests/unictype/test-ctype_xdigit.c: Likewise.
17946         * tests/unictype/test-decdigit.h: Likewise.
17947         * tests/unictype/test-digit.h: Likewise.
17948         * tests/unictype/test-numeric.h: Likewise.
17949         * tests/unictype/test-pr_alphabetic.c: Likewise.
17950         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
17951         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
17952         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
17953         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
17954         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
17955         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
17956         * tests/unictype/test-pr_bidi_control.c: Likewise.
17957         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
17958         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
17959         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
17960         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
17961         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
17962         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
17963         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
17964         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
17965         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
17966         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
17967         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
17968         * tests/unictype/test-pr_combining.c: Likewise.
17969         * tests/unictype/test-pr_composite.c: Likewise.
17970         * tests/unictype/test-pr_currency_symbol.c: Likewise.
17971         * tests/unictype/test-pr_dash.c: Likewise.
17972         * tests/unictype/test-pr_decimal_digit.c: Likewise.
17973         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
17974         * tests/unictype/test-pr_deprecated.c: Likewise.
17975         * tests/unictype/test-pr_diacritic.c: Likewise.
17976         * tests/unictype/test-pr_extender.c: Likewise.
17977         * tests/unictype/test-pr_format_control.c: Likewise.
17978         * tests/unictype/test-pr_grapheme_base.c: Likewise.
17979         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
17980         * tests/unictype/test-pr_grapheme_link.c: Likewise.
17981         * tests/unictype/test-pr_hex_digit.c: Likewise.
17982         * tests/unictype/test-pr_hyphen.c: Likewise.
17983         * tests/unictype/test-pr_id_continue.c: Likewise.
17984         * tests/unictype/test-pr_id_start.c: Likewise.
17985         * tests/unictype/test-pr_ideographic.c: Likewise.
17986         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
17987         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
17988         * tests/unictype/test-pr_ignorable_control.c: Likewise.
17989         * tests/unictype/test-pr_iso_control.c: Likewise.
17990         * tests/unictype/test-pr_join_control.c: Likewise.
17991         * tests/unictype/test-pr_left_of_pair.c: Likewise.
17992         * tests/unictype/test-pr_line_separator.c: Likewise.
17993         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
17994         * tests/unictype/test-pr_lowercase.c: Likewise.
17995         * tests/unictype/test-pr_math.c: Likewise.
17996         * tests/unictype/test-pr_non_break.c: Likewise.
17997         * tests/unictype/test-pr_not_a_character.c: Likewise.
17998         * tests/unictype/test-pr_numeric.c: Likewise.
17999         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
18000         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
18001         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
18002         * tests/unictype/test-pr_other_id_continue.c: Likewise.
18003         * tests/unictype/test-pr_other_id_start.c: Likewise.
18004         * tests/unictype/test-pr_other_lowercase.c: Likewise.
18005         * tests/unictype/test-pr_other_math.c: Likewise.
18006         * tests/unictype/test-pr_other_uppercase.c: Likewise.
18007         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
18008         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
18009         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
18010         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
18011         * tests/unictype/test-pr_private_use.c: Likewise.
18012         * tests/unictype/test-pr_punctuation.c: Likewise.
18013         * tests/unictype/test-pr_quotation_mark.c: Likewise.
18014         * tests/unictype/test-pr_radical.c: Likewise.
18015         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
18016         * tests/unictype/test-pr_soft_dotted.c: Likewise.
18017         * tests/unictype/test-pr_space.c: Likewise.
18018         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
18019         * tests/unictype/test-pr_titlecase.c: Likewise.
18020         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
18021         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
18022         * tests/unictype/test-pr_uppercase.c: Likewise.
18023         * tests/unictype/test-pr_variation_selector.c: Likewise.
18024         * tests/unictype/test-pr_white_space.c: Likewise.
18025         * tests/unictype/test-pr_xid_continue.c: Likewise.
18026         * tests/unictype/test-pr_xid_start.c: Likewise.
18027         * tests/unictype/test-pr_zero_width.c: Likewise.
18028         * tests/unictype/test-sy_c_whitespace.c: Likewise.
18029         * tests/unictype/test-sy_java_whitespace.c: Likewise.
18030
18031 2007-11-12  Bruno Haible  <bruno@clisp.org>
18032
18033         Unicode character classification functions.
18034         * lib/unictype.h: New file.
18035         * modules/unictype/base: New file.
18036         * modules/unictype/category-L: New file.
18037         * modules/unictype/category-Lu: New file.
18038         * modules/unictype/category-Ll: New file.
18039         * modules/unictype/category-Lt: New file.
18040         * modules/unictype/category-Lm: New file.
18041         * modules/unictype/category-Lo: New file.
18042         * modules/unictype/category-M: New file.
18043         * modules/unictype/category-Mn: New file.
18044         * modules/unictype/category-Mc: New file.
18045         * modules/unictype/category-Me: New file.
18046         * modules/unictype/category-N: New file.
18047         * modules/unictype/category-Nd: New file.
18048         * modules/unictype/category-Nl: New file.
18049         * modules/unictype/category-No: New file.
18050         * modules/unictype/category-P: New file.
18051         * modules/unictype/category-Pc: New file.
18052         * modules/unictype/category-Pd: New file.
18053         * modules/unictype/category-Ps: New file.
18054         * modules/unictype/category-Pe: New file.
18055         * modules/unictype/category-Pi: New file.
18056         * modules/unictype/category-Pf: New file.
18057         * modules/unictype/category-Po: New file.
18058         * modules/unictype/category-S: New file.
18059         * modules/unictype/category-Sm: New file.
18060         * modules/unictype/category-Sc: New file.
18061         * modules/unictype/category-Sk: New file.
18062         * modules/unictype/category-So: New file.
18063         * modules/unictype/category-Z: New file.
18064         * modules/unictype/category-Zs: New file.
18065         * modules/unictype/category-Zl: New file.
18066         * modules/unictype/category-Zp: New file.
18067         * modules/unictype/category-C: New file.
18068         * modules/unictype/category-Cc: New file.
18069         * modules/unictype/category-Cf: New file.
18070         * modules/unictype/category-Cs: New file.
18071         * modules/unictype/category-Co: New file.
18072         * modules/unictype/category-Cn: New file.
18073         * modules/unictype/category-or: New file.
18074         * modules/unictype/category-of: New file.
18075         * modules/unictype/category-test: New file.
18076         * modules/unictype/category-test-withtable: New file.
18077         * modules/unictype/category-byname: New file.
18078         * modules/unictype/category-none: New file.
18079         * modules/unictype/category-and: New file.
18080         * modules/unictype/category-and-not: New file.
18081         * modules/unictype/category-name: New file.
18082         * modules/unictype/combining-class: New file.
18083         * modules/unictype/category-all: New file.
18084         * modules/unictype/bidicategory-all: New file.
18085         * modules/unictype/bidicategory-byname: New file.
18086         * modules/unictype/bidicategory-name: New file.
18087         * modules/unictype/bidicategory-of: New file.
18088         * modules/unictype/bidicategory-test: New file.
18089         * modules/unictype/decimal-digit: New file.
18090         * modules/unictype/digit: New file.
18091         * modules/unictype/numeric: New file.
18092         * modules/unictype/mirror: New file.
18093         * modules/unictype/property-white-space: New file.
18094         * modules/unictype/property-alphabetic: New file.
18095         * modules/unictype/property-other-alphabetic: New file.
18096         * modules/unictype/property-not-a-character: New file.
18097         * modules/unictype/property-default-ignorable-code-point: New file.
18098         * modules/unictype/property-other-default-ignorable-code-point: New
18099         file.
18100         * modules/unictype/property-deprecated: New file.
18101         * modules/unictype/property-logical-order-exception: New file.
18102         * modules/unictype/property-variation-selector: New file.
18103         * modules/unictype/property-private-use: New file.
18104         * modules/unictype/property-unassigned-code-value: New file.
18105         * modules/unictype/property-uppercase: New file.
18106         * modules/unictype/property-other-uppercase: New file.
18107         * modules/unictype/property-lowercase: New file.
18108         * modules/unictype/property-other-lowercase: New file.
18109         * modules/unictype/property-titlecase: New file.
18110         * modules/unictype/property-soft-dotted: New file.
18111         * modules/unictype/property-id-start: New file.
18112         * modules/unictype/property-other-id-start: New file.
18113         * modules/unictype/property-id-continue: New file.
18114         * modules/unictype/property-other-id-continue: New file.
18115         * modules/unictype/property-xid-start: New file.
18116         * modules/unictype/property-xid-continue: New file.
18117         * modules/unictype/property-pattern-white-space: New file.
18118         * modules/unictype/property-pattern-syntax: New file.
18119         * modules/unictype/property-join-control: New file.
18120         * modules/unictype/property-grapheme-base: New file.
18121         * modules/unictype/property-grapheme-extend: New file.
18122         * modules/unictype/property-other-grapheme-extend: New file.
18123         * modules/unictype/property-grapheme-link: New file.
18124         * modules/unictype/property-bidi-control: New file.
18125         * modules/unictype/property-bidi-left-to-right: New file.
18126         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
18127         * modules/unictype/property-bidi-arabic-right-to-left: New file.
18128         * modules/unictype/property-bidi-european-digit: New file.
18129         * modules/unictype/property-bidi-eur-num-separator: New file.
18130         * modules/unictype/property-bidi-eur-num-terminator: New file.
18131         * modules/unictype/property-bidi-arabic-digit: New file.
18132         * modules/unictype/property-bidi-common-separator: New file.
18133         * modules/unictype/property-bidi-block-separator: New file.
18134         * modules/unictype/property-bidi-segment-separator: New file.
18135         * modules/unictype/property-bidi-whitespace: New file.
18136         * modules/unictype/property-bidi-non-spacing-mark: New file.
18137         * modules/unictype/property-bidi-boundary-neutral: New file.
18138         * modules/unictype/property-bidi-pdf: New file.
18139         * modules/unictype/property-bidi-embedding-or-override: New file.
18140         * modules/unictype/property-bidi-other-neutral: New file.
18141         * modules/unictype/property-hex-digit: New file.
18142         * modules/unictype/property-ascii-hex-digit: New file.
18143         * modules/unictype/property-ideographic: New file.
18144         * modules/unictype/property-unified-ideograph: New file.
18145         * modules/unictype/property-radical: New file.
18146         * modules/unictype/property-ids-binary-operator: New file.
18147         * modules/unictype/property-ids-trinary-operator: New file.
18148         * modules/unictype/property-zero-width: New file.
18149         * modules/unictype/property-space: New file.
18150         * modules/unictype/property-non-break: New file.
18151         * modules/unictype/property-iso-control: New file.
18152         * modules/unictype/property-format-control: New file.
18153         * modules/unictype/property-dash: New file.
18154         * modules/unictype/property-hyphen: New file.
18155         * modules/unictype/property-punctuation: New file.
18156         * modules/unictype/property-line-separator: New file.
18157         * modules/unictype/property-paragraph-separator: New file.
18158         * modules/unictype/property-quotation-mark: New file.
18159         * modules/unictype/property-sentence-terminal: New file.
18160         * modules/unictype/property-terminal-punctuation: New file.
18161         * modules/unictype/property-currency-symbol: New file.
18162         * modules/unictype/property-math: New file.
18163         * modules/unictype/property-other-math: New file.
18164         * modules/unictype/property-paired-punctuation: New file.
18165         * modules/unictype/property-left-of-pair: New file.
18166         * modules/unictype/property-combining: New file.
18167         * modules/unictype/property-composite: New file.
18168         * modules/unictype/property-decimal-digit: New file.
18169         * modules/unictype/property-numeric: New file.
18170         * modules/unictype/property-diacritic: New file.
18171         * modules/unictype/property-extender: New file.
18172         * modules/unictype/property-ignorable-control: New file.
18173         * modules/unictype/property-test: New file.
18174         * modules/unictype/property-byname: New file.
18175         * modules/unictype/property-all: New file.
18176         * modules/unictype/scripts: New file.
18177         * modules/unictype/scripts-all: New file.
18178         * modules/unictype/block-of: New file.
18179         * modules/unictype/block-test: New file.
18180         * modules/unictype/block-list: New file.
18181         * modules/unictype/block-all: New file.
18182         * modules/unictype/syntax-c-whitespace: New file.
18183         * modules/unictype/syntax-java-whitespace: New file.
18184         * modules/unictype/syntax-c-ident: New file.
18185         * modules/unictype/syntax-java-ident: New file.
18186         * modules/unictype/ctype-alnum: New file.
18187         * modules/unictype/ctype-alpha: New file.
18188         * modules/unictype/ctype-cntrl: New file.
18189         * modules/unictype/ctype-digit: New file.
18190         * modules/unictype/ctype-graph: New file.
18191         * modules/unictype/ctype-lower: New file.
18192         * modules/unictype/ctype-print: New file.
18193         * modules/unictype/ctype-punct: New file.
18194         * modules/unictype/ctype-space: New file.
18195         * modules/unictype/ctype-upper: New file.
18196         * modules/unictype/ctype-xdigit: New file.
18197         * modules/unictype/ctype-blank: New file.
18198         * lib/unictype/bidi_byname.c: New file.
18199         * lib/unictype/bidi_name.c: New file.
18200         * lib/unictype/bidi_of.c: New file.
18201         * lib/unictype/bidi_test.c: New file.
18202         * lib/unictype/bitmap.h: New file.
18203         * lib/unictype/block_test.c: New file.
18204         * lib/unictype/blocks.c: New file.
18205         * lib/unictype/categ_C.c: New file.
18206         * lib/unictype/categ_Cc.c: New file.
18207         * lib/unictype/categ_Cf.c: New file.
18208         * lib/unictype/categ_Cn.c: New file.
18209         * lib/unictype/categ_Co.c: New file.
18210         * lib/unictype/categ_Cs.c: New file.
18211         * lib/unictype/categ_L.c: New file.
18212         * lib/unictype/categ_Ll.c: New file.
18213         * lib/unictype/categ_Lm.c: New file.
18214         * lib/unictype/categ_Lo.c: New file.
18215         * lib/unictype/categ_Lt.c: New file.
18216         * lib/unictype/categ_Lu.c: New file.
18217         * lib/unictype/categ_M.c: New file.
18218         * lib/unictype/categ_Mc.c: New file.
18219         * lib/unictype/categ_Me.c: New file.
18220         * lib/unictype/categ_Mn.c: New file.
18221         * lib/unictype/categ_N.c: New file.
18222         * lib/unictype/categ_Nd.c: New file.
18223         * lib/unictype/categ_Nl.c: New file.
18224         * lib/unictype/categ_No.c: New file.
18225         * lib/unictype/categ_P.c: New file.
18226         * lib/unictype/categ_Pc.c: New file.
18227         * lib/unictype/categ_Pd.c: New file.
18228         * lib/unictype/categ_Pe.c: New file.
18229         * lib/unictype/categ_Pf.c: New file.
18230         * lib/unictype/categ_Pi.c: New file.
18231         * lib/unictype/categ_Po.c: New file.
18232         * lib/unictype/categ_Ps.c: New file.
18233         * lib/unictype/categ_S.c: New file.
18234         * lib/unictype/categ_Sc.c: New file.
18235         * lib/unictype/categ_Sk.c: New file.
18236         * lib/unictype/categ_Sm.c: New file.
18237         * lib/unictype/categ_So.c: New file.
18238         * lib/unictype/categ_Z.c: New file.
18239         * lib/unictype/categ_Zl.c: New file.
18240         * lib/unictype/categ_Zp.c: New file.
18241         * lib/unictype/categ_Zs.c: New file.
18242         * lib/unictype/categ_and.c: New file.
18243         * lib/unictype/categ_and_not.c: New file.
18244         * lib/unictype/categ_byname.c: New file.
18245         * lib/unictype/categ_name.c: New file.
18246         * lib/unictype/categ_none.c: New file.
18247         * lib/unictype/categ_of.c: New file.
18248         * lib/unictype/categ_or.c: New file.
18249         * lib/unictype/categ_test.c: New file.
18250         * lib/unictype/combining.c: New file.
18251         * lib/unictype/ctype_alnum.c: New file.
18252         * lib/unictype/ctype_alpha.c: New file.
18253         * lib/unictype/ctype_blank.c: New file.
18254         * lib/unictype/ctype_cntrl.c: New file.
18255         * lib/unictype/ctype_digit.c: New file.
18256         * lib/unictype/ctype_graph.c: New file.
18257         * lib/unictype/ctype_lower.c: New file.
18258         * lib/unictype/ctype_print.c: New file.
18259         * lib/unictype/ctype_punct.c: New file.
18260         * lib/unictype/ctype_space.c: New file.
18261         * lib/unictype/ctype_upper.c: New file.
18262         * lib/unictype/ctype_xdigit.c: New file.
18263         * lib/unictype/decdigit.c: New file.
18264         * lib/unictype/digit.c: New file.
18265         * lib/unictype/identsyntaxmap.h: New file.
18266         * lib/unictype/mirror.c: New file.
18267         * lib/unictype/numeric.c: New file.
18268         * lib/unictype/pr_alphabetic.c: New file.
18269         * lib/unictype/pr_ascii_hex_digit.c: New file.
18270         * lib/unictype/pr_bidi_arabic_digit.c: New file.
18271         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
18272         * lib/unictype/pr_bidi_block_separator.c: New file.
18273         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
18274         * lib/unictype/pr_bidi_common_separator.c: New file.
18275         * lib/unictype/pr_bidi_control.c: New file.
18276         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
18277         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
18278         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
18279         * lib/unictype/pr_bidi_european_digit.c: New file.
18280         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
18281         * lib/unictype/pr_bidi_left_to_right.c: New file.
18282         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
18283         * lib/unictype/pr_bidi_other_neutral.c: New file.
18284         * lib/unictype/pr_bidi_pdf.c: New file.
18285         * lib/unictype/pr_bidi_segment_separator.c: New file.
18286         * lib/unictype/pr_bidi_whitespace.c: New file.
18287         * lib/unictype/pr_byname.c: New file.
18288         * lib/unictype/pr_byname.gperf: New file.
18289         * lib/unictype/pr_combining.c: New file.
18290         * lib/unictype/pr_composite.c: New file.
18291         * lib/unictype/pr_currency_symbol.c: New file.
18292         * lib/unictype/pr_dash.c: New file.
18293         * lib/unictype/pr_decimal_digit.c: New file.
18294         * lib/unictype/pr_default_ignorable_code_point.c: New file.
18295         * lib/unictype/pr_deprecated.c: New file.
18296         * lib/unictype/pr_diacritic.c: New file.
18297         * lib/unictype/pr_extender.c: New file.
18298         * lib/unictype/pr_format_control.c: New file.
18299         * lib/unictype/pr_grapheme_base.c: New file.
18300         * lib/unictype/pr_grapheme_extend.c: New file.
18301         * lib/unictype/pr_grapheme_link.c: New file.
18302         * lib/unictype/pr_hex_digit.c: New file.
18303         * lib/unictype/pr_hyphen.c: New file.
18304         * lib/unictype/pr_id_continue.c: New file.
18305         * lib/unictype/pr_id_start.c: New file.
18306         * lib/unictype/pr_ideographic.c: New file.
18307         * lib/unictype/pr_ids_binary_operator.c: New file.
18308         * lib/unictype/pr_ids_trinary_operator.c: New file.
18309         * lib/unictype/pr_ignorable_control.c: New file.
18310         * lib/unictype/pr_iso_control.c: New file.
18311         * lib/unictype/pr_join_control.c: New file.
18312         * lib/unictype/pr_left_of_pair.c: New file.
18313         * lib/unictype/pr_line_separator.c: New file.
18314         * lib/unictype/pr_logical_order_exception.c: New file.
18315         * lib/unictype/pr_lowercase.c: New file.
18316         * lib/unictype/pr_math.c: New file.
18317         * lib/unictype/pr_non_break.c: New file.
18318         * lib/unictype/pr_not_a_character.c: New file.
18319         * lib/unictype/pr_numeric.c: New file.
18320         * lib/unictype/pr_other_alphabetic.c: New file.
18321         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
18322         * lib/unictype/pr_other_grapheme_extend.c: New file.
18323         * lib/unictype/pr_other_id_continue.c: New file.
18324         * lib/unictype/pr_other_id_start.c: New file.
18325         * lib/unictype/pr_other_lowercase.c: New file.
18326         * lib/unictype/pr_other_math.c: New file.
18327         * lib/unictype/pr_other_uppercase.c: New file.
18328         * lib/unictype/pr_paired_punctuation.c: New file.
18329         * lib/unictype/pr_paragraph_separator.c: New file.
18330         * lib/unictype/pr_pattern_syntax.c: New file.
18331         * lib/unictype/pr_pattern_white_space.c: New file.
18332         * lib/unictype/pr_private_use.c: New file.
18333         * lib/unictype/pr_punctuation.c: New file.
18334         * lib/unictype/pr_quotation_mark.c: New file.
18335         * lib/unictype/pr_radical.c: New file.
18336         * lib/unictype/pr_sentence_terminal.c: New file.
18337         * lib/unictype/pr_soft_dotted.c: New file.
18338         * lib/unictype/pr_space.c: New file.
18339         * lib/unictype/pr_terminal_punctuation.c: New file.
18340         * lib/unictype/pr_test.c: New file.
18341         * lib/unictype/pr_titlecase.c: New file.
18342         * lib/unictype/pr_unassigned_code_value.c: New file.
18343         * lib/unictype/pr_unified_ideograph.c: New file.
18344         * lib/unictype/pr_uppercase.c: New file.
18345         * lib/unictype/pr_variation_selector.c: New file.
18346         * lib/unictype/pr_white_space.c: New file.
18347         * lib/unictype/pr_xid_continue.c: New file.
18348         * lib/unictype/pr_xid_start.c: New file.
18349         * lib/unictype/pr_zero_width.c: New file.
18350         * lib/unictype/scripts.c: New file.
18351         * lib/unictype/sy_c_ident.c: New file.
18352         * lib/unictype/sy_c_whitespace.c: New file.
18353         * lib/unictype/sy_java_ident.c: New file.
18354         * lib/unictype/sy_java_whitespace.c: New file.
18355
18356         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
18357         Unicode 5.0.0.
18358         * lib/unictype/blocks.h: Likewise.
18359         * lib/unictype/categ_C.h: Likewise.
18360         * lib/unictype/categ_Cc.h: Likewise.
18361         * lib/unictype/categ_Cf.h: Likewise.
18362         * lib/unictype/categ_Cn.h: Likewise.
18363         * lib/unictype/categ_Co.h: Likewise.
18364         * lib/unictype/categ_Cs.h: Likewise.
18365         * lib/unictype/categ_L.h: Likewise.
18366         * lib/unictype/categ_Ll.h: Likewise.
18367         * lib/unictype/categ_Lm.h: Likewise.
18368         * lib/unictype/categ_Lo.h: Likewise.
18369         * lib/unictype/categ_Lt.h: Likewise.
18370         * lib/unictype/categ_Lu.h: Likewise.
18371         * lib/unictype/categ_M.h: Likewise.
18372         * lib/unictype/categ_Mc.h: Likewise.
18373         * lib/unictype/categ_Me.h: Likewise.
18374         * lib/unictype/categ_Mn.h: Likewise.
18375         * lib/unictype/categ_N.h: Likewise.
18376         * lib/unictype/categ_Nd.h: Likewise.
18377         * lib/unictype/categ_Nl.h: Likewise.
18378         * lib/unictype/categ_No.h: Likewise.
18379         * lib/unictype/categ_P.h: Likewise.
18380         * lib/unictype/categ_Pc.h: Likewise.
18381         * lib/unictype/categ_Pd.h: Likewise.
18382         * lib/unictype/categ_Pe.h: Likewise.
18383         * lib/unictype/categ_Pf.h: Likewise.
18384         * lib/unictype/categ_Pi.h: Likewise.
18385         * lib/unictype/categ_Po.h: Likewise.
18386         * lib/unictype/categ_Ps.h: Likewise.
18387         * lib/unictype/categ_S.h: Likewise.
18388         * lib/unictype/categ_Sc.h: Likewise.
18389         * lib/unictype/categ_Sk.h: Likewise.
18390         * lib/unictype/categ_Sm.h: Likewise.
18391         * lib/unictype/categ_So.h: Likewise.
18392         * lib/unictype/categ_Z.h: Likewise.
18393         * lib/unictype/categ_Zl.h: Likewise.
18394         * lib/unictype/categ_Zp.h: Likewise.
18395         * lib/unictype/categ_Zs.h: Likewise.
18396         * lib/unictype/categ_of.h: Likewise.
18397         * lib/unictype/combining.h: Likewise.
18398         * lib/unictype/ctype_alnum.h: Likewise.
18399         * lib/unictype/ctype_alpha.h: Likewise.
18400         * lib/unictype/ctype_blank.h: Likewise.
18401         * lib/unictype/ctype_cntrl.h: Likewise.
18402         * lib/unictype/ctype_digit.h: Likewise.
18403         * lib/unictype/ctype_graph.h: Likewise.
18404         * lib/unictype/ctype_lower.h: Likewise.
18405         * lib/unictype/ctype_print.h: Likewise.
18406         * lib/unictype/ctype_punct.h: Likewise.
18407         * lib/unictype/ctype_space.h: Likewise.
18408         * lib/unictype/ctype_upper.h: Likewise.
18409         * lib/unictype/ctype_xdigit.h: Likewise.
18410         * lib/unictype/decdigit.h: Likewise.
18411         * lib/unictype/digit.h: Likewise.
18412         * lib/unictype/mirror.h: Likewise.
18413         * lib/unictype/numeric.h: Likewise.
18414         * lib/unictype/pr_alphabetic.h: Likewise.
18415         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
18416         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
18417         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
18418         * lib/unictype/pr_bidi_block_separator.h: Likewise.
18419         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
18420         * lib/unictype/pr_bidi_common_separator.h: Likewise.
18421         * lib/unictype/pr_bidi_control.h: Likewise.
18422         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
18423         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
18424         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
18425         * lib/unictype/pr_bidi_european_digit.h: Likewise.
18426         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
18427         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
18428         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
18429         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
18430         * lib/unictype/pr_bidi_pdf.h: Likewise.
18431         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
18432         * lib/unictype/pr_bidi_whitespace.h: Likewise.
18433         * lib/unictype/pr_combining.h: Likewise.
18434         * lib/unictype/pr_composite.h: Likewise.
18435         * lib/unictype/pr_currency_symbol.h: Likewise.
18436         * lib/unictype/pr_dash.h: Likewise.
18437         * lib/unictype/pr_decimal_digit.h: Likewise.
18438         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
18439         * lib/unictype/pr_deprecated.h: Likewise.
18440         * lib/unictype/pr_diacritic.h: Likewise.
18441         * lib/unictype/pr_extender.h: Likewise.
18442         * lib/unictype/pr_format_control.h: Likewise.
18443         * lib/unictype/pr_grapheme_base.h: Likewise.
18444         * lib/unictype/pr_grapheme_extend.h: Likewise.
18445         * lib/unictype/pr_grapheme_link.h: Likewise.
18446         * lib/unictype/pr_hex_digit.h: Likewise.
18447         * lib/unictype/pr_hyphen.h: Likewise.
18448         * lib/unictype/pr_id_continue.h: Likewise.
18449         * lib/unictype/pr_id_start.h: Likewise.
18450         * lib/unictype/pr_ideographic.h: Likewise.
18451         * lib/unictype/pr_ids_binary_operator.h: Likewise.
18452         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
18453         * lib/unictype/pr_ignorable_control.h: Likewise.
18454         * lib/unictype/pr_iso_control.h: Likewise.
18455         * lib/unictype/pr_join_control.h: Likewise.
18456         * lib/unictype/pr_left_of_pair.h: Likewise.
18457         * lib/unictype/pr_line_separator.h: Likewise.
18458         * lib/unictype/pr_logical_order_exception.h: Likewise.
18459         * lib/unictype/pr_lowercase.h: Likewise.
18460         * lib/unictype/pr_math.h: Likewise.
18461         * lib/unictype/pr_non_break.h: Likewise.
18462         * lib/unictype/pr_not_a_character.h: Likewise.
18463         * lib/unictype/pr_numeric.h: Likewise.
18464         * lib/unictype/pr_other_alphabetic.h: Likewise.
18465         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
18466         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
18467         * lib/unictype/pr_other_id_continue.h: Likewise.
18468         * lib/unictype/pr_other_id_start.h: Likewise.
18469         * lib/unictype/pr_other_lowercase.h: Likewise.
18470         * lib/unictype/pr_other_math.h: Likewise.
18471         * lib/unictype/pr_other_uppercase.h: Likewise.
18472         * lib/unictype/pr_paired_punctuation.h: Likewise.
18473         * lib/unictype/pr_paragraph_separator.h: Likewise.
18474         * lib/unictype/pr_pattern_syntax.h: Likewise.
18475         * lib/unictype/pr_pattern_white_space.h: Likewise.
18476         * lib/unictype/pr_private_use.h: Likewise.
18477         * lib/unictype/pr_punctuation.h: Likewise.
18478         * lib/unictype/pr_quotation_mark.h: Likewise.
18479         * lib/unictype/pr_radical.h: Likewise.
18480         * lib/unictype/pr_sentence_terminal.h: Likewise.
18481         * lib/unictype/pr_soft_dotted.h: Likewise.
18482         * lib/unictype/pr_space.h: Likewise.
18483         * lib/unictype/pr_terminal_punctuation.h: Likewise.
18484         * lib/unictype/pr_titlecase.h: Likewise.
18485         * lib/unictype/pr_unassigned_code_value.h: Likewise.
18486         * lib/unictype/pr_unified_ideograph.h: Likewise.
18487         * lib/unictype/pr_uppercase.h: Likewise.
18488         * lib/unictype/pr_variation_selector.h: Likewise.
18489         * lib/unictype/pr_white_space.h: Likewise.
18490         * lib/unictype/pr_xid_continue.h: Likewise.
18491         * lib/unictype/pr_xid_start.h: Likewise.
18492         * lib/unictype/pr_zero_width.h: Likewise.
18493         * lib/unictype/scripts.h: Likewise.
18494         * lib/unictype/scripts_byname.gperf: Likewise.
18495         * lib/unictype/sy_c_ident.h: Likewise.
18496         * lib/unictype/sy_c_whitespace.h: Likewise.
18497         * lib/unictype/sy_java_ident.h: Likewise.
18498         * lib/unictype/sy_java_whitespace.h: Likewise.
18499
18500         * lib/unictype/Makefile: New file.
18501         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
18502         glibc.
18503         * lib/unictype/3level.h: New file, copied from glibc.
18504         * lib/unictype/3levelbit.h: New file.
18505
18506 2007-11-11  Bruno Haible  <bruno@clisp.org>
18507
18508         * modules/gperf: New file.
18509         * modules/iconv_open (Depends-on): Add it.
18510         (Makefile.am): Remove the GPERF definition.
18511
18512 2007-11-11  Bruno Haible  <bruno@clisp.org>
18513
18514         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
18515         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
18516
18517 2007-11-11  Bruno Haible  <bruno@clisp.org>
18518
18519         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
18520         (usage): Remove function.
18521
18522 2007-11-11  Bruno Haible  <bruno@clisp.org>
18523
18524         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
18525         gl_FUNC_CEILF_LIBS.
18526         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
18527         gl_FUNC_CEIL_LIBS.
18528         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
18529         gl_FUNC_CEILL_LIBS.
18530         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
18531         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
18532         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
18533
18534 2007-11-11  Bruno Haible  <bruno@clisp.org>
18535
18536         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
18537         roundf were declared but do not exist on functions.
18538         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
18539         roundl were declared but do not exist on functions.
18540         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
18541         HAVE_FLOORL_AND_CEILL, respectively.
18542         Needed for Sun C on Solaris 10.
18543
18544 2007-11-11  Bruno Haible  <bruno@clisp.org>
18545
18546         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
18547         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
18548         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
18549         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
18550         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
18551         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
18552         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
18553         HAVE_DECL_ROUNDF.
18554         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
18555         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
18556         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
18557         of HAVE_DECL_ROUND*.
18558         * modules/math (Makefile.am): Update.
18559
18560 2007-11-10  Bruno Haible  <bruno@clisp.org>
18561
18562         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
18563         ptrdiff_t as m4/intl.m4.
18564
18565 2007-11-10  Jim Meyering  <meyering@redhat.com>
18566
18567         Avoid link failure for the argmatch test.
18568         * tests/test-argmatch.c (usage): Define function to avoid a link
18569         failure: argmatch_die requires a usage function.
18570
18571 2007-11-09  Bruno Haible  <bruno@clisp.org>
18572
18573         * doc/functions/snprintf.texi: Mention BeOS deficiency.
18574         * doc/functions/vsnprintf.texi: Likewise.
18575         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
18576         with a size argument < 2.
18577
18578 2007-11-09  Bruno Haible  <bruno@clisp.org>
18579
18580         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
18581         buffer. Fixes an inefficiency introduced on 2007-11-03.
18582
18583 2007-11-09  Bruno Haible  <bruno@clisp.org>
18584
18585         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
18586         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
18587
18588 2007-11-08  Jim Meyering  <meyering@redhat.com>
18589
18590         Change cache variable name prefix "jm_" to "gl_" everywhere.
18591         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
18592         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
18593         * m4/uptime.m4: s/gl_/jm_/
18594
18595 2007-11-07  Bruno Haible  <bruno@clisp.org>
18596
18597         Update to GNU gettext 0.17.
18598         * m4/intl.m4: Update to GNU gettext 0.17.
18599         * m4/po.m4: Likewise.
18600         * modules/gettext (Files): Remove m4/ulonglong.m4.
18601         (configure.ac): Require gettext infrastructure from version 0.17.
18602
18603 2007-11-06  Bruno Haible  <bruno@clisp.org>
18604
18605         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
18606         symbolic values are not defined in a public header.
18607         * lib/freadable.c (freadable) [QNX]: Likewise.
18608         * lib/freadahead.c (freadahead) [QNX]: Likewise.
18609         * lib/freading.c (freading) [QNX]: Likewise.
18610         * lib/fseterr.c (fseterr) [QNX]: Likewise.
18611         * lib/fwritable.c (fwritable) [QNX]: Likewise.
18612         * lib/fwriting.c (fwriting) [QNX]: Likewise.
18613         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
18614         Reported by Alain Magloire.
18615
18616         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
18617
18618 2007-11-05  Bruno Haible  <bruno@clisp.org>
18619
18620         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
18621         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
18622         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
18623         Reported by Eric Blake.
18624
18625 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18626             Bruno Haible  <bruno@clisp.org>
18627
18628         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
18629         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
18630         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
18631         (malloc): Undefine also before including <stdlib.h>.
18632         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
18633         Needed on OSF/1 4.0.
18634
18635 2007-11-05  Jim Meyering  <meyering@redhat.com>
18636
18637         git-version-gen: sync from coreutils.
18638         * build-aux/git-version-gen: Add comments.
18639         Change the first '-' to '.' in the snapshot version string,
18640         e.g., 6.9-377-08144 -> 6.9.377-08144
18641         Remove first parameter.
18642         Don't declare a version "-dirty" merely because a time
18643         stamp has changed.
18644
18645 2007-11-04  Bruno Haible  <bruno@clisp.org>
18646
18647         * lib/lock.h: Protect all macro definitions containing an 'if'
18648         statement through a "do { ... } while (0)".
18649         * lib/tls.h: Likewise.
18650
18651 2007-11-04  Bruno Haible  <bruno@clisp.org>
18652
18653         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
18654
18655 2007-11-04  Bruno Haible  <bruno@clisp.org>
18656
18657         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
18658         * modules/fprintf-posix (Depends-on): Add nocrash.
18659         * modules/snprintf-posix (Depends-on): Likewise.
18660         * modules/sprintf-posix (Depends-on): Likewise.
18661         * modules/vasnprintf-posix (Depends-on): Likewise.
18662         * modules/vasprintf-posix (Depends-on): Likewise.
18663         * modules/vfprintf-posix (Depends-on): Likewise.
18664         * modules/vsnprintf-posix (Depends-on): Likewise.
18665         * modules/vsprintf-posix (Depends-on): Likewise.
18666         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
18667         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
18668         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
18669         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
18670         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
18671         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
18672         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
18673
18674 2007-11-04  Bruno Haible  <bruno@clisp.org>
18675
18676         * modules/nocrash: New file.
18677         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
18678         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
18679
18680 2007-11-04  Bruno Haible  <bruno@clisp.org>
18681
18682         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
18683         precision handling.
18684         * tests/test-vasprintf-posix.c (test_function): Likewise.
18685         * tests/test-snprintf-posix.h (test_function): Likewise.
18686         * tests/test-sprintf-posix.h (test_function): Likewise.
18687
18688         Fix *printf behaviour for large precisions on mingw and BeOS.
18689         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
18690         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
18691         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
18692         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
18693         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18694         gl_PRINTF_PRECISION and test its result. Invoke
18695         gl_PREREQ_VASNPRINTF_PRECISION.
18696         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18697         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18698         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18699         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18700         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18701         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18702         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18703         * doc/functions/fprintf.texi: Update.
18704         * doc/functions/printf.texi: Update.
18705         * doc/functions/snprintf.texi: Update.
18706         * doc/functions/sprintf.texi: Update.
18707         * doc/functions/vfprintf.texi: Update.
18708         * doc/functions/vprintf.texi: Update.
18709         * doc/functions/vsnprintf.texi: Update.
18710         * doc/functions/vsprintf.texi: Update.
18711
18712 2007-11-04  Bruno Haible  <bruno@clisp.org>
18713
18714         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
18715
18716 2007-11-04  Bruno Haible  <bruno@clisp.org>
18717
18718         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
18719         Reported by Sylvain Beucler <beuc@gnu.org>.
18720
18721 2007-11-03  Bruno Haible  <bruno@clisp.org>
18722
18723         * tests/test-fprintf-posix2.sh: New file.
18724         * tests/test-fprintf-posix2.c: New file.
18725         * modules/fprintf-posix-tests (Files): Add them.
18726         (TESTS): Add test-fprintf-posix2.sh.
18727         (configure.ac): Check for getrlimit and setrlimit.
18728         (check_PROGRAMS): Add test-fprintf-posix2.
18729
18730         * tests/test-printf-posix2.sh: New file.
18731         * tests/test-printf-posix2.c: New file.
18732         * modules/printf-posix-tests (Files): Add them.
18733         (TESTS): Add test-printf-posix2.sh.
18734         (configure.ac): Check for getrlimit and setrlimit.
18735         (check_PROGRAMS): Add test-printf-posix2.
18736
18737         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
18738         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
18739         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
18740         (decode_double): New function, copied from decode_long_double.
18741         (scale10_round_decimal_decoded): New function, extracted from
18742         scale10_round_decimal_long_double.
18743         (scale10_round_decimal_long_double): Use it.
18744         (scale10_round_decimal_double): New function.
18745         (floorlog10): New function.
18746         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
18747         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
18748         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
18749         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18750         gl_PRINTF_ENOMEM and test its result. Invoke
18751         gl_PREREQ_VASNPRINTF_ENOMEM.
18752         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18753         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18754         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18755         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18756         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18757         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18758         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18759         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
18760         * modules/snprintf-posix (Depends-on): Likewise.
18761         * modules/sprintf-posix (Depends-on): Likewise.
18762         * modules/vasnprintf-posix (Depends-on): Likewise.
18763         * modules/vasprintf-posix (Depends-on): Likewise.
18764         * modules/vfprintf-posix (Depends-on): Likewise.
18765         * modules/vsnprintf-posix (Depends-on): Likewise.
18766         * modules/vsprintf-posix (Depends-on): Likewise.
18767         * doc/functions/fprintf.texi: Update.
18768         * doc/functions/printf.texi: Update.
18769         * doc/functions/snprintf.texi: Update.
18770         * doc/functions/sprintf.texi: Update.
18771         * doc/functions/vfprintf.texi: Update.
18772         * doc/functions/vprintf.texi: Update.
18773         * doc/functions/vsnprintf.texi: Update.
18774         * doc/functions/vsprintf.texi: Update.
18775
18776 2007-11-03  Bruno Haible  <bruno@clisp.org>
18777
18778         * modules/frexp-nolibm-tests: New file.
18779
18780         * modules/frexp-nolibm: New file.
18781         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
18782
18783 2007-11-03  Bruno Haible  <bruno@clisp.org>
18784
18785         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
18786         value is C99 compliant.
18787         Needed for OSF/1 5.1.
18788
18789 2007-11-03  Bruno Haible  <bruno@clisp.org>
18790
18791         Fix out-of-memory handling of vasnprintf.
18792         * lib/printf-parse.c: Include <errno.h>.
18793         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
18794         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
18795         is already set.
18796
18797 2007-11-02  Eric Blake  <ebb9@byu.net>
18798
18799         Fix tests on cygwin.
18800         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
18801
18802 2007-11-01  Bruno Haible  <bruno@clisp.org>
18803
18804         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
18805         warning.
18806         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
18807         needed for POSIX compatibility.
18808
18809 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
18810
18811         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
18812         for compatibility with GNU.
18813
18814 2007-11-01  Bruno Haible  <bruno@clisp.org>
18815
18816         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
18817         (putenv): Renamed from rpl_putenv. Change argument type from
18818         'const char *' to 'char *'.
18819         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
18820         of defining putenv in config.h, just set REPLACE_PUTENV.
18821         * modules/putenv (Depends-on): Add stdlib.
18822         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
18823         (Include): Use <stdlib.h>.
18824         * lib/stdlib.in.h (putenv): New declaration.
18825         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
18826         REPLACE_PUTENV.
18827         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
18828         REPLACE_PUTENV.
18829         Needed for MacOS X 10.5.0.
18830         Reported by Peter O'Gorman <peter@pogma.com>.
18831
18832 2007-11-01  Jim Meyering  <meyering@redhat.com>
18833
18834         Treat an empty date string exactly like "0".
18835         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
18836         if the remaining date string (to be parsed) is empty, use "0".
18837         Reported by Mischa Molhoek and discussed in this thread:
18838         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
18839
18840 2007-10-31  Bruno Haible  <bruno@clisp.org>
18841
18842         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
18843         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
18844         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
18845         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
18846         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
18847         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
18848
18849 2007-10-31  Bruno Haible  <bruno@clisp.org>
18850
18851         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
18852         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
18853         (AC_TYPE_LONG_LONG_INT): Use it.
18854         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
18855         it as well.
18856         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
18857         to m4/longlong.m4.
18858         * modules/stdint (Files): Remove m4/ulonglong.m4.
18859         * modules/strtoull (Files): Use m4/longlong.m4 instead of
18860         m4/ulonglong.m4.
18861         * modules/strtoumax (Files): Likewise.
18862
18863 2007-10-30  Bruno Haible  <bruno@clisp.org>
18864
18865         * modules/xvasprintf-posix: New file.
18866         Suggested by Eric Blake.
18867
18868 2007-10-30  Bruno Haible  <bruno@clisp.org>
18869
18870         * modules/xprintf-posix-tests: New file.
18871         * tests/test-xprintf-posix.sh: New file.
18872         * tests/test-xprintf-posix.c: New file.
18873         * tests/test-xfprintf-posix.c: New file.
18874
18875         * modules/xprintf-posix: New file.
18876
18877 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18878
18879         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
18880         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
18881         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
18882
18883 2007-10-29  Bruno Haible  <bruno@clisp.org>
18884
18885         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
18886         contain the special marker '_cv_'.
18887         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
18888         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
18889         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
18890         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
18891         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
18892         Reported by Ralf Wildenhues.
18893
18894 2007-10-29  Bruno Haible  <bruno@clisp.org>
18895
18896         * gnulib-tool (func_import): When --lgpl is not specified, set
18897         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
18898         GPLv3.
18899         Reported by Simon Josefsson.
18900
18901 2007-10-28  Bruno Haible  <bruno@clisp.org>
18902
18903         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
18904         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
18905         HAVE_DECL_ISFINITE.
18906         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
18907         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
18908         HAVE_DECL_ISFINITE.
18909
18910 2007-10-28  Bruno Haible  <bruno@clisp.org>
18911
18912         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
18913         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
18914
18915 2007-10-28  Bruno Haible  <bruno@clisp.org>
18916
18917         Fix link errors with Sun C 5.0 on Solaris 10.
18918         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
18919         function is declared but not present in the compiler's libm.
18920         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
18921         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
18922         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
18923         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
18924         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
18925         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
18926         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
18927         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
18928         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
18929         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
18930         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
18931         HAVE_DECL_FLOORL.
18932
18933 2007-10-28  Bruno Haible  <bruno@clisp.org>
18934
18935         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
18936         gl_FUNC_FLOORL. Cache the result.
18937         (gl_FUNC_FLOORL): Use it.
18938         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
18939         gl_FUNC_CEILL. Cache the result.
18940         (gl_FUNC_CEILL): Use it.
18941
18942         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
18943         gl_FUNC_FLOOR. Cache the result.
18944         (gl_FUNC_FLOOR): Use it.
18945         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
18946         gl_FUNC_CEIL. Cache the result.
18947         (gl_FUNC_CEIL): Use it.
18948
18949         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
18950         gl_FUNC_FLOORF. Cache the result.
18951         (gl_FUNC_FLOORF): Use it.
18952         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
18953         gl_FUNC_CEILF. Cache the result.
18954         (gl_FUNC_CEILF): Use it.
18955
18956 2007-10-28  Bruno Haible  <bruno@clisp.org>
18957
18958         * gnulib-tool: Allow specifying the LGPL version number through
18959         --lgpl=2 or --lgpl=3.
18960         (func_usage): Document --lgpl with argument.
18961         Handle --lgpl=... arguments.
18962         (func_import): Recognize also gl_LGPL calls with an argument. When
18963         --lgpl=2 is used and the module's license is just LGPL, report an
18964         error. Set sed_transform_lib_file according to the lgpl variable. In
18965         the generated files, use --lgpl or gl_LGPL invocations with argument,
18966         if necessary.
18967         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
18968         an LGPv2+ license.
18969         * doc/gnulib-tool.texi (Modified imports): Update explanation of
18970         gl_LGPL macro.
18971
18972 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18973             Bruno Haible  <bruno@clisp.org>
18974
18975         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
18976         (u16_uctomb_aux): Likewise.
18977         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
18978         !HAVE_INLINE.
18979         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
18980
18981 2007-10-28  Bruno Haible  <bruno@clisp.org>
18982
18983         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
18984         Invoke AM_GETTEXT_OPTION if it exists.
18985         * modules/vasprintf: Likewise.
18986         * modules/verror: Likewise.
18987         * modules/xprintf: Likewise.
18988         * modules/xvasprintf: Likewise.
18989
18990 2007-10-27  Ben Pfaff  <blp@gnu.org>
18991
18992         * lib/math.in.h: Define isfinite macro and prototypes for
18993         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
18994         implementations.
18995         * m4/math_h.m4: New substitutions for isfinite module.
18996         * lib/isfinite.c: New file.
18997         * m4/isfinite.m4: New file.
18998         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
18999         * modules/isfinite: New file.
19000         * modules/isfinite-tests: New file.
19001         * tests/tests-isfinite.c: New file.
19002         * doc/functions/isfinite.texi: Mention isfinite module.
19003         * MODULES.html.sh: Mention new module.
19004
19005 2007-10-27  Ben Pfaff  <blp@gnu.org>
19006
19007         Ralf Wildenhues reported that Tru64 4.0D declares the round
19008         functions but does not have definitions.
19009         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
19010         cannot be found in any library, set the output variable to
19011         "missing" instead of "".
19012         * m4/round.m4: Also use our substitute if we cannot find round in
19013         any library, even if it is declared.
19014         * m4/roundf.m4: Likewise for roundf.
19015         * m4/roundl.m4: Likewise for roundl.
19016         * lib/math.in.h: Undefine roundf, round, roundl before defining
19017         their replacements, to allow for hypothetical systems where these
19018         may be defined as macros but not available in libraries.
19019
19020 2007-10-27  Bruno Haible  <bruno@clisp.org>
19021
19022         * doc/gnulib.texi: Invoke @firstparagraphindent.
19023         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
19024         changes in gnulib.
19025         (Source changes): New section.
19026
19027 2007-10-26  Bruno Haible  <bruno@clisp.org>
19028
19029         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
19030         borrowed from autoconf.
19031
19032 2007-10-26  Bruno Haible  <bruno@clisp.org>
19033
19034         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
19035         strerror returned the empty string. Needed on HP-UX 11.00.
19036
19037 2007-10-24  Micah Cowan  <micah@cowan.name>
19038
19039         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
19040         * build-aux/bootstrap: Remove support for now-unnecessary option,
19041         --cvs-user, and envvars CVS_USER, CVS_RSH.
19042
19043 2007-10-24  Jim Meyering  <meyering@redhat.com>
19044
19045         Avoid diagnostics from sha1sum when there is no cached checksum.
19046         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
19047         if the po.s1 file hasn't been created yet.
19048
19049         * build-aux/bootstrap: Sync from coreutils:
19050         2007-10-24  Jim Meyering  <meyering@redhat.com>
19051         Get gnulib from the git repository, not from an obsolete cvs one.
19052         * build-aux/bootstrap: Suggestion from Micah Cowan.
19053         2007-10-04  Jim Meyering  <jim@meyering.net>
19054         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
19055         (update_po_files): Work also when there are no .po files in po/.
19056
19057 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19058
19059         * README: Append ".git" to git and cg examples.
19060         Problem reported by Benoit Sigoure.
19061
19062 2007-10-23  Micah Cowan  <micah@cowan.name>
19063
19064         * users.txt: Add wget.
19065
19066 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19067
19068         Fix linking of some unistdio tests on FreeBSD.
19069         * modules/unistdio/u16-vsnprintf-tests
19070         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
19071         * modules/unistdio/u16-vsprintf-tests
19072         (test_u16_vsnprintf1_LDADD): Likewise.
19073         * modules/unistdio/u32-vsnprintf-tests
19074         (test_u32_vsnprintf1_LDADD): Likewise.
19075         * modules/unistdio/u32-vsprintf-tests
19076         (test_u32_vsprintf1_LDADD): Likewise.
19077         * modules/unistdio/u8-vsnprintf-tests
19078         (test_u8_vsnprintf1_LDADD): Likewise.
19079         * modules/unistdio/u8-vsprintf-tests
19080         (test_u8_vsprintf1_LDADD): Likewise.
19081         * modules/unistdio/ulc-vsnprintf-tests
19082         (test_ulc_vsnprintf1_LDADD): Likewise.
19083         * modules/unistdio/ulc-vsprintf-tests
19084         (test_ulc_vsprintf1_LDADD): Likewise.
19085
19086         Fix linking of some uniconv tests on FreeBSD.
19087         * modules/uniconv/u16-conv-from-enc-tests
19088         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
19089         * modules/uniconv/u16-conv-to-enc-tests
19090         (test_u16_conv_to_enc_LDADD): Likewise.
19091         * modules/uniconv/u16-strconv-from-enc-tests
19092         (test_u16_strconv_from_enc_LDADD): Likewise.
19093         * modules/uniconv/u16-strconv-to-enc-tests
19094         (test_u16_strconv_to_enc_LDADD): Likewise.
19095         * modules/uniconv/u32-conv-from-enc-tests
19096         (test_u32_conv_from_enc_LDADD): Likewise.
19097         * modules/uniconv/u32-conv-to-enc-tests
19098         (test_u32_conv_to_enc_LDADD): Likewise.
19099         * modules/uniconv/u32-strconv-from-enc-tests
19100         (test_u32_strconv_from_enc_LDADD): Likewise.
19101         * modules/uniconv/u32-strconv-to-enc-tests
19102         (test_u32_strconv_to_enc_LDADD): Likewise.
19103         * modules/uniconv/u8-conv-from-enc-tests
19104         (test_u8_conv_from_enc_LDADD): Likewise.
19105         * modules/uniconv/u8-conv-to-enc-tests
19106         (test_u8_conv_to_enc_LDADD): Likewise.
19107         * modules/uniconv/u8-strconv-from-enc-tests
19108         (test_u8_strconv_from_enc_LDADD): Likewise.
19109         * modules/uniconv/u8-strconv-to-enc-tests
19110         (test_u8_strconv_to_enc_LDADD): Likewise.
19111
19112 2007-10-22  Bruno Haible  <bruno@clisp.org>
19113
19114         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
19115         size.
19116
19117 2007-10-22  Eric Blake  <ebb9@byu.net>
19118
19119         Tweak x*printf documentation.
19120         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
19121         variable name and comments.
19122         Suggested by Bruno Haible.
19123
19124 2007-10-22  Bruno Haible  <bruno@clisp.org>
19125
19126         * lib/acl.c (copy_acl): Fix file name in comment.
19127
19128 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
19129
19130         Fix Tru64 problem with stdbool.h.
19131         * lib/stdbool.in.h (false, true):
19132         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
19133         Don't declare as an enum in this situation; it runs afoul of Tru64.
19134         Problem reported by Steven M. Schweda in
19135         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
19136
19137 2007-10-22  Eric Blake  <ebb9@byu.net>
19138
19139         Also wrap vf?printf.
19140         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
19141         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
19142         (xvprintf, xvfprintf): New functions.
19143
19144 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19145
19146         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
19147         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
19148
19149         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
19150         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
19151
19152 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
19153
19154         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
19155         by Bruno Haible.
19156
19157 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19158
19159         * lib/getloadavg.c
19160         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
19161         Undef `sys' after including sys/table.h, for Tru64 4.0D.
19162
19163         * tests/test-i-ring.c: Work for C89.
19164
19165 2007-10-22  Bruno Haible  <bruno@clisp.org>
19166
19167         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
19168         -1u, in preprocessor expression, so that we don't test for the bug
19169         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
19170         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
19171
19172 2007-10-22  Eric Blake  <ebb9@byu.net>
19173
19174         * tests/test-yesno.sh: Silence stderr during test.
19175
19176 2007-10-22  Simon Josefsson  <simon@josefsson.org>
19177
19178         * modules/crypto/gc-camellia: New file.
19179
19180         * m4/gc-camellia.m4: New file.
19181
19182         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
19183
19184         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
19185
19186 2007-10-22  Simon Josefsson  <simon@josefsson.org>
19187
19188         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
19189         --help to stdout.  Reported by sms@antinode.org (Steven
19190         M. Schweda).
19191
19192 2007-10-22  Simon Josefsson  <simon@josefsson.org>
19193
19194         * users.txt: Fix link to libksba.
19195
19196 2007-10-21  Ben Pfaff  <blp@gnu.org>
19197
19198         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
19199         round.c roundf implementation that depends on floorf and ceilf to
19200         be tested unconditionally.
19201
19202 2007-10-21  Ben Pfaff  <blp@gnu.org>
19203
19204         * m4/check-libm-func.m4: Removed.
19205         * m4/check-math-lib.m4: New file.
19206         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
19207         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
19208         definition and lack of AC_LIBOBJ([roundf]).
19209         * m4/roundl.m4: Ditto, and similarly for roundl.
19210         * modules/round: Reference new m4 file.
19211         * modules/roundf: Ditto.
19212         * modules/roundl: Ditto.
19213         * tests/test-round2.c (main): Use ROUND instead of round.
19214         Bug report from Bruno Haible.
19215
19216 2007-10-21  Bruno Haible  <bruno@clisp.org>
19217
19218         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
19219         context.
19220
19221 2007-10-21  Bruno Haible  <bruno@clisp.org>
19222
19223         * tests/test-wcwidth.c (main): Allow negative result for some control
19224         characters.
19225
19226         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
19227         Needed on OSF/1 5.1.
19228
19229 2007-10-21  Bruno Haible  <bruno@clisp.org>
19230
19231         * tests/test-floorf1.c: Include isnanf.h.
19232         (main): Use isnanf() instead of isnan().
19233         * tests/test-ceilf1.c: Include isnanf.h.
19234         (main): Use isnanf() instead of isnan().
19235         * tests/test-truncf1.c: Include isnanf.h.
19236         (main): Use isnanf() instead of isnan().
19237         * tests/test-roundf1.c: Include isnanf.h.
19238         (main): Use isnanf() instead of isnan().
19239
19240 2007-10-21  Eric Blake  <ebb9@byu.net>
19241
19242         * users.txt: Update URL for m4.
19243
19244 2007-10-21  Bruno Haible  <bruno@clisp.org>
19245
19246         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
19247
19248 2007-10-21  Bruno Haible  <bruno@clisp.org>
19249
19250         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
19251         Git's management files if the CVS files are not present.
19252
19253 2007-10-20  Bruno Haible  <bruno@clisp.org>
19254
19255         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
19256         gcc-3.4.x.
19257
19258 2007-10-20  Ben Pfaff  <blp@gnu.org>
19259
19260         * lib/math.in.h: Declare round, roundf, roundl if we are providing
19261         implementations.
19262         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
19263         * lib/round.c: New file.
19264         * lib/roundf.c: New file.
19265         * lib/roundl.c: New file.
19266         * m4/round.m4: New file.
19267         * m4/roundf.m4: New file.
19268         * m4/roundl.m4: New file.
19269         * m4/check-libm-func-m4: New file.
19270         * modules/math: Replace round, roundf, roundl related @VARS@ in
19271         math.in.h.
19272         * modules/round: New file.
19273         * modules/round-tests: New file.
19274         * modules/roundf: New file.
19275         * modules/roundf-tests: New file.
19276         * modules/roundl: New file.
19277         * modules/roundl-tests: New file.
19278         * tests/test-round1.c: New file.
19279         * tests/test-round2.c: New file.
19280         * tests/test-roundf1.c: New file.
19281         * tests/test-roundf2.c: New file.
19282         * tests/test-roundl.c: New file.
19283         * doc/functions/round.texi: Mention round module.
19284         * doc/functions/roundf.texi: Mention roundf module.
19285         * doc/functions/roundl.texi: Mention roundl module.
19286         * MODULES.html.sh: Mention new modules.
19287         Thanks to Bruno Haible for suggestions.
19288
19289 2007-10-20  Jim Meyering  <meyering@redhat.com>
19290
19291         * lib/xprintf.c: Include <config.h> unconditionally.
19292
19293         Change xprintf's license to GPL.
19294         * modules/xprintf (License): s/LGPL/GPL/, since this module
19295         depends on modules (exit and exitfail) which are GPL.
19296         Suggestion from Bruno Haible.
19297
19298         xprintf fixes.
19299         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
19300         Use a clearer diagnostic.
19301         Patch from Bruno Haible.
19302
19303 2007-10-20  Bruno Haible  <bruno@clisp.org>
19304
19305         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
19306         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
19307         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19308
19309 2007-10-20  Bruno Haible  <bruno@clisp.org>
19310
19311         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
19312         precision in the comparison result > x - 1 or similar.
19313         * tests/test-ceilf2.c (correct_result_p): Likewise.
19314         * tests/test-truncf2.c (correct_result_p): Likewise.
19315         * tests/test-trunc2.c (correct_result_p): Likewise.
19316         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19317
19318 2007-10-20  Bruno Haible  <bruno@clisp.org>
19319
19320         * modules/ceil: New file.
19321         * m4/ceil.m4: New file.
19322         * doc/functions/ceil.texi: Mention the 'ceil' module.
19323
19324 2007-10-20  Bruno Haible  <bruno@clisp.org>
19325
19326         * modules/floor: New file.
19327         * m4/floor.m4: New file.
19328         * doc/functions/floor.texi: Mention the 'floor' module.
19329
19330 2007-10-20  Bruno Haible  <bruno@clisp.org>
19331
19332         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
19333         of %a.
19334         * modules/floorf-tests (Depends-on): Likewise.
19335         * modules/truncf-tests (Depends-on): Likewise.
19336         * modules/trunc-tests (Depends-on): Likewise.
19337         Reported by Ben Pfaff.
19338
19339 2007-10-19  Jim Meyering  <meyering@redhat.com>
19340
19341         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
19342         Don't bother testing specific errno values.  Just test ferror.
19343
19344         New module: xprintf
19345         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
19346
19347 2007-10-19  Bruno Haible  <bruno@clisp.org>
19348
19349         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
19350         syntax.
19351         * modules/javaexec (Makefile.am): Likewise.
19352         * modules/relocatable-prog (Makefile.am): Likewise.
19353         Suggested by Jim Meyering.
19354
19355 2007-10-18  Bruno Haible  <bruno@clisp.org>
19356
19357         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
19358         Reported by Jim Meyering.
19359
19360 2007-10-18  Eric Blake  <ebb9@byu.net>
19361
19362         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
19363
19364 2007-10-18  Bruno Haible  <bruno@clisp.org>
19365
19366         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
19367         the format string into writable memory. Needed in Fortify conditions.
19368
19369 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
19370             Bruno Haible  <bruno@clisp.org>
19371
19372         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
19373         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
19374         * modules/trim (Depends-on): Add mbchar.
19375         (configure.ac): Add gl_FUNC_MBRTOWC.
19376         (Makefile.am): Augment lib_SOURCES.
19377
19378 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
19379
19380         Modify glob.c to use fstatat and dirfd, to simplify it.
19381         Suggested by Eric Blake.
19382         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
19383         Don't include <stdbool.h>; not used.
19384         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
19385         (link_exists_p): Simplify implementation, since we can now assume
19386         dirfd and fstatat.
19387         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
19388
19389 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19390
19391         * gnulib-tool (func_get_dependencies): Fix sed script to
19392         match only tests.
19393
19394 2007-10-17  Bruno Haible  <bruno@clisp.org>
19395
19396         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
19397         allow locale names without encoding suffix.
19398         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
19399         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
19400
19401 2007-10-16  Bruno Haible  <bruno@clisp.org>
19402
19403         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
19404         * lib/getgroups.c (getgroups): Likewise.
19405         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
19406
19407 2007-10-16  Bruno Haible  <bruno@clisp.org>
19408
19409         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
19410         * modules/malloc-posix (License): Likewise.
19411         * modules/realloc-posix (License): Likewise.
19412         * modules/calloc-posix (License): Likewise.
19413         * modules/intprops (License): Change from GPL to LGPL, with
19414         Paul Eggert's approval.
19415
19416 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19417
19418         Merge glibc changes into lib/glob.c.
19419
19420         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
19421         2007-10-15 04:59:03 UTC.  Here are the changes:
19422
19423         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
19424
19425         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
19426
19427         * lib/glob.c: Add some branch prediction throughout.
19428
19429         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
19430
19431         [BZ #5103]
19432         * lib/glob.c (glob): Recognize patterns starting \/.
19433
19434         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
19435
19436         [BZ #3996]
19437         * lib/glob.c (attribute_hidden): Define if not defined.
19438         (glob): Unescape dirname, filename or username when needed and not
19439         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
19440         is NULL.  Handle unescaped [ in pattern without closing ].
19441         Don't pass GLOB_CHECK down to recursive glob for directories.
19442         (__glob_pattern_type): New function.
19443         (__glob_pattern_p): Implement using __glob_pattern_type.
19444         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
19445         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
19446         Remove unreachable code.
19447
19448         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
19449
19450         * lib/glob.c (glob_in_dir): Add some comments and asserts to
19451         explain why there are no leaks.
19452
19453         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
19454
19455         [BZ #3253]
19456         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
19457         time, rather allocate increasingly bigger arrays of pointers, if
19458         possible with alloca, if too large with malloc.
19459
19460 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19461
19462         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
19463         Problem reported by H.Merijn Brand in
19464         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
19465         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
19466         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
19467
19468 2007-10-15  Bruno Haible  <bruno@clisp.org>
19469
19470         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
19471         with explicit rpl_ prefix.
19472         * lib/fopen.c (fopen): Likewise.
19473         * lib/freopen.c (freopen): Likewise.
19474         * lib/iconv.c (iconv): Likewise.
19475         * lib/iconv_close.c (iconv_close): Likewise.
19476
19477 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19478
19479         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
19480
19481 2007-10-15  Bruno Haible  <bruno@clisp.org>
19482
19483         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
19484         <stddef.h> instead of <stdlib.h> since we only need NULL.
19485         Reported by Ben Pfaff <blp@cs.stanford.edu>.
19486
19487 2007-10-15  Bruno Haible  <bruno@clisp.org>
19488
19489         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
19490         Replace paragraph talking about LIBOBJS.
19491         Reported by Colin Watson <cjwatson@debian.org>.
19492
19493 2007-10-15  Bruno Haible  <bruno@clisp.org>
19494
19495         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
19496         <stdlib.h> before using NULL.
19497
19498 2007-10-15  Simon Josefsson  <simon@josefsson.org>
19499
19500         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
19501         Reported by Albert Chin <china@thewrittenword.com>.
19502
19503 2007-10-14  Bruno Haible  <bruno@clisp.org>
19504
19505         * modules/iconv_open-utf-tests: New file.
19506         * tests/test-iconv-utf.c: New file.
19507
19508         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
19509         * modules/iconv_open-utf: New file.
19510         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
19511         (iconv, iconv_close): New declarations.
19512         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
19513         be defined.
19514         (iconv_open): Add special handling of conversion between UTF-8 and
19515         UTF-{16,32}{BE,LE}.
19516         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
19517         * lib/iconv_close.c: New file.
19518         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
19519         gl_FUNC_ICONV_OPEN.
19520         (gl_FUNC_ICONV_OPEN): Use it.
19521         (gl_FUNC_ICONV_OPEN_UTF): New macro.
19522         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
19523         and REPLACE_ICONV_UTF.
19524         * modules/iconv_open (Depends-on): Add c-strcase.
19525         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
19526         ICONV_CONST.
19527         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
19528
19529 2007-10-13  Albert Chin  <china@thewrittenword.com>
19530             Bruno Haible  <bruno@clisp.org>
19531
19532         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
19533         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
19534
19535 2007-10-13  Bruno Haible  <bruno@clisp.org>
19536
19537         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
19538         defined, use the ISO C99 inline semantics.
19539         * lib/argp.h (ARGP_EI): Likewise.
19540
19541 2007-10-13  Bruno Haible  <bruno@clisp.org>
19542
19543         Handle 'inline' change in gcc 4.3.0.
19544         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
19545         argp_fmtstream_write, argp_fmtstream_set_lmargin,
19546         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
19547         argp_fmtstream_point): Disable 'extern' declaration if the function
19548         definition is going to be provided inline.
19549         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
19550         semantics, not the ISO C99 inline semantics.
19551         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
19552         'extern' declaration if the function definition is going to be provided
19553         inline.
19554         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
19555         the GNU C inline semantics, not the ISO C99 inline semantics. With
19556         GCC 4.2, avoid a warning.
19557
19558 2007-10-13  Bruno Haible  <bruno@clisp.org>
19559
19560         * lib/freading.h (freading): Enable the use of __freading for
19561         glibc >= 2.7.
19562         * lib/freading.c (freading): Likewise.
19563
19564 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
19565
19566         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
19567         "warning: C99 inline functions are not supported; using GNU89".
19568
19569 2007-10-12  Bruno Haible  <bruno@clisp.org>
19570
19571         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
19572         of 2.
19573         * tests/test-ceilf2.c: New file.
19574         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
19575
19576         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
19577         * modules/ceilf-tests: Update.
19578
19579 2007-10-12  Bruno Haible  <bruno@clisp.org>
19580
19581         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
19582         of 2.
19583         * tests/test-floorf2.c: New file.
19584         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
19585
19586         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
19587         * modules/floorf-tests: Update.
19588
19589 2007-10-12  Bruno Haible  <bruno@clisp.org>
19590
19591         * tests/test-trunc2.c: New file.
19592         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
19593
19594         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
19595         * modules/trunc-tests: Update.
19596
19597 2007-10-12  Bruno Haible  <bruno@clisp.org>
19598
19599         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
19600         of 2.
19601         * tests/test-truncf2.c: New file.
19602         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
19603
19604         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
19605         * modules/truncf-tests: Update.
19606
19607 2007-10-11  Eric Blake  <ebb9@byu.net>
19608
19609         Don't claim strerror is broken on Interix.
19610         * doc/functions/strerror.texi (strerror): Known broken systems are
19611         now Solaris 8, and not Interix.
19612         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
19613         Interix on cross-compile.
19614         Reported by Martin Koeppe in
19615         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
19616
19617 2007-10-11  Bruno Haible  <bruno@clisp.org>
19618
19619         * modules/i-ring-tests: New file.
19620         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
19621         instead of assert.
19622
19623 2007-10-11  Bruno Haible  <bruno@clisp.org>
19624
19625         * modules/filenamecat-tests: New file.
19626         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
19627         * lib/filenamecat.c: Remove test code.
19628
19629 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
19630
19631         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
19632
19633         * lib/strerror.c: Include <string.h> always, to test interface,
19634         and to remove the need for the dummy.
19635         Include intprops.h to compute width instead of doing it ourselves
19636         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
19637         (strerror): Define it to return NULL if there's no system strerror.
19638         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
19639         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
19640         ancient pre-strerror Unix systems well any more.  Saying "unknown
19641         system error" is enough.
19642         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
19643         simpler strerror.c implementation.
19644         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
19645         Simplify the tests to reflect the simpler strerror implementation.
19646         * modules/strerror (Depends-on): Add intprops.
19647
19648 2007-10-09  Eric Blake  <ebb9@byu.net>
19649
19650         Silence test-fpending.
19651         * modules/fpending-tests (Files): Add wrapper script.
19652         * tests/test-fpending.sh: New file.
19653
19654 2007-10-09  Bruno Haible  <bruno@clisp.org>
19655
19656         * MODULES.html.sh (func_module): Don't create a hyperlink for
19657         function names like 'printf_frexp'.
19658         (Misc): Add crc, memxor.
19659         (Characteristics of floating types): New section.
19660         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
19661         isnanf-nolibm, signbit, trunc, truncf, truncl.
19662         (Enhancements for ISO C 99 functions): New subsection Input/output.
19663         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
19664         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
19665         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
19666         (Compatibility checks for POSIX:2001 functions): Add clock-time.
19667         (Enhancements for POSIX:2001 functions): Add chdir-long.
19668         (File system functions): Add areadlink, chdir-safer, read-file.
19669         Remove cycle-check.
19670         (File system as inode set): New section.
19671         (Date and time): Add gethrxtime.
19672         (Multithreading): Add openmp.
19673         (Internationalization functions): Add localename.
19674         (Unicode string functions): Add unistr/u*-mbsnlen.
19675         (Support for maintaining and releasing projects): Add git-version-gen.
19676         (Lone files): Remove directories.
19677
19678 2007-10-08  Ben Pfaff  <blp@gnu.org>
19679
19680         * lib/xmalloca.h: Fix typo in comment.
19681
19682 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
19683
19684         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
19685         when avoiding problems with integer overflow.  Use a portable test
19686         instead.
19687
19688 2007-10-08  Simon Josefsson  <simon@josefsson.org>
19689
19690         * modules/dummy (License): Change to LGPLv2+.
19691         * modules/float (License): Likewise
19692         * modules/realloc (License): Likewise
19693         * modules/stdlib (License): Likewise
19694
19695 2007-10-07  Bruno Haible  <bruno@clisp.org>
19696
19697         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
19698         * floor.c (TWO_MANT_DIG): Likewise.
19699         * ceil.c (TWO_MANT_DIG): Likewise.
19700         Reported by Ben Pfaff.
19701
19702 2007-10-07  Bruno Haible  <bruno@clisp.org>
19703
19704         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
19705         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
19706         * lib/frexp.c (FUNC): Likewise.
19707         * lib/printf-frexp.h (printf_frexp): Likewise.
19708         * lib/printf-frexpl.h (printf_frexpl): Likewise.
19709         * lib/printf-frexp.c (FUNC): Likewise.
19710         Suggested by Jim Meyering.
19711
19712 2007-10-07  Jim Meyering  <meyering@redhat.com>
19713
19714         Make xnanosleep's integer overflow test more robust.
19715         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
19716         so that gcc-4.3.0 doesn't optimize away this test for overflow.
19717
19718 2007-10-07  Bruno Haible  <bruno@clisp.org>
19719
19720         * NEWS: Mention the license change.
19721
19722         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
19723         abbreviations in the modules files.
19724
19725         Change copyright notice from GPLv2+ to GPLv3+.
19726         * README: Change copyright notice.
19727         * MODULES.html.sh: Likewise.
19728         * build-aux/bootstrap.conf: Likewise.
19729         * build-aux/config.libpath: Likewise.
19730         * build-aux/csharpcomp.sh.in: Likewise.
19731         * build-aux/csharpexec.sh.in: Likewise.
19732         * build-aux/install-reloc: Likewise.
19733         * build-aux/javacomp.sh.in: Likewise.
19734         * build-aux/javaexec.sh.in: Likewise.
19735         * build-aux/ldd.sh.in: Likewise.
19736         * build-aux/reloc-ldflags: Likewise.
19737         * build-aux/relocatable.sh.in: Likewise.
19738         * build-aux/x-to-1.in: Likewise.
19739         * check-module: Likewise.
19740         * config/srclistvars.sh: Likewise.
19741         * gnulib-tool: Likewise.
19742         * lib/acl-internal.h: Likewise.
19743         * lib/acl.c: Likewise.
19744         * lib/acl.h: Likewise.
19745         * lib/acl_entries.c: Likewise.
19746         * lib/areadlink-with-size.c: Likewise.
19747         * lib/areadlink.c: Likewise.
19748         * lib/areadlink.h: Likewise.
19749         * lib/argmatch.c: Likewise.
19750         * lib/argmatch.h: Likewise.
19751         * lib/argp-ba.c: Likewise.
19752         * lib/argp-eexst.c: Likewise.
19753         * lib/argp-fmtstream.c: Likewise.
19754         * lib/argp-fmtstream.h: Likewise.
19755         * lib/argp-fs-xinl.c: Likewise.
19756         * lib/argp-help.c: Likewise.
19757         * lib/argp-namefrob.h: Likewise.
19758         * lib/argp-parse.c: Likewise.
19759         * lib/argp-pin.c: Likewise.
19760         * lib/argp-pv.c: Likewise.
19761         * lib/argp-pvh.c: Likewise.
19762         * lib/argp-xinl.c: Likewise.
19763         * lib/argp.h: Likewise.
19764         * lib/at-func.c: Likewise.
19765         * lib/atanl.c: Likewise.
19766         * lib/backupfile.c: Likewise.
19767         * lib/backupfile.h: Likewise.
19768         * lib/basename.c: Likewise.
19769         * lib/binary-io.h: Likewise.
19770         * lib/byteswap.in.h: Likewise.
19771         * lib/c-stack.c: Likewise.
19772         * lib/c-stack.h: Likewise.
19773         * lib/c-strcasestr.c: Likewise.
19774         * lib/c-strcasestr.h: Likewise.
19775         * lib/c-strstr.c: Likewise.
19776         * lib/c-strstr.h: Likewise.
19777         * lib/c-strtod.c: Likewise.
19778         * lib/calloc.c: Likewise.
19779         * lib/canon-host.c: Likewise.
19780         * lib/canon-host.h: Likewise.
19781         * lib/canonicalize-lgpl.c: Likewise.
19782         * lib/canonicalize.c: Likewise.
19783         * lib/canonicalize.h: Likewise.
19784         * lib/ceil.c: Likewise.
19785         * lib/ceilf.c: Likewise.
19786         * lib/ceill.c: Likewise.
19787         * lib/chdir-long.c: Likewise.
19788         * lib/chdir-long.h: Likewise.
19789         * lib/chdir-safer.c: Likewise.
19790         * lib/chdir-safer.h: Likewise.
19791         * lib/chown.c: Likewise.
19792         * lib/classpath.c: Likewise.
19793         * lib/classpath.h: Likewise.
19794         * lib/clean-temp.c: Likewise.
19795         * lib/clean-temp.h: Likewise.
19796         * lib/cloexec.c: Likewise.
19797         * lib/close-stream.c: Likewise.
19798         * lib/closein.c: Likewise.
19799         * lib/closein.h: Likewise.
19800         * lib/closeout.c: Likewise.
19801         * lib/closeout.h: Likewise.
19802         * lib/concat-filename.c: Likewise.
19803         * lib/copy-file.c: Likewise.
19804         * lib/copy-file.h: Likewise.
19805         * lib/count-one-bits.h: Likewise.
19806         * lib/crc.c: Likewise.
19807         * lib/crc.h: Likewise.
19808         * lib/creat-safer.c: Likewise.
19809         * lib/csharpcomp.c: Likewise.
19810         * lib/csharpcomp.h: Likewise.
19811         * lib/csharpexec.c: Likewise.
19812         * lib/csharpexec.h: Likewise.
19813         * lib/cycle-check.c: Likewise.
19814         * lib/cycle-check.h: Likewise.
19815         * lib/diacrit.c: Likewise.
19816         * lib/diacrit.h: Likewise.
19817         * lib/diffseq.h: Likewise.
19818         * lib/dirchownmod.c: Likewise.
19819         * lib/dirent.in.h: Likewise.
19820         * lib/dirfd.c: Likewise.
19821         * lib/dirfd.h: Likewise.
19822         * lib/dirname.c: Likewise.
19823         * lib/dirname.h: Likewise.
19824         * lib/dummy.c: Likewise.
19825         * lib/dup-safer.c: Likewise.
19826         * lib/dup2.c: Likewise.
19827         * lib/eealloc.h: Likewise.
19828         * lib/error.c: Likewise.
19829         * lib/error.h: Likewise.
19830         * lib/euidaccess.c: Likewise.
19831         * lib/exclude.c: Likewise.
19832         * lib/exclude.h: Likewise.
19833         * lib/execute.c: Likewise.
19834         * lib/execute.h: Likewise.
19835         * lib/exitfail.c: Likewise.
19836         * lib/exitfail.h: Likewise.
19837         * lib/expl.c: Likewise.
19838         * lib/fatal-signal.c: Likewise.
19839         * lib/fatal-signal.h: Likewise.
19840         * lib/fbufmode.c: Likewise.
19841         * lib/fbufmode.h: Likewise.
19842         * lib/fchdir.c: Likewise.
19843         * lib/fchmodat.c: Likewise.
19844         * lib/fchownat.c: Likewise.
19845         * lib/fcntl--.h: Likewise.
19846         * lib/fcntl-safer.h: Likewise.
19847         * lib/fcntl.in.h: Likewise.
19848         * lib/fd-safer.c: Likewise.
19849         * lib/fflush.c: Likewise.
19850         * lib/file-has-acl.c: Likewise.
19851         * lib/file-set.c: Likewise.
19852         * lib/file-type.c: Likewise.
19853         * lib/file-type.h: Likewise.
19854         * lib/fileblocks.c: Likewise.
19855         * lib/filemode.c: Likewise.
19856         * lib/filemode.h: Likewise.
19857         * lib/filename.h: Likewise.
19858         * lib/filenamecat.c: Likewise.
19859         * lib/filenamecat.h: Likewise.
19860         * lib/findprog.c: Likewise.
19861         * lib/findprog.h: Likewise.
19862         * lib/float.in.h: Likewise.
19863         * lib/floor.c: Likewise.
19864         * lib/floorf.c: Likewise.
19865         * lib/floorl.c: Likewise.
19866         * lib/fopen-safer.c: Likewise.
19867         * lib/fopen.c: Likewise.
19868         * lib/fpending.c: Likewise.
19869         * lib/fpending.h: Likewise.
19870         * lib/fprintf.c: Likewise.
19871         * lib/fprintftime.h: Likewise.
19872         * lib/fpucw.h: Likewise.
19873         * lib/fpurge.c: Likewise.
19874         * lib/fpurge.h: Likewise.
19875         * lib/freadable.c: Likewise.
19876         * lib/freadable.h: Likewise.
19877         * lib/freadahead.c: Likewise.
19878         * lib/freadahead.h: Likewise.
19879         * lib/freading.c: Likewise.
19880         * lib/freading.h: Likewise.
19881         * lib/free.c: Likewise.
19882         * lib/freopen.c: Likewise.
19883         * lib/frexp.c: Likewise.
19884         * lib/frexpl.c: Likewise.
19885         * lib/fseek.c: Likewise.
19886         * lib/fseterr.c: Likewise.
19887         * lib/fseterr.h: Likewise.
19888         * lib/fstatat.c: Likewise.
19889         * lib/fstrcmp.c: Likewise.
19890         * lib/fstrcmp.h: Likewise.
19891         * lib/fsusage.c: Likewise.
19892         * lib/fsusage.h: Likewise.
19893         * lib/ftell.c: Likewise.
19894         * lib/ftello.c: Likewise.
19895         * lib/fts-cycle.c: Likewise.
19896         * lib/fts.c: Likewise.
19897         * lib/fts_.h: Likewise.
19898         * lib/full-read.c: Likewise.
19899         * lib/full-read.h: Likewise.
19900         * lib/full-write.c: Likewise.
19901         * lib/full-write.h: Likewise.
19902         * lib/fwritable.c: Likewise.
19903         * lib/fwritable.h: Likewise.
19904         * lib/fwriteerror.c: Likewise.
19905         * lib/fwriteerror.h: Likewise.
19906         * lib/fwriting.c: Likewise.
19907         * lib/fwriting.h: Likewise.
19908         * lib/gcd.c: Likewise.
19909         * lib/gcd.h: Likewise.
19910         * lib/getcwd.c: Likewise.
19911         * lib/getdate.h: Likewise.
19912         * lib/getdate.y: Likewise.
19913         * lib/getdomainname.c: Likewise.
19914         * lib/getdomainname.h: Likewise.
19915         * lib/getgroups.c: Likewise.
19916         * lib/gethostname.c: Likewise.
19917         * lib/gethrxtime.c: Likewise.
19918         * lib/gethrxtime.h: Likewise.
19919         * lib/getloadavg.c: Likewise.
19920         * lib/getndelim2.c: Likewise.
19921         * lib/getndelim2.h: Likewise.
19922         * lib/getnline.c: Likewise.
19923         * lib/getnline.h: Likewise.
19924         * lib/getopt.c: Likewise.
19925         * lib/getopt.in.h: Likewise.
19926         * lib/getopt1.c: Likewise.
19927         * lib/getopt_int.h: Likewise.
19928         * lib/getpagesize.h: Likewise.
19929         * lib/getsubopt.c: Likewise.
19930         * lib/gettime.c: Likewise.
19931         * lib/getugroups.c: Likewise.
19932         * lib/getugroups.h: Likewise.
19933         * lib/getusershell.c: Likewise.
19934         * lib/gl_anyavltree_list1.h: Likewise.
19935         * lib/gl_anyavltree_list2.h: Likewise.
19936         * lib/gl_anyhash_list1.h: Likewise.
19937         * lib/gl_anyhash_list2.h: Likewise.
19938         * lib/gl_anylinked_list1.h: Likewise.
19939         * lib/gl_anylinked_list2.h: Likewise.
19940         * lib/gl_anyrbtree_list1.h: Likewise.
19941         * lib/gl_anyrbtree_list2.h: Likewise.
19942         * lib/gl_anytree_list1.h: Likewise.
19943         * lib/gl_anytree_list2.h: Likewise.
19944         * lib/gl_anytree_oset.h: Likewise.
19945         * lib/gl_anytreehash_list1.h: Likewise.
19946         * lib/gl_anytreehash_list2.h: Likewise.
19947         * lib/gl_array_list.c: Likewise.
19948         * lib/gl_array_list.h: Likewise.
19949         * lib/gl_array_oset.c: Likewise.
19950         * lib/gl_array_oset.h: Likewise.
19951         * lib/gl_avltree_list.c: Likewise.
19952         * lib/gl_avltree_list.h: Likewise.
19953         * lib/gl_avltree_oset.c: Likewise.
19954         * lib/gl_avltree_oset.h: Likewise.
19955         * lib/gl_avltreehash_list.c: Likewise.
19956         * lib/gl_avltreehash_list.h: Likewise.
19957         * lib/gl_carray_list.c: Likewise.
19958         * lib/gl_carray_list.h: Likewise.
19959         * lib/gl_linked_list.c: Likewise.
19960         * lib/gl_linked_list.h: Likewise.
19961         * lib/gl_linkedhash_list.c: Likewise.
19962         * lib/gl_linkedhash_list.h: Likewise.
19963         * lib/gl_list.c: Likewise.
19964         * lib/gl_list.h: Likewise.
19965         * lib/gl_oset.c: Likewise.
19966         * lib/gl_oset.h: Likewise.
19967         * lib/gl_rbtree_list.c: Likewise.
19968         * lib/gl_rbtree_list.h: Likewise.
19969         * lib/gl_rbtree_oset.c: Likewise.
19970         * lib/gl_rbtree_oset.h: Likewise.
19971         * lib/gl_rbtreehash_list.c: Likewise.
19972         * lib/gl_rbtreehash_list.h: Likewise.
19973         * lib/gl_sublist.c: Likewise.
19974         * lib/gl_sublist.h: Likewise.
19975         * lib/group-member.c: Likewise.
19976         * lib/group-member.h: Likewise.
19977         * lib/hard-locale.c: Likewise.
19978         * lib/hard-locale.h: Likewise.
19979         * lib/hash-pjw.c: Likewise.
19980         * lib/hash-pjw.h: Likewise.
19981         * lib/hash-triple.c: Likewise.
19982         * lib/hash.c: Likewise.
19983         * lib/hash.h: Likewise.
19984         * lib/human.c: Likewise.
19985         * lib/human.h: Likewise.
19986         * lib/i-ring.c: Likewise.
19987         * lib/i-ring.h: Likewise.
19988         * lib/idcache.c: Likewise.
19989         * lib/imaxabs.c: Likewise.
19990         * lib/imaxdiv.c: Likewise.
19991         * lib/inet_pton.c: Likewise.
19992         * lib/inet_pton.h: Likewise.
19993         * lib/intprops.h: Likewise.
19994         * lib/inttostr.c: Likewise.
19995         * lib/inttostr.h: Likewise.
19996         * lib/inttypes.in.h: Likewise.
19997         * lib/isapipe.c: Likewise.
19998         * lib/isdir.c: Likewise.
19999         * lib/isnan.c: Likewise.
20000         * lib/isnan.h: Likewise.
20001         * lib/isnanf.c: Likewise.
20002         * lib/isnanf.h: Likewise.
20003         * lib/isnanl-nolibm.h: Likewise.
20004         * lib/isnanl.c: Likewise.
20005         * lib/isnanl.h: Likewise.
20006         * lib/javacomp.c: Likewise.
20007         * lib/javacomp.h: Likewise.
20008         * lib/javaexec.c: Likewise.
20009         * lib/javaexec.h: Likewise.
20010         * lib/javaversion.c: Likewise.
20011         * lib/javaversion.h: Likewise.
20012         * lib/javaversion.java: Likewise.
20013         * lib/lbrkprop.h: Likewise.
20014         * lib/lchmod.h: Likewise.
20015         * lib/lchown.c: Likewise.
20016         * lib/ldexpl.c: Likewise.
20017         * lib/linebreak.c: Likewise.
20018         * lib/linebreak.h: Likewise.
20019         * lib/linebuffer.c: Likewise.
20020         * lib/linebuffer.h: Likewise.
20021         * lib/locale.in.h: Likewise.
20022         * lib/logl.c: Likewise.
20023         * lib/long-options.c: Likewise.
20024         * lib/long-options.h: Likewise.
20025         * lib/lstat.c: Likewise.
20026         * lib/lstat.h: Likewise.
20027         * lib/math.in.h: Likewise.
20028         * lib/mbchar.c: Likewise.
20029         * lib/mbchar.h: Likewise.
20030         * lib/mbfile.h: Likewise.
20031         * lib/mbiter.h: Likewise.
20032         * lib/mbscasecmp.c: Likewise.
20033         * lib/mbscasestr.c: Likewise.
20034         * lib/mbschr.c: Likewise.
20035         * lib/mbscspn.c: Likewise.
20036         * lib/mbslen.c: Likewise.
20037         * lib/mbsncasecmp.c: Likewise.
20038         * lib/mbsnlen.c: Likewise.
20039         * lib/mbspbrk.c: Likewise.
20040         * lib/mbspcasecmp.c: Likewise.
20041         * lib/mbsrchr.c: Likewise.
20042         * lib/mbssep.c: Likewise.
20043         * lib/mbsspn.c: Likewise.
20044         * lib/mbsstr.c: Likewise.
20045         * lib/mbstok_r.c: Likewise.
20046         * lib/mbswidth.c: Likewise.
20047         * lib/mbswidth.h: Likewise.
20048         * lib/mbuiter.h: Likewise.
20049         * lib/memcasecmp.c: Likewise.
20050         * lib/memcasecmp.h: Likewise.
20051         * lib/memchr.c: Likewise.
20052         * lib/memcmp.c: Likewise.
20053         * lib/memcoll.c: Likewise.
20054         * lib/memcoll.h: Likewise.
20055         * lib/memcpy.c: Likewise.
20056         * lib/memrchr.c: Likewise.
20057         * lib/mkancesdirs.c: Likewise.
20058         * lib/mkdir-p.c: Likewise.
20059         * lib/mkdir-p.h: Likewise.
20060         * lib/mkdir.c: Likewise.
20061         * lib/mkdirat.c: Likewise.
20062         * lib/mkdtemp.c: Likewise.
20063         * lib/mkstemp-safer.c: Likewise.
20064         * lib/mkstemp.c: Likewise.
20065         * lib/modechange.c: Likewise.
20066         * lib/modechange.h: Likewise.
20067         * lib/mountlist.c: Likewise.
20068         * lib/mountlist.h: Likewise.
20069         * lib/mpsort.c: Likewise.
20070         * lib/nanosleep.c: Likewise.
20071         * lib/obstack.c: Likewise.
20072         * lib/obstack.h: Likewise.
20073         * lib/open-safer.c: Likewise.
20074         * lib/open.c: Likewise.
20075         * lib/openat-die.c: Likewise.
20076         * lib/openat-priv.h: Likewise.
20077         * lib/openat-proc.c: Likewise.
20078         * lib/openat.c: Likewise.
20079         * lib/openat.h: Likewise.
20080         * lib/pagealign_alloc.c: Likewise.
20081         * lib/pagealign_alloc.h: Likewise.
20082         * lib/physmem.c: Likewise.
20083         * lib/physmem.h: Likewise.
20084         * lib/pipe-safer.c: Likewise.
20085         * lib/pipe.c: Likewise.
20086         * lib/pipe.h: Likewise.
20087         * lib/posixtm.c: Likewise.
20088         * lib/posixtm.h: Likewise.
20089         * lib/posixver.c: Likewise.
20090         * lib/printf-frexp.c: Likewise.
20091         * lib/printf-frexp.h: Likewise.
20092         * lib/printf-frexpl.c: Likewise.
20093         * lib/printf-frexpl.h: Likewise.
20094         * lib/printf.c: Likewise.
20095         * lib/progname.c: Likewise.
20096         * lib/progname.h: Likewise.
20097         * lib/progreloc.c: Likewise.
20098         * lib/putenv.c: Likewise.
20099         * lib/quote.c: Likewise.
20100         * lib/quote.h: Likewise.
20101         * lib/quotearg.c: Likewise.
20102         * lib/quotearg.h: Likewise.
20103         * lib/raise.c: Likewise.
20104         * lib/readline.c: Likewise.
20105         * lib/readline.h: Likewise.
20106         * lib/readlink.c: Likewise.
20107         * lib/readtokens.c: Likewise.
20108         * lib/readtokens.h: Likewise.
20109         * lib/readtokens0.c: Likewise.
20110         * lib/readtokens0.h: Likewise.
20111         * lib/readutmp.c: Likewise.
20112         * lib/readutmp.h: Likewise.
20113         * lib/realloc.c: Likewise.
20114         * lib/relocwrapper.c: Likewise.
20115         * lib/rename-dest-slash.c: Likewise.
20116         * lib/rename.c: Likewise.
20117         * lib/rmdir.c: Likewise.
20118         * lib/rpmatch.c: Likewise.
20119         * lib/safe-read.c: Likewise.
20120         * lib/safe-read.h: Likewise.
20121         * lib/safe-write.c: Likewise.
20122         * lib/safe-write.h: Likewise.
20123         * lib/same-inode.h: Likewise.
20124         * lib/same.c: Likewise.
20125         * lib/same.h: Likewise.
20126         * lib/save-cwd.c: Likewise.
20127         * lib/save-cwd.h: Likewise.
20128         * lib/savedir.c: Likewise.
20129         * lib/savedir.h: Likewise.
20130         * lib/savewd.c: Likewise.
20131         * lib/savewd.h: Likewise.
20132         * lib/search.in.h: Likewise.
20133         * lib/setenv.c: Likewise.
20134         * lib/setenv.h: Likewise.
20135         * lib/settime.c: Likewise.
20136         * lib/sh-quote.c: Likewise.
20137         * lib/sh-quote.h: Likewise.
20138         * lib/sig2str.c: Likewise.
20139         * lib/sig2str.h: Likewise.
20140         * lib/signal.in.h: Likewise.
20141         * lib/signbitd.c: Likewise.
20142         * lib/signbitf.c: Likewise.
20143         * lib/signbitl.c: Likewise.
20144         * lib/sigprocmask.c: Likewise.
20145         * lib/sincosl.c: Likewise.
20146         * lib/sleep.c: Likewise.
20147         * lib/sprintf.c: Likewise.
20148         * lib/sqrtl.c: Likewise.
20149         * lib/stat-time.h: Likewise.
20150         * lib/stdio--.h: Likewise.
20151         * lib/stdio-safer.h: Likewise.
20152         * lib/stdlib--.h: Likewise.
20153         * lib/stdlib-safer.h: Likewise.
20154         * lib/stdlib.in.h: Likewise.
20155         * lib/stpcpy.c: Likewise.
20156         * lib/stpncpy.c: Likewise.
20157         * lib/strchrnul.c: Likewise.
20158         * lib/strcspn.c: Likewise.
20159         * lib/strerror.c: Likewise.
20160         * lib/strftime.c: Likewise.
20161         * lib/strftime.h: Likewise.
20162         * lib/striconveh.c: Likewise.
20163         * lib/striconveh.h: Likewise.
20164         * lib/striconveha.c: Likewise.
20165         * lib/striconveha.h: Likewise.
20166         * lib/stripslash.c: Likewise.
20167         * lib/strnlen1.c: Likewise.
20168         * lib/strnlen1.h: Likewise.
20169         * lib/strtod.c: Likewise.
20170         * lib/strtoimax.c: Likewise.
20171         * lib/strtok_r.c: Likewise.
20172         * lib/strtol.c: Likewise.
20173         * lib/strtoll.c: Likewise.
20174         * lib/strtoul.c: Likewise.
20175         * lib/strtoull.c: Likewise.
20176         * lib/sysexits.in.h: Likewise.
20177         * lib/tempname.c: Likewise.
20178         * lib/tempname.h: Likewise.
20179         * lib/timespec.h: Likewise.
20180         * lib/tls.c: Likewise.
20181         * lib/tls.h: Likewise.
20182         * lib/tmpdir.c: Likewise.
20183         * lib/tmpdir.h: Likewise.
20184         * lib/tmpfile-safer.c: Likewise.
20185         * lib/tmpfile.c: Likewise.
20186         * lib/trigl.c: Likewise.
20187         * lib/trigl.h: Likewise.
20188         * lib/trim.c: Likewise.
20189         * lib/trim.h: Likewise.
20190         * lib/trunc.c: Likewise.
20191         * lib/truncf.c: Likewise.
20192         * lib/truncl.c: Likewise.
20193         * lib/tsearch.c: Likewise.
20194         * lib/unicodeio.c: Likewise.
20195         * lib/unicodeio.h: Likewise.
20196         * lib/unistd--.h: Likewise.
20197         * lib/unistd-safer.h: Likewise.
20198         * lib/unistdio/ulc-fprintf.c: Likewise.
20199         * lib/unistdio/ulc-vfprintf.c: Likewise.
20200         * lib/unlinkdir.c: Likewise.
20201         * lib/unlinkdir.h: Likewise.
20202         * lib/unlocked-io.h: Likewise.
20203         * lib/unsetenv.c: Likewise.
20204         * lib/userspec.c: Likewise.
20205         * lib/utime.c: Likewise.
20206         * lib/utimecmp.c: Likewise.
20207         * lib/utimecmp.h: Likewise.
20208         * lib/utimens.c: Likewise.
20209         * lib/verify.h: Likewise.
20210         * lib/verror.c: Likewise.
20211         * lib/verror.h: Likewise.
20212         * lib/version-etc-fsf.c: Likewise.
20213         * lib/version-etc.c: Likewise.
20214         * lib/version-etc.h: Likewise.
20215         * lib/vfprintf.c: Likewise.
20216         * lib/vprintf.c: Likewise.
20217         * lib/vsprintf.c: Likewise.
20218         * lib/w32spawn.h: Likewise.
20219         * lib/wait-process.c: Likewise.
20220         * lib/wait-process.h: Likewise.
20221         * lib/wcwidth.c: Likewise.
20222         * lib/write-any-file.c: Likewise.
20223         * lib/xalloc-die.c: Likewise.
20224         * lib/xalloc.h: Likewise.
20225         * lib/xasprintf.c: Likewise.
20226         * lib/xgetcwd.c: Likewise.
20227         * lib/xgetcwd.h: Likewise.
20228         * lib/xgetdomainname.c: Likewise.
20229         * lib/xgetdomainname.h: Likewise.
20230         * lib/xgethostname.c: Likewise.
20231         * lib/xmalloc.c: Likewise.
20232         * lib/xmalloca.c: Likewise.
20233         * lib/xmalloca.h: Likewise.
20234         * lib/xmemcoll.c: Likewise.
20235         * lib/xnanosleep.c: Likewise.
20236         * lib/xreadlink.c: Likewise.
20237         * lib/xreadlink.h: Likewise.
20238         * lib/xsetenv.c: Likewise.
20239         * lib/xsetenv.h: Likewise.
20240         * lib/xstriconv.c: Likewise.
20241         * lib/xstriconv.h: Likewise.
20242         * lib/xstrndup.c: Likewise.
20243         * lib/xstrndup.h: Likewise.
20244         * lib/xstrtod.c: Likewise.
20245         * lib/xstrtod.h: Likewise.
20246         * lib/xstrtol-error.c: Likewise.
20247         * lib/xstrtol.c: Likewise.
20248         * lib/xstrtol.h: Likewise.
20249         * lib/xtime.h: Likewise.
20250         * lib/xvasprintf.c: Likewise.
20251         * lib/xvasprintf.h: Likewise.
20252         * lib/yesno.c: Likewise.
20253         * lib/yesno.h: Likewise.
20254         * posix-modules: Likewise.
20255         * tests/test-alloca-opt.c: Likewise.
20256         * tests/test-arcfour.c: Likewise.
20257         * tests/test-arctwo.c: Likewise.
20258         * tests/test-argmatch.c: Likewise.
20259         * tests/test-argp-2.sh: Likewise.
20260         * tests/test-argp.c: Likewise.
20261         * tests/test-arpa_inet.c: Likewise.
20262         * tests/test-array_list.c: Likewise.
20263         * tests/test-array_oset.c: Likewise.
20264         * tests/test-atexit.c: Likewise.
20265         * tests/test-avltree_list.c: Likewise.
20266         * tests/test-avltree_oset.c: Likewise.
20267         * tests/test-avltreehash_list.c: Likewise.
20268         * tests/test-base64.c: Likewise.
20269         * tests/test-binary-io.c: Likewise.
20270         * tests/test-byteswap.c: Likewise.
20271         * tests/test-c-ctype.c: Likewise.
20272         * tests/test-c-strcasecmp.c: Likewise.
20273         * tests/test-c-strcasestr.c: Likewise.
20274         * tests/test-c-strncasecmp.c: Likewise.
20275         * tests/test-c-strstr.c: Likewise.
20276         * tests/test-canonicalize-lgpl.c: Likewise.
20277         * tests/test-canonicalize.c: Likewise.
20278         * tests/test-carray_list.c: Likewise.
20279         * tests/test-ceilf.c: Likewise.
20280         * tests/test-ceill.c: Likewise.
20281         * tests/test-count-one-bits.c: Likewise.
20282         * tests/test-crc.c: Likewise.
20283         * tests/test-dirname.c: Likewise.
20284         * tests/test-fbufmode.c: Likewise.
20285         * tests/test-fcntl.c: Likewise.
20286         * tests/test-fflush.c: Likewise.
20287         * tests/test-floorf.c: Likewise.
20288         * tests/test-floorl.c: Likewise.
20289         * tests/test-fopen.c: Likewise.
20290         * tests/test-fprintf-posix.c: Likewise.
20291         * tests/test-fprintf-posix.h: Likewise.
20292         * tests/test-fpurge.c: Likewise.
20293         * tests/test-freadable.c: Likewise.
20294         * tests/test-freadahead.c: Likewise.
20295         * tests/test-freading.c: Likewise.
20296         * tests/test-freopen.c: Likewise.
20297         * tests/test-frexp.c: Likewise.
20298         * tests/test-frexpl.c: Likewise.
20299         * tests/test-fseek.c: Likewise.
20300         * tests/test-fseeko.c: Likewise.
20301         * tests/test-fseterr.c: Likewise.
20302         * tests/test-fstrcmp.c: Likewise.
20303         * tests/test-ftell.c: Likewise.
20304         * tests/test-ftello.c: Likewise.
20305         * tests/test-fwritable.c: Likewise.
20306         * tests/test-fwriting.c: Likewise.
20307         * tests/test-getaddrinfo.c: Likewise.
20308         * tests/test-getpass.c: Likewise.
20309         * tests/test-gettimeofday.c: Likewise.
20310         * tests/test-hmac-md5.c: Likewise.
20311         * tests/test-hmac-sha1.c: Likewise.
20312         * tests/test-iconv.c: Likewise.
20313         * tests/test-iconvme.c: Likewise.
20314         * tests/test-inttypes.c: Likewise.
20315         * tests/test-isnan.c: Likewise.
20316         * tests/test-isnanf.c: Likewise.
20317         * tests/test-isnanl-nolibm.c: Likewise.
20318         * tests/test-isnanl.c: Likewise.
20319         * tests/test-isnanl.h: Likewise.
20320         * tests/test-ldexpl.c: Likewise.
20321         * tests/test-linked_list.c: Likewise.
20322         * tests/test-linkedhash_list.c: Likewise.
20323         * tests/test-locale.c: Likewise.
20324         * tests/test-localename.c: Likewise.
20325         * tests/test-lock.c: Likewise.
20326         * tests/test-lseek.c: Likewise.
20327         * tests/test-malloca.c: Likewise.
20328         * tests/test-math.c: Likewise.
20329         * tests/test-mbscasecmp.c: Likewise.
20330         * tests/test-mbscasestr1.c: Likewise.
20331         * tests/test-mbscasestr2.c: Likewise.
20332         * tests/test-mbscasestr3.c: Likewise.
20333         * tests/test-mbscasestr4.c: Likewise.
20334         * tests/test-mbschr.c: Likewise.
20335         * tests/test-mbscspn.c: Likewise.
20336         * tests/test-mbsncasecmp.c: Likewise.
20337         * tests/test-mbspbrk.c: Likewise.
20338         * tests/test-mbspcasecmp.c: Likewise.
20339         * tests/test-mbsrchr.c: Likewise.
20340         * tests/test-mbsspn.c: Likewise.
20341         * tests/test-mbsstr1.c: Likewise.
20342         * tests/test-mbsstr2.c: Likewise.
20343         * tests/test-mbsstr3.c: Likewise.
20344         * tests/test-md5.c: Likewise.
20345         * tests/test-memmem.c: Likewise.
20346         * tests/test-netinet_in.c: Likewise.
20347         * tests/test-open.c: Likewise.
20348         * tests/test-printf-frexp.c: Likewise.
20349         * tests/test-printf-frexpl.c: Likewise.
20350         * tests/test-printf-posix.c: Likewise.
20351         * tests/test-printf-posix.h: Likewise.
20352         * tests/test-rbtree_list.c: Likewise.
20353         * tests/test-rbtree_oset.c: Likewise.
20354         * tests/test-rbtreehash_list.c: Likewise.
20355         * tests/test-read-file.c: Likewise.
20356         * tests/test-rijndael.c: Likewise.
20357         * tests/test-search.c: Likewise.
20358         * tests/test-signbit.c: Likewise.
20359         * tests/test-sleep.c: Likewise.
20360         * tests/test-snprintf-posix.c: Likewise.
20361         * tests/test-snprintf-posix.h: Likewise.
20362         * tests/test-snprintf.c: Likewise.
20363         * tests/test-sprintf-posix.c: Likewise.
20364         * tests/test-sprintf-posix.h: Likewise.
20365         * tests/test-stat-time.c: Likewise.
20366         * tests/test-stdbool.c: Likewise.
20367         * tests/test-stdint.c: Likewise.
20368         * tests/test-stdio.c: Likewise.
20369         * tests/test-stdlib.c: Likewise.
20370         * tests/test-stpncpy.c: Likewise.
20371         * tests/test-strcasestr.c: Likewise.
20372         * tests/test-striconv.c: Likewise.
20373         * tests/test-striconveh.c: Likewise.
20374         * tests/test-striconveha.c: Likewise.
20375         * tests/test-string.c: Likewise.
20376         * tests/test-sys_select.c: Likewise.
20377         * tests/test-sys_socket.c: Likewise.
20378         * tests/test-sys_stat.c: Likewise.
20379         * tests/test-sys_time.c: Likewise.
20380         * tests/test-sysexits.c: Likewise.
20381         * tests/test-time.c: Likewise.
20382         * tests/test-tls.c: Likewise.
20383         * tests/test-trunc.c: Likewise.
20384         * tests/test-truncf.c: Likewise.
20385         * tests/test-truncl.c: Likewise.
20386         * tests/test-unistd.c: Likewise.
20387         * tests/test-vasnprintf-posix.c: Likewise.
20388         * tests/test-vasnprintf-posix2.c: Likewise.
20389         * tests/test-vasnprintf.c: Likewise.
20390         * tests/test-vasprintf-posix.c: Likewise.
20391         * tests/test-vasprintf.c: Likewise.
20392         * tests/test-verify.c: Likewise.
20393         * tests/test-vfprintf-posix.c: Likewise.
20394         * tests/test-vprintf-posix.c: Likewise.
20395         * tests/test-vsnprintf-posix.c: Likewise.
20396         * tests/test-vsnprintf.c: Likewise.
20397         * tests/test-vsprintf-posix.c: Likewise.
20398         * tests/test-wchar.c: Likewise.
20399         * tests/test-wctype.c: Likewise.
20400         * tests/test-wcwidth.c: Likewise.
20401         * tests/test-xstrtol.c: Likewise.
20402         * tests/test-xvasprintf.c: Likewise.
20403         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
20404         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
20405         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
20406         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
20407         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
20408         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
20409         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
20410         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
20411         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
20412         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
20413         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
20414         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
20415         * tests/uniname/test-uninames.c: Likewise.
20416         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
20417         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
20418         * tests/unistdio/test-u16-printf1.h: Likewise.
20419         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
20420         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
20421         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
20422         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
20423         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
20424         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
20425         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
20426         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
20427         * tests/unistdio/test-u32-printf1.h: Likewise.
20428         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
20429         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
20430         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
20431         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
20432         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
20433         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
20434         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
20435         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
20436         * tests/unistdio/test-u8-printf1.h: Likewise.
20437         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
20438         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
20439         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
20440         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
20441         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
20442         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
20443         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
20444         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
20445         * tests/unistdio/test-ulc-printf1.h: Likewise.
20446         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
20447         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
20448         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
20449         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
20450         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
20451         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
20452         * tests/uniwidth/test-u16-strwidth.c: Likewise.
20453         * tests/uniwidth/test-u16-width.c: Likewise.
20454         * tests/uniwidth/test-u32-strwidth.c: Likewise.
20455         * tests/uniwidth/test-u32-width.c: Likewise.
20456         * tests/uniwidth/test-u8-strwidth.c: Likewise.
20457         * tests/uniwidth/test-u8-width.c: Likewise.
20458         * tests/uniwidth/test-uc_width.c: Likewise.
20459         * config/srclist-update: Likewise.
20460         (fixlicense): Update to GPLv3+.
20461
20462         Change copyright notice from LGPLv2.1+ to LGPLv3+.
20463         * tests/test-tsearch.c: Change copyright notice.
20464
20465         Change copyright notice from LGPLv2.0+ to LGPLv3+.
20466         * lib/c-strcaseeq.h: Change copyright notice.
20467         * lib/streq.h: Likewise.
20468         * lib/uniconv.h: Likewise.
20469         * lib/uniconv/u-conv-from-enc.h: Likewise.
20470         * lib/uniconv/u-conv-to-enc.h: Likewise.
20471         * lib/uniconv/u-strconv-from-enc.h: Likewise.
20472         * lib/uniconv/u-strconv-to-enc.h: Likewise.
20473         * lib/uniconv/u16-conv-from-enc.c: Likewise.
20474         * lib/uniconv/u16-conv-to-enc.c: Likewise.
20475         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
20476         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
20477         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
20478         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
20479         * lib/uniconv/u32-conv-from-enc.c: Likewise.
20480         * lib/uniconv/u32-conv-to-enc.c: Likewise.
20481         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
20482         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
20483         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
20484         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
20485         * lib/uniconv/u8-conv-from-enc.c: Likewise.
20486         * lib/uniconv/u8-conv-to-enc.c: Likewise.
20487         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
20488         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
20489         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
20490         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
20491         * lib/uniname.h: Likewise.
20492         * lib/uniname/uniname.c: Likewise.
20493         * lib/unistdio.h: Likewise.
20494         * lib/unistdio/u-asnprintf.h: Likewise.
20495         * lib/unistdio/u-asprintf.h: Likewise.
20496         * lib/unistdio/u-printf-args.c: Likewise.
20497         * lib/unistdio/u-printf-args.h: Likewise.
20498         * lib/unistdio/u-printf-parse.h: Likewise.
20499         * lib/unistdio/u-snprintf.h: Likewise.
20500         * lib/unistdio/u-sprintf.h: Likewise.
20501         * lib/unistdio/u-vasprintf.h: Likewise.
20502         * lib/unistdio/u-vsnprintf.h: Likewise.
20503         * lib/unistdio/u-vsprintf.h: Likewise.
20504         * lib/unistdio/u16-asnprintf.c: Likewise.
20505         * lib/unistdio/u16-asprintf.c: Likewise.
20506         * lib/unistdio/u16-printf-parse.c: Likewise.
20507         * lib/unistdio/u16-snprintf.c: Likewise.
20508         * lib/unistdio/u16-sprintf.c: Likewise.
20509         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
20510         * lib/unistdio/u16-u16-asprintf.c: Likewise.
20511         * lib/unistdio/u16-u16-snprintf.c: Likewise.
20512         * lib/unistdio/u16-u16-sprintf.c: Likewise.
20513         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
20514         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
20515         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
20516         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
20517         * lib/unistdio/u16-vasnprintf.c: Likewise.
20518         * lib/unistdio/u16-vasprintf.c: Likewise.
20519         * lib/unistdio/u16-vsnprintf.c: Likewise.
20520         * lib/unistdio/u16-vsprintf.c: Likewise.
20521         * lib/unistdio/u32-asnprintf.c: Likewise.
20522         * lib/unistdio/u32-asprintf.c: Likewise.
20523         * lib/unistdio/u32-printf-parse.c: Likewise.
20524         * lib/unistdio/u32-snprintf.c: Likewise.
20525         * lib/unistdio/u32-sprintf.c: Likewise.
20526         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
20527         * lib/unistdio/u32-u32-asprintf.c: Likewise.
20528         * lib/unistdio/u32-u32-snprintf.c: Likewise.
20529         * lib/unistdio/u32-u32-sprintf.c: Likewise.
20530         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
20531         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
20532         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
20533         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
20534         * lib/unistdio/u32-vasnprintf.c: Likewise.
20535         * lib/unistdio/u32-vasprintf.c: Likewise.
20536         * lib/unistdio/u32-vsnprintf.c: Likewise.
20537         * lib/unistdio/u32-vsprintf.c: Likewise.
20538         * lib/unistdio/u8-asnprintf.c: Likewise.
20539         * lib/unistdio/u8-asprintf.c: Likewise.
20540         * lib/unistdio/u8-printf-parse.c: Likewise.
20541         * lib/unistdio/u8-snprintf.c: Likewise.
20542         * lib/unistdio/u8-sprintf.c: Likewise.
20543         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
20544         * lib/unistdio/u8-u8-asprintf.c: Likewise.
20545         * lib/unistdio/u8-u8-snprintf.c: Likewise.
20546         * lib/unistdio/u8-u8-sprintf.c: Likewise.
20547         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
20548         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
20549         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
20550         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
20551         * lib/unistdio/u8-vasnprintf.c: Likewise.
20552         * lib/unistdio/u8-vasprintf.c: Likewise.
20553         * lib/unistdio/u8-vsnprintf.c: Likewise.
20554         * lib/unistdio/u8-vsprintf.c: Likewise.
20555         * lib/unistdio/ulc-asnprintf.c: Likewise.
20556         * lib/unistdio/ulc-asprintf.c: Likewise.
20557         * lib/unistdio/ulc-printf-parse.c: Likewise.
20558         * lib/unistdio/ulc-snprintf.c: Likewise.
20559         * lib/unistdio/ulc-sprintf.c: Likewise.
20560         * lib/unistdio/ulc-vasnprintf.c: Likewise.
20561         * lib/unistdio/ulc-vasprintf.c: Likewise.
20562         * lib/unistdio/ulc-vsnprintf.c: Likewise.
20563         * lib/unistdio/ulc-vsprintf.c: Likewise.
20564         * lib/unistr.h: Likewise.
20565         * lib/unistr/u-cpy-alloc.h: Likewise.
20566         * lib/unistr/u-cpy.h: Likewise.
20567         * lib/unistr/u-endswith.h: Likewise.
20568         * lib/unistr/u-move.h: Likewise.
20569         * lib/unistr/u-set.h: Likewise.
20570         * lib/unistr/u-startswith.h: Likewise.
20571         * lib/unistr/u-stpcpy.h: Likewise.
20572         * lib/unistr/u-stpncpy.h: Likewise.
20573         * lib/unistr/u-strcat.h: Likewise.
20574         * lib/unistr/u-strcpy.h: Likewise.
20575         * lib/unistr/u-strcspn.h: Likewise.
20576         * lib/unistr/u-strdup.h: Likewise.
20577         * lib/unistr/u-strlen.h: Likewise.
20578         * lib/unistr/u-strncat.h: Likewise.
20579         * lib/unistr/u-strncpy.h: Likewise.
20580         * lib/unistr/u-strnlen.h: Likewise.
20581         * lib/unistr/u-strpbrk.h: Likewise.
20582         * lib/unistr/u-strspn.h: Likewise.
20583         * lib/unistr/u-strstr.h: Likewise.
20584         * lib/unistr/u-strtok.h: Likewise.
20585         * lib/unistr/u16-check.c: Likewise.
20586         * lib/unistr/u16-chr.c: Likewise.
20587         * lib/unistr/u16-cmp.c: Likewise.
20588         * lib/unistr/u16-cpy-alloc.c: Likewise.
20589         * lib/unistr/u16-cpy.c: Likewise.
20590         * lib/unistr/u16-endswith.c: Likewise.
20591         * lib/unistr/u16-mblen.c: Likewise.
20592         * lib/unistr/u16-mbsnlen.c: Likewise.
20593         * lib/unistr/u16-mbtouc-aux.c: Likewise.
20594         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
20595         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
20596         * lib/unistr/u16-mbtouc.c: Likewise.
20597         * lib/unistr/u16-mbtoucr.c: Likewise.
20598         * lib/unistr/u16-move.c: Likewise.
20599         * lib/unistr/u16-next.c: Likewise.
20600         * lib/unistr/u16-prev.c: Likewise.
20601         * lib/unistr/u16-set.c: Likewise.
20602         * lib/unistr/u16-startswith.c: Likewise.
20603         * lib/unistr/u16-stpcpy.c: Likewise.
20604         * lib/unistr/u16-stpncpy.c: Likewise.
20605         * lib/unistr/u16-strcat.c: Likewise.
20606         * lib/unistr/u16-strchr.c: Likewise.
20607         * lib/unistr/u16-strcmp.c: Likewise.
20608         * lib/unistr/u16-strcpy.c: Likewise.
20609         * lib/unistr/u16-strcspn.c: Likewise.
20610         * lib/unistr/u16-strdup.c: Likewise.
20611         * lib/unistr/u16-strlen.c: Likewise.
20612         * lib/unistr/u16-strmblen.c: Likewise.
20613         * lib/unistr/u16-strmbtouc.c: Likewise.
20614         * lib/unistr/u16-strncat.c: Likewise.
20615         * lib/unistr/u16-strncmp.c: Likewise.
20616         * lib/unistr/u16-strncpy.c: Likewise.
20617         * lib/unistr/u16-strnlen.c: Likewise.
20618         * lib/unistr/u16-strpbrk.c: Likewise.
20619         * lib/unistr/u16-strrchr.c: Likewise.
20620         * lib/unistr/u16-strspn.c: Likewise.
20621         * lib/unistr/u16-strstr.c: Likewise.
20622         * lib/unistr/u16-strtok.c: Likewise.
20623         * lib/unistr/u16-to-u32.c: Likewise.
20624         * lib/unistr/u16-to-u8.c: Likewise.
20625         * lib/unistr/u16-uctomb-aux.c: Likewise.
20626         * lib/unistr/u16-uctomb.c: Likewise.
20627         * lib/unistr/u32-check.c: Likewise.
20628         * lib/unistr/u32-chr.c: Likewise.
20629         * lib/unistr/u32-cmp.c: Likewise.
20630         * lib/unistr/u32-cpy-alloc.c: Likewise.
20631         * lib/unistr/u32-cpy.c: Likewise.
20632         * lib/unistr/u32-endswith.c: Likewise.
20633         * lib/unistr/u32-mblen.c: Likewise.
20634         * lib/unistr/u32-mbsnlen.c: Likewise.
20635         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
20636         * lib/unistr/u32-mbtouc.c: Likewise.
20637         * lib/unistr/u32-mbtoucr.c: Likewise.
20638         * lib/unistr/u32-move.c: Likewise.
20639         * lib/unistr/u32-next.c: Likewise.
20640         * lib/unistr/u32-prev.c: Likewise.
20641         * lib/unistr/u32-set.c: Likewise.
20642         * lib/unistr/u32-startswith.c: Likewise.
20643         * lib/unistr/u32-stpcpy.c: Likewise.
20644         * lib/unistr/u32-stpncpy.c: Likewise.
20645         * lib/unistr/u32-strcat.c: Likewise.
20646         * lib/unistr/u32-strchr.c: Likewise.
20647         * lib/unistr/u32-strcmp.c: Likewise.
20648         * lib/unistr/u32-strcpy.c: Likewise.
20649         * lib/unistr/u32-strcspn.c: Likewise.
20650         * lib/unistr/u32-strdup.c: Likewise.
20651         * lib/unistr/u32-strlen.c: Likewise.
20652         * lib/unistr/u32-strmblen.c: Likewise.
20653         * lib/unistr/u32-strmbtouc.c: Likewise.
20654         * lib/unistr/u32-strncat.c: Likewise.
20655         * lib/unistr/u32-strncmp.c: Likewise.
20656         * lib/unistr/u32-strncpy.c: Likewise.
20657         * lib/unistr/u32-strnlen.c: Likewise.
20658         * lib/unistr/u32-strpbrk.c: Likewise.
20659         * lib/unistr/u32-strrchr.c: Likewise.
20660         * lib/unistr/u32-strspn.c: Likewise.
20661         * lib/unistr/u32-strstr.c: Likewise.
20662         * lib/unistr/u32-strtok.c: Likewise.
20663         * lib/unistr/u32-to-u16.c: Likewise.
20664         * lib/unistr/u32-to-u8.c: Likewise.
20665         * lib/unistr/u32-uctomb.c: Likewise.
20666         * lib/unistr/u8-check.c: Likewise.
20667         * lib/unistr/u8-chr.c: Likewise.
20668         * lib/unistr/u8-cmp.c: Likewise.
20669         * lib/unistr/u8-cpy-alloc.c: Likewise.
20670         * lib/unistr/u8-cpy.c: Likewise.
20671         * lib/unistr/u8-endswith.c: Likewise.
20672         * lib/unistr/u8-mblen.c: Likewise.
20673         * lib/unistr/u8-mbsnlen.c: Likewise.
20674         * lib/unistr/u8-mbtouc-aux.c: Likewise.
20675         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
20676         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
20677         * lib/unistr/u8-mbtouc.c: Likewise.
20678         * lib/unistr/u8-mbtoucr.c: Likewise.
20679         * lib/unistr/u8-move.c: Likewise.
20680         * lib/unistr/u8-next.c: Likewise.
20681         * lib/unistr/u8-prev.c: Likewise.
20682         * lib/unistr/u8-set.c: Likewise.
20683         * lib/unistr/u8-startswith.c: Likewise.
20684         * lib/unistr/u8-stpcpy.c: Likewise.
20685         * lib/unistr/u8-stpncpy.c: Likewise.
20686         * lib/unistr/u8-strcat.c: Likewise.
20687         * lib/unistr/u8-strchr.c: Likewise.
20688         * lib/unistr/u8-strcmp.c: Likewise.
20689         * lib/unistr/u8-strcpy.c: Likewise.
20690         * lib/unistr/u8-strcspn.c: Likewise.
20691         * lib/unistr/u8-strdup.c: Likewise.
20692         * lib/unistr/u8-strlen.c: Likewise.
20693         * lib/unistr/u8-strmblen.c: Likewise.
20694         * lib/unistr/u8-strmbtouc.c: Likewise.
20695         * lib/unistr/u8-strncat.c: Likewise.
20696         * lib/unistr/u8-strncmp.c: Likewise.
20697         * lib/unistr/u8-strncpy.c: Likewise.
20698         * lib/unistr/u8-strnlen.c: Likewise.
20699         * lib/unistr/u8-strpbrk.c: Likewise.
20700         * lib/unistr/u8-strrchr.c: Likewise.
20701         * lib/unistr/u8-strspn.c: Likewise.
20702         * lib/unistr/u8-strstr.c: Likewise.
20703         * lib/unistr/u8-strtok.c: Likewise.
20704         * lib/unistr/u8-to-u16.c: Likewise.
20705         * lib/unistr/u8-to-u32.c: Likewise.
20706         * lib/unistr/u8-uctomb-aux.c: Likewise.
20707         * lib/unistr/u8-uctomb.c: Likewise.
20708         * lib/unitypes.h: Likewise.
20709         * lib/uniwidth.h: Likewise.
20710         * lib/uniwidth/cjk.h: Likewise.
20711         * lib/uniwidth/u16-strwidth.c: Likewise.
20712         * lib/uniwidth/u16-width.c: Likewise.
20713         * lib/uniwidth/u32-strwidth.c: Likewise.
20714         * lib/uniwidth/u32-width.c: Likewise.
20715         * lib/uniwidth/u8-strwidth.c: Likewise.
20716         * lib/uniwidth/u8-width.c: Likewise.
20717         * lib/uniwidth/width.c: Likewise.
20718
20719 2007-10-07  Bruno Haible  <bruno@clisp.org>
20720
20721         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
20722         The file is still under LGPL (see modules/inttypes).
20723
20724 2007-10-06  Bruno Haible  <bruno@clisp.org>
20725
20726         * modules/trunc (Dependencies): Add 'extensions'.
20727         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
20728         Reported by Ben Pfaff <blp@gnu.org>.
20729
20730 2007-10-06  Bruno Haible  <bruno@clisp.org>
20731
20732         * modules/freopen-tests: New file.
20733         * tests/test-freopen.c: New file.
20734
20735         * modules/fopen-tests: New file.
20736         * tests/test-fopen.c: New file.
20737
20738         * modules/fopen: New file.
20739         * lib/fopen.c: New file.
20740         * m4/fopen.m4: New file.
20741         * modules/freopen: New file.
20742         * lib/freopen.c: New file.
20743         * m4/freopen.m4: New file.
20744         * lib/stdio.in.h (fopen, freopen): New declarations.
20745         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
20746         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
20747         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
20748         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
20749         * doc/functions/fopen.texi: Mention the 'fopen' module.
20750         * doc/functions/freopen.texi: Mention the 'freopen' module.
20751
20752 2007-10-06  Bruno Haible  <bruno@clisp.org>
20753
20754         * modules/open-tests: New file.
20755         * tests/test-open.c: New file.
20756
20757         * modules/open: New file.
20758         * lib/open.c: New file.
20759         * m4/open.m4: New file.
20760         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
20761         lib/open.c does.
20762         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
20763         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
20764         macros.
20765         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
20766         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
20767         REPLACE_OPEN.
20768         * doc/functions/open.texi: Mention the 'open' module.
20769
20770 2007-10-04  Bruno Haible  <bruno@clisp.org>
20771
20772         * modules/ceill-tests: New file.
20773         * tests/test-ceill.c: New file.
20774
20775         * modules/ceill: New file.
20776         * lib/ceill.c: Replace entire file.
20777         * m4/ceill.m4: New file.
20778         * lib/math.in.h (ceill): Replace declaration.
20779         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
20780         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
20781         * doc/functions/ceill.texi: Mention the 'ceill' module.
20782         * modules/mathl (Files): Remove lib/ceill.c.
20783         (Depends-on): Add ceill.
20784
20785 2007-10-04  Bruno Haible  <bruno@clisp.org>
20786
20787         * modules/ceilf-tests: New file.
20788         * tests/test-ceilf.c: New file.
20789
20790         * modules/ceilf: New file.
20791         * lib/ceil.c: New file.
20792         * lib/ceilf.c: New file.
20793         * m4/ceilf.m4: New file.
20794         * lib/math.in.h (ceilf): New declaration.
20795         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
20796         HAVE_DECL_CEILF.
20797         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
20798         HAVE_DECL_CEILF.
20799         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
20800
20801 2007-10-04  Bruno Haible  <bruno@clisp.org>
20802
20803         * modules/floorl-tests: New file.
20804         * tests/test-floorl.c: New file.
20805
20806         * modules/floorl: New file.
20807         * lib/floorl.c: Replace entire file.
20808         * m4/floorl.m4: New file.
20809         * lib/math.in.h (floorl): Replace declaration.
20810         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
20811         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
20812         * doc/functions/floorl.texi: Mention the 'floorl' module.
20813         * modules/mathl (Files): Remove lib/floorl.c.
20814         (Depends-on): Add floorl.
20815
20816 2007-10-04  Bruno Haible  <bruno@clisp.org>
20817
20818         * modules/floorf-tests: New file.
20819         * tests/test-floorf.c: New file.
20820
20821         * modules/floorf: New file.
20822         * lib/floor.c: New file.
20823         * lib/floorf.c: New file.
20824         * m4/floorf.m4: New file.
20825         * lib/math.in.h (floorf): New declaration.
20826         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
20827         HAVE_DECL_FLOORF.
20828         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
20829         HAVE_DECL_FLOORF.
20830         * doc/functions/floorf.texi: Mention the 'floorf' module.
20831
20832 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
20833             Bruno Haible  <bruno@clisp.org>
20834
20835         Advertise for the Git server instead of the CVS server.
20836         * doc/gnulib-intro.texi (Steady Development): Mention the Git
20837         repository instead of the CVS one.
20838         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
20839         about all VCS systems generically.
20840         * doc/gnulib.texi (Introduction): Capitalize `Git'.
20841
20842 2007-10-04  Bruno Haible  <bruno@clisp.org>
20843
20844         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
20845         means.
20846         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
20847
20848 2007-10-04  Bruno Haible  <bruno@clisp.org>
20849
20850         * modules/truncl-tests: New file.
20851         * tests/test-truncl.c: New file.
20852
20853         * modules/truncl: New file.
20854         * lib/truncl.c: New file.
20855         * m4/truncl.m4: New file.
20856         * lib/math.in.h (truncl): New declaration.
20857         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
20858         HAVE_DECL_TRUNCL.
20859         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
20860         HAVE_DECL_TRUNCL.
20861         * doc/functions/truncl.texi: Mention the 'truncl' module.
20862
20863 2007-10-04  Bruno Haible  <bruno@clisp.org>
20864
20865         * modules/truncf-tests: New file.
20866         * tests/test-truncf.c: New file.
20867
20868         * modules/truncf: New file.
20869         * lib/trunc.c: Make paramerizable through USE_* macros.
20870         * lib/truncf.c: New file.
20871         * m4/truncf.m4: New file.
20872         * lib/math.in.h (truncf): New declaration.
20873         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
20874         HAVE_DECL_TRUNCF.
20875         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
20876         HAVE_DECL_TRUNCF.
20877         * doc/functions/truncf.texi: Mention the 'truncf' module.
20878
20879 2007-10-03  Bruno Haible  <bruno@clisp.org>
20880
20881         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
20882         augmentation also for tests modules.
20883         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
20884         * modules/atexit-tests (Makefile.am): Likewise.
20885         * modules/binary-io-tests (Makefile.am): Likewise.
20886         * modules/c-strcase-tests (Makefile.am): Likewise.
20887         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
20888         * modules/canonicalize-tests (Makefile.am): Likewise.
20889         * modules/closein-tests (Makefile.am): Likewise.
20890         * modules/fprintf-posix-tests (Makefile.am): Likewise.
20891         * modules/freadahead-tests (Makefile.am): Likewise.
20892         * modules/fseek-tests (Makefile.am): Likewise.
20893         * modules/fseeko-tests (Makefile.am): Likewise.
20894         * modules/ftell-tests (Makefile.am): Likewise.
20895         * modules/ftello-tests (Makefile.am): Likewise.
20896         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
20897         * modules/isnanl-tests (Makefile.am): Likewise.
20898         * modules/lseek-tests (Makefile.am): Likewise.
20899         * modules/mbscasecmp-tests (Makefile.am): Likewise.
20900         * modules/mbscasestr-tests (Makefile.am): Likewise.
20901         * modules/mbschr-tests (Makefile.am): Likewise.
20902         * modules/mbscspn-tests (Makefile.am): Likewise.
20903         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
20904         * modules/mbspbrk-tests (Makefile.am): Likewise.
20905         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
20906         * modules/mbsrchr-tests (Makefile.am): Likewise.
20907         * modules/mbsspn-tests (Makefile.am): Likewise.
20908         * modules/mbsstr-tests (Makefile.am): Likewise.
20909         * modules/printf-posix-tests (Makefile.am): Likewise.
20910         * modules/snprintf-posix-tests (Makefile.am): Likewise.
20911         * modules/sprintf-posix-tests (Makefile.am): Likewise.
20912         * modules/tsearch-tests (Makefile.am): Likewise.
20913         * modules/uniname/uniname-tests (Makefile.am): Likewise.
20914         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
20915         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
20916         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
20917         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
20918         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
20919         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
20920         * modules/vprintf-posix-tests (Makefile.am): Likewise.
20921         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
20922         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
20923         * modules/xstrtoimax-tests (Makefile.am): Likewise.
20924         * modules/xstrtol-tests (Makefile.am): Likewise.
20925         * modules/xstrtoumax-tests (Makefile.am): Likewise.
20926         * modules/yesno-tests (Makefile.am): Likewise.
20927
20928 2007-10-03  Bruno Haible  <bruno@clisp.org>
20929
20930         * modules/trunc-tests: New file.
20931         * tests/test-trunc.c: New file.
20932
20933         * modules/trunc: New file.
20934         * lib/trunc.c: New file.
20935         * m4/trunc.m4: New file.
20936         * lib/math.in.h (trunc): New declaration.
20937         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
20938         HAVE_DECL_TRUNC.
20939         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
20940         HAVE_DECL_TRUNC.
20941         * doc/functions/trunc.texi: Mention the 'trunc' module.
20942
20943 2007-10-03  Bruno Haible  <bruno@clisp.org>
20944
20945         * tests/test-fpending.c: New file, mostly copied
20946         from coreutils/lib/t-fpending.c.
20947         * modules/fpending-tests: New file.
20948
20949 2007-10-03  Bruno Haible  <bruno@clisp.org>
20950
20951         Port the stdio extensions to QNX (untested).
20952         * lib/fseterr.c (fseterr): Add support for QNX.
20953         * lib/fbufmode.c (fbufmode): Likewise.
20954         * lib/freadable.c (freadable): Likewise.
20955         * lib/fwritable.c (fwritable): Likewise.
20956         * lib/freading.c (freading): Likewise.
20957         * lib/fwriting.c (fwriting): Likewise.
20958         * lib/freadahead.c (freadahed): Likewise.
20959         * lib/fpurge.c (fpurge): Likewise.
20960         * lib/fseeko.c (rpl_fseeko): Likewise.
20961
20962 2007-10-03  Bruno Haible  <bruno@clisp.org>
20963             Jim Meyering  <jim@meyering.net>
20964             Eric Blake  <ebb9@byu.net>
20965
20966         * doc/relocatable.texi: Use @command instead of @program.
20967
20968 2007-10-02  Jim Meyering  <jim@meyering.net>
20969
20970         Perform one more "_.h" -> ".in.h" substitution.
20971         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
20972         instead of unistd_.h here, too.
20973
20974 2007-10-01  Bruno Haible  <bruno@clisp.org>
20975
20976         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
20977         Needed for the alloca-opt module.
20978
20979 2007-09-30  Bruno Haible  <bruno@clisp.org>
20980
20981         * lib/alloca.in.h: Renamed from lib/alloca_.h.
20982         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
20983         alloca_.h.
20984         * lib/argz.in.h: Renamed from lib/argz_.h.
20985         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
20986         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
20987         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
20988         byteswap_.h.
20989         * lib/dirent.in.h: Renamed from lib/dirent_.h.
20990         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
20991         dirent_.h.
20992         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
20993         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
20994         fcntl_.h.
20995         * lib/float.in.h: Renamed from lib/float_.h.
20996         * modules/float (Files, Makefile.am): Use float.in.h instead of
20997         float_.h.
20998         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
20999         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
21000         fnmatch_.h.
21001         * lib/getopt.in.h: Renamed from lib/getopt_.h.
21002         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
21003         getopt_.h.
21004         * lib/glob.in.h: Renamed from lib/glob_.h.
21005         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
21006         * lib/iconv.in.h: Renamed from lib/iconv_.h.
21007         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
21008         iconv_.h.
21009         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
21010         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
21011         inttypes_.h.
21012         * lib/locale.in.h: Renamed from lib/locale_.h.
21013         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
21014         locale_.h.
21015         * lib/math.in.h: Renamed from lib/math_.h.
21016         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
21017         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
21018         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
21019         of netinet_in_.h. Add dependency.
21020         * lib/poll.in.h: Renamed from lib/poll_.h.
21021         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
21022         * lib/search.in.h: Renamed from lib/search_.h.
21023         * modules/search (Files, Makefile.am): Use search.in.h instead of
21024         search_.h.
21025         * lib/signal.in.h: Renamed from lib/signal_.h.
21026         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
21027         _signal.h.
21028         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
21029         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
21030         stdbool_.h.
21031         * lib/stdint.in.h: Renamed from lib/stdint_.h.
21032         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
21033         stdint_.h.
21034         * lib/stdio.in.h: Renamed from lib/stdio_.h.
21035         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
21036         stdio_.h.
21037         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
21038         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
21039         stdlib_.h.
21040         * lib/string.in.h: Renamed from lib/string_.h.
21041         * modules/string (Files, Makefile.am): Use string.in.h instead of
21042         string_.h.
21043         * doc/gnulib-tool.texi (Initial import): Update.
21044         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
21045         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
21046         of sys_select_.h. Add dependency.
21047         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
21048         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
21049         of sys_socket_.h.
21050         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
21051         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
21052         sys_stat_.h.
21053         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
21054         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
21055         sys_time_.h.
21056         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
21057         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
21058         sysexits_.h.
21059         * lib/time.in.h: Renamed from lib/time_.h.
21060         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
21061         * lib/unistd.in.h: Renamed from lib/unistd_.h.
21062         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
21063         unistd_.h.
21064         * lib/wchar.in.h: Renamed from lib/wchar_.h.
21065         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
21066         wchar_.h.
21067         * lib/wctype.in.h: Renamed from lib/wctype_.h.
21068         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
21069         wctype_.h.
21070         * build-aux/bootstrap (slurp): Update.
21071         * lib/.cppi-disable: Update.
21072
21073 2007-09-30  Bruno Haible  <bruno@clisp.org>
21074
21075         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
21076         Needed on BeOS.
21077
21078 2007-09-30  Bruno Haible  <bruno@clisp.org>
21079
21080         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
21081
21082 2007-09-29  Bruno Haible  <bruno@clisp.org>
21083
21084         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
21085
21086 2007-09-29  Bruno Haible  <bruno@clisp.org>
21087
21088         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
21089         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
21090         * build-aux/install-reloc: Compile also areadlink.c.
21091         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
21092
21093 2007-09-29  Bruno Haible  <bruno@clisp.org>
21094
21095         * gnulib-tool (func_emit_initmacro_done): Indentation.
21096
21097 2007-09-29  Bruno Haible  <bruno@clisp.org>
21098
21099         * README: Add CVS checkout update instructions.
21100         Info from Bob Proulx <bob@proulx.com>.
21101
21102 2007-09-28  Eric Blake  <ebb9@byu.net>
21103
21104         Provide move-if-change.
21105         * build-aux/move-if-change: New file, based on best practice
21106         rather than any canonical upstream location.
21107
21108 2007-09-28  Jim Meyering  <jim@meyering.net>
21109
21110         Fix canonicalize loop-detection corner case.
21111         Do not attempt to stat the symlink values stored via seen_triple.
21112         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
21113         on linux-2.6.18, (but not 2.6.22).
21114         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
21115         triple_compare.  The former compares dev,ino,filename, while the latter
21116         would actually stat dirname(filename) when dev and ino were equal.
21117         * lib/hash-triple.c: Install <string.h>.
21118         (STREQ): Define.
21119         (triple_compare_ino_str): New function.
21120         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
21121
21122 2007-09-28  Eric Blake  <ebb9@byu.net>
21123
21124         Enforce that AC_REPLACE_FUNCS files exist.
21125         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
21126         override check for typos.
21127
21128         Fix test-closein on Solaris 10.
21129         * tests/test-closein.c (main): Don't assume stdin can be inherited
21130         closed on all systems.
21131         * tests/test-closein.sh: Likewise.
21132         Reported by Piotr Tarnowski.
21133
21134 2007-09-28  Jim Meyering  <jim@meyering.net>
21135
21136         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
21137
21138 2007-09-27  Jim Meyering  <jim@meyering.net>
21139
21140         canonicalize: Avoid a false-positive cycle failure.
21141         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
21142         Sort.  Remove cycle-check.
21143         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
21144         not cycle-check.h.
21145         (seen_triple): New function.
21146         (canonicalize_filename_mode): Use it instead of cycle-check.
21147         * tests/test-canonicalize.c: Add a test for this bug.
21148         * tests/test-canonicalize.sh: Set up and run the test.
21149
21150         New module, file-set, from coreutils.
21151         * modules/file-set: Define it.
21152         * lib/file-set.c, lib/file-set.h: Implement.
21153
21154         New module, hash-triple, from coreutils.
21155         * modules/hash-triple: Define it.
21156         * lib/hash-triple.c, lib/hash-triple.h: Implement.
21157
21158 2007-09-25  Eric Blake  <ebb9@byu.net>
21159
21160         Fix strerror on Interix.
21161         * lib/string_.h (strerror): Declare replacement.
21162         * doc/functions/strerror.texi (strerror): Document the Interix
21163         shortcoming.
21164         * modules/string (Makefile.am): Support new hooks.
21165         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
21166         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
21167         gl_FUNC_STRERROR_SEPARATE.
21168         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
21169         * lib/strerror.c (rpl_strerror): Provide replacement.
21170         * modules/strerror (Depends-on): Add string.
21171         (configure.ac): Detect use of module.
21172         * tests/test-strerror.c: New file.
21173         * modules/strerror-tests: New test module.
21174         * modules/argp (Depends-on): Add strerror.
21175         * modules/error (Depends-on): Likewise.
21176         Reported by Martin Koeppe.
21177
21178 2007-09-24  Bruno Haible  <bruno@clisp.org>
21179
21180         * README: Update git instructions.
21181
21182 2007-09-24  Eric Blake  <ebb9@byu.net>
21183
21184         Revert fpending breakage from 2007-09-08.
21185         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
21186         __fpending.c.
21187
21188 2007-09-24  Jim Meyering  <jim@meyering.net>
21189
21190         filenamecat.c: Add a test.
21191         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
21192         showing how the function works when DIR is the empty string.
21193
21194 2007-09-21  Simon Josefsson  <simon@josefsson.org>
21195
21196         * tests/test-canonicalize.sh: Turn on executable bit.
21197
21198 2007-09-19  Eric Blake  <ebb9@byu.net>
21199
21200         * README: Update CVS instructions.
21201
21202 2007-09-18  Bruno Haible  <bruno@clisp.org>
21203
21204         * modules/areadlink: New file.
21205         * lib/areadlink.h (areadlink): New declaration.
21206         * lib/areadlink.c: New file, based on lib/xreadlink.c.
21207
21208 2007-09-17  Jim Meyering  <jim@meyering.net>
21209
21210         * lib/savewd.c (ESTALE) [!defined]: Define.
21211         Reported to be required on Interix by Martin Koeppe.
21212
21213 2007-09-17  Bruno Haible  <bruno@clisp.org>
21214
21215         * gnulib-tool (func_version): Use $version.
21216
21217 2007-09-16  Bruno Haible  <bruno@clisp.org>
21218
21219         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
21220         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
21221         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
21222         Reported by Greg Schafer <gschafer@zip.com.au>.
21223
21224 2007-09-15  Bruno Haible  <bruno@clisp.org>
21225
21226         * gnulib-tool (sed): Try a little harder to make bash understand the
21227         alias.
21228         Reported by Bruce Korb <bruce.korb@gmail.com>.
21229
21230 2007-09-13  Eric Blake  <ebb9@byu.net>
21231
21232         * ChangeLog: Remove conflict markers.
21233
21234 2007-09-13  Simon Josefsson  <simon@josefsson.org>
21235
21236         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
21237         Reported by Bruno Haible <bruno@clisp.org>.
21238
21239 2007-09-12  Bruno Haible  <bruno@clisp.org>
21240
21241         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
21242         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
21243         is not defined.
21244
21245 2007-09-12  Eric Blake  <ebb9@byu.net>
21246
21247         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
21248         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
21249         Autoconf definition.
21250         * modules/euidaccess (Depends-on): Add extensions, for
21251         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
21252         * modules/fnmatch (Depends-on): Likewise.
21253         * modules/getaddrinfo (Depends-on): Likewise.
21254         * modules/getdelim (Depends-on): Likewise.
21255         * modules/getline (Depends-on): Likewise.
21256         * modules/getsubopt (Depends-on): Likewise.
21257         * modules/gettext (Depends-on): Likewise.
21258         * modules/group-member (Depends-on): Likewise.
21259         * modules/mbchar (Depends-on): Likewise.
21260         * modules/memmem (Depends-on): Likewise.
21261         * modules/mempcpy (Depends-on): Likewise.
21262         * modules/memrchr (Depends-on): Likewise.
21263         * modules/pagealign_alloc (Depends-on): Likewise.
21264         * modules/readutmp (Depends-on): Likewise.
21265         * modules/stpcpy (Depends-on): Likewise.
21266         * modules/stpncpy (Depends-on): Likewise.
21267         * modules/strchrnul (Depends-on): Likewise.
21268         * modules/strndup (Depends-on): Likewise.
21269         * modules/strsep (Depends-on): Likewise.
21270         * modules/strverscmp (Depends-on): Likewise.
21271         * modules/vasprintf (Depends-on): Likewise.
21272         * modules/wcwidth (Depends-on): Likewise.
21273         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
21274         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
21275         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
21276         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
21277         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
21278         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
21279         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
21280         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
21281         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
21282         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
21283         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
21284         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
21285         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
21286         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
21287         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
21288         * m4/readutmp.m4 (gl_READUTMP): Likewise.
21289         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
21290         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
21291         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
21292         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
21293         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
21294         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
21295         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
21296         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
21297         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
21298         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
21299         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
21300         so that lock.m4 can be used in gettext without extensions module.
21301
21302 2007-09-11  Bruno Haible  <bruno@clisp.org>
21303
21304         * m4/isc-posix.m4: Remove file.
21305         Suggested by Eric Blake.
21306
21307 2007-09-11  Eric Blake  <ebb9@byu.net>
21308
21309         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
21310
21311 2007-09-10  Bruno Haible  <bruno@clisp.org>
21312
21313         * posix-modules: Fix typo in error message.
21314         Reported by Matt <mkraai@beckman.com>.
21315
21316 2007-09-09  Bruno Haible  <bruno@clisp.org>
21317
21318         * doc/functions/getdelim.texi: Update list of platforms lacking the
21319         function.
21320         * doc/functions/getline.texi: Likewise.
21321
21322 2007-09-09  Jim Meyering  <jim@meyering.net>
21323
21324         * lib/hash.c (hash_initialize): Detect calloc failure.
21325         Reported by Bruno Haible.
21326
21327 2007-09-09  Bruno Haible  <bruno@clisp.org>
21328
21329         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
21330         malloc or realloc fails.
21331
21332 2007-09-09  Bruno Haible  <bruno@clisp.org>
21333
21334         * modules/getcwd (Depends-on): Add malloc-posix.
21335         * modules/glob (Depends-on): Likewise.
21336         * modules/putenv (Depends-on): Likewise.
21337         * modules/strdup (Depends-on): Likewise.
21338         * modules/getdelim (Depends-on): Add realloc-posix.
21339         * modules/read-file (Depends-on): Likewise.
21340
21341 2007-09-09  Bruno Haible  <bruno@clisp.org>
21342
21343         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
21344         (gl_FUNC_MALLOC_POSIX): Require it.
21345         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
21346         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
21347         * modules/realloc (Files): Add m4/malloc.m4.
21348         * modules/calloc (Files): Likewise.
21349
21350 2007-09-09  Bruno Haible  <bruno@clisp.org>
21351
21352         * modules/malloc-posix: New file.
21353         * modules/malloc (Depends-on): Add malloc-posix.
21354         * lib/malloc.c: Include errno.h.
21355         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
21356         and a POSIX-compatible malloc into a single function. Set ENOMEM
21357         when returning NULL.
21358         * m4/malloc.m4: New file.
21359         * doc/functions/malloc.texi: Mention the malloc-posix module.
21360         * lib/stdlib_.h (malloc): New declaration.
21361         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
21362         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
21363         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
21364         and HAVE_MALLOC_POSIX.
21365
21366 2007-09-09  Bruno Haible  <bruno@clisp.org>
21367
21368         * modules/realloc-posix: New file.
21369         * modules/realloc (Depends-on): Add realloc-posix.
21370         * lib/realloc.c: Include errno.h.
21371         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
21372         and a POSIX-compatible realloc into a single function. Set ENOMEM
21373         when returning NULL.
21374         * m4/realloc.m4: New file.
21375         * doc/functions/realloc.texi: Mention the realloc-posix module.
21376         * lib/stdlib_.h (realloc): New declaration.
21377         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
21378         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
21379         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
21380         and HAVE_REALLOC_POSIX.
21381
21382 2007-09-09  Bruno Haible  <bruno@clisp.org>
21383
21384         * modules/calloc-posix: New file.
21385         * modules/calloc (Depends-on): Add calloc-posix.
21386         * lib/calloc.c: Include errno.h.
21387         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
21388         and a POSIX-compatible calloc into a single function. Set ENOMEM
21389         when returning NULL.
21390         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
21391         * doc/functions/calloc.texi: Mention the calloc-posix module.
21392         * lib/stdlib_.h (calloc): New declaration.
21393         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
21394         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
21395         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
21396         and HAVE_CALLOC_POSIX.
21397
21398 2007-09-09  Bruno Haible  <bruno@clisp.org>
21399
21400         Allow for modules to show an arbitrary notice.
21401         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
21402         * gnulib-tool: New option --extract-notice.
21403         (func_usage): Document it.
21404         (sed_extract_prog): Update.
21405         (func_get_notice): New function.
21406         (func_modules_notice): New function.
21407         (func_import, func_create_testdir): Invoke it.
21408         Suggested by Jim Meyering.
21409
21410 2007-09-09  Bruno Haible  <bruno@clisp.org>
21411
21412         * gnulib-tool: New options --verbose, --quiet.
21413         (func_usage): Document them.
21414         (verbose): New variable.
21415         (func_execute_command): New function.
21416         (func_import): Don't show the module list and the file list if
21417         $verbose < 0.
21418         (func_create_testdir): Likewise. Use func_execute_command.
21419         (func_create_megatestdir): Use func_execute_command.
21420
21421 2007-09-08  Bruno Haible  <bruno@clisp.org>
21422
21423         * gnulib-tool (func_import): Prefer rsync over wget when available,
21424         for fetching the PO files.
21425
21426 2007-09-08  Bruno Haible  <bruno@clisp.org>
21427
21428         * posix-modules: New file. Portions copied from gnulib-tool.
21429         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
21430
21431 2007-09-08  Jim Meyering  <jim@meyering.net>
21432
21433         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
21434         * lib/fpending.h: Rename from __fpending.h.
21435         * lib/fpending.c: Rename from __fpending.c.
21436         Include "fpending.h", not "__fpending.h".
21437         * lib/__fpending.h, lib/__fpending.c: Remove files.
21438         * modules/fpending (Files): Reflect new file names.
21439         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
21440
21441 2007-09-08  Bruno Haible  <bruno@clisp.org>
21442
21443         * m4/inttypes-h.m4: Remove stub file.
21444
21445 2007-09-07  Simon Josefsson  <simon@josefsson.org>
21446
21447         * doc/headers/stdint.texi: Discuss #include_next issue.
21448
21449 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
21450
21451         * build-aux/bootstrap: Remove obsolete comment about wget --help.
21452
21453 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21454
21455         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
21456         in variable name.
21457
21458 2007-09-03  Jim Meyering  <jim@meyering.net>
21459
21460         New module: git-version-gen.
21461         * modules/git-version-gen: New file.
21462
21463         Import changes from coreutils for bootstrap script.
21464
21465         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
21466
21467         bootstrap: uses rsync to download the .po files
21468         * build-aux/bootstrap (po_download_command_format): New global.
21469         (download_po_files): Use rsync.
21470         (update_po_files): Don't remove .po files after download,
21471         so future rsync runs can take advantage of the copies.
21472
21473         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
21474
21475         Solve the unnecessary-.po-file-regeneration problem once and for all.
21476         * build-aux/bootstrap (download_po_files): New function, renamed from
21477         get_translations.  Now, downloads, but doesn't update LINGUAS.
21478         (update_po_files): New function.
21479
21480         bootstrap: Ignore more.
21481         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
21482         uniwidth to e.g., lib/.gitignore.
21483         (slurp): Handle the sys_stat_.h -> sys mapping, too.
21484
21485         * build-aux/bootstrap: New setting: vc_ignore.
21486         (insert_sorted_if_absent): Create $file if absent.
21487         Adapt to new, possibly empty, list: $vc_ignore.
21488
21489         bootstrap: generate more ignorable names
21490         * build-aux/bootstrap (slurp): When generating ignorable names,
21491         also map .sin to .sed, .gperf to .c, and .y to .c.
21492
21493 2007-09-03  Jim Meyering  <jim@meyering.net>
21494
21495         * build-aux/git-version-gen: New file, from coreutils.  For details, see
21496         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
21497
21498 2007-09-02  Bruno Haible  <bruno@clisp.org>
21499
21500         Fix mis-recognition of 'mcs' on QNX 6.
21501         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
21502         output contains the string "Mono".
21503         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
21504         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
21505
21506 2007-09-01  Bruno Haible  <bruno@clisp.org>
21507
21508         Fix collision between uniwidth/* and linebreak modules.
21509         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
21510         u32_width): Remove declarations.
21511         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
21512         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
21513         streq3, streq2, streq1, streq0): Remove functions.
21514         (STREQ): Remove macro.
21515         (is_cjk_encoding): Remove function.
21516         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
21517         (uc_width, u8_width, u16_width, u32_width): Remove functions.
21518         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
21519         * NEWS: Document the change.
21520
21521 2007-09-01  Bruno Haible  <bruno@clisp.org>
21522
21523         * lib/streq.h: Add double-inclusion guard.
21524
21525 2007-09-01  Karl Berry  <karl@gnu.org>
21526
21527         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
21528
21529 2007-08-28  Jim Meyering  <jim@meyering.net>
21530
21531         Rename mreadlink_with_size to areadlink_with_size.
21532         * NEWS: Document the change.
21533         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
21534         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
21535         * lib/mreadlink.h: Rename this to...
21536         * lib/areadlink.h: ...this.
21537         * modules/mreadlink-with-size: Rename this to...
21538         * modules/areadlink-with-size: ...this.
21539         * lib/canonicalize.c: Reflect the renaming.
21540         * modules/canonicalize: Likewise.
21541
21542 2007-08-26  Bruno Haible  <bruno@clisp.org>
21543
21544         * gnulib-tool (func_import): When deciding which files to remove,
21545         consider also dangling symbolic links.
21546         Reported by Eric Blake.
21547
21548 2007-08-26  Bruno Haible  <bruno@clisp.org>
21549
21550         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
21551
21552 2007-08-23  Simon Josefsson  <simon@josefsson.org>
21553
21554         * lib/readline.c: Don't include getline.h, the prototype is now
21555         found in stdio.h.
21556
21557 2007-08-23  Jim Meyering  <jim@meyering.net>
21558
21559         Getdelim touchup.
21560         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
21561         around the funlockfile call, since funlockfile never sets errno.
21562         Don't set errno upon failed realloc.
21563
21564 2007-08-22  Eric Blake  <ebb9@byu.net>
21565
21566         Getline touchups.
21567         * lib/getdelim.c (getdelim): Revert regression that required *n to
21568         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
21569         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
21570         getdelim, rather than whether implementation is missing.
21571         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
21572         * lib/stdio_.h (getline): Also declare if replacement is
21573         required.
21574         * doc/functions/getdelim.texi: New file.
21575         * doc/functions/getline.texi: Likewise.
21576         * doc/gnulib.texi (Function Substitutes): Add new files.
21577         Reported by Bruno Haible.
21578
21579 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
21580
21581         * users.txt: Add Guile.
21582
21583 2007-08-22  Eric Blake  <ebb9@byu.net>
21584
21585         * tests/test-getdelim.c (main): Use remove, not unlink.
21586         * tests/test-getline.c (main): Likewise.
21587
21588         Move getline and getdelim into stdio.h, per POSIX 200x.
21589         * modules/getline (Files): Remove getline.h.
21590         (Depends-on): Add stdio.
21591         (configure.ac): Add module indicator.
21592         * modules/getdelim (Files): Remove getdelim.h.
21593         (Depends-on): Add stdio.
21594         (configure.ac): Add module indicator.
21595         * modules/stdio (Makefile.am): Work with new indicators.
21596         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
21597         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
21598         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
21599         * lib/getdelim.h: Delete.
21600         * lib/getline.h: Delete.
21601         * lib/stdio_.h (getdelim, getline): Declare.
21602         * modules/getdelim-tests: New module.
21603         * modules/getline-tests: Likewise.
21604         * tests/test-getdelim.c: New file.
21605         * tests/test-getline.c: Likewise.
21606         * NEWS: Document the change.
21607         * lib/getline.c: Update choice of header.
21608         * lib/csharpcomp.c: Likewise.
21609         * lib/getpass.c: Likewise.
21610         * lib/javacomp.c: Likewise.
21611         * lib/javaversion.c: Likewise.
21612         * lib/yesno.c: Likewise.
21613         * lib/getdelim.c: Likewise.
21614         (getdelim): Set errno on failure, and avoid memory leak.
21615
21616 2007-08-19  Bruno Haible  <bruno@clisp.org>
21617
21618         * modules/closein (Depends-on): Add freadahead.
21619         * lib/closein.c: Include freadahead.h.
21620         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
21621         is zero.
21622
21623 2007-08-19  Bruno Haible  <bruno@clisp.org>
21624
21625         * modules/freadahead-tests: New file.
21626         * tests/test-freadahead.sh: New file.
21627         * tests/test-freadahead.c: New file.
21628
21629         * modules/freadahead: New file.
21630         * lib/freadahead.h: New file.
21631         * lib/freadahead.c: New file.
21632         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
21633         fbufmode, fpurge, freadable, fwritable.
21634
21635 2007-08-19  Eric Blake  <ebb9@byu.net>
21636
21637         Test yesno in combination with closein.
21638         * lib/yesno.c (yesno): Document use of stdin.
21639         * modules/yesno-tests (Files): New module.
21640         * tests/test-yesno.c (main): New file.
21641         * tests/test-yesno.sh: Likewise.
21642
21643 2007-08-19  Bruno Haible  <bruno@clisp.org>
21644
21645         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
21646         * lib/fseeko.c (rpl_fseeko): Likewise.
21647         * lib/fseterr.c (fseterr): Likewise.
21648
21649 2007-08-19  Bruno Haible  <bruno@clisp.org>
21650
21651         * tests/test-lseek.c (main): Disable a test for BeOS.
21652         * doc/functions/lseek.texi: Document the BeOS bug.
21653
21654 2007-08-19  Bruno Haible  <bruno@clisp.org>
21655             Eric Blake  <ebb9@byu.net>
21656
21657         * lib/lseek.c: Include <sys/stat.h>.
21658         (rpl_lseek): Add workaround code also for Unix platforms.
21659         Needed for BeOS.
21660         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
21661         * doc/functions/lseek.texi: Document BeOS definiency.
21662
21663 2007-08-18  Bruno Haible  <bruno@clisp.org>
21664
21665         * modules/fstrcmp-tests: New file.
21666         * tests/test-fstrcmp.c: New file.
21667
21668 2007-08-18  Bruno Haible  <bruno@clisp.org>
21669
21670         * modules/fstrcmp: New file, from GNU gettext with modifications.
21671         * lib/fstrcmp.h: New file, from GNU gettext.
21672         * lib/fstrcmp.c: New file, from GNU gettext.
21673         * MODULES.html.sh (String handling): Add fstrcmp.
21674
21675 2007-08-18  Bruno Haible  <bruno@clisp.org>
21676
21677         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
21678         'bool'.
21679         (diag, compareseq): Remove const from the ctxt argument.
21680         (USE_HEURISTIC): Undefine at the end.
21681
21682 2007-08-18  Jim Meyering  <jim@meyering.net>
21683
21684         New file: lib/idcache.h
21685         * NEWS: Mention the addition.
21686         * modules/idcache (Files): Add lib/idcache.h
21687         * lib/idcache.c: Include "idcache.h".
21688         Don't include <sys/types.h>.
21689         Add a FIXME comment.
21690         Move file-scoped "static" declarations to the top.
21691         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
21692
21693 2007-08-17  Bruno Haible  <bruno@clisp.org>
21694         and Paul Eggert  <eggert@cs.ucla.edu>
21695
21696         * MODULES.html.sh: Add diffseq.
21697         * modules/diffseq: New file.
21698         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
21699         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
21700
21701 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21702
21703         Import changes from coreutils for bootstrap script.
21704
21705         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
21706
21707         * build-aux/bootstrap (slurp): Work even in environments where
21708         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
21709         current code does not slurp files whose names start with ".", and
21710         this looks like it might be a troublesome area.
21711
21712         2007-07-11  Jim Meyering  <jim@meyering.net>
21713
21714         If there's a GPL vN copyright comment, require that N == 3.
21715
21716         2007-07-08  Jim Meyering  <jim@meyering.net>
21717
21718         Run the coreutils-specific code only if tests/Makefile.am.in exists.
21719         * build-aux/bootstrap (mam_template): Move definition out of loop.
21720
21721         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
21722
21723         * build-aux/bootstrap (symlink_to_dir): Rename function from
21724         symlink_to_gnulib.  Add a directory parameter.  Update all
21725         callers.
21726         (cp_mark_as_generated): Also check for -- and link to -- files in
21727         gl/.
21728
21729         2007-07-08  Jim Meyering  <jim@meyering.net>
21730
21731         Adapt to deeper hierarchy in gnulib.
21732         * build-aux/bootstrap (symlink_to_dir): If the destination
21733         directory doesn't exist, create it. This is required at least for
21734         "lib/uniwidth/cjk.h".
21735
21736         2007-05-15  Jim Meyering  <jim@meyering.net>
21737
21738         * build-aux/bootstrap: Now that generated Makefile.am files
21739         are no longer under version control, they must be created at
21740         bootstrap time.
21741
21742 2007-08-14  Ben Pfaff  <blp@gnu.org>
21743
21744         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
21745
21746 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
21747
21748         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
21749         given the changes below.
21750         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
21751         even on hosts that have padding bits beyond the supported 64.
21752
21753 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
21754
21755         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
21756         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
21757         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
21758         depends on it.
21759         (xstrtol_error): Remove.
21760         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
21761         but with a different signature.
21762         (ATTRIBUTE_NORETURN, __attribute__): New macros.
21763         * lib/xstrtol-error.c: Include exitfail.h.
21764         (xstrtol_fatal): New function, with a different signature from the
21765         old xstrtol_error, so that the caller need not worry about passing
21766         in an exit status, or about storage management of the option argument.
21767         (xstrtol_error): Now a static function.  Redo signature to
21768         implement xstrtol_fatal.  Output the correct number of hyphens in
21769         front of the option so that the caller need not worry about
21770         storage management.
21771         (N_): New macro.
21772         (_): Remove; not used now.
21773         * modules/xstrtol: Depend on getopt.
21774         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
21775         of old STRTOL_FATAL_ERROR macro.
21776         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
21777         of test program.
21778         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
21779         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
21780
21781 2007-08-08  Eric Blake  <ebb9@byu.net>
21782
21783         * lib/xstrtol-error.c: Add missing include.
21784
21785         Move xstrtol messages into gnulib domain, when --pobase is used.
21786         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
21787         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
21788         * modules/xstrtol (Files): Distribute new file.
21789         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
21790         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
21791         * tests/test-xstrtol.c: ...into new file.
21792         * tests/test-xstrtoul.c: Also test xstrtoul.
21793         * tests/test-xstrtoimax.c: Also test xstrtoimax.
21794         * tests/test-xstrtoumax.c: Also test xstrtoumax.
21795         * tests/test-xstrtol.sh: Drive the tests.
21796         * tests/test-xstrtoimax.sh: Likewise.
21797         * tests/test-xstrtoumax.sh: Likewise.
21798         * modules/xstrtol-tests: New module.
21799         * modules/xstrtoimax-tests: Likewise.
21800         * modules/xstrtoumax-tests: Likewise.
21801
21802 2007-08-08  Jim Meyering  <jim@meyering.net>
21803
21804         New function: mfile_name_concat.
21805         * lib/filenamecat.c (mfile_name_concat): New function, just like
21806         file_name_concat, but return NULL upon failure rather than exiting
21807         with a diagnostic.
21808         * lib/filenamecat.h: Declare it.
21809
21810 2007-08-07  Bruno Haible  <bruno@clisp.org>
21811
21812         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
21813         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
21814         warning from gcc.
21815         Reported by Eric Blake.
21816
21817 2007-08-07  Simon Josefsson  <simon@josefsson.org>
21818
21819         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
21820         * modules/crypto/arcfour (License): Likewise.
21821         * modules/crypto/des-tests (License): Likewise.
21822         * modules/crypto/gc-arctwo-tests (License): Likewise.
21823         * modules/crypto/gc-des-tests (License): Likewise.
21824         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
21825         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
21826         * modules/crypto/gc-md2-tests (License): Likewise.
21827         * modules/crypto/gc-md4-tests (License): Likewise.
21828         * modules/crypto/gc-md5-tests (License): Likewise.
21829         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
21830         * modules/crypto/gc-rijndael-tests (License): Likewise.
21831         * modules/crypto/gc-sha1-tests (License): Likewise.
21832         * modules/crypto/gc-tests (License): Likewise.
21833         * modules/crypto/hmac-md5 (License): Likewise.
21834         * modules/crypto/hmac-sha1 (License): Likewise.
21835         * modules/crypto/md2-tests (License): Likewise.
21836         * modules/crypto/md4-tests (License): Likewise.
21837         * modules/crypto/md5 (License): Likewise.
21838         * modules/crypto/rijndael (License): Likewise.
21839         * modules/crypto/sha1 (License): Likewise.
21840         * modules/memxor (License): Likewise.
21841
21842 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
21843         and Bruno Haible  <bruno@clisp.org>
21844
21845         * NEWS: Describe interface changes to human, xstrtol.
21846         * lib/human.h: Include <xstrtol.h>.
21847         (human_options): Return enum strtol_error, not int.  Remove
21848         bool arg; take int * instead.
21849         * lib/human.c: Don't include "gettext.h".
21850         (_): Remove; no longer used.
21851         Don't include <xstrtol.h>, since human.h does it.
21852         (human_options): Adjust to abovementioned interface changes.
21853         Do not report error to stderr; that's now the caller's
21854         responsibility.
21855         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
21856         interface change.
21857         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
21858         Str, Argument_type_string.  All uses changed.  Put " argument"
21859         in diagnostics to make them clearer.  Change wording of suffix
21860         message for clarity.
21861         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
21862         Argument_type_string.
21863         (STRTOL_FATAL_WARN): Remove; no longer used.
21864         * modules/human (Depends-on): Remove gettext-h.
21865
21866 2007-08-06  Simon Josefsson  <simon@josefsson.org>
21867
21868         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
21869
21870 2007-07-31  Bruno Haible  <bruno@clisp.org>
21871
21872         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
21873         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
21874         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
21875
21876 2007-07-31  Bruno Haible  <bruno@clisp.org>
21877
21878         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
21879         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
21880
21881 2007-07-30  Bruno Haible  <bruno@clisp.org>
21882
21883         * modules/base64 (License): Use the synonymous term "LGPLv2+".
21884         * modules/c-ctype (License): Likewise.
21885         * modules/c-strcase (License): Likewise.
21886         * modules/check-version (License): Likewise.
21887         * modules/iconv (License): Likewise.
21888         * modules/iconv_open (License): Likewise.
21889         * modules/read-file (License): Likewise.
21890         * modules/striconv (License): Likewise.
21891         * modules/strverscmp (License): Likewise.
21892         * modules/vasprintf (License): Likewise.
21893         * modules/crypto/des (License): Likewise.
21894         * modules/crypto/gc (License): Likewise.
21895         * modules/crypto/gc-arcfour (License): Likewise.
21896         * modules/crypto/gc-arctwo (License): Likewise.
21897         * modules/crypto/gc-des (License): Likewise.
21898         * modules/crypto/gc-hmac-md5 (License): Likewise.
21899         * modules/crypto/gc-hmac-sha1 (License): Likewise.
21900         * modules/crypto/gc-md2 (License): Likewise.
21901         * modules/crypto/gc-md4 (License): Likewise.
21902         * modules/crypto/gc-md5 (License): Likewise.
21903         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
21904         * modules/crypto/gc-random (License): Likewise.
21905         * modules/crypto/gc-rijndael (License): Likewise.
21906         * modules/crypto/gc-sha1 (License): Likewise.
21907         * modules/crypto/md2 (License): Likewise.
21908         * modules/crypto/md4 (License): Likewise.
21909
21910 2007-07-30  Jim Meyering  <jim@meyering.net>
21911
21912         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
21913         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
21914         it has valid stat data.  This bug would cause du not to count the
21915         sizes of inaccessible directories.
21916         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
21917         in <http://bugzilla.redhat.com/250077>.
21918
21919 2007-07-25  Peter O'Gorman  <peter@pogma.com>
21920             Bruno Haible  <bruno@clisp.org>
21921
21922         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
21923         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
21924         #include_next, gives a diagnostic about it, but reports no error in
21925         the exit code.
21926         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
21927
21928 2007-07-24  Ben Pfaff  <blp@gnu.org>
21929
21930         Improve name: "count-one-bits" is better than "popcount".
21931         * MODULES.html.sh: Update name.
21932         * lib/popcount.h: Renamed lib/count-one-bits.h.
21933         (popcount): Renamed count_one_bits.
21934         (popcountl): Renamed count_one_bits_l.
21935         (popcountll): Renamed count_one_bits_ll.
21936         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
21937         * modules/popcount: Renamed module/count-one-bits.
21938         * modules/popcount-tests: Renamed module/count-one-bits-tests.
21939         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
21940
21941 2007-07-23  Ben Pfaff  <blp@gnu.org>
21942
21943         * lib/popcount.h (popcount32): Reduce size of constants, to allow
21944         better code generation, and add U to large constants to avoid
21945         warnings, in non-GCC case.
21946         Suggested by Bruno Haible.
21947
21948 2007-07-23  Ben Pfaff  <blp@gnu.org>
21949
21950         * lib/popcount.h: Use verify_true instead of if...abort.
21951         * modules/popcount: Depend on verify module.
21952         Suggested by Jim Meyering.
21953
21954 2007-07-23  Bruno Haible  <bruno@clisp.org>
21955
21956         * gnulib-tool (func_import): Create a .cvsignore file also when the
21957         directory is not yet in CVS but the toplevel directory is. When
21958         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
21959         Reported by Karl Berry.
21960
21961 2007-07-22  Ben Pfaff  <blp@gnu.org>
21962
21963         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
21964         case.
21965         Suggested by Eric Blake.
21966
21967 2007-07-22  Ben Pfaff  <blp@gnu.org>
21968
21969         New module: popcount.
21970         * MODULES.html.sh: Add popcount.
21971         * modules/popcount: New file.
21972         * modules/popcount-tests: New file.
21973         * tests/test-popcount.c: New file.
21974         * lib/popcount.h: New file.
21975         * m4/popcount.m4: New file.
21976
21977 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
21978
21979         * build-aux/announce-gen: Update to GPLv3.
21980
21981         * build-aux/config.guess: Update from config.
21982
21983 2007-07-21  Bruno Haible  <bruno@clisp.org>
21984
21985         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
21986         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
21987
21988 2007-07-20  Jim Meyering  <jim@meyering.net>
21989
21990         * check-module: Diagnose a self-dependency.
21991
21992 2007-07-19  Bruno Haible  <bruno@clisp.org>
21993
21994         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
21995         empty.
21996         Reported by Eric Blake.
21997
21998 2007-07-18  Bruno Haible  <bruno@clisp.org>
21999
22000         * gnulib-tool: New options --po-base, --po-domain.
22001         (func_usage): Document them.
22002         (pobase, po_domain): New variables.
22003         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
22004         DEFAULT_TEXT_DOMAIN.
22005         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
22006         (func_import): Consider pobase and po_domain. Create a po/ directory.
22007         (func_create_testdir): Set pobase and po_domain to empty.
22008         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
22009         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
22010
22011 2007-07-18  Bruno Haible  <bruno@clisp.org>
22012
22013         * gnulib-tool (func_get_automake_snippet): Synthesize also an
22014         EXTRA_DIST augmentation for files in build-aux/.
22015
22016 2007-07-16  Bruno Haible  <bruno@clisp.org>
22017
22018         * modules/lseek (License): Use the synonymous term "LGPLv2+".
22019         * modules/getdelim (License): Likewise.
22020
22021 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22022
22023         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
22024         * modules/d-type (License): Likewise.
22025         * modules/extensions (License): Likewise.
22026         * modules/fnmatch (License): Likewise.
22027         * modules/fseeko (License): Likewise.
22028         * modules/getaddrinfo (License): Likewise.
22029         * modules/getline (License): Likewise.
22030         * modules/getlogin_r (License): Likewise.
22031         * modules/getpass (License): Likewise.
22032         * modules/gettimeofday (License): Likewise.
22033         * modules/glob (License): Likewise.
22034         * modules/inet_ntop (License): Likewise.
22035         * modules/malloc (License): Likewise.
22036         * modules/malloca (License): Likewise.
22037         * modules/memmem (License): Likewise.
22038         * modules/mempcpy (License): Likewise.
22039         * modules/memset (License): Likewise.
22040         * modules/minmax (License): Likewise.
22041         * modules/mktime (License): Likewise.
22042         * modules/netinet_in (License): Likewise.
22043         * modules/pathmax (License): Likewise.
22044         * modules/poll (License): Likewise.
22045         * modules/regex (License): Likewise.
22046         * modules/snprintf (License): Likewise.
22047         * modules/stdbool (License): Likewise.
22048         * modules/stdint (License): Likewise.
22049         * modules/stdio (License): Likewise.
22050         * modules/strcase (License): Likewise.
22051         * modules/strcasestr (License): Likewise.
22052         * modules/strdup (License): Likewise.
22053         * modules/string (License): Likewise.
22054         * modules/strndup (License): Likewise.
22055         * modules/strnlen (License): Likewise.
22056         * modules/strpbrk (License): Likewise.
22057         * modules/strptime (License): Likewise.
22058         * modules/strsep (License): Likewise.
22059         * modules/sys_select (License): Likewise.
22060         * modules/sys_socket (License): Likewise.
22061         * modules/sys_stat (License): Likewise.
22062         * modules/sys_time (License): Likewise.
22063         * modules/time (License): Likewise.
22064         * modules/time_r (License): Likewise.
22065         * modules/timegm (License): Likewise.
22066         * modules/unistd (License): Likewise.
22067         * modules/vsnprintf (License): Likewise.
22068         * modules/wctype (License): Likewise.
22069
22070 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22071
22072         * modules/argz (License): LGPLv2+.
22073
22074 2007-07-15  Karl Berry  <karl@gnu.org>
22075
22076         * doc/gnulib.texi: revise node structure per new fdl.texi.
22077
22078 2007-07-14  Bruno Haible  <bruno@clisp.org>
22079
22080         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
22081         the output file.
22082         * lib/uniname/uninames.h: Regenerated.
22083
22084 2007-07-14  Karl Berry  <karl@gnu.org>
22085
22086         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
22087         omitting sectioning and index commands.
22088
22089 2007-07-13  Bruno Haible  <bruno@clisp.org>
22090
22091         New gnulib-tool option --more-symlinks.
22092         * gnulib-tool (func_usage): Document --more-symlinks.
22093         (do_copyrights): New variable.
22094         Recognize option --more-symlinks.
22095         (func_import): Don't add a copyright notice transform to
22096         sed_transform_lib_file if do_copyrights is empty.
22097
22098 2007-07-13  Bruno Haible  <bruno@clisp.org>
22099
22100         * lib/vasnprintf.c (decimal_point_char): Define also if
22101         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
22102         && !NEED_PRINTF_DIRECTIVE_A.
22103         Reported by Clemens Koller <clemens.koller@anagramm.de> via
22104         Gary V. Vaughan <gary@gnu.org>.
22105
22106 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
22107
22108         * lib/inttypes_.h: Undo previous change, since it was fixed
22109         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
22110
22111 2007-07-13  Bruno Haible  <bruno@clisp.org>
22112
22113         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
22114         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
22115
22116 2007-07-13  Jim Meyering  <jim@meyering.net>
22117
22118         df: Don't fail for Tru64's "file-on-file mount".
22119         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
22120         so we fall through and use statfs instead.  Details here:
22121         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
22122         Reported by Albert Chin.
22123
22124 2007-07-13  Bruno Haible  <bruno@clisp.org>
22125
22126         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
22127         * modules/configmake (License): Likewise.
22128         * modules/gettext (License): Likewise.
22129         * modules/gettext-h (License): Likewise.
22130         * modules/include_next (License): Likewise.
22131         * modules/link-warning (License): Likewise.
22132         * modules/localcharset (License): Likewise.
22133         * modules/localename (License): Likewise.
22134         * modules/lock (License): Likewise.
22135         * modules/relocatable-lib-lgpl (License): Likewise.
22136         * modules/size_max (License): Likewise.
22137         * modules/vasnprintf (License): Likewise.
22138         * modules/wchar (License): Likewise.
22139         * modules/xsize (License): Likewise.
22140
22141 2007-07-13  Bruno Haible  <bruno@clisp.org>
22142
22143         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
22144         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
22145
22146 2007-07-12  Bruno Haible  <bruno@clisp.org>
22147
22148         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
22149         in the modules files.
22150
22151 2007-07-11  Karl Berry  <karl@gnu.org>
22152
22153         * MODULES.html.sh (func_module): use
22154          sed -e '\|^'"${includefile}"'$|d'
22155          instead of /.../d, to avoid errors on $includefile's containing /.
22156
22157 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
22158
22159         * gnulib-tool (func_import): Avoid duplication of --avoid
22160         statements
22161         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
22162         names to `_' in variable names.
22163
22164 2007-07-10  Eric Blake  <ebb9@byu.net>
22165
22166         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
22167         * NEWS: Document this change.
22168
22169 2007-07-08  Bruno Haible  <bruno@clisp.org>
22170
22171         Update to Unicode 5.0.
22172         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
22173         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
22174         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
22175         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
22176         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
22177         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
22178         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
22179         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
22180         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
22181         U+10A3F, U+1D242..U+1D244.
22182         (nonspacing_table_ind): Update.
22183         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
22184         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
22185
22186 2007-07-08  Bruno Haible  <bruno@clisp.org>
22187
22188         Update to Unicode 5.0.
22189         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
22190         code transform. Extend the name index field of unicode_name_to_code and
22191         unicode_code_to_name from 16 to 24 bits.
22192         * lib/uniname/uniname.c (unicode_character_name,
22193         unicode_name_character): Add the range 0x12xxx to the code transform.
22194         * lib/uniname/uninames.h: Regenerated.
22195         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
22196
22197 2007-07-07  Bruno Haible  <bruno@clisp.org>
22198
22199         * modules/wcwidth-tests: New file.
22200         * tests/test-wcwidth.c: New file.
22201
22202         Work around MacOS X wcwidth() bug.
22203         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
22204         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
22205         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
22206         original wcwidth in non-UTF-8 locales.
22207         * modules/wcwidth (Depends-on): Add localcharset, streq,
22208         uniwidth/width.
22209         * doc/functions/wcwidth.texi: Update.
22210
22211 2007-07-07  Bruno Haible  <bruno@clisp.org>
22212
22213         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
22214         (wcwidth): New declaration.
22215         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
22216         macros.
22217         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
22218         here. Prepare for creating <wchar.h> unconditionally.
22219         * modules/wchar (Depends-on): Add link-warning.
22220         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
22221         REPLACE_WCWIDTH, and GL_LINK_WARNING.
22222         * lib/wcwidth.h: Remove file.
22223         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
22224         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
22225         * modules/wcwidth (Files): Remove lib/wcwidth.h.
22226         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
22227         (Include): Replace wcwidth.h with <wchar.h>.
22228         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
22229         * lib/mbchar.h: Don't include wcwidth.h.
22230         * lib/mbswidth.c: Likewise.
22231         * NEWS: Mention the change.
22232
22233 2007-07-07  Bruno Haible  <bruno@clisp.org>
22234
22235         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
22236         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
22237         definition with an external declaration.
22238         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
22239         defined as a function. Remove AC_C_INLINE requirement.
22240         * modules/wcwidth (Files): Add lib/wcwidth.c.
22241         (Makefile.am): Remove redundant statement.
22242
22243 2007-07-07  Bruno Haible  <bruno@clisp.org>
22244
22245         * MODULES.html.sh (Unicode string functions): Add the new modules.
22246
22247         * tests/uniwidth/test-u32-strwidth.c: New file.
22248         * modules/uniwidth/u32-strwidth-tests: New file.
22249
22250         * lib/uniwidth/u32-strwidth.c: New file.
22251         * modules/uniwidth/u32-strwidth: New file.
22252
22253         * tests/uniwidth/test-u16-strwidth.c: New file.
22254         * modules/uniwidth/u16-strwidth-tests: New file.
22255
22256         * lib/uniwidth/u16-strwidth.c: New file.
22257         * modules/uniwidth/u16-strwidth: New file.
22258
22259         * tests/uniwidth/test-u8-strwidth.c: New file.
22260         * modules/uniwidth/u8-strwidth-tests: New file.
22261
22262         * lib/uniwidth/u8-strwidth.c: New file.
22263         * modules/uniwidth/u8-strwidth: New file.
22264
22265         * tests/uniwidth/test-u32-width.c: New file.
22266         * modules/uniwidth/u32-width-tests: New file.
22267
22268         * lib/uniwidth/u32-width.c: New file.
22269         * modules/uniwidth/u32-width: New file.
22270
22271         * tests/uniwidth/test-u16-width.c: New file.
22272         * modules/uniwidth/u16-width-tests: New file.
22273
22274         * lib/uniwidth/u16-width.c: New file.
22275         * modules/uniwidth/u16-width: New file.
22276
22277         * tests/uniwidth/test-u8-width.c: New file.
22278         * modules/uniwidth/u8-width-tests: New file.
22279
22280         * lib/uniwidth/u8-width.c: New file.
22281         * modules/uniwidth/u8-width: New file.
22282
22283         * tests/uniwidth/test-uc_width.c: New file.
22284         * modules/uniwidth/width-tests: New file.
22285
22286         * lib/uniwidth/width.c: New file, from GNU libiconv.
22287         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
22288         * modules/uniwidth/width: New file.
22289
22290         * lib/uniwidth.h: New file, from GNU libiconv.
22291         * modules/uniwidth/base: New file.
22292
22293 2007-07-07  Bruno Haible  <bruno@clisp.org>
22294
22295         * lib/uniname.h: New file, from GNU gettext.
22296         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
22297         * lib/uniname/uninames.h: New file, from GNU gettext.
22298         * lib/uniname/uniname.c: New file, from GNU gettext.
22299         * tests/uniname/test-uninames.sh: New file.
22300         * tests/uniname/test-uninames.c: New file, from GNU gettext.
22301         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
22302         * modules/uniname/base: New file.
22303         * modules/uniname/uniname: New file.
22304         * modules/uniname/uniname-tests: New file.
22305         * MODULES.html.sh (Unicode string functions): Add the new modules.
22306
22307 2007-07-06  Bruno Haible  <bruno@clisp.org>
22308
22309         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
22310
22311 2007-07-06  Bruno Haible  <bruno@clisp.org>
22312
22313         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
22314         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
22315         includes <cygwin/sys_time.h> which includes <sys/select.h> which
22316         include <sys/time.h>.
22317         Reported by Eric Blake.
22318
22319 2007-07-06  Eric Blake  <ebb9@byu.net>
22320
22321         Fix testing canonicalize on cygwin.
22322         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
22323         Revert patch from 2007-06-19.
22324         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
22325         canonicalize module is also in use.
22326         * tests/test-canonicalize.c: New file.
22327         * tests/test-canonicalize.sh: Likewise.
22328         * modules/canonicalize-tests: Likewise.
22329
22330 2007-07-06  Jim Meyering  <jim@meyering.net>
22331
22332         * lib/getugroups.c (getugroups): Detect getgrent failure.
22333         Adjust comment to reflect reality: this function may return -1.
22334
22335 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
22336
22337         * build-aux/bootstrap (TP_URL,get_translations): Update to use
22338         the new TP address.
22339         (usage): Fix typo
22340         (gnulib_mk): New variable.
22341
22342 2007-07-05  Jim Meyering  <jim@meyering.net>
22343
22344         Don't let endgrent clobber errno, no matter how improbable.
22345         * lib/getugroups.c (getugroups): Save and restore errno around
22346         endgrent call.
22347
22348         Close the group DB even when failing with 2^31 or more members.
22349         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
22350
22351 2007-07-04  Jim Meyering  <jim@meyering.net>
22352
22353         * lib/getugroups.h: New file.
22354         * lib/getugroups.c: Include "getugroups.h".
22355         Remove uses of "register" keyword.
22356         Move local variable, "cp", down into scope where used.
22357         Give "username" parameter the "const" attribute.
22358         * modules/getugroups (Files): Add lib/getugroups.h
22359
22360 2007-07-04  Karl Berry  <karl@gnu.org>
22361
22362         * MODULES.html.sh (func_all_modules): Complete rename of
22363         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
22364
22365 2007-07-02  Bruno Haible  <bruno@clisp.org>
22366
22367         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
22368         mode, when inttypes.h comes from gnulib.
22369         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
22370
22371 2007-07-02  Simon Josefsson  <simon@josefsson.org>
22372
22373         * NEWS: Mention lgpl module name change.
22374
22375         * modules/lgpl-2.1: Renamed from lgpl.
22376
22377         * NEWS: Mention gpl module name change.
22378
22379         * modules/gpl-3.0: New file, based on gpl-2.0.
22380
22381         * modules/gpl-2.0: Renamed from gpl.
22382
22383         * modules/gpl: Fix filename, doc/gpl.texi is now found at
22384         doc/gpl-2.0.texi.
22385
22386 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
22387
22388         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
22389         #define __STDC_LIMIT_MACROS temporarily while including
22390         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
22391         Problem reported by Joel E. Denny in
22392         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
22393
22394 2007-07-01  Bruno Haible  <bruno@clisp.org>
22395
22396         * lib/unistdio.h: New file.
22397         * lib/unistdio/u-asnprintf.h: New file.
22398         * lib/unistdio/u-asprintf.h: New file.
22399         * lib/unistdio/u-printf-args.c: New file.
22400         * lib/unistdio/u-printf-args.h: New file.
22401         * lib/unistdio/u-printf-parse.h: New file.
22402         * lib/unistdio/u-snprintf.h: New file.
22403         * lib/unistdio/u-sprintf.h: New file.
22404         * lib/unistdio/u-vasprintf.h: New file.
22405         * lib/unistdio/u-vsnprintf.h: New file.
22406         * lib/unistdio/u-vsprintf.h: New file.
22407         * lib/unistdio/ulc-asnprintf.c: New file.
22408         * lib/unistdio/ulc-asprintf.c: New file.
22409         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
22410         * lib/unistdio/ulc-printf-parse.c: New file.
22411         * lib/unistdio/ulc-snprintf.c: New file.
22412         * lib/unistdio/ulc-sprintf.c: New file.
22413         * lib/unistdio/ulc-vasnprintf.c: New file.
22414         * lib/unistdio/ulc-vasprintf.c: New file.
22415         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
22416         * lib/unistdio/ulc-vsnprintf.c: New file.
22417         * lib/unistdio/ulc-vsprintf.c: New file.
22418         * lib/unistdio/u8-asnprintf.c: New file.
22419         * lib/unistdio/u8-asprintf.c: New file.
22420         * lib/unistdio/u8-printf-parse.c: New file.
22421         * lib/unistdio/u8-snprintf.c: New file.
22422         * lib/unistdio/u8-sprintf.c: New file.
22423         * lib/unistdio/u8-vasnprintf.c: New file.
22424         * lib/unistdio/u8-vasprintf.c: New file.
22425         * lib/unistdio/u8-vsnprintf.c: New file.
22426         * lib/unistdio/u8-vsprintf.c: New file.
22427         * lib/unistdio/u8-u8-asnprintf.c: New file.
22428         * lib/unistdio/u8-u8-asprintf.c: New file.
22429         * lib/unistdio/u8-u8-snprintf.c: New file.
22430         * lib/unistdio/u8-u8-sprintf.c: New file.
22431         * lib/unistdio/u8-u8-vasnprintf.c: New file.
22432         * lib/unistdio/u8-u8-vasprintf.c: New file.
22433         * lib/unistdio/u8-u8-vsnprintf.c: New file.
22434         * lib/unistdio/u8-u8-vsprintf.c: New file.
22435         * lib/unistdio/u16-asnprintf.c: New file.
22436         * lib/unistdio/u16-asprintf.c: New file.
22437         * lib/unistdio/u16-printf-parse.c: New file.
22438         * lib/unistdio/u16-snprintf.c: New file.
22439         * lib/unistdio/u16-sprintf.c: New file.
22440         * lib/unistdio/u16-vasnprintf.c: New file.
22441         * lib/unistdio/u16-vasprintf.c: New file.
22442         * lib/unistdio/u16-vsnprintf.c: New file.
22443         * lib/unistdio/u16-vsprintf.c: New file.
22444         * lib/unistdio/u16-u16-asnprintf.c: New file.
22445         * lib/unistdio/u16-u16-asprintf.c: New file.
22446         * lib/unistdio/u16-u16-snprintf.c: New file.
22447         * lib/unistdio/u16-u16-sprintf.c: New file.
22448         * lib/unistdio/u16-u16-vasnprintf.c: New file.
22449         * lib/unistdio/u16-u16-vasprintf.c: New file.
22450         * lib/unistdio/u16-u16-vsnprintf.c: New file.
22451         * lib/unistdio/u16-u16-vsprintf.c: New file.
22452         * lib/unistdio/u32-asnprintf.c: New file.
22453         * lib/unistdio/u32-asprintf.c: New file.
22454         * lib/unistdio/u32-printf-parse.c: New file.
22455         * lib/unistdio/u32-snprintf.c: New file.
22456         * lib/unistdio/u32-sprintf.c: New file.
22457         * lib/unistdio/u32-vasnprintf.c: New file.
22458         * lib/unistdio/u32-vasprintf.c: New file.
22459         * lib/unistdio/u32-vsnprintf.c: New file.
22460         * lib/unistdio/u32-vsprintf.c: New file.
22461         * lib/unistdio/u32-u32-asnprintf.c: New file.
22462         * lib/unistdio/u32-u32-asprintf.c: New file.
22463         * lib/unistdio/u32-u32-snprintf.c: New file.
22464         * lib/unistdio/u32-u32-sprintf.c: New file.
22465         * lib/unistdio/u32-u32-vasnprintf.c: New file.
22466         * lib/unistdio/u32-u32-vasprintf.c: New file.
22467         * lib/unistdio/u32-u32-vsnprintf.c: New file.
22468         * lib/unistdio/u32-u32-vsprintf.c: New file.
22469         * tests/unistdio/test-ulc-asnprintf1.c: New file.
22470         * tests/unistdio/test-ulc-asnprintf1.h: New file.
22471         * tests/unistdio/test-ulc-printf1.h: New file.
22472         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
22473         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
22474         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
22475         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
22476         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
22477         * tests/unistdio/test-ulc-vasprintf1.c: New file.
22478         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
22479         * tests/unistdio/test-ulc-vsprintf1.c: New file.
22480         * tests/unistdio/test-u8-asnprintf1.c: New file.
22481         * tests/unistdio/test-u8-asnprintf1.h: New file.
22482         * tests/unistdio/test-u8-printf1.h: New file.
22483         * tests/unistdio/test-u8-vasnprintf1.c: New file.
22484         * tests/unistdio/test-u8-vasnprintf2.c: New file.
22485         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
22486         * tests/unistdio/test-u8-vasnprintf3.c: New file.
22487         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
22488         * tests/unistdio/test-u8-vasprintf1.c: New file.
22489         * tests/unistdio/test-u8-vsnprintf1.c: New file.
22490         * tests/unistdio/test-u8-vsprintf1.c: New file.
22491         * tests/unistdio/test-u16-asnprintf1.c: New file.
22492         * tests/unistdio/test-u16-asnprintf1.h: New file.
22493         * tests/unistdio/test-u16-printf1.h: New file.
22494         * tests/unistdio/test-u16-vasnprintf1.c: New file.
22495         * tests/unistdio/test-u16-vasnprintf2.c: New file.
22496         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
22497         * tests/unistdio/test-u16-vasnprintf3.c: New file.
22498         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
22499         * tests/unistdio/test-u16-vasprintf1.c: New file.
22500         * tests/unistdio/test-u16-vsnprintf1.c: New file.
22501         * tests/unistdio/test-u16-vsprintf1.c: New file.
22502         * tests/unistdio/test-u32-asnprintf1.c: New file.
22503         * tests/unistdio/test-u32-asnprintf1.h: New file.
22504         * tests/unistdio/test-u32-printf1.h: New file.
22505         * tests/unistdio/test-u32-vasnprintf1.c: New file.
22506         * tests/unistdio/test-u32-vasnprintf2.c: New file.
22507         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
22508         * tests/unistdio/test-u32-vasnprintf3.c: New file.
22509         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
22510         * tests/unistdio/test-u32-vasprintf1.c: New file.
22511         * tests/unistdio/test-u32-vsnprintf1.c: New file.
22512         * tests/unistdio/test-u32-vsprintf1.c: New file.
22513         * modules/unistdio/base: New file.
22514         * modules/unistdio/u-printf-args: New file.
22515         * modules/unistdio/ulc-asnprintf: New file.
22516         * modules/unistdio/ulc-asprintf: New file.
22517         * modules/unistdio/ulc-fprintf: New file.
22518         * modules/unistdio/ulc-printf-parse: New file.
22519         * modules/unistdio/ulc-snprintf: New file.
22520         * modules/unistdio/ulc-sprintf: New file.
22521         * modules/unistdio/ulc-vasnprintf: New file.
22522         * modules/unistdio/ulc-vasprintf: New file.
22523         * modules/unistdio/ulc-vfprintf: New file.
22524         * modules/unistdio/ulc-vsnprintf: New file.
22525         * modules/unistdio/ulc-vsprintf: New file.
22526         * modules/unistdio/u8-asnprintf: New file.
22527         * modules/unistdio/u8-asprintf: New file.
22528         * modules/unistdio/u8-printf-parse: New file.
22529         * modules/unistdio/u8-snprintf: New file.
22530         * modules/unistdio/u8-sprintf: New file.
22531         * modules/unistdio/u8-vasnprintf: New file.
22532         * modules/unistdio/u8-vasprintf: New file.
22533         * modules/unistdio/u8-vsnprintf: New file.
22534         * modules/unistdio/u8-vsprintf: New file.
22535         * modules/unistdio/u8-u8-asnprintf: New file.
22536         * modules/unistdio/u8-u8-asprintf: New file.
22537         * modules/unistdio/u8-u8-snprintf: New file.
22538         * modules/unistdio/u8-u8-sprintf: New file.
22539         * modules/unistdio/u8-u8-vasnprintf: New file.
22540         * modules/unistdio/u8-u8-vasprintf: New file.
22541         * modules/unistdio/u8-u8-vsnprintf: New file.
22542         * modules/unistdio/u8-u8-vsprintf: New file.
22543         * modules/unistdio/u16-asnprintf: New file.
22544         * modules/unistdio/u16-asprintf: New file.
22545         * modules/unistdio/u16-printf-parse: New file.
22546         * modules/unistdio/u16-snprintf: New file.
22547         * modules/unistdio/u16-sprintf: New file.
22548         * modules/unistdio/u16-vasnprintf: New file.
22549         * modules/unistdio/u16-vasprintf: New file.
22550         * modules/unistdio/u16-vsnprintf: New file.
22551         * modules/unistdio/u16-vsprintf: New file.
22552         * modules/unistdio/u16-u16-asnprintf: New file.
22553         * modules/unistdio/u16-u16-asprintf: New file.
22554         * modules/unistdio/u16-u16-snprintf: New file.
22555         * modules/unistdio/u16-u16-sprintf: New file.
22556         * modules/unistdio/u16-u16-vasnprintf: New file.
22557         * modules/unistdio/u16-u16-vasprintf: New file.
22558         * modules/unistdio/u16-u16-vsnprintf: New file.
22559         * modules/unistdio/u16-u16-vsprintf: New file.
22560         * modules/unistdio/u32-asnprintf: New file.
22561         * modules/unistdio/u32-asprintf: New file.
22562         * modules/unistdio/u32-printf-parse: New file.
22563         * modules/unistdio/u32-snprintf: New file.
22564         * modules/unistdio/u32-sprintf: New file.
22565         * modules/unistdio/u32-vasnprintf: New file.
22566         * modules/unistdio/u32-vasprintf: New file.
22567         * modules/unistdio/u32-vsnprintf: New file.
22568         * modules/unistdio/u32-vsprintf: New file.
22569         * modules/unistdio/u32-u32-asnprintf: New file.
22570         * modules/unistdio/u32-u32-asprintf: New file.
22571         * modules/unistdio/u32-u32-snprintf: New file.
22572         * modules/unistdio/u32-u32-sprintf: New file.
22573         * modules/unistdio/u32-u32-vasnprintf: New file.
22574         * modules/unistdio/u32-u32-vasprintf: New file.
22575         * modules/unistdio/u32-u32-vsnprintf: New file.
22576         * modules/unistdio/u32-u32-vsprintf: New file.
22577         * modules/unistdio/ulc-asnprintf-tests: New file.
22578         * modules/unistdio/ulc-vasnprintf-tests: New file.
22579         * modules/unistdio/ulc-vasprintf-tests: New file.
22580         * modules/unistdio/ulc-vsnprintf-tests: New file.
22581         * modules/unistdio/ulc-vsprintf-tests: New file.
22582         * modules/unistdio/u8-asnprintf-tests: New file.
22583         * modules/unistdio/u8-vasnprintf-tests: New file.
22584         * modules/unistdio/u8-vasprintf-tests: New file.
22585         * modules/unistdio/u8-vsnprintf-tests: New file.
22586         * modules/unistdio/u8-vsprintf-tests: New file.
22587         * modules/unistdio/u16-asnprintf-tests: New file.
22588         * modules/unistdio/u16-vasnprintf-tests: New file.
22589         * modules/unistdio/u16-vasprintf-tests: New file.
22590         * modules/unistdio/u16-vsnprintf-tests: New file.
22591         * modules/unistdio/u16-vsprintf-tests: New file.
22592         * modules/unistdio/u32-asnprintf-tests: New file.
22593         * modules/unistdio/u32-vasnprintf-tests: New file.
22594         * modules/unistdio/u32-vasprintf-tests: New file.
22595         * modules/unistdio/u32-vsnprintf-tests: New file.
22596         * modules/unistdio/u32-vsprintf-tests: New file.
22597         * MODULES.html.sh (Unicode string functions): Add the new modules.
22598
22599 2007-07-01  Bruno Haible  <bruno@clisp.org>
22600
22601         * lib/sprintf.c (sprintf): Limit the available length estimation,
22602         to avoid address wraparound.
22603         * lib/vsprintf.c (vsprintf): Likewise.
22604         * modules/sprintf-posix (Dependencies): Add stdint.
22605         * modules/vsprintf-posix (Dependencies): Likewise.
22606
22607 2007-07-01  Bruno Haible  <bruno@clisp.org>
22608
22609         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
22610         Windows PATH as well. Conservative double-quoting. Comments.
22611
22612 2007-07-01  Bruno Haible  <bruno@clisp.org>
22613             Eric Blake  <ebb9@byu.net>
22614             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22615
22616         * gnulib-tool (self_abspathname): Fix algorithm to cope with
22617         empty components in $PATH, denoting '.'.
22618
22619 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22620
22621         * gnulib-tool: Fix indentation.
22622         (func_create_megatestdir): Likewise.
22623         Report by Bruno Haible.
22624
22625 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22626
22627         Sync from Automake.
22628         * build-aux/gnupload: Fix shell portability issues with for loops.
22629         Report by Karl Berry.
22630
22631 2007-06-29  Simon Josefsson  <simon@josefsson.org>
22632
22633         * build-aux/maint.mk (POURL): Use translationproject.org.
22634
22635 2007-06-27  Simon Josefsson  <simon@josefsson.org>
22636             Bruno Haible  <bruno@clisp.org>
22637
22638         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
22639         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
22640         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
22641         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
22642         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
22643
22644 2007-06-27  Bruno Haible  <bruno@clisp.org>
22645
22646         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
22647         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
22648
22649 2007-06-26  Karl Berry  <karl@gnu.org>
22650
22651         * MODULES.html.sh: remove xreadlink-with-size.
22652
22653 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
22654
22655         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
22656         method that I hope also handles the double-include problem noted
22657         by Bruno Haible in
22658         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
22659
22660 2007-06-23  Bruno Haible  <bruno@clisp.org>
22661
22662         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
22663         Don't let the 'mostlyclean' target fail if the last subdirectory could
22664         not be removed.
22665         Reported by Karl Berry.
22666
22667 2007-06-23  Bruno Haible  <bruno@clisp.org>
22668
22669         * gnulib-tool (echo): Add a speedier workaround for ksh.
22670         * tests/test-echo.sh: Likewise.
22671
22672 2007-06-23  Bruno Haible  <bruno@clisp.org>
22673
22674         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
22675         * tests/test-echo.sh: Likewise.
22676
22677 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22678
22679         * gnulib-tool (IFS): Initialize early, so we don't set it to
22680         empty later.
22681         (self_abspathname): Rewrite algorithm to set it, reindent.
22682         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
22683         (func_create_megatestdir): Merge some sed scripts.
22684
22685 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
22686
22687         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
22688         exposed by Sun Studio 11 cc on Solaris 8.
22689
22690 2007-06-22  Bruno Haible  <bruno@clisp.org>
22691
22692         * gnulib-tool (echo): Ensure the echo primitive does not interpret
22693         backslashes.
22694         * tests/test-echo.sh: New file.
22695
22696 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22697
22698         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
22699         simplify `sed_replace_build_aux' scripts, they are portable but
22700         echoing them with `echo' is not.
22701         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
22702
22703 2007-06-21  Karl Berry  <karl@gnu.org>
22704
22705         * config/srclist.txt: guess we can't handle the licenses via
22706         srclist at the moment.
22707
22708 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
22709
22710         * MODULES.html.sh: Add include_next.
22711         * modules/include_next: New file.
22712
22713 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
22714
22715         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
22716         INCLUDE_NEXT.
22717         (gl_CHECK_NEXT_HEADERS): New macro.
22718         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
22719         the obsolescent gl_ABSOLUTE_HEADER.
22720         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
22721         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
22722         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
22723         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
22724         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
22725         * m4/math_h.m4 (gl_MATH_H): Likewise.
22726         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
22727         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
22728         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
22729         * m4/stdint.m4 (gl_STDINT_H): Likewise.
22730         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
22731         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
22732         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
22733         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
22734         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
22735         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
22736         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
22737         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
22738         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
22739         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
22740         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
22741         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
22742         * m4/inttypes.m4 (gl_INTTYPES_H): Define
22743         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
22744         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
22745         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
22746         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
22747         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
22748         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
22749         * lib/float_.h: Likewise.
22750         * lib/inttypes_.h: Likewise.
22751         * lib/math_.h: Likewise.
22752         * lib/search_.h: Likewise.
22753         * lib/signal_.h: Likewise.
22754         * lib/stdint_.h: Likewise.
22755         * lib/stdio_.h: Likewise.
22756         * lib/stdlib_.h: Likewise.
22757         * lib/string_.h: Likewise.
22758         * lib/sys_stat_.h: Likewise.
22759         * lib/sys_time_.h: Likewise.
22760         * lib/time_.h: Likewise.
22761         * lib/unistd_.h: Likewise.
22762         * lib/wchar_.h: Likewise.
22763         * lib/wctype_.h: Likewise.
22764         * lib/dirent_.h: Likewise.
22765         * lib/iconv_.h: Likewise.
22766         * lib/locale_.h: Likewise.
22767         * lib/netinet_in_.h: Likewise.
22768         * lib/sys_select_.h: Likewise.
22769         * lib/sys_socket_.h: Likewise.
22770         * lib/sysexits_.h: Likewise.
22771         * modules/fcntl (Depends-on): Depend on include_next, not
22772         absolute_header.
22773         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
22774         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
22775         * modules/fchdir: Likewise.
22776         * modules/float: Likewise.
22777         * modules/iconv_open: Likewise.
22778         * modules/inttypes: Likewise.
22779         * modules/locale: Likewise.
22780         * modules/math: Likewise.
22781         * modules/netinet_in: Likewise.
22782         * modules/search: Likewise.
22783         * modules/signal: Likewise.
22784         * modules/stdint: Likewise.
22785         * modules/stdio: Likewise.
22786         * modules/stdlib: Likewise.
22787         * modules/string: Likewise.
22788         * modules/sys_select: Likewise.
22789         * modules/sys_socket: Likewise.
22790         * modules/sys_stat: Likewise.
22791         * modules/sys_time: Likewise.
22792         * modules/sysexits: Likewise.
22793         * modules/time: Likewise.
22794         * modules/unistd: Likewise.
22795         * modules/wchar: Likewise.
22796         * modules/wctype: Likewise.
22797         * modules/sys_stat: Change maintainer to "all".
22798         * modules/unistd: Likewise.
22799
22800 2007-06-20  Karl Berry  <karl@gnu.org>
22801
22802         * config/srclist.txt: track www changes in license files.
22803
22804 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
22805
22806         * build-aux/bootstrap: Remove stray dot.
22807         Make sure build_aux settings are honored when linking
22808         gnulib_extra_files.
22809
22810 2007-06-19  Eric Blake  <ebb9@byu.net>
22811
22812         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
22813         Allow compilation on cygwin.
22814
22815 2007-06-19  Jim Meyering  <jim@meyering.net>
22816
22817         xreadlink-with-size: Remove module.  No longer used.
22818         Ex-callers now use xreadlink or mreadlink-with-size.
22819         * modules/xreadlink-with-size: Remove module.
22820         * lib/xreadlink-with-size.c: Remove file.
22821         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
22822         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
22823         just before the function definition *is* accurate.
22824
22825         Eliminate one way canonicalize_filename_mode could exit.
22826         * lib/canonicalize.c (canonicalize_filename_mode):
22827         Use mreadlink_with_size, not xreadlink_with_size.
22828
22829 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
22830
22831         Detect porting problems to FreeBSD/arm, which has time_t wider than
22832         long int.  Original problem reported for GNU diff by Xin Li in
22833         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
22834         * modules/getdate (Depends-on): Add intprops, verify.
22835         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
22836         is an integer type no wider than long int.
22837
22838 2007-06-18  Jim Meyering  <jim@meyering.net>
22839
22840         New module: mreadlink-with-size.
22841         * MODULES.html.sh: Add mreadlink-with-size.
22842         * modules/mreadlink-with-size: New module
22843         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
22844         not xreadlink-with-size.
22845         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
22846
22847 2007-06-16  Bruno Haible  <bruno@clisp.org>
22848
22849         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
22850         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
22851         Reported by Gary V. Vaughan <gary@gnu.org>.
22852
22853 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
22854
22855         Revamp lchown so that it lives in unistd.h where it belongs.
22856         * lib/lchown.h: Remove.
22857         * lib/dirchownmod.c: Don't include lib/lchown.h.
22858         * lib/fchownat.c: Likewise.
22859         * lib/openat.c: Likewise.
22860         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
22861         does not follow symlinks.
22862         (EOPNOTSUPP): Define if not defined.
22863         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
22864         is defined to 0.
22865         (lchown): New decl.
22866         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
22867         Do not check for lchown decl.
22868         Set REPLACE_LCHOWN.
22869         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
22870         REPLACE_LCHOWN.
22871         * modules/chown: Make it clear it follows symlinks.
22872         * modules/lchown: Make it clear it doesn't follow symlinks.
22873         (Files): Remove lib/lchown.h
22874         (Depends-on): Add unistd.
22875         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
22876         (Include): Include <unistd.h>, not "lchown.h".
22877         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
22878         REPLACE_LCHOWN.
22879
22880 2007-06-15  Jim Meyering  <jim@meyering.net>
22881
22882         Change license (GPL to LGPL) of fsusage and dependents.
22883         * modules/fsusage (License): Change to LGPL.
22884         * modules/full-read (License): Likewise.
22885         * modules/full-write (License): Likewise.
22886         * modules/safe-read (License): Likewise.
22887         * modules/safe-write (License): Likewise.
22888
22889 2007-06-14  Ben Pfaff  <blp@gnu.org>
22890
22891         Missing part of allocsa -> malloca transition.
22892         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
22893         gl_MALLOCA.
22894
22895 2007-06-12  Bruno Haible  <bruno@clisp.org>
22896
22897         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
22898         to ia64, x86_64, i386.
22899         Reported by Eric Blake.
22900
22901 2007-06-12  Bruno Haible  <bruno@clisp.org>
22902
22903         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
22904         cross-compiling to x86_64.
22905
22906 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
22907
22908         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
22909         glitch reported by Ralf Wildenhues in
22910         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
22911
22912         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
22913         Vin Shelton.
22914
22915 2007-06-11  Bruno Haible  <bruno@clisp.org>
22916
22917         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
22918         replacement string.
22919         Reported by Eric Blake.
22920
22921 2007-06-10  Bruno Haible  <bruno@clisp.org>
22922
22923         Prepare vasnprintf code for use with Unicode strings.
22924         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
22925         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
22926         TYPE_U32_STRING.
22927         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
22928         a_u32_string variants.
22929         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
22930         * lib/printf-args.c: Don't include config.h and the specification
22931         header if PRINTF_FETCHARGS is already defined.
22932         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
22933         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
22934         TYPE_U16_STRING, TYPE_U32_STRING.
22935         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
22936         u16_directive, u16_directives, u32_directive, u32_directives): New
22937         types.
22938         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
22939         New declarations.
22940         * lib/printf-parse.c: Don't include config.h and the specification
22941         header if PRINTF_PARSE is already defined. Eliminate the set of
22942         parameters for WIDE_CHAR_VERSION; the user of this file must provide
22943         them now. Include c-ctype.h.
22944         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
22945         directive and CHAR_T_ONLY_ASCII.
22946         * lib/vasnprintf.c: Don't include config.h and the specification header
22947         if VASNPRINTF is already defined.
22948         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
22949         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
22950         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
22951         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
22952         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
22953         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
22954         code accordingly.
22955         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
22956         pad_ourselves also in this case, with the 'c' and 's' directives, and
22957         with a different notion of "width".
22958         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
22959
22960 2007-06-10  Bruno Haible  <bruno@clisp.org>
22961
22962         * modules/unistr/u32-mbsnlen: New file.
22963         * lib/unistr/u32-mbsnlen.c: New file.
22964
22965         * modules/unistr/u16-mbsnlen: New file.
22966         * lib/unistr/u16-mbsnlen.c: New file.
22967
22968         * modules/unistr/u8-mbsnlen: New file.
22969         * lib/unistr/u8-mbsnlen.c: New file.
22970
22971         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
22972         declarations.
22973
22974 2007-06-10  Bruno Haible  <bruno@clisp.org>
22975
22976         * lib/string_.h (mbsnlen): New declaration.
22977         * lib/mbsnlen.c: New file.
22978         * m4/mbsnlen.m4: New file.
22979         * modules/mbsnlen: New file.
22980         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
22981         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
22982         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
22983
22984 2007-06-10  Bruno Haible  <bruno@clisp.org>
22985
22986         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
22987
22988 2007-06-10  Bruno Haible  <bruno@clisp.org>
22989
22990         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
22991         * lib/mbuiter.h: Likewise.
22992
22993 2007-06-10  Bruno Haible  <bruno@clisp.org>
22994
22995         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
22996         declaration.
22997
22998 2007-06-10  Karl Berry  <karl@gnu.org>
22999
23000         * config/srclist.txt: remove gettext entries, Bruno prefers
23001         to update individually.
23002
23003 2007-06-10  Bruno Haible  <bruno@clisp.org>
23004
23005         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
23006         'maxlen'. Ensure only length + width bytes are allocated, not
23007         length + 1 + width.
23008
23009 2007-06-09  Bruno Haible  <bruno@clisp.org>
23010
23011         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
23012         (CHAR_T): Remove macro.
23013         (VASNPRINTF): Update.
23014
23015 2007-06-09  Bruno Haible  <bruno@clisp.org>
23016
23017         * MODULES.html.sh (Unicode string functions): Add the new modules.
23018
23019         * modules/uniconv/u32-conv-to-enc: New file.
23020         * lib/uniconv/u32-conv-to-enc.c: New file.
23021         * modules/uniconv/u32-conv-to-enc-tests: New file.
23022         * tests/uniconv/test-u32-conv-to-enc.c: New file.
23023
23024         * modules/uniconv/u16-conv-to-enc: New file.
23025         * lib/uniconv/u16-conv-to-enc.c: New file.
23026         * lib/uniconv/u-conv-to-enc.h: New file.
23027         * modules/uniconv/u16-conv-to-enc-tests: New file.
23028         * tests/uniconv/test-u16-conv-to-enc.c: New file.
23029
23030         * modules/uniconv/u8-conv-to-enc: New file.
23031         * lib/uniconv/u8-conv-to-enc.c: New file.
23032         * modules/uniconv/u8-conv-to-enc-tests: New file.
23033         * tests/uniconv/test-u8-conv-to-enc.c: New file.
23034
23035         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
23036         u32_conv_to_encoding): New declarations.
23037
23038 2007-06-09  Bruno Haible  <bruno@clisp.org>
23039
23040         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
23041
23042 2007-06-09  Bruno Haible  <bruno@clisp.org>
23043
23044         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
23045         * modules/malloca: Renamed from modules/allocsa, updated.
23046         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
23047         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
23048         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
23049         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
23050         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
23051         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
23052         * modules/xmalloca: Renamed from modules/xallocsa, updated.
23053         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
23054         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
23055         * modules/c-strcasestr (Depends-on): Update.
23056         * lib/c-strcasestr.c: Update.
23057         * modules/c-strstr (Depends-on): Update.
23058         * lib/c-strstr.c: Update.
23059         * modules/canonicalize-lgpl (Depends-on): Update.
23060         * lib/canonicalize-lgpl.c: Update.
23061         * modules/clean-temp (Depends-on): Update.
23062         * lib/clean-temp.c: Update.
23063         * modules/csharpcomp (Depends-on): Update.
23064         * lib/csharpcomp.c: Update.
23065         * modules/csharpexec (Depends-on): Update.
23066         * lib/csharpexec.c: Update.
23067         * modules/javacomp (Depends-on): Update.
23068         * lib/javacomp.c: Update.
23069         * modules/javaexec (Depends-on): Update.
23070         * lib/javaexec.c: Update.
23071         * modules/mbscasestr (Depends-on): Update.
23072         * lib/mbscasestr.c: Update.
23073         * modules/mbsstr (Depends-on): Update.
23074         * lib/mbsstr.c: Update.
23075         * modules/setenv (Depends-on): Update.
23076         * lib/setenv.c: Update.
23077         * modules/strcasestr (Depends-on): Update.
23078         * lib/strcasestr.c: Update.
23079         * modules/striconveha (Depends-on): Update.
23080         * lib/striconveha.c: Update.
23081         * modules/relocatable-prog-wrapper (Files): Update.
23082         * lib/relocwrapper.c: Update.
23083         * build-aux/install-reloc: Update.
23084         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
23085
23086 2007-06-08  Bruno Haible  <bruno@clisp.org>
23087
23088         Port to uClibc.
23089         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
23090         * lib/fpurge.c (fpurge): Likewise.
23091         * lib/freading.c (freading): Likewise.
23092         * lib/fseeko.c (rpl_fseeko): Likewise.
23093         * lib/fseterr.c (fseterr): Likewise.
23094         * lib/fwriting.c (fwriting): Likewise.
23095         * tests/test-fflush.c (main): Avoid a failure on uClibc.
23096
23097 2007-06-08  Bruno Haible  <bruno@clisp.org>
23098
23099         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
23100         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
23101         * modules/gettext (Files): Add m4/intlmacosx.m4.
23102
23103 2007-06-07  Bruno Haible  <bruno@clisp.org>
23104
23105         * modules/localename-tests: New file.
23106         * tests/test-localename.c: New file.
23107
23108         New module 'localename'.
23109         * lib/localename.h: New file.
23110         * lib/localename.c: New file, from GNU gettext.
23111         * m4/localename.m4: New file.
23112         * modules/localename: New file.
23113
23114 2007-06-07  Bruno Haible  <bruno@clisp.org>
23115
23116         Work around the lack of <wchar.h> on some builds of uClibc.
23117         * doc/headers/wchar.texi: Update.
23118         * lib/wchar_.h: Include <wchar.h> only if it exists.
23119         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
23120         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
23121         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
23122         doesn't exist.
23123         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
23124         * modules/mbfile (Depends-on): Add wchar.
23125         * modules/mbiter (Depends-on): Likewise.
23126         * modules/mbuiter (Depends-on): Likewise.
23127         Reported by Simon Josefsson.
23128
23129 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
23130
23131         Work around problem reported by Steven M. Schweda in
23132         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
23133         Tru64 5.1B with the Compaq compiler environment installed declares
23134         an 'isblank' function but does not define it in the C library.
23135         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
23136         * lib/regex_internal.h (isblank): Likewise.
23137         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
23138         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
23139
23140 2007-06-05  Bruno Haible  <bruno@clisp.org>
23141
23142         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
23143         ia64.
23144         * modules/printf-safe: New file.
23145         * modules/fprintf-posix (Depends-on): Add printf-safe.
23146         * modules/printf-posix (Depends-on): Likewise.
23147         * modules/snprintf-posix (Depends-on): Likewise.
23148         * modules/sprintf-posix (Depends-on): Likewise.
23149         * modules/vasnprintf-posix (Depends-on): Likewise.
23150         * modules/vasprintf-posix (Depends-on): Likewise.
23151         * modules/vfprintf-posix (Depends-on): Likewise.
23152         * modules/vprintf-posix (Depends-on): Likewise.
23153         * modules/vsnprintf-posix (Depends-on): Likewise.
23154         * modules/vsprintf-posix (Depends-on): Likewise.
23155         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
23156         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
23157         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
23158         "no" on i386, x86_64, ia64.
23159         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
23160         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
23161         on i386, x86_64, ia64.
23162         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
23163         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
23164         on i386, x86_64, ia64.
23165         * tests/test-vasnprintf-posix.c: Include float.h.
23166         (LDBL80_WORDS): New macro.
23167         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
23168         on i386, x86_64, ia64.
23169         * tests/test-vasprintf-posix.c: Include float.h.
23170         (LDBL80_WORDS): New macro.
23171         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
23172         on i386, x86_64, ia64.
23173         * tests/test-snprintf-posix.c: Include float.h.
23174         * tests/test-sprintf-posix.c: Likewise.
23175         * tests/test-vsnprintf-posix.c: Likewise.
23176         * tests/test-vsprintf-posix.c: Likewise.
23177
23178 2007-06-05  Bruno Haible  <bruno@clisp.org>
23179
23180         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
23181         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
23182         non-IEEE numbers on i386, x86_64, ia64.
23183         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
23184         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
23185         * tests/test-isnanl.h: Include float.h.
23186         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
23187
23188 2007-06-05  Bruno Haible  <bruno@clisp.org>
23189
23190         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
23191         also the %a / %A. Handle the %a / %A code before this extra handling.
23192
23193 2007-06-05  Bruno Haible  <bruno@clisp.org>
23194
23195         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
23196         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
23197
23198 2007-06-05  Bruno Haible  <bruno@clisp.org>
23199
23200         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
23201         typo in variable name.
23202
23203 2007-06-05  Eric Blake  <ebb9@byu.net>
23204
23205         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
23206         Reported by Simon Josefsson.
23207
23208 2007-06-04  Bruno Haible  <bruno@clisp.org>
23209
23210         Avoid test failures on some PowerPC platforms.
23211         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
23212         Define differently for PowerPC.
23213         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
23214         Reported by Gary V. Vaughan <gary@gnu.org>.
23215
23216 2007-06-02  Bruno Haible  <bruno@clisp.org>
23217
23218         Fix test-stdint failure on FreeBSD/ia64.
23219         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
23220         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
23221         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
23222         * doc/headers/stdint.texi: Update.
23223
23224 2007-06-01  Bruno Haible  <bruno@clisp.org>
23225
23226         * tests/test-binary-io.c (main): Pass a third argument to open().
23227         Reported by Gary V. Vaughan <gary@gnu.org>.
23228
23229 2007-06-01  Bruno Haible  <bruno@clisp.org>
23230
23231         * doc/functions/frexpl.texi: Update for mingw.
23232
23233 2007-06-01  Bruno Haible  <bruno@clisp.org>
23234
23235         * tests/test-lseek.c (main): Disable test of errno for invalid third
23236         argument.
23237         * doc/functions/lseek.texi: Update.
23238         Reported by Gary V. Vaughan <gary@gnu.org>.
23239
23240 2007-05-28  Bruno Haible  <bruno@clisp.org>
23241
23242         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
23243
23244 2007-05-31  Eric Blake  <ebb9@byu.net>
23245
23246         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
23247         cross compiling.
23248
23249 2007-05-30  Eric Blake  <ebb9@byu.net>
23250         and Bruno Haible  <bruno@clisp.org>
23251
23252         Work around mingw test failures exposed by m4-1.4.9b.
23253         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
23254         * tests/test-unistd.c: Disable uid_t and git_t tests for the
23255         moment.
23256
23257 2007-05-30  Bruno Haible  <bruno@clisp.org>
23258
23259         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
23260         assuming that they are closed. Needed on HP-UX 11.
23261
23262 2007-05-29  Bruno Haible  <bruno@clisp.org>
23263
23264         Fix a problem with #include_next.
23265         * lib/dirent_.h: Split the double-inclusion guard.
23266         * lib/fcntl_.h: Likewise.
23267         * lib/float_.h: Likewise.
23268         * lib/iconv_.h: Likewise.
23269         * lib/inttypes_.h: Likewise.
23270         * lib/locale_.h: Likewise.
23271         * lib/math_.h: Likewise.
23272         * lib/netinet_in_.h: Likewise.
23273         * lib/search_.h: Likewise.
23274         * lib/signal_.h: Likewise.
23275         * lib/stdint_.h: Likewise.
23276         * lib/stdio_.h: Likewise.
23277         * lib/stdlib_.h: Likewise.
23278         * lib/string_.h: Likewise.
23279         * lib/sys_select_.h: Likewise.
23280         * lib/sys_socket_.h: Likewise.
23281         * lib/sys_stat_.h: Likewise.
23282         * lib/sys_time_.h: Likewise.
23283         * lib/sysexits_.h: Likewise.
23284         * lib/time_.h: Likewise.
23285         * lib/unistd_.h: Likewise.
23286         * lib/wchar_.h: Likewise.
23287         * lib/wctype_.h: Likewise.
23288
23289 2007-05-29  Bruno Haible  <bruno@clisp.org>
23290
23291         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
23292         for the moment.
23293
23294 2007-05-29  Bruno Haible  <bruno@clisp.org>
23295
23296         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
23297         invocation.
23298         Reported by Eric Blake.
23299
23300 2007-05-29  Bruno Haible  <bruno@clisp.org>
23301
23302         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
23303         compiling case.
23304
23305 2007-05-29  Eric Blake  <ebb9@byu.net>
23306             Bruno Haible  <bruno@clisp.org>
23307
23308         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
23309         cross compiles.
23310
23311 2007-05-28  Eric Blake  <ebb9@byu.net>
23312
23313         * modules/closein-tests (test_closein_LDADD): Support test on
23314         cygwin with libtool.
23315
23316 2007-05-28  Bruno Haible  <bruno@clisp.org>
23317
23318         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
23319         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
23320         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
23321         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
23322         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
23323         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
23324         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
23325         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
23326         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
23327
23328 2007-05-28  Eric Blake  <ebb9@byu.net>
23329
23330         Unconditionally include <config.h> in unit tests.
23331         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
23332         * tests/test-allocsa.c, tests/test-arcfour.c,
23333         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
23334         tests/test-array_list.c, tests/test-array_oset.c,
23335         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
23336         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
23337         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
23338         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
23339         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
23340         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
23341         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
23342         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
23343         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
23344         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
23345         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
23346         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
23347         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
23348         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
23349         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
23350         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
23351         test-md5.c, test-memmem.c, test-printf-posix.c,
23352         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
23353         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
23354         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
23355         test-strcasestr.c, test-striconv.c, test-striconveh.c,
23356         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
23357         test-vasnprintf-posix2.c, test-vasnprintf.c,
23358         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
23359         test-vfprintf-posix.c, test-vprintf-posix.c,
23360         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
23361         test-xvasprintf.c: Likewise.
23362
23363 2007-05-28  Bruno Haible  <bruno@clisp.org>
23364
23365         * gnulib-tool (func_import): Remember the --with-tests command-line
23366         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
23367         Reported by Eric Blake.
23368
23369 2007-05-28  Bruno Haible  <bruno@clisp.org>
23370
23371         * modules/ftell-tests: New file.
23372         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
23373         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
23374
23375         * lib/ftell.c: New file.
23376         * modules/ftell: New file.
23377         * m4/ftell.m4: New file.
23378         * doc/functions/ftell.texi: Update.
23379         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
23380         REPLACE_FTELL.
23381         * lib/stdio_.h (rpl_ftell): New declaration.
23382         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
23383         REPLACE_FTELL.
23384
23385 2007-05-28  Eric Blake  <ebb9@byu.net>
23386
23387         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
23388
23389 2007-05-28  Bruno Haible  <bruno@clisp.org>
23390
23391         * modules/fseek-tests: New file.
23392         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
23393         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
23394
23395         * lib/fseek.c: New file.
23396         * modules/fseek: New file.
23397         * m4/fseek.m4: New file.
23398         * doc/functions/fseek.texi: Update.
23399         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
23400         REPLACE_FSEEK.
23401         * lib/stdio_.h (rpl_fseek): New declaration.
23402         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
23403         REPLACE_FSEEK.
23404
23405 2007-05-28  Bruno Haible  <bruno@clisp.org>
23406
23407         * lib/stdio_.h (fflush): More comments.
23408
23409 2007-05-28  Bruno Haible  <bruno@clisp.org>
23410
23411         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
23412         runtime test.
23413
23414 2007-05-28  Eric Blake  <ebb9@byu.net>
23415
23416         Improve lseek module.
23417         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
23418         * lib/unistd_.h (lseek): Scale back link warning message.
23419         * tests/test-lseek.c: Beef up test.
23420         * tests/test-lseek.sh: Exercise more facets of lseek.
23421         Reported by Bruno Haible.
23422
23423 2007-05-28  Bruno Haible  <bruno@clisp.org>
23424
23425         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
23426         to define.
23427
23428 2007-05-27  Bruno Haible  <bruno@clisp.org>
23429
23430         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
23431
23432 2007-05-27  Bruno Haible  <bruno@clisp.org>
23433
23434         * modules/openmp: New file.
23435         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
23436         Noah Misch.
23437
23438 2007-05-26  Bruno Haible  <bruno@clisp.org>
23439
23440         * modules/chdir-long (Depends-on): Add fchdir.
23441         * modules/chdir-safer (Depends-on): Likewise.
23442         * modules/fts (Depends-on): Likewise.
23443         * modules/fts-lgpl (Depends-on): Likewise.
23444         * modules/openat (Depends-on): Likewise.
23445         * modules/savewd (Depends-on): Likewise.
23446
23447 2007-05-24  Eric Blake  <ebb9@byu.net>
23448
23449         Fix lseek on mingw.
23450         * modules/lseek: New module.
23451         * m4/lseek.m4: New file.
23452         * lib/lseek.c: New file.
23453         * modules/lseek-tests: New file.
23454         * tests/test-lseek.c: New file.
23455         * tests/test-lseek.sh: New file.
23456         * MODULES.html.sh: Document lseek module.
23457         * modules/fflush (Depends-on): Add lseek, fseeko.
23458         * modules/fseeko (Depends-on): Likewise.
23459         * modules/ftello (Depends-on): Likewise.
23460         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
23461         broken.
23462         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
23463         broken.
23464         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
23465         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
23466         * lib/ftello.c (rpl_ftello): Likewise.
23467         * tests/test-fseeko.c (main): Test this.
23468         * tests/test-fseeko.sh: Likewise.
23469         * tests/test-ftello.c (main): Likewise.
23470         * tests/test-ftello.sh: Likewise.
23471         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
23472         implies replacing fseek.
23473         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
23474         HAVE_FTELLO.
23475         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
23476         * modules/unistd (Makefile.am): Likewise.
23477         * lib/unistd_.h (lseek): Declare a replacement.
23478         * doc/functions/lseek.texi (lseek): Document this fix.
23479         * doc/functions/fseek.texi (fseek): Likewise.
23480         * doc/functions/ftell.texi (ftell): Likewise.
23481
23482 2007-05-24  Bruno Haible  <bruno@clisp.org>
23483
23484         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
23485         in the printed representation of a NaN.
23486         * tests/test-vasprintf-posix.c (test_function): Likewise.
23487         * tests/test-snprintf-posix.h (test_function): Likewise.
23488         * tests/test-sprintf-posix.h (test_function): Likewise.
23489         Reported by Eric Blake.
23490
23491 2007-05-23  Eric Blake  <ebb9@byu.net>
23492
23493         Fix fseeko/ftello on cygwin 1.5.24.
23494         * doc/functions/fseeko.texi (fseeko): Document the fix.
23495         * doc/functions/ftello.texi (ftello): Document the fix.
23496         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
23497         * doc/functions/stdout.text (stdout): New file.
23498         * doc/functions/stderr.text (stderr): New file.
23499         * doc/gnulib.texi (Function Substitutes): Use new files.
23500         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
23501         prior to 1.7.0.
23502         * tests/test-ftello.c (main): Likewise for ftello.
23503         * tests/test-fseeko.sh: New file.
23504         * tests/test-ftello.sh: New file.
23505         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
23506         with seekable stdin.
23507         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
23508         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
23509         (gl_REPLACE_FSEEKO): New macro.
23510         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
23511         * modules/fseeko (Files): Distribute fseeko.c.
23512         * modules/ftello (Files): Distribute ftello.c.
23513         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
23514         mode.
23515         * lib/ftello.c (rpl_ftello): New file.
23516         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
23517         fseeko, ftello.
23518         (gl_STDIN_LARGE_OFFSET): New macro.
23519         * modules/stdio (Makefile.am): Perform the replacement.
23520         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
23521
23522 2007-05-23  Bruno Haible  <bruno@clisp.org>
23523
23524         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
23525         GNULIB_POSIXCHECK is defined.
23526
23527 2007-05-21  Bruno Haible  <bruno@clisp.org>
23528
23529         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
23530         Check also the output for NaN arguments. When cross-compiling, guess
23531         no on IRIX.
23532         * lib/vasnprintf.c: Update comments.
23533         * tests/test-vasnprintf-posix.c (strisnan): New function.
23534         (test_function): Use it.
23535         * tests/test-vasprintf-posix.c (strisnan): New function.
23536         (test_function): Use it.
23537         * tests/test-snprintf-posix.h (strisnan): New function.
23538         (test_function): Use it.
23539         * tests/test-sprintf-posix.h (strisnan): New function.
23540         (test_function): Use it.
23541         Reported by Eric Blake.
23542
23543 2007-05-20  Bruno Haible  <bruno@clisp.org>
23544
23545         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
23546         numbers that fails on BeOS.
23547         * doc/functions/frexpl.texi: Update.
23548
23549 2007-05-20  Jim Meyering  <jim@meyering.net>
23550
23551         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
23552         forced upon us by glibc-2.6.
23553
23554 2007-05-20  Bruno Haible  <bruno@clisp.org>
23555
23556         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
23557         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
23558         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
23559         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
23560         NEED_PRINTF_INFINITE.
23561         (is_infinitel): New function.
23562         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
23563         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
23564         gl_PREREQ_VASNPRINTF_INFINITE.
23565         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
23566         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
23567         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
23568         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
23569         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
23570         gl_PREREQ_VASNPRINTF_INFINITE.
23571         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
23572         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23573         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23574         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23575         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23576         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23577         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23578         * doc/functions/fprintf.texi: Update.
23579         * doc/functions/printf.texi: Update.
23580         * doc/functions/snprintf.texi: Update.
23581         * doc/functions/sprintf.texi: Update.
23582         * doc/functions/vfprintf.texi: Update.
23583         * doc/functions/vprintf.texi: Update.
23584         * doc/functions/vsnprintf.texi: Update.
23585         * doc/functions/vsprintf.texi: Update.
23586
23587 2007-05-20  Bruno Haible  <bruno@clisp.org>
23588
23589         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
23590         was not found in libc.
23591         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
23592
23593 2007-05-20  Bruno Haible  <bruno@clisp.org>
23594
23595         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
23596         printed as "-nan" instead of "nan".
23597         * tests/test-vasprintf-posix.c (test_function): Likewise.
23598         * tests/test-snprintf-posix.h (test_function): Likewise.
23599         * tests/test-sprintf-posix.h (test_function): Likewise.
23600         Needed for HP-UX 11.
23601
23602 2007-05-20  Jim Meyering  <jim@meyering.net>
23603
23604         Fix buggy test for the fchownat-deref bug.
23605         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
23606         symlink required for the run-test.  Without it, this test would
23607         always declare that fchownat doesn't work, and client code would
23608         unnecessarily use the replacement function with fixed libc.
23609         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
23610         Reported by Greg Schafer.
23611
23612 2007-05-19  Bruno Haible  <bruno@clisp.org>
23613
23614         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
23615         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
23616         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
23617         Needed for IRIX 6.5 and Solaris 2.5.1.
23618
23619 2007-05-19  Bruno Haible  <bruno@clisp.org>
23620
23621         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
23622         (test_function): Skip tests involving -0.0 on platforms where
23623         -0.0 = 0.0.
23624         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
23625         (test_function): Skip tests involving -0.0 on platforms where
23626         -0.0 = 0.0.
23627         * tests/test-snprintf-posix.h (have_minus_zero): New function.
23628         (test_function): Skip tests involving -0.0 on platforms where
23629         -0.0 = 0.0.
23630         * tests/test-sprintf-posix.h (have_minus_zero): New function.
23631         (test_function): Skip tests involving -0.0 on platforms where
23632         -0.0 = 0.0.
23633         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
23634         tests.
23635         * tests/test-printf-posix.h (test_function): Likewise.
23636         * tests/test-printf-posix.output: Remove all -0.0 related results.
23637         Needed for IRIX 6.5.
23638
23639 2007-05-19  Bruno Haible  <bruno@clisp.org>
23640
23641         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
23642         printed as "nan0x7fffffff" instead of "nan".
23643         * tests/test-vasprintf-posix.c (test_function): Likewise.
23644         * tests/test-snprintf-posix.h (test_function): Likewise.
23645         * tests/test-sprintf-posix.h (test_function): Likewise.
23646         * tests/test-fprintf-posix.h (NaN): Remove macro.
23647         (test_function): Remove all NaN related tests.
23648         * tests/test-printf-posix.h (NaN): Remove macro.
23649         (test_function): Remove all NaN related tests.
23650         * tests/test-printf-posix.output: Remove all NaN related results.
23651         Needed for IRIX 6.5.
23652
23653 2007-05-19  Bruno Haible  <bruno@clisp.org>
23654
23655         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
23656         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
23657
23658 2007-05-19  Bruno Haible  <bruno@clisp.org>
23659
23660         * lib/float_.h: New file.
23661         * m4/float_h.m4: New file.
23662         * modules/float: New file.
23663         * modules/isnanl (Dependencies): Add float.
23664         * modules/isnanl-nolibm (Dependencies): Likewise.
23665         * modules/mathl (Dependencies): Likewise.
23666         * modules/printf-frexpl (Dependencies): Likewise.
23667         * modules/signbit (Dependencies): Likewise.
23668         * modules/vasnprintf (Dependencies): Likewise.
23669         * doc/headers/float.texi: Update.
23670
23671 2007-05-19  Jim Meyering  <jim@meyering.net>
23672
23673         * lib/utimens.c (gl_futimens): Rename from futimens,
23674         now that glibc-2.6 declares futimens.
23675         * lib/utimens.h: Likewise.
23676
23677 2007-05-19  Bruno Haible  <bruno@clisp.org>
23678
23679         Avoid test failures on mingw.
23680         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
23681         * tests/test-printf-posix.sh: Likewise.
23682         * tests/test-vfprintf-posix.sh: Likewise.
23683         * tests/test-vprintf-posix.sh: Likewise.
23684
23685 2007-05-19  Bruno Haible  <bruno@clisp.org>
23686
23687         Fix *printf result for NaN, Inf, -0.0 on mingw.
23688         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
23689         * lib/vasnprintf.c: Include math.h and isnan.h.
23690         (is_infinite_or_zero): New function.
23691         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
23692         values in the %f, %F, %e, %E, %g, %G directives.
23693         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
23694         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
23695         gl_PRINTF_INFINITE and test its result. Invoke
23696         gl_PREREQ_VASNPRINTF_INFINITE.
23697         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
23698         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23699         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23700         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23701         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23702         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23703         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23704         * doc/functions/fprintf.texi: Update.
23705         * doc/functions/printf.texi: Update.
23706         * doc/functions/snprintf.texi: Update.
23707         * doc/functions/sprintf.texi: Update.
23708         * doc/functions/vfprintf.texi: Update.
23709         * doc/functions/vprintf.texi: Update.
23710         * doc/functions/vsnprintf.texi: Update.
23711         * doc/functions/vsprintf.texi: Update.
23712
23713 2007-05-19  Bruno Haible  <bruno@clisp.org>
23714
23715         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
23716         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
23717         Instead of multiplying with 10^k, set extra_zeroes to k.
23718         (scale10_round_long_double): Remove function.
23719
23720 2007-05-18  Bruno Haible  <bruno@clisp.org>
23721
23722         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
23723         introduced on 2007-05-06.
23724
23725 2007-05-18  Bruno Haible  <bruno@clisp.org>
23726
23727         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
23728         %g directives.
23729         * tests/test-vasprintf-posix.c (test_function): Likewise.
23730         * tests/test-snprintf-posix.h (test_function): Likewise.
23731         * tests/test-sprintf-posix.h (test_function): Likewise.
23732
23733 2007-05-18  Bruno Haible  <bruno@clisp.org>
23734
23735         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
23736         (strmatch): New function.
23737         (test_function): Test the %f directive on numbers of various exponents.
23738         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
23739         (strmatch): New function.
23740         (test_function): Test the %f directive on numbers of various exponents.
23741         * tests/test-snprintf-posix.h (strmatch): New function.
23742         (test_function): Test the %f directive on numbers of various exponents.
23743         * tests/test-sprintf-posix.h (strmatch): New function.
23744         (test_function): Test the %f directive on numbers of various exponents.
23745         * tests/test-snprintf-posix.c (SIZEOF): New macro.
23746         * tests/test-sprintf-posix.c (SIZEOF): New macro.
23747         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
23748         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
23749
23750 2007-05-18  Bruno Haible  <bruno@clisp.org>
23751
23752         Add support for 'long double' number output.
23753         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
23754         * lib/vasnprintf.c: Include math.h and float+.h.
23755         (mp_limb_t): New type.
23756         (GMP_LIMB_BITS): New macro.
23757         (mp_twolimb_t): New type.
23758         (GMP_TWOLIMB_BITS): New macro.
23759         (mpn_t): New type.
23760         (multiply, divide, convert_to_decimal, decode_long_double,
23761         scale10_round_long_double, scale10_round_decimal_long_double,
23762         floorlog10l): New functions.
23763         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
23764         for the %f, %F, %e, %E, %g, %G directives.
23765         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
23766         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
23767         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
23768         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
23769         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
23770         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23771         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23772         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23773         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23774         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23775         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23776         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
23777         * modules/snprintf-posix (Depends-on): Likewise.
23778         * modules/sprintf-posix (Depends-on): Likewise.
23779         * modules/vasnprintf-posix (Depends-on): Likewise.
23780         * modules/vasprintf-posix (Depends-on): Likewise.
23781         * modules/vfprintf-posix (Depends-on): Likewise.
23782         * modules/vsnprintf-posix (Depends-on): Likewise.
23783         * modules/vsprintf-posix (Depends-on): Likewise.
23784         * modules/vasnprintf (Files): Add lib/float+.h.
23785         * doc/functions/fprintf.texi: Update.
23786         * doc/functions/printf.texi: Update.
23787         * doc/functions/snprintf.texi: Update.
23788         * doc/functions/sprintf.texi: Update.
23789         * doc/functions/vfprintf.texi: Update.
23790         * doc/functions/vprintf.texi: Update.
23791         * doc/functions/vsnprintf.texi: Update.
23792         * doc/functions/vsprintf.texi: Update.
23793
23794 2007-05-18  Bruno Haible  <bruno@clisp.org>
23795
23796         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
23797
23798 2007-05-18  Bruno Haible  <bruno@clisp.org>
23799
23800         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
23801         for printing 64-bit integers. Needed for mingw.
23802
23803 2007-05-18  Bruno Haible  <bruno@clisp.org>
23804
23805         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
23806         gl_FUNC_FREXPL_WORKS.
23807         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
23808
23809 2007-05-18  Bruno Haible  <bruno@clisp.org>
23810
23811         * modules/frexpl-nolibm-tests: New file.
23812
23813         * modules/frexpl-nolibm: New file.
23814         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
23815
23816 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
23817
23818         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
23819         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
23820         GCC 4.2, which otherwise issues a lot of warnings.
23821         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
23822         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
23823         Likewise.
23824         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
23825         * modules/iconv_open (iconv.h): Likewise.
23826         * modules/locale (locale.h): Likewise.
23827         * modules/netinet_in (netinet/in.h): Likewise.
23828         * modules/sys_select (sys_select.h): Likewise.
23829         * modules/sys_socket (sys/socket.h): Likewise.
23830         * modules/sys_stat (sys/stat.h): Likewise.
23831         * modules/sysexits (sysexits.h): Likewise.
23832         * modules/unistd (unistd.h): Likewise.
23833
23834 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23835
23836         * modules/closein-tests (Makefile.am): Distribute
23837         `test-closein.sh'.
23838
23839 2007-05-17  Bruno Haible  <bruno@clisp.org>
23840
23841         * tests/test-printf-posix.output: Renamed from
23842         tests/test-fprintf-posix.out.
23843         * modules/fprintf-posix-tests: Update.
23844         * modules/printf-posix-tests: Update.
23845         * modules/vfprintf-posix-tests: Update.
23846         * modules/vprintf-posix-tests: Update.
23847         * tests/test-fprintf-posix.sh: Update.
23848         * tests/test-printf-posix.sh: Update.
23849         * tests/test-vfprintf-posix.sh: Update.
23850         * tests/test-vprintf-posix.sh: Update.
23851         Reported by Ralf Wildenhues.
23852
23853 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
23854
23855         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
23856         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
23857         GCC 4.2, which otherwise issues a lot of warnings.
23858         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
23859         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
23860         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
23861         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
23862         it should no longer be needed.
23863         * lib/string_.h: Likewise.
23864         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
23865         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
23866         * modules/inttypes (inttypes.h): Likewise.
23867         * modules/math (math.h): Likewise.
23868         * modules/search (search.h): Likewise.
23869         * modules/signal (signal.h): Likewise.
23870         * modules/stdint (stdint.h): Likewise.
23871         * modules/stdio (stdio.h): Likewise.
23872         * modules/stdlib (stdlib.h): Likewise.
23873         * modules/string (string.h): Likewise.
23874         * modules/sys_time (sys/time.h): Likewise.
23875         * modules/time (time.h): Likewise.
23876         * modules/wchar (wchar.h): Likewise.
23877         * modules/wctype (wtype.h): Likewise.
23878
23879 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
23880
23881         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
23882
23883 2007-05-13  Bruno Haible  <bruno@clisp.org>
23884
23885         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
23886         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
23887         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
23888         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
23889         (gl_PREREQ_STRTOK_R): Don't require it here.
23890
23891 2007-05-13  Bruno Haible  <bruno@clisp.org>
23892
23893         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
23894         when used in C++ mode.
23895
23896 2007-05-12  Bruno Haible  <bruno@clisp.org>
23897
23898         * lib/linebuffer.h: Tweak doc.
23899         * lib/linebuffer.c: Likewise.
23900
23901 2007-05-12  James Youngman  <jay@gnu.org>
23902
23903         * lib/linebuffer.c (readlinebuffer_delim): New function,
23904         like readlinebuffer, but use a caller-specified delimiter.
23905         (readlinebuffer): Just call readlinebuffer_delim with '\n'
23906         as the delimiter.
23907         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
23908
23909 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
23910
23911         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
23912         * modules/openat (Files): Remove openat-die.c.
23913         (Depends-on): Add openat-die.
23914         * modules/openat-die: New module.
23915
23916 2007-05-06  Bruno Haible  <bruno@clisp.org>
23917
23918         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
23919         Update with info about Cygwin.
23920         * doc/functions/fprintf.texi: Update.
23921         * doc/functions/printf.texi: Update.
23922         * doc/functions/snprintf.texi: Update.
23923         * doc/functions/sprintf.texi: Update.
23924         * doc/functions/vfprintf.texi: Update.
23925         * doc/functions/vprintf.texi: Update.
23926         * doc/functions/vsnprintf.texi: Update.
23927         * doc/functions/vsprintf.texi: Update.
23928         Reported by Eric Blake.
23929
23930 2007-05-06  Bruno Haible  <bruno@clisp.org>
23931
23932         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
23933         padding ourselves for the floating-point directives.
23934         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
23935         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
23936         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
23937         gl_PRINTF_FLAG_ZERO and test its result. Invoke
23938         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
23939         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23940         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
23941         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23942         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23943         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23944         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23945         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23946         * tests/test-snprintf-posix.h (test_function): Also check the width
23947         and some flags in the %f directive.
23948         * tests/test-sprintf-posix.h (test_function): Likewise.
23949         * tests/test-vasnprintf-posix.c (test_function): Likewise.
23950         * tests/test-vasprintf-posix.c (test_function): Likewise.
23951         * doc/functions/fprintf.texi: Update.
23952         * doc/functions/printf.texi: Update.
23953         * doc/functions/snprintf.texi: Update.
23954         * doc/functions/sprintf.texi: Update.
23955         * doc/functions/vfprintf.texi: Update.
23956         * doc/functions/vprintf.texi: Update.
23957         * doc/functions/vsnprintf.texi: Update.
23958         * doc/functions/vsprintf.texi: Update.
23959
23960 2007-05-06  Bruno Haible  <bruno@clisp.org>
23961
23962         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
23963         pass the ' flag character to sprintf or snprintf.
23964         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
23965         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
23966         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
23967         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
23968         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
23969         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23970         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
23971         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23972         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23973         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23974         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23975         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23976         * tests/test-snprintf-posix.h (test_function): Also check the grouping
23977         flag.
23978         * tests/test-sprintf-posix.h (test_function): Likewise.
23979         * tests/test-vasnprintf-posix.c (test_function): Likewise.
23980         * tests/test-vasprintf-posix.c (test_function): Likewise.
23981         * doc/functions/fprintf.texi: Update.
23982         * doc/functions/printf.texi: Update.
23983         * doc/functions/snprintf.texi: Update.
23984         * doc/functions/sprintf.texi: Update.
23985         * doc/functions/vfprintf.texi: Update.
23986         * doc/functions/vprintf.texi: Update.
23987         * doc/functions/vsnprintf.texi: Update.
23988         * doc/functions/vsprintf.texi: Update.
23989
23990 2007-05-01  Bruno Haible  <bruno@clisp.org>
23991
23992         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
23993
23994 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
23995
23996         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
23997         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
23998
23999 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
24000
24001         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
24002         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
24003         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
24004
24005 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
24006
24007         * lib/argp-help.c (struct hol_entry): New member `ord'.
24008         (HOL_ENTRY_PTRCMP): Use ord for comparison
24009         (hol_sort): Initialize ord.
24010
24011 2007-05-01  Bruno Haible  <bruno@clisp.org>
24012
24013         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
24014         Reported by Eric Blake.
24015         * doc/gnulib.texi (Function Substitutes): Update.
24016
24017 2007-05-01  Bruno Haible  <bruno@clisp.org>
24018
24019         * doc/functions.texi: Remove file, now redundant through
24020         doc/functions/*.texi.
24021
24022 2007-05-01  Bruno Haible  <bruno@clisp.org>
24023
24024         * modules/argp (Depends-on): Add sleep.
24025
24026 2007-05-01  Bruno Haible  <bruno@clisp.org>
24027
24028         * modules/sleep-tests: New file.
24029         * tests/test-sleep.c: New file.
24030
24031         * modules/sleep: New file.
24032         * lib/sleep.c: New file.
24033         * m4/sleep.m4: New file.
24034         * lib/unistd_.h (sleep): New declaration.
24035         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
24036         HAVE_SLEEP.
24037         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
24038         * doc/functions/sleep.texi: Document the sleep module.
24039
24040 2007-05-01  Bruno Haible  <bruno@clisp.org>
24041
24042         * lib/sigprocmask.h: Remove file.
24043         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
24044         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
24045         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
24046         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
24047         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
24048         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
24049         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
24050         HAVE_SIGSET_T as a shell variable.
24051         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
24052         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
24053         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
24054         (Depends-on): Add signal. Remove verify.
24055         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
24056         (Include): Mention <signal.h> instead of sigprocmask.h.
24057         * NEWS: Mention the change.
24058         * lib/fatal-signal.c: Don't include sigprocmask.h.
24059
24060 2007-05-01  Bruno Haible  <bruno@clisp.org>
24061
24062         * modules/signal: New file.
24063         * lib/signal_.h: New file.
24064         * m4/signal_h.m4: New file.
24065
24066 2007-05-01  Bruno Haible  <bruno@clisp.org>
24067
24068         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
24069         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
24070         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
24071         HAVE_WCTYPE_CTMP_BUG into wctype.h.
24072
24073 2007-05-01  Bruno Haible  <bruno@clisp.org>
24074
24075         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
24076         configure time.
24077         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
24078         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
24079         * modules/sys_stat (Makefile.am): Substitute their values into
24080         sys/stat.h.
24081
24082 2007-05-01  Bruno Haible  <bruno@clisp.org>
24083
24084         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
24085         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
24086         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
24087
24088 2007-05-01  Bruno Haible  <bruno@clisp.org>
24089
24090         * doc/header/assert.texi: Undo last change: don't mention the gnulib
24091         'assert' module here.
24092
24093 2007-05-01  Bruno Haible  <bruno@clisp.org>
24094
24095         * doc/functions/*.texi: New files.
24096         * doc/functions/google-ranking.txt: New file.
24097         * doc/gnulib.texi (Function Substitutes): New chapter.
24098         (ctime, inet_ntoa): Remove sections.
24099         * doc/ctime.texi: Remove file.
24100         * doc/inet_ntoa.texi: Remove file.
24101         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
24102         dependencies.
24103         (%.info): New rule, specifying a --reference-limit.
24104
24105 2007-05-01  Bruno Haible  <bruno@clisp.org>
24106
24107         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
24108
24109 2007-05-01  Bruno Haible  <bruno@clisp.org>
24110
24111         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
24112         the portability of 'mkdir' to mingw systems.
24113
24114 2007-05-01  Bruno Haible  <bruno@clisp.org>
24115
24116         * doc/headers/google-ranking.txt: New file.
24117
24118 2007-04-30  Eric Blake  <ebb9@byu.net>
24119
24120         Prefer fseeko to fseek.
24121         * modules/getpass (Depends-on): Add fseeko.
24122         * lib/getpass.c (getpass): Use fseeko, not fseek.
24123
24124 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
24125
24126         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
24127         assumes the sorting is stable, while most qsort implementations
24128         are not.  Use argument addresses to ensure they never compare as
24129         equal.
24130
24131         * tests/test-argp-2.sh (usage-indent test): Fix output
24132         (func_compare): Restore diff options
24133         * tests/test-argp.c: Restore #include "progname.h"
24134
24135 2007-04-29  Bruno Haible  <bruno@clisp.org>
24136
24137         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
24138         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
24139         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
24140         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
24141         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
24142         (configure.ac): Define CHECK_SNPRINTF_POSIX.
24143         (TESTS, check_PROGRAMS): Add test-snprintf.
24144         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
24145         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
24146         (TESTS, check_PROGRAMS): Add test-vsnprintf.
24147         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
24148         assertions that fail on HP-UX, OSF/1, or IRIX.
24149         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
24150
24151 2007-04-29  Bruno Haible  <bruno@clisp.org>
24152
24153         * MODULES.html.sh (posix_functions): Remove 'contents'.
24154
24155 2007-04-29  Karl Berry  <karl@gnu.org>
24156
24157         * config/srclist.txt (gendocs_template_min): new entry.
24158
24159 2007-04-29  Bruno Haible  <bruno@clisp.org>
24160
24161         Work around fpurge bug on BSD systems.
24162         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
24163         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
24164         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
24165         fpurge to rpl_fpurge if the system already has this function.
24166         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
24167         the case where the system already has this function. Correct invariants
24168         on BSD systems.
24169         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
24170         BSD systems.
24171
24172 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
24173
24174         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
24175         proposed by Sven Verdoolaege.
24176
24177         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
24178         options.
24179         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
24180         (usage and help tests): Update
24181
24182 2007-04-29  Bruno Haible  <bruno@clisp.org>
24183
24184         * tests/test-fflush.c (main): Use a file of size 17, not 10.
24185         Print more information in case of failure. Disable a test on BeOS.
24186
24187 2007-04-29  Bruno Haible  <bruno@clisp.org>
24188
24189         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
24190         This helps debugging on systems on which no gdb is available.
24191
24192 2007-04-29  Bruno Haible  <bruno@clisp.org>
24193
24194         * lib/freading.h: Improve comments.
24195         * lib/fwriting.h: Likewise.
24196         * tests/test-freading.c (main): Don't check freading immediately after
24197         repositioning. Needed for glibc.
24198
24199 2007-04-29  Bruno Haible  <bruno@clisp.org>
24200
24201         * lib/freading.c (freading): Trivial simplification.
24202
24203 2007-04-28  Bruno Haible  <bruno@clisp.org>
24204
24205         * tests/test-fwriting.c (main): Also test the interaction between
24206         fflush and fwriting.
24207         * modules/fwriting-tests (Depends-on): Add fflush.
24208
24209         * tests/test-freading.c (main): Also test the interaction between
24210         fflush and freading.
24211         * modules/freading-tests (Depends-on): Add fflush.
24212
24213 2007-04-28  Bruno Haible  <bruno@clisp.org>
24214
24215         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
24216         fseeko and ftello.
24217         Suggested by Eric Blake.
24218
24219 2007-04-28  Jim Meyering  <jim@meyering.net>
24220
24221         Avoid false-negative in gl_STDINT_H's C99 conformance test.
24222         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
24223         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
24224
24225 2007-04-27  Eric Blake  <ebb9@byu.net>
24226
24227         * doc/headers/assert.texi (assert.h): Document assert module use.
24228
24229 2007-04-27  Bruno Haible  <bruno@clisp.org>
24230
24231         * doc/headers/*.texi: New files.
24232         * doc/gnulib.texi (Header File Substitutes): New chapter.
24233         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
24234         dependencies.
24235         (standards.info ,standards.html, standards.dvi): Update dependencies.
24236         (mostlyclean, clean): New targets.
24237
24238 2007-04-27  Bruno Haible  <bruno@clisp.org>
24239
24240         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
24241         * modules/sysexits (Files, Makefile.am): Update.
24242
24243         * lib/sys_socket_.h: Renamed from lib/socket_.h.
24244         * modules/sys_socket (Files, Makefile.am): Update.
24245
24246         * lib/sys_stat_.h: Renamed from lib/stat_.h.
24247         * modules/sys_stat (Files, Makefile.am): Update.
24248
24249 2007-04-27  Eric Blake  <ebb9@byu.net>
24250
24251         * lib/freading.h: Improve comments.
24252         * lib/fwriting.h: Likewise.
24253         * lib/fflush.c: Likewise.
24254
24255         Fix closein for mingw.
24256         * modules/closein-tests: Add tests for closein.
24257         * tests/test-closein.c: New file.
24258         * tests/test-closein.sh: Likewise.
24259         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
24260         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
24261
24262 2007-04-27  Bruno Haible  <bruno@clisp.org>
24263
24264         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
24265         version is < 6.
24266         * lib/math_.h [__DECC]: Likewise.
24267         * lib/stdio_.h [__DECC]: Likewise.
24268         * lib/stdlib_.h [__DECC]: Likewise.
24269         * lib/string_.h [__DECC]: Likewise.
24270         * lib/time_.h [__DECC]: Likewise.
24271         * lib/wchar_.h [__DECC]: Likewise.
24272         * lib/wctype_.h [__DECC]: Likewise.
24273
24274 2007-04-27  Bruno Haible  <bruno@clisp.org>
24275
24276         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
24277
24278 2007-04-27  Bruno Haible  <bruno@clisp.org>
24279
24280         * lib/fflush.c: Add comments.
24281         * modules/fpurge-tests (Depends-on): Add fflush.
24282         * modules/freadable-tests (Depends-on): Likewise.
24283         * modules/fwritable-tests (Depends-on): Likewise.
24284
24285 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
24286
24287         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
24288         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
24289         Report by Bruno Haible <bruno@clisp.org>.
24290
24291 2007-04-26  Eric Blake  <ebb9@byu.net>
24292
24293         Fix fflush on mingw.
24294         * modules/fflush (Depends-on): Add freading.
24295         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
24296         but unread data.
24297
24298 2007-04-26  Eric Blake  <ebb9@byu.net>
24299         and Bruno Haible  <bruno@clisp.org>
24300
24301         Implement freading and fwriting.
24302         * lib/freading.c: New file.
24303         * lib/freading.h: Likewise.
24304         * m4/freading.m4: Likewise.
24305         * modules/freading: Likewise.
24306         * modules/freading-tests: Likewise.
24307         * tests/test-freading.c: Likewise.
24308         * lib/fwriting.c: New file.
24309         * lib/fwriting.h: Likewise.
24310         * m4/fwriting.m4: Likewise.
24311         * modules/fwriting: Likewise.
24312         * modules/fwriting-tests: Likewise.
24313         * tests/test-fwriting.c: Likewise.
24314         * MODULES.html.sh (File stream based Input/Output): Mention them.
24315
24316 2007-04-26  Bruno Haible  <bruno@clisp.org>
24317
24318         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
24319         'long' when we assume it.
24320         Suggested by Eric Blake.
24321
24322 2007-04-26  Bruno Haible  <bruno@clisp.org>
24323
24324         Ensure fseeko, ftello are declared on glibc systems.
24325         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
24326         * modules/fseeko (configure.ac-early): Likewise.
24327         * modules/ftello (configure.ac-early): Likewise.
24328         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
24329         AC_FUNC_FSEEKO for this.
24330         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
24331         (gl_CHECK_FSEEKO): Remove macro.
24332
24333 2007-04-26  Bruno Haible  <bruno@clisp.org>
24334
24335         * tests/test-fflush.c (main): Also check the ftell result after
24336         fflush and fseek/fseeko.
24337         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
24338         file descriptor position cache in the stream.
24339         * lib/fseeko.c (rpl_fseeko): Likewise.
24340
24341 2007-04-26  Bruno Haible  <bruno@clisp.org>
24342
24343         * modules/fflush-tests (Depends-on): Add fseeko.
24344
24345 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
24346             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24347
24348         * lib/argz_.h: ensure error_t definition is obtained in same
24349         mechanism system argz.h would have.
24350         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
24351         argz facilities are known bad.  Err on the side of caution if
24352         cross-compiling.
24353
24354 2007-04-25  Eric Blake  <ebb9@byu.net>
24355
24356         * lib/fpurge.c (includes): Use stdlib.h for free.
24357         * tests/test-fflush.c (main): Also test fflush-fseeko.
24358
24359 2007-04-25  Bruno Haible  <bruno@clisp.org>
24360
24361         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
24362         * lib/fseeko.c: New file.
24363         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
24364         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
24365         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
24366         gl_FUNC_FSEEKO.
24367         (gl_FUNC_FSEEKO): Invoke it.
24368         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
24369         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
24370         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
24371
24372 2007-04-25  Bruno Haible  <bruno@clisp.org>
24373
24374         * modules/fflush (Depends-on): Add ftello.
24375
24376 2007-04-25  Bruno Haible  <bruno@clisp.org>
24377
24378         * modules/ftello-tests: New file.
24379         * tests/test-ftello.c: New file.
24380
24381         * modules/ftello: New file.
24382         * m4/ftello.m4: New file.
24383         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
24384         HAVE_FTELLO.
24385         * lib/stdio_.h (ftello): New declaration.
24386         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
24387         HAVE_FTELLO.
24388
24389 2007-04-25  Bruno Haible  <bruno@clisp.org>
24390
24391         * modules/fseeko-tests: New file.
24392         * tests/test-fseeko.c: New file.
24393
24394         * modules/fseeko: New file.
24395         * m4/fseeko.m4: New file.
24396         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
24397         HAVE_FSEEKO.
24398         * lib/stdio_.h (fseeko): New declaration.
24399         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
24400         HAVE_FSEEKO.
24401
24402 2007-04-25  Bruno Haible  <bruno@clisp.org>
24403
24404         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
24405
24406 2007-04-25  Bruno Haible  <bruno@clisp.org>
24407
24408         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
24409         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
24410         * tests/test-unistd.c: Likewise.
24411         * tests/test-fcntl.c: Likewise.
24412
24413 2007-04-23  Eric Blake  <ebb9@byu.net>
24414
24415         * lib/fflush.c: Fix missing include.
24416         Reported by Bruno Haible.
24417
24418 2007-04-23  Bruno Haible  <bruno@clisp.org>
24419
24420         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
24421         Reported by Eric Blake.
24422
24423 2007-04-23  Bruno Haible  <bruno@clisp.org>
24424
24425         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
24426
24427 2007-04-23  Bruno Haible  <bruno@clisp.org>
24428
24429         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
24430
24431 2007-04-23  Bruno Haible  <bruno@clisp.org>
24432
24433         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
24434         Needed on HP-UX 11.
24435
24436 2007-04-16  Eric Blake  <ebb9@byu.net>
24437
24438         Make fflush rely on fpurge.
24439         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
24440         open coding all variants.
24441         * modules/fflush (Depends-on): Add fpurge and unistd.
24442         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
24443         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
24444
24445         Fix --with-tests compilation on cygwin.
24446         * modules/argmatch-tests (Makefile.am): List gnulib library first
24447         in LDADD.
24448         * modules/argp-tests (Makefile.am): Likewise.
24449         * modules/array-list-tests (Makefile.am): Likewise.
24450         * modules/array-oset-tests (Makefile.am): Likewise.
24451         * modules/avltree-list-tests (Makefile.am): Likewise.
24452         * modules/avltree-oset-tests (Makefile.am): Likewise.
24453         * modules/avltreehash-list-tests (Makefile.am): Likewise.
24454         * modules/carray-list-tests (Makefile.am): Likewise.
24455         * modules/dirname-tests (Makefile.am): Likewise.
24456         * modules/frexp-tests (Makefile.am): Likewise.
24457         * modules/isnanl-tests (Makefile.am): Likewise.
24458         * modules/linked-list-tests (Makefile.am): Likewise.
24459         * modules/linkedhash-list-tests (Makefile.am): Likewise.
24460         * modules/lock-tests (Makefile.am): Likewise.
24461         * modules/rbtree-list-tests (Makefile.am): Likewise.
24462         * modules/rbtree-oset-tests (Makefile.am): Likewise.
24463         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
24464         * modules/tls-tests (Makefile.am): Likewise.
24465         * modules/tsearch-tests (Makefile.am): Likewise.
24466         * modules/xvasprintf-tests (Makefile.am): Likewise.
24467
24468         Fix fpurge for cygwin.
24469         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
24470         value.
24471         * modules/fpurge-tests (Depends-on): Clean up trash.
24472
24473 2007-04-16  Simon Josefsson  <simon@josefsson.org>
24474
24475         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
24476
24477         * m4/autobuild.m4: Re-indent.
24478
24479 2007-04-13  Bruno Haible  <bruno@clisp.org>
24480
24481         * modules/fpurge-tests: New file.
24482         * tests/test-fpurge.c: New file.
24483
24484         * modules/fpurge: New file.
24485         * lib/fpurge.h: New file.
24486         * lib/fpurge.c: New file.
24487         * m4/fpurge.m4: New file.
24488
24489 2007-04-13  Bruno Haible  <bruno@clisp.org>
24490
24491         * modules/fbufmode-tests: New file.
24492         * tests/test-fbufmode.c: New file.
24493
24494         * modules/fbufmode: New file.
24495         * lib/fbufmode.h: New file.
24496         * lib/fbufmode.c: New file.
24497         * m4/fbufmode.m4: New file.
24498
24499 2007-04-13  Bruno Haible  <bruno@clisp.org>
24500
24501         * modules/fwritable-tests: New file.
24502         * tests/test-fwritable.c: New file.
24503
24504         * modules/fwritable: New file.
24505         * lib/fwritable.h: New file.
24506         * lib/fwritable.c: New file.
24507         * m4/fwritable.m4: New file.
24508
24509 2007-04-13  Bruno Haible  <bruno@clisp.org>
24510
24511         * modules/freadable-tests: New file.
24512         * tests/test-freadable.c: New file.
24513
24514         * modules/freadable: New file.
24515         * lib/freadable.h: New file.
24516         * lib/freadable.c: New file.
24517         * m4/freadable.m4: New file.
24518
24519 2007-04-13  Bruno Haible  <bruno@clisp.org>
24520
24521         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
24522         MOSTLYCLEANFILES.
24523
24524 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
24525
24526         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
24527         gzip bootstrap.conf to avoid dragging in i18n machinery.
24528         (gnulib_tool_option): Use it.
24529
24530 2007-04-13  Bruno Haible  <bruno@clisp.org>
24531
24532         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
24533         %F directives.
24534         * tests/test-vasprintf-posix.c (test_function): Likewise.
24535         * tests/test-snprintf-posix.h (test_function): Likewise.
24536         * tests/test-sprintf-posix.h (test_function): Likewise.
24537         * tests/test-fprintf-posix.h (test_function): Likewise.
24538         * tests/test-printf-posix.h (test_function): Likewise.
24539         * tests/test-fprintf-posix.out: Likewise.
24540
24541 2007-04-13  Bruno Haible  <bruno@clisp.org>
24542
24543         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
24544         * modules/tls-tests (configure.ac): Likewise.
24545         Reported by Arto C. Nirkko <anirkko@insel.ch>.
24546
24547 2007-04-13  Bruno Haible  <bruno@clisp.org>
24548
24549         * lib/tls.c (glthread_tls_get): Fix return type.
24550         Patch by Arto C. Nirkko <anirkko@insel.ch>.
24551
24552 2007-04-12  Eric Blake  <ebb9@byu.net>
24553
24554         * modules/gettime (Depends-on): Remove gettime.
24555         Reported by Dmitry V. Levin.
24556
24557 2007-04-12  Bruno Haible  <bruno@clisp.org>
24558
24559         * modules/fflush (Include): Mention <stdio.h>.
24560         * modules/strtoimax (Include): Mention <inttypes.h>.
24561         * modules/strtoumax (Include): Likewise.
24562
24563 2007-04-12  Eric Blake  <ebb9@byu.net>
24564
24565         * .cvsignore: New file.
24566         * .gitignore: Likewise.
24567
24568 2007-04-12  Bruno Haible  <bruno@clisp.org>
24569
24570         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
24571         not before, since $(LDADD) often contains libgnu.a.
24572         * modules/striconv-tests (test_striconv_LDADD): Likewise.
24573         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
24574         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
24575         Needed on Cygwin.
24576
24577 2007-04-12  Eric Blake  <ebb9@byu.net>
24578
24579         Work around glibc's failure to flush stdin on fclose.
24580         * lib/closein.c (close_stdin): Flush stdin before closing.
24581
24582         Work around glibc's failure to reset seekable stdin on exit.
24583         * modules/closein: New module.
24584         * lib/closein.c: New file.
24585         * lib/closein.h: Likewise.
24586         * m4/closein.m4: Likewise.
24587         * MODULES.html.sh (File stream based Input/Output): Document it.
24588
24589 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24590
24591         * gnulib-tool: Rename generated 'autobuild' script to
24592         'do-autobuild' in --create-megatestdir output.
24593
24594         * doc/gnulib.texi (Build robot for gnulib): Fix.
24595
24596 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24597
24598         * modules/sysexits (Depends-on): Add absolute-header.
24599
24600 2007-04-12  Eric Blake  <ebb9@byu.net>
24601
24602         No need to preserve errno on success.
24603         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
24604         Reported by Bruno Haible.
24605
24606 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24607
24608         * MODULES.html.sh (Support for maintaining and releasing
24609         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
24610
24611 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24612
24613         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
24614
24615 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24616
24617         * modules/autobuild: New module.
24618
24619         * m4/autobuild.m4: New file.
24620
24621 2007-04-11  Bruno Haible  <bruno@clisp.org>
24622
24623         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
24624         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
24625         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
24626         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
24627         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
24628         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24629         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24630         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
24631         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24632         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24633         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
24634         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24635         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24636         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
24637         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24638         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24639         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
24640         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24641         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24642         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
24643         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24644         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24645         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
24646         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24647         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24648         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
24649         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24650         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24651         Reported by Eric Blake.
24652
24653 2007-04-11  Bruno Haible  <bruno@clisp.org>
24654
24655         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
24656
24657 2007-04-10  Bruno Haible  <bruno@clisp.org>
24658
24659         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
24660         for NaN and Infinity. Needed on FreeBSD 6.1.
24661         * tests/test-vasnprintf-posix.c (test_function): Undo last change
24662         regarding results for "%010a" of Infinity and NaN.
24663         * tests/test-vasprintf-posix.c (test_function): Likewise.
24664         * tests/test-snprintf-posix.h (test_function): Likewise.
24665         * tests/test-sprintf-posix.h (test_function): Likewise.
24666         * tests/test-fprintf-posix.h (test_function): Likewise.
24667         * tests/test-printf-posix.h (test_function): Likewise.
24668         * tests/test-fprintf-posix.out: Likewise.
24669
24670 2007-04-10  Bruno Haible  <bruno@clisp.org>
24671
24672         * modules/locale-tests: New file.
24673         * tests/test-locale.c: New file.
24674
24675         * modules/locale: New file.
24676         * lib/locale_.h: New file.
24677         * m4/locale_h.m4: New file.
24678
24679 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
24680             Bruno Haible  <bruno@clisp.org>
24681
24682         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
24683         be determined, test for availability of the copysignf, copysign,
24684         copysignl functions.
24685         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
24686         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
24687         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
24688
24689 2007-04-09  Eric Blake  <ebb9@byu.net>
24690
24691         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
24692         * modules/stdio (Makefile.am): Support fflush.
24693         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
24694         * modules/fflush: New file.
24695         * lib/fflush.c: Likewise.
24696         * m4/fflush.m4: Likewise.
24697         * modules/fflush-tests: New test.
24698         * tests/test-fflush.c: Likewise.
24699         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
24700
24701 2007-04-06  Bruno Haible  <bruno@clisp.org>
24702
24703         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
24704         (VASNPRINTF): Use signbit for faster determination whether to print a
24705         minus sign.
24706         * modules/vasnprintf (Files): Remove lib/float+.h.
24707         * modules/fprintf-posix (Depends-on): Add signbit.
24708         * modules/snprintf-posix (Depends-on): Likewise.
24709         * modules/sprintf-posix (Depends-on): Likewise.
24710         * modules/vasnprintf-posix (Depends-on): Likewise.
24711         * modules/vasprintf-posix (Depends-on): Likewise.
24712         * modules/vfprintf-posix (Depends-on): Likewise.
24713         * modules/vsnprintf-posix (Depends-on): Likewise.
24714         * modules/vsprintf-posix (Depends-on): Likewise.
24715
24716 2007-04-06  Bruno Haible  <bruno@clisp.org>
24717
24718         * tests/test-frexp.c (main): Test also the sign bit of zero results.
24719         * tests/test-frexpl.c (main): Likewise.
24720         * tests/test-ldexpl.c (main): Likewise.
24721         * modules/frexp-tests (Depends-on): Add signbit.
24722         * modules/frexpl-tests (Depdends-on): Likewise.
24723         * modules/ldexpl-tests (Depdends-on): Likewise.
24724
24725 2007-04-06  Bruno Haible  <bruno@clisp.org>
24726
24727         * modules/signbit-tests: New file.
24728         * tests/test-signbit.c: New file.
24729
24730         * modules/signbit: New file.
24731         * lib/signbitf.c: New file.
24732         * lib/signbitd.c: New file.
24733         * lib/signbitl.c: New file.
24734         * m4/signbit.m4: New file.
24735         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
24736         (signbit): New macro.
24737         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
24738         REPLACE_SIGNBIT.
24739         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
24740         REPLACE_FREXPL into math.h.
24741
24742 2007-04-06  Bruno Haible  <bruno@clisp.org>
24743
24744         * modules/isnanf-nolibm-tests: New file.
24745         * tests/test-isnanf.c: New file.
24746
24747         * modules/isnanf-nolibm: New file.
24748         * lib/isnanf.h: New file.
24749         * lib/isnanf.c: New file.
24750         * lib/isnan.c: Consider the USE_FLOAT macro.
24751         * m4/isnanf.m4: New file.
24752
24753 2007-04-06  Bruno Haible  <bruno@clisp.org>
24754
24755         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
24756         (Link): New section.
24757
24758         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
24759
24760 2007-04-06  Bruno Haible  <bruno@clisp.org>
24761
24762         Assume the 'long double' type.
24763         * m4/longdouble.m4: Remove file.
24764         * config/srclist.txt: Don't mention longdouble.m4.
24765         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
24766         * lib/float+.h: Likewise.
24767         * lib/frexp.c: Likewise.
24768         * lib/printf-args.h: Likewise.
24769         * lib/printf-args.c: Likewise.
24770         * lib/printf-frexp.c: Likewise.
24771         * lib/printf-parse.c: Likewise.
24772         * lib/vasnprintf.c: Likewise.
24773         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
24774         * m4/intl.m4: Likewise.
24775         * m4/isnanl.m4: Likewise.
24776         * m4/printf.m4: Likewise.
24777         * m4/printf-frexpl.m4: Likewise.
24778         * m4/vasnprintf.m4: Likewise.
24779         * modules/allocsa (Files): Remove m4/longdouble.m4.
24780         * modules/gettext (Files): Likewise.
24781         * modules/relocatable-prog-wrapper (Files): Likewise.
24782         * modules/vasnprintf (Files): Likewise.
24783         * modules/isnanl (Files): Likewise.
24784         (Include): Simplify.
24785         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
24786         (Include): Simplify.
24787         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
24788         (Include): Simplify.
24789         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
24790         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24791         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
24792         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24793         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
24794         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24795         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
24796         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24797         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
24798         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24799         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
24800         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24801         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
24802         * tests/test-isnanl.c: Likewise.
24803         * tests/test-snprintf-posix.h: Likewise.
24804         * tests/test-sprintf-posix.h: Likewise.
24805         * tests/test-vasnprintf-posix.c: Likewise.
24806         * tests/test-vasnprintf-posix2.c: Likewise.
24807         * tests/test-vasprintf-posix.c: Likewise.
24808
24809 2007-04-06  Bruno Haible  <bruno@clisp.org>
24810
24811         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
24812         * lib/math_.h [__DECC]: Include the overridden include file through
24813         #include_next, outside the double-inclusion guard.
24814         * lib/stdio_.h [__DECC]: Likewise.
24815         * lib/stdlib_.h [__DECC]: Likewise.
24816         * lib/string_.h [__DECC]: Likewise.
24817         * lib/time_.h [__DECC]: Likewise.
24818         * lib/wchar_.h [__DECC]: Likewise.
24819         * lib/wctype_.h [__DECC]: Likewise.
24820         * lib/inttypes_.h [__DECC]: Likewise.
24821         Reported by Albert Chin <china@thewrittenword.com> in
24822         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
24823
24824 2007-04-04  Eric Blake  <ebb9@byu.net>
24825
24826         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
24827         1.5.x.
24828
24829 2007-04-04  Bruno Haible  <bruno@clisp.org>
24830
24831         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
24832         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
24833
24834 2007-04-04  Bruno Haible  <bruno@clisp.org>
24835
24836         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
24837         results for "%010a" of Infinity and NaN.
24838         * tests/test-vasprintf-posix.c (test_function): Likewise.
24839         * tests/test-snprintf-posix.h (test_function): Likewise.
24840         * tests/test-sprintf-posix.h (test_function): Likewise.
24841         * tests/test-fprintf-posix.h (test_function): Remove these tests.
24842         * tests/test-printf-posix.h (test_function): Likewise.
24843         * tests/test-fprintf-posix.out: Update.
24844         Needed for FreeBSD 6.1.
24845
24846 2007-04-04  Bruno Haible  <bruno@clisp.org>
24847
24848         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
24849         directly used by the gnulib modules nor by gnulib-tool.
24850
24851 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
24852
24853         * DEPENDENCIES: Give overall description of version dependency
24854         desirability.  Use more-typical names for apps.
24855         Add shell, coreutils, diffutils, grep, tar, gzip.
24856
24857 2007-04-04  Simon Josefsson  <simon@josefsson.org>
24858
24859         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
24860
24861 2007-04-04  Karl Berry  <karl@gnu.org>
24862
24863         * MODULES.html.sh (func_module): missing '.
24864
24865 2007-04-03  Bruno Haible  <bruno@clisp.org>
24866
24867         * modules/argmatch-tests (Makefile.am): New variable
24868         test_argmatch_LDADD.
24869         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
24870         * modules/array-list-tests (Makefile.am): New variable
24871         test_array_list_LDADD.
24872         * modules/array-oset-tests (Makefile.am): New variable
24873         test_array_oset_LDADD.
24874         * modules/avltree-list-tests (Makefile.am): New variable
24875         test_avltree_list_LDADD.
24876         * modules/avltree-oset-tests (Makefile.am): New variable
24877         test_avltree_oset_LDADD.
24878         * modules/avltreehash-list-tests (Makefile.am): New variable
24879         test_avltreehash_list_LDADD.
24880         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
24881         test_canonicalize_lgpl_LDADD.
24882         * modules/carray-list-tests (Makefile.am): New variable
24883         test_carray_list_LDADD.
24884         * modules/dirname-tests (Makefile.am): New variable
24885         test_dirname_LDADD.
24886         * modules/linked-list-tests (Makefile.am): New variable
24887         test_linked_list_LDADD.
24888         * modules/linkedhash-list-tests (Makefile.am): New variable
24889         test_linkedhash_list_LDADD.
24890         * modules/rbtree-list-tests (Makefile.am): New variable
24891         test_rbtree_list_LDADD.
24892         * modules/rbtree-oset-tests (Makefile.am): New variable
24893         test_rbtree_oset_LDADD.
24894         * modules/rbtreehash-list-tests (Makefile.am): New variable
24895         test_rbtreehash_list_LDADD.
24896         * modules/xvasprintf-tests (Makefile.am): New variable
24897         test_xvasprintf_LDADD.
24898         Reported by Eric Blake.
24899
24900 2007-04-03  Eric Blake  <ebb9@byu.net>
24901
24902         * DEPENDENCIES: Weaken m4 requirements.
24903
24904 2007-04-03  Bruno Haible  <bruno@clisp.org>
24905
24906         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
24907         * modules/isnanl-tests (configure.ac): Likewise.
24908
24909 2007-04-03  Ben Pfaff  <blp@gnu.org>
24910
24911         * modules/iconv_open: Add $(srcdir)/ to source directory
24912         references in Makefile fragments that call gperf, to fix VPATH
24913         builds.
24914
24915 2007-04-03  Bruno Haible  <bruno@clisp.org>
24916
24917         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
24918         * lib/ldexpl.c: Undo last change.
24919
24920 2007-04-03  Bruno Haible  <bruno@clisp.org>
24921
24922         * modules/printf-frexpl (Depends-on): Undo last change.
24923         (Files): Add m4/ldexpl.m4.
24924
24925 2007-04-03  Bruno Haible  <bruno@clisp.org>
24926
24927         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
24928         * modules/isnanl (Link): New section.
24929
24930         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
24931         * modules/frexp (Link): New section.
24932
24933         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
24934         * modules/frexpl (Link): New section.
24935
24936         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
24937         * modules/ldexpl (Link): New section.
24938
24939 2007-04-03  Bruno Haible  <bruno@clisp.org>
24940
24941         * modules/TEMPLATE-EXTENDED: New file.
24942         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
24943
24944 2007-04-03  Bruno Haible  <bruno@clisp.org>
24945
24946         * DEPENDENCIES: New file.
24947         Suggested by Simon Josefsson.
24948
24949 2007-04-03  Bruno Haible  <bruno@clisp.org>
24950
24951         * doc/gnulib.texi: Escape @.
24952
24953 2007-04-03  James Youngman  <jay@gnu.org>
24954         and Paul Eggert  <eggert@cs.ucla.edu>
24955
24956         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
24957         birthtime on all systems that have birthtime, not just those which
24958         use st_birthtimensec rather than st_birthtim.  Putting zero in
24959         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
24960         that the birth time is not available for files on an NFS mount.
24961
24962 2007-04-03  Simon Josefsson  <simon@josefsson.org>
24963
24964         * modules/memxor: Move back from crypto/, suggested by Bruno.
24965         * modules/crypto/hmac-sha1: Fix memxor dependency.
24966
24967         * modules/crypto/gc: Moved from ../.
24968
24969 2007-04-02  Eric Blake  <ebb9@byu.net>
24970
24971         * lib/ldexpl.c (includes): Avoid libm.
24972
24973         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
24974
24975 2007-04-02  Bruno Haible  <bruno@clisp.org>
24976
24977         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
24978         on IRIX.
24979
24980 2007-04-02  Bruno Haible  <bruno@clisp.org>
24981
24982         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
24983         x86 or x86_64 platforms running MacOS X.
24984         Reported by Ryan Schmidt <@ryandesign.com>.
24985
24986 2007-04-02  Bruno Haible  <bruno@clisp.org>
24987
24988         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
24989         i386.
24990
24991 2007-04-01  Simon Josefsson  <simon@josefsson.org>
24992
24993         * modules/crypto/arcfour: Moved from ../.
24994         * modules/crypto/arcfour-tests: Moved from ../.
24995         * modules/crypto/arctwo: Moved from ../.
24996         * modules/crypto/arctwo-tests: Moved from ../.
24997         * modules/crypto/des: Moved from ../.
24998         * modules/crypto/des-tests: Moved from ../.
24999         * modules/crypto/gc-arcfour: Moved from ../.
25000         * modules/crypto/gc-arcfour-tests: Moved from ../.
25001         * modules/crypto/gc-arctwo: Moved from ../.
25002         * modules/crypto/gc-arctwo-tests: Moved from ../.
25003         * modules/crypto/gc-des: Moved from ../.
25004         * modules/crypto/gc-des-tests: Moved from ../.
25005         * modules/crypto/gc-hmac-md5: Moved from ../.
25006         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
25007         * modules/crypto/gc-hmac-sha1: Moved from ../.
25008         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
25009         * modules/crypto/gc-md2: Moved from ../.
25010         * modules/crypto/gc-md2-tests: Moved from ../.
25011         * modules/crypto/gc-md4: Moved from ../.
25012         * modules/crypto/gc-md4-tests: Moved from ../.
25013         * modules/crypto/gc-md5: Moved from ../.
25014         * modules/crypto/gc-md5-tests: Moved from ../.
25015         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
25016         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
25017         * modules/crypto/gc-random: Moved from ../.
25018         * modules/crypto/gc-rijndael: Moved from ../.
25019         * modules/crypto/gc-rijndael-tests: Moved from ../.
25020         * modules/crypto/gc-sha1: Moved from ../.
25021         * modules/crypto/gc-sha1-tests: Moved from ../.
25022         * modules/crypto/gc-tests: Moved from ../.
25023         * modules/crypto/hmac-md5: Moved from ../.
25024         * modules/crypto/hmac-md5-tests: Moved from ../.
25025         * modules/crypto/hmac-sha1: Moved from ../.
25026         * modules/crypto/hmac-sha1-tests: Moved from ../.
25027         * modules/crypto/md2: Moved from ../.
25028         * modules/crypto/md2-tests: Moved from ../.
25029         * modules/crypto/md4: Moved from ../.
25030         * modules/crypto/md4-tests: Moved from ../.
25031         * modules/crypto/md5: Moved from ../.
25032         * modules/crypto/md5-tests: Moved from ../.
25033         * modules/crypto/memxor: Moved from ../.
25034         * modules/crypto/rijndael: Moved from ../.
25035         * modules/crypto/rijndael-tests: Moved from ../.
25036         * modules/crypto/sha1: Moved from ../.
25037
25038 2007-03-30  James Youngman  <jay@gnu.org>
25039
25040         * tests/test-stat-time.c (prepare_test): use chmod() rather than
25041         rename() to change the ctime of a file (because ctime is unaffected
25042         by rename on jfs2 on AIX 5.1).
25043         (main): Start by doing cleanup, in case a previous run failed leaving
25044         test files behind.
25045
25046 2007-03-31  Bruno Haible  <bruno@clisp.org>
25047
25048         Support old proprietary implementations of iconv.
25049         * modules/iconv_open: New file.
25050         * lib/iconv_.h: New file.
25051         * m4/iconv_h.m4: New file.
25052         * lib/iconv_open.c: New file.
25053         * lib/iconv_open-aix.gperf: New file.
25054         * lib/iconv_open-hpux.gperf: New file.
25055         * lib/iconv_open-irix.gperf: New file.
25056         * lib/iconv_open-osf.gperf: New file.
25057         * m4/iconv_open.m4: New file.
25058         * modules/linebreak (Depends-on): Add iconv_open.
25059         * modules/striconv (Depends-on): Likewise.
25060         * modules/striconveh (Depends-on): Likewise.
25061         * modules/unicodeio (Depends-on): Likewise.
25062         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
25063         (iconv_t)(-1).
25064         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
25065         conversion if cd is (iconv_t)(-1).
25066         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
25067         is not possible.
25068
25069 2007-03-31  Bruno Haible  <bruno@clisp.org>
25070
25071         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
25072         work on Solaris either. Protect also second use of "autodetect_jp".
25073
25074 2007-03-31  Bruno Haible  <bruno@clisp.org>
25075
25076         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
25077         the function is not present.
25078
25079 2007-03-31  Bruno Haible  <bruno@clisp.org>
25080
25081         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
25082         the function is not present.
25083
25084 2007-03-31  Bruno Haible  <bruno@clisp.org>
25085
25086         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
25087         a bug in HP-UX iconv_open().
25088
25089 2007-03-31  Bruno Haible  <bruno@clisp.org>
25090
25091         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
25092         (Mathematics <math.h>): New section, add fpieee.
25093         (Input/output <stdio.h>): Add fseterr.
25094         (Mathematics <math.h>): New section, add printf-frexp.
25095         (Container data structures): Add sublist.
25096         (Core language properties): Add fpucw, inline.
25097         (Functions for greatest-width integer types <inttypes.h>): Add
25098         imaxabs, imaxdiv, inttypes.
25099         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
25100         isnanl-nolibm, ldexp.
25101         (Mathematics <math.h>): New section, add printf-frexpl.
25102         (Support for systems lacking POSIX:2001): Add fprintf-posix,
25103         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
25104         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
25105         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
25106         (Unicode string functions): Add unistr/u*-mbtoucr.
25107         (Java): Add javacomp-script, javaexec-script.
25108         (C#): Add csharpcomp-script, csharpexec-script.
25109         (Support for building libraries and executables): Add havelib,
25110         relocatable-*.
25111         (Support for maintaining and releasing projects): Renamed from
25112         'Support for maintaining and release projects'. Add announce-gen.
25113
25114 2007-03-31  Bruno Haible  <bruno@clisp.org>
25115
25116         * README: Talk primarily about git.
25117         (git and CVS): Renamed from CVS.
25118         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
25119         gnulib is available through git.
25120         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
25121
25122 2007-03-30  Bruno Haible  <bruno@clisp.org>
25123
25124         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
25125         * lib/poll_.h: Likewise.
25126         * lib/stat_.h: Likewise.
25127         * lib/sys_time_.h: Likewise.
25128         * lib/sysexit_.h: Likewise.
25129         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
25130         * lib/stdbool_.h: Likewise.
25131         * lib/byteswap_.h: Add double-inclusion guard.
25132
25133 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
25134
25135         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
25136
25137 2007-03-30  Karl Berry  <karl@gnu.org>
25138
25139         * config/srclist-update: double space after USA in the license
25140         substitution, since that's how it's usually (?) written.
25141
25142 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
25143
25144         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
25145         reported by Bruno Haible.
25146
25147 2007-03-29  Bruno Haible  <bruno@clisp.org>
25148
25149         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
25150         a bug in AIX iconv().
25151
25152 2007-03-29  Bruno Haible  <bruno@clisp.org>
25153
25154         * modules/ldexpl-tests: New file.
25155         * tests/test-ldexpl.c: New file.
25156
25157 2007-03-29  Bruno Haible  <bruno@clisp.org>
25158
25159         * lib/ldexpl.c: Include fpucw.h.
25160         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
25161         multiplication.
25162         * modules/ldexpl (Depends-on): Add fpucw.
25163
25164 2007-03-29  Bruno Haible  <bruno@clisp.org>
25165
25166         * modules/ldexpl: New file.
25167         * m4/ldexpl.m4: New file.
25168         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
25169         set.
25170         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
25171         REPLACE_LDEXPL.
25172         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
25173         REPLACE_LDEXPL.
25174         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
25175         gl_FUNC_LDEXPL_WORKS.
25176         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
25177         * modules/mathl (Files): Remove lib/ldexpl.c.
25178         (Depends-on): Add ldexpl.
25179
25180 2007-03-29  Bruno Haible  <bruno@clisp.org>
25181
25182         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
25183
25184 2007-03-29  Bruno Haible  <bruno@clisp.org>
25185
25186         * tests/test-striconveh.c (main): Don't assume that a direct conversion
25187         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
25188         and possibly also HP-UX.
25189         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
25190         work on AIX, IRIX, HP-UX, OSF/1.
25191         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
25192         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
25193         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
25194         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
25195         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
25196         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
25197
25198 2007-03-29  Bruno Haible  <bruno@clisp.org>
25199
25200         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
25201
25202 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
25203
25204         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
25205         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
25206
25207 2007-03-29  Eric Blake  <ebb9@byu.net>
25208
25209         * lib/acl-internal.h: Remove redundant include.
25210         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
25211         Cygwin when a file is locked.
25212
25213 2007-03-29  Bruno Haible  <bruno@clisp.org>
25214
25215         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
25216         file.
25217         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
25218
25219 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
25220
25221         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
25222         try to remove a parent directory if the child couldn't be removed
25223         (except for the first rmdir, which could fail because the child
25224         doesn't exist).  Problem reported by Jeff Blaine in
25225         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
25226
25227 2007-03-28  Bruno Haible  <bruno@clisp.org>
25228
25229         * lib/striconveh.c (utf8conv_carefully): New function.
25230         (mem_cd_iconveh_internal): Invoke it.
25231
25232 2007-03-28  Bruno Haible  <bruno@clisp.org>
25233
25234         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
25235         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
25236         input.
25237         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
25238         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
25239         unistr/u8-uctomb.
25240
25241 2007-03-28  Bruno Haible  <bruno@clisp.org>
25242
25243         * modules/unistr/u8-mbtoucr: New file.
25244         * lib/unistr/u8-mbtoucr.c: New file.
25245         * modules/unistr/u16-mbtoucr: New file.
25246         * lib/unistr/u16-mbtoucr.c: New file.
25247         * modules/unistr/u16-mbtoucr: New file.
25248         * lib/unistr/u16-mbtoucr.c: New file.
25249         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
25250
25251 2007-03-27  Simon Josefsson  <simon@josefsson.org>
25252             Bruno Haible  <bruno@clisp.org>
25253
25254         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
25255         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
25256         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
25257
25258         * m4/stdio_h.m4: Add stubs for vasprintf too.
25259
25260         * modules/stdio: Support vasprintf in sed command.
25261
25262         * modules/vasprintf: Depend on stdio for prototypes.  Remove
25263         vasprintf.h.  Add stdio module indicator.
25264
25265         * lib/stdio_.h: Declare asprintf and vasprintf, based on
25266         vasprintf.h.
25267
25268         * lib/vasprintf.h: File removed.
25269
25270         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
25271         * lib/vasprintf.c: Ditto.
25272         * lib/xvasprintf.c: Ditto.
25273         * tests/test-vasprintf-posix.c: Ditto.
25274         * tests/test-vasprintf.c: Ditto.
25275
25276 2007-03-27  Bruno Haible  <bruno@clisp.org>
25277
25278         Make vasnprintf multithread-safe.
25279         * lib/vasnprintf.c (decimal_point_char): New function.
25280         (VASNPRINTF): Use it.
25281         Suggested by Simon Josefsson.
25282
25283 2007-03-27  Eric Blake  <ebb9@byu.net>
25284
25285         Support sub-second birthtime on cygwin.
25286         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
25287         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
25288         (get_stat_birthtime): Also work with st_birthtim.
25289
25290 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
25291
25292         * lib/stat-time.h (USE_BIRTHTIME): Remove.
25293         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
25294         (get_stat_birthtime_ns): Do not try to use "spare" fields.
25295         (get_stat_birthtime_ns): Simplify compile-time tests.
25296         (get_stat_birthtime): Change the API to look like
25297         get_stat_mtime etc., except return a negative tv_nsec on error.
25298         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
25299         Don't check for "spare" fields.
25300         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
25301         or for struct stat.st_birthtime, as these tests aren't used.
25302         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
25303
25304 2007-03-27  Bruno Haible  <bruno@clisp.org>
25305
25306         * lib/stat-time.h: Include <sys/stat.h>.
25307
25308 2007-03-27  James Youngman  <jay@gnu.org>
25309
25310         * lib/stat-time.h (get_stat_birthtime): New function for
25311           retrieving st_birthtime as provided by UFS2 (hence *BSD).
25312         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
25313           and its variants.
25314         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
25315         * modules/stat-time-test: New file.
25316         * tests/test-stat-time.c: New test, devised by Bruno Haible.
25317
25318 2007-03-26  Bruno Haible  <bruno@clisp.org>
25319
25320         Better support of signalling NaNs.
25321         * lib/atanl.c: Include isnanl.h.
25322         (atanl): Perform test for NaN at the beginning of the function and
25323         through a call to isnanl.
25324         * lib/cosl.c: Include isnanl.h.
25325         (cosl): Perform test for NaN at the beginning of the function and
25326         through a call to isnanl.
25327         * lib/ldexpl.c: Include isnanl.h.
25328         (ldexpl): Perform test for NaN through a call to isnanl.
25329         * lib/logl.c: Include isnanl.h.
25330         (logl): Perform test for NaN at the beginning of the function and
25331         through a call to isnanl.
25332         * lib/sinl.c: Include isnanl.h.
25333         (sinl): Perform test for NaN at the beginning of the function and
25334         through a call to isnanl.
25335         * lib/sqrtl.c: Include isnanl.h.
25336         (sqrtl): Perform test for NaN at the beginning of the function and
25337         through a call to isnanl.
25338         * lib/tanl.c: Include isnanl.h.
25339         (tanl): Perform test for NaN at the beginning of the function and
25340         through a call to isnanl.
25341         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
25342         * modules/mathl (Depends-on): Add isnanl.
25343
25344 2007-03-26  Eric Blake  <ebb9@byu.net>
25345
25346         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
25347         regression in logic sense of previous patch.
25348
25349 2007-03-26  Bruno Haible  <bruno@clisp.org>
25350
25351         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
25352         unportable shell command "if ! ...".
25353         Reported by Ralf Wildenhues.
25354
25355 2007-03-25  Bruno Haible  <bruno@clisp.org>
25356
25357         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
25358         <sysexits.h> file, and only add EX_CONFIG.
25359         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
25360         absolute file name and whether it is sufficient. Substitute also
25361         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
25362         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
25363         ABSOLUTE_SYSEXITS_H into sysexits.h.
25364
25365 2007-03-25  Bruno Haible  <bruno@clisp.org>
25366
25367         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
25368         hints is NULL.
25369
25370 2007-03-25  Bruno Haible  <bruno@clisp.org>
25371
25372         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
25373         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
25374
25375 2007-03-25  Bruno Haible  <bruno@clisp.org>
25376
25377         * lib/vasnprintf.c: Include langinfo.h.
25378         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
25379         multithread-safe.
25380         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
25381         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
25382         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
25383         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
25384         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
25385         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
25386         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
25387         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
25388         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
25389         Reported by Simon Josefsson.
25390
25391 2007-03-25  Bruno Haible  <bruno@clisp.org>
25392
25393         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
25394         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
25395         * modules/vasnprintf (Depends-on): Add stdint.
25396
25397 2007-03-25  Bruno Haible  <bruno@clisp.org>
25398
25399         * modules/fpieee: New file.
25400         * m4/fpieee.m4: New file.
25401         * modules/isnan-nolibm (Depends-on): Add fpieee.
25402         * modules/isnanl-nolibm (Depends-on): Add fpieee.
25403         * modules/isnanl (Depends-on): Add fpieee.
25404
25405 2007-03-25  Bruno Haible  <bruno@clisp.org>
25406
25407         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
25408
25409 2007-03-25  Bruno Haible  <bruno@clisp.org>
25410
25411         Avoid test failures on IRIX 6.5.
25412         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
25413         (main): Use it.
25414         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
25415         macros.
25416         (main): Use them.
25417
25418 2007-03-25  Bruno Haible  <bruno@clisp.org>
25419
25420         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
25421         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
25422         exists but doesn't work.
25423         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
25424         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
25425         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
25426         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
25427
25428 2007-03-25  Bruno Haible  <bruno@clisp.org>
25429
25430         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
25431         returns inf. Needed on IRIX 6.5.
25432
25433 2007-03-25  Bruno Haible  <bruno@clisp.org>
25434
25435         * tests/test-frexpl.c: Include isnanl-nolibm.h.
25436         (main): Use isnanl instead of x != x idiom.
25437         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
25438
25439         * tests/test-frexp.c: Include isnan.h.
25440         (main): Use isnan instead of x != x idiom.
25441         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
25442
25443 2007-03-25  Bruno Haible  <bruno@clisp.org>
25444
25445         * tests/test-frexp.c (NaN): New function/macro.
25446         (main): Use it instead of 0.0 / 0.0.
25447         * tests/test-isnan.c (NaN): New function/macro.
25448         (main): Use it instead of 0.0 / 0.0.
25449         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
25450         (test_function): Use it instead of 0.0 / 0.0.
25451         * tests/test-vasprintf-posix.c (NaN): New function/macro.
25452         (test_function): Use it instead of 0.0 / 0.0.
25453         * tests/test-snprintf-posix.h (NaN): New function/macro.
25454         (test_function): Use it instead of 0.0 / 0.0.
25455         * tests/test-sprintf-posix.h (NaN): New function/macro.
25456         (test_function): Use it instead of 0.0 / 0.0.
25457         * tests/test-fprintf-posix.h (NaN): New function/macro.
25458         (test_function): Use it instead of 0.0 / 0.0.
25459         * tests/test-printf-posix.h (NaN): New function/macro.
25460         (test_function): Use it instead of 0.0 / 0.0.
25461
25462         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
25463
25464 2007-03-25  Bruno Haible  <bruno@clisp.org>
25465
25466         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
25467
25468 2007-03-25  Bruno Haible  <bruno@clisp.org>
25469
25470         * lib/regexec.c (merge_state_with_log): Make static.
25471
25472 2007-03-25  Bruno Haible  <bruno@clisp.org>
25473
25474         * lib/trigl.c (kernel_rem_pio2): Make static.
25475
25476 2007-03-25  Bruno Haible  <bruno@clisp.org>
25477
25478         * lib/sincosl.c (sincosl_table): Make static.
25479
25480 2007-03-25  Bruno Haible  <bruno@clisp.org>
25481
25482         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
25483         if the compiler does not support C99.
25484
25485 2007-03-25  Bruno Haible  <bruno@clisp.org>
25486
25487         * modules/time (Makefile.am): Ensure all rule action lines start with a
25488         tab.
25489
25490 2007-03-24  Bruno Haible  <bruno@clisp.org>
25491
25492         * modules/tsearch-tests: New file.
25493         * tests/test-tsearch.sh: New file.
25494         * tests/test-tsearch.c: New file, mostly copied from glibc.
25495
25496         * modules/search-tests: New file.
25497         * tests/test-search.c: New file.
25498
25499         * modules/search: New file.
25500         * lib/search_.h: New file, incorporating lib/tsearch.h.
25501         * m4/search_h.m4: New file.
25502         * lib/tsearch.h: Remove file.
25503         * lib/tsearch.c: Include search.h instead of tsearch.h.
25504         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
25505         HAVE_TSEARCH.
25506         * modules/tsearch (Files): Remove lib/tsearch.h.
25507         (Depends-on): Add search.
25508         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
25509         (Include): Change tsearch.h into search.h.
25510
25511 2007-03-24  Bruno Haible  <bruno@clisp.org>
25512
25513         * modules/fpucw: New file.
25514         * lib/fpucw.h: New file.
25515         * lib/frexp.c: Include fpucw.h.
25516         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
25517         (FUNC): Use them.
25518         * lib/printf-frexp.c: Include fpucw.h.
25519         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
25520         (FUNC): Use them.
25521         * lib/vasnprintf.c: Include fpucw.h.
25522         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
25523         'long double' calculations.
25524         * tests/test-frexpl.c: Include fpucw.h.
25525         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
25526         * tests/test-printf-frexpl.c: Include fpucw.h.
25527         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
25528         * modules/frexpl (Depends-on): Add fpucw.
25529         * modules/printf-frexpl (Depends-on): Likewise.
25530         * modules/fprintf-posix (Depends-on): Likewise.
25531         * modules/snprintf-posix (Depends-on): Likewise.
25532         * modules/sprintf-posix (Depends-on): Likewise.
25533         * modules/vasnprintf-posix (Depends-on): Likewise.
25534         * modules/vasprintf-posix (Depends-on): Likewise.
25535         * modules/vfprintf-posix (Depends-on): Likewise.
25536         * modules/vsnprintf-posix (Depends-on): Likewise.
25537         * modules/vsprintf-posix (Depends-on): Likewise.
25538         * modules/frexpl-tests (Depends-on): Likewise.
25539         * modules/printf-frexpl-tests (Depends-on): Likewise.
25540
25541 2007-03-24  Bruno Haible  <bruno@clisp.org>
25542
25543         * lib/float+.h: New file.
25544         * lib/isnan.c: Include float+.h.
25545         (SIZE): New macro.
25546         (FUNC): Compare only SIZE bytes of the value.
25547         * lib/vasnprintf.c: Include float+.h.
25548         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
25549         SIZEOF_LDBL or SIZEOF_DBL bytes.
25550         * modules/isnan-nolibm (Files): Add lib/float+.h.
25551         * modules/isnanl-nolibm (Files): Add lib/float+.h.
25552         * modules/isnanl (Files): Add lib/float+.h.
25553         * modules/vasnprintf (Files): Add lib/float+.h.
25554
25555 2007-03-24  Bruno Haible  <bruno@clisp.org>
25556
25557         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
25558         include isnanl-nolibm.h.
25559
25560 2007-03-24  Bruno Haible  <bruno@clisp.org>
25561
25562         * tests/test-read-file.c (main): Don't produce spurious output for
25563         expected situations. Make the test fail if it encountered unexpected
25564         results.
25565
25566 2007-03-24  Bruno Haible  <bruno@clisp.org>
25567
25568         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
25569         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
25570
25571 2007-03-24  Bruno Haible  <bruno@clisp.org>
25572
25573         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
25574
25575 2007-03-24  Bruno Haible  <bruno@clisp.org>
25576
25577         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
25578         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
25579
25580         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
25581         * modules/utf8-ucs4: Turn into a symbolic link to module
25582         unistr/u8-mbtouc.
25583
25584         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
25585         utf8-ucs4-unsafe.
25586         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
25587         unistr/u8-mbtouc-unsafe.
25588
25589         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
25590         * modules/utf16-ucs4: Turn into a symbolic link to module
25591         unistr/u16-mbtouc.
25592
25593         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
25594         utf16-ucs4-unsafe.
25595         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
25596         unistr/u16-mbtouc-unsafe.
25597
25598         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
25599         * modules/ucs4-utf8: Turn into a symbolic link to module
25600         unistr/u8-ubtomb.
25601
25602         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
25603         * modules/ucs4-utf16: Turn into a symbolic link to module
25604         unistr/u16-ubtomb.
25605
25606 2007-03-24  Bruno Haible  <bruno@clisp.org>
25607
25608         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
25609         Enable the function only if HAVE_INLINE.
25610         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
25611         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
25612         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
25613         Enable the function only if HAVE_INLINE.
25614         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
25615         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
25616         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
25617         Enable the function only if HAVE_INLINE.
25618         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
25619         Enable the function only if HAVE_INLINE.
25620         * modules/utf8-ucs4: Update.
25621         * modules/utf8-ucs4-unsafe: Update.
25622         * modules/utf16-ucs4: Update.
25623         * modules/utf16-ucs4-unsafe: Update.
25624         * modules/ucs4-utf8: Update.
25625         * modules/ucs4-utf16: Update.
25626
25627 2007-03-24  Bruno Haible  <bruno@clisp.org>
25628
25629         * lib/utf8-ucs4.h: Remove file.
25630         * lib/utf8-ucs4-unsafe.h: Remove file.
25631         * lib/utf16-ucs4.h: Remove file.
25632         * lib/utf16-ucs4-unsafe.h: Remove file.
25633         * lib/ucs4-utf8.h: Remove file.
25634         * lib/ucs4-utf16.h: Remove file.
25635         * lib/unistr.h: Include their previous contents.
25636         * m4/utf-ucs4.m4: Remove file.
25637         * m4/ucs4-utf.m4: Remove file.
25638         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
25639         (Depends-on): Add unistr/base.
25640         (configure.ac): Remove gl_UTF_UCS4.
25641         (Makefile.am): Update.
25642         (Include): Change to unistr.h.
25643         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
25644         (Depends-on): Add unistr/base.
25645         (configure.ac): Remove gl_UTF_UCS4.
25646         (Makefile.am): Update.
25647         (Include): Change to unistr.h.
25648         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
25649         (Depends-on): Add unistr/base.
25650         (configure.ac): Remove gl_UTF_UCS4.
25651         (Makefile.am): Update.
25652         (Include): Change to unistr.h.
25653         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
25654         (Depends-on): Add unistr/base.
25655         (configure.ac): Remove gl_UTF_UCS4.
25656         (Makefile.am): Update.
25657         (Include): Change to unistr.h.
25658         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
25659         (Depends-on): Add unistr/base.
25660         (configure.ac): Remove gl_UCS4_UTF.
25661         (Makefile.am): Update.
25662         (Include): Change to unistr.h.
25663         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
25664         (Depends-on): Add unistr/base.
25665         (configure.ac): Remove gl_UCS4_UTF.
25666         (Makefile.am): Update.
25667         (Include): Change to unistr.h.
25668         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
25669         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
25670         utf8-ucs4-unsafe.h.
25671         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
25672         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
25673         utf16-ucs4-unsafe.h.
25674         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
25675         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
25676         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
25677         * lib/unistr/u8-strchr.c: Likewise.
25678         * lib/unistr/u8-strrchr.c: Likewise.
25679         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
25680         * lib/unistr/u16-strchr.c: Likewise.
25681         * lib/unistr/u16-strrchr.c: Likewise.
25682         * lib/striconveh.c: Update.
25683         * lib/linebreak.c: Update.
25684
25685 2007-03-24  Bruno Haible  <bruno@clisp.org>
25686
25687         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
25688         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
25689
25690 2007-03-22  Bruno Haible  <bruno@clisp.org>
25691
25692         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
25693
25694 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
25695
25696         * MODULES.html.sh (File system functions): New module write-any-file.
25697         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
25698         * m4/write-any-file.m4: New files.
25699
25700 2007-03-23  Eric Blake  <ebb9@byu.net>
25701
25702         * gnulib-tool: Rearrange space-tab sequences, since some editors
25703         like to eat them.
25704
25705 2007-03-23  Eric Blake  <ebb9@byu.net>
25706
25707         * lib/version-etc.c (version_etc_va): Update license wording to
25708         be more concise.  Recommended by Richard Stallman.
25709
25710 2007-03-22  Bruno Haible  <bruno@clisp.org>
25711
25712         * lib/poll.c (MSG_PEEK): New fallback definition.
25713
25714 2007-03-22  Bruno Haible  <bruno@clisp.org>
25715
25716         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
25717         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
25718         (main): Update.
25719         Fixes a compilation error on BeOS.
25720
25721 2007-03-22  Bruno Haible  <bruno@clisp.org>
25722
25723         * modules/frexpl-tests: New file.
25724         * tests/test-frexpl.c: New file.
25725
25726         * modules/frexpl: New file.
25727         * m4/frexpl.m4: New file.
25728         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
25729         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
25730         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
25731         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
25732         (Depends-on): Add frexpl. Remove isnanl-nolibm.
25733         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
25734
25735 2007-03-22  Bruno Haible  <bruno@clisp.org>
25736
25737         * lib/frexpl.c: Share code with lib/frexp.c.
25738         * modules/mathl (Files): Add lib/frexp.c.
25739         (Depends-on): Add isnanl-nolibm.
25740
25741 2007-03-22  Bruno Haible  <bruno@clisp.org>
25742
25743         * modules/printf-frexp (Files): Add m4/frexp.m4.
25744         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
25745         only if the found frexp function actually works.
25746
25747 2007-03-22  Bruno Haible  <bruno@clisp.org>
25748
25749         * lib/frexp.c: Remove older implementation that uses divisions.
25750
25751 2007-03-21  Bruno Haible  <bruno@clisp.org>
25752
25753         * modules/frexp-tests: New file.
25754         * tests/test-frexp.c: New file.
25755
25756         * modules/frexp: New file.
25757         * lib/frexp.c: New file.
25758         * m4/frexp.m4: New file.
25759         * lib/math_.h (frexp): New declaration.
25760         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
25761         REPLACE_FREXP.
25762         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
25763
25764 2007-03-21  Bruno Haible  <bruno@clisp.org>
25765
25766         * modules/isnanl-tests: New file.
25767         * tests/test-isnanl.c: New file.
25768
25769         * modules/isnanl: New file.
25770         * lib/isnanl.h: New file.
25771         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
25772         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
25773         gl_FUNC_ISNANL_WORKS.
25774         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
25775         New macros.
25776
25777 2007-03-21  Bruno Haible  <bruno@clisp.org>
25778
25779         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
25780         lib/isnanl.h.
25781         (Include): Update.
25782         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
25783         * lib/vasnprintf.c: Update.
25784         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
25785         tests/test-isnanl.h, remove tests/test-isnanl.c.
25786         (Makefile.am): Update.
25787         * tests/test-isnanl-nolibm.c: New file.
25788         * tests/test-isnanl.h: New file.
25789         * tests/test-isnanl.c: Remove file.
25790
25791 2007-03-21  Jim Meyering  <jim@meyering.net>
25792
25793         When trying to open ".", treat ESTALE like EACCES.
25794         * lib/savewd.c (savewd_save): Resort to forking not just upon
25795         failure with EACCES, but also when errno is ESTALE.
25796
25797 2007-03-20  Bruno Haible  <bruno@clisp.org>
25798
25799         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
25800         Needed on AIX 5.1. Reported by Matthew Woehlke.
25801
25802 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
25803
25804         Suggestions by Bruno Haible:
25805         * lib/acl-internal.h: Include "gettext.h" rather than rolling
25806         our own.
25807         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
25808         * modules/acl (Depends-on): Add gettext.
25809
25810 2007-03-19  Bruno Haible  <bruno@clisp.org>
25811
25812         * modules/iconvme: Remove file.
25813         * lib/iconvme.h: Remove file.
25814         * lib/iconvme.c: Remove file.
25815         * m4/iconvme.m4: Remove file.
25816
25817 2007-03-19  Bruno Haible  <bruno@clisp.org>
25818
25819         * doc/relocatable-maint.texi: Break long shell script line.
25820         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
25821
25822 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
25823
25824         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
25825         handle file_has_acl.
25826         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
25827         * lib/acl.c: Move header inclusions and related macro defns into
25828         lib/acl-internal.h.
25829         (S_ISLNK): Remove defn, since that's now done for us.
25830         (file_has_acl): Move to lib/file-has-acl.c.
25831         Call acl_trivial if available.  This is the crucial part of the fix.
25832         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
25833         shared within the library.  Rewrite a bit, partly to make it compatible
25834         with the GNU coding style.
25835         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
25836         Remove unnecessary double-quotes.
25837         Don't test for acl_to_text; the build will catch that.
25838         Replace acl_entries if it doesn't exist and it is needed.
25839         Check for -lsec and acl_trivial (as used on Solaris 10).
25840         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
25841         lib/file-has-acl.c.
25842         (Depends-on): Add sys_stat, for S_ISLNK.
25843
25844 2007-03-19  Ben Pfaff  <blp@gnu.org>
25845
25846         * doc/gnulib.texi: Fix typos.
25847         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
25848
25849 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
25850
25851         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
25852         If size is zero here, buf must be zero.
25853
25854 2007-03-19  Simon Josefsson  <simon@josefsson.org>
25855
25856         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
25857         <bruno@clisp.org>.
25858
25859 2007-03-18  Bruno Haible  <bruno@clisp.org>
25860
25861         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
25862         Suggested by Eric Blake.
25863
25864 2007-03-18  Ben Pfaff  <blp@gnu.org>
25865
25866         * doc/relocatable.texi: Recommend using as prefix a directory
25867         that does not exist and will never be created.  Based on
25868         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
25869         and others.
25870
25871 2007-03-17  Bruno Haible  <bruno@clisp.org>
25872
25873         * lib/fchownat.c: Include lchown.h.
25874
25875 2007-03-17  Bruno Haible  <bruno@clisp.org>
25876
25877         Fix endless loop when the given allocated size was > INT_MAX.
25878         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
25879         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
25880         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
25881         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
25882         * lib/sprintf.c (sprintf): Likewise.
25883
25884 2007-03-17  Bruno Haible  <bruno@clisp.org>
25885
25886         * tests/test-argp-2.sh (func_compare): Output a context diff.
25887
25888 2007-03-17  Bruno Haible  <bruno@clisp.org>
25889
25890         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
25891         locale's decimal-point character.
25892
25893 2007-03-17  Bruno Haible  <bruno@clisp.org>
25894
25895         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
25896         before comparing it. Needed because on some platforms (e.g. x86) a
25897         'long double' occupies less bytes than sizeof (long double).
25898
25899 2007-03-17  Bruno Haible  <bruno@clisp.org>
25900
25901         * tests/test-crc.c (main): Make printf statements 64-bit clean.
25902         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
25903         * tests/test-getaddrinfo.c (simple): Likewise.
25904         * tests/test-read-file.c (main): Likewise.
25905
25906 2007-03-17  Bruno Haible  <bruno@clisp.org>
25907
25908         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
25909
25910 2007-03-17  Bruno Haible  <bruno@clisp.org>
25911
25912         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
25913         unused variable.
25914
25915 2007-03-17  Bruno Haible  <bruno@clisp.org>
25916
25917         * tests/test-c-strcasecmp.c: Include c-strcase.h.
25918         * tests/test-c-strncasecmp.c: Likewise.
25919
25920 2007-03-17  Bruno Haible  <bruno@clisp.org>
25921
25922         * modules/stdlib (Depends-on): Add unistd.
25923         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
25924         Needed for MacOS X 10.3.
25925
25926 2007-03-17  Bruno Haible  <bruno@clisp.org>
25927
25928         * lib/unistr/u-strdup.h: Include <stdlib.h>.
25929
25930 2007-03-17  Bruno Haible  <bruno@clisp.org>
25931
25932         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
25933
25934 2007-03-17  Bruno Haible  <bruno@clisp.org>
25935
25936         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
25937         to reflect files copied from gnulib (with or without modifications).
25938         Suggested by Jim Meyering.
25939
25940 2007-03-17  Eric Blake  <ebb9@byu.net>
25941
25942         * NEWS: Document stdlib change from 2007-02-18.
25943
25944 2007-03-17  Jim Meyering  <jim@meyering.net>
25945
25946         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
25947         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
25948         someone uses a name containing shell meta-characters.
25949         Reported by Alfred M. Szmidt.
25950
25951         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
25952
25953 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
25954
25955         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
25956         and copy gettext configuration files only if configure.ac contains
25957         a use of AM_GNU_GETTEXT_VERSION.
25958
25959 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
25960
25961         * build-aux/bootstrap (gnulib_name): New variable.
25962         (gnulib_tool_options): Use it.
25963
25964 2007-03-13  Simon Josefsson  <simon@josefsson.org>
25965
25966         * tests/test-des.c: Use new namespace.
25967
25968 2007-03-15  Bruno Haible  <bruno@clisp.org>
25969
25970         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
25971         Reported by James Youngman <jay@gnu.org>.
25972
25973 2007-03-15  Bruno Haible  <bruno@clisp.org>
25974
25975         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
25976         declared prototype. Needed with cc on OSF/1 5.1.
25977
25978 2007-03-15  Bruno Haible  <bruno@clisp.org>
25979
25980         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
25981         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
25982         (struct gl_list_implementation): Add dispose_fn argument to the
25983         'create_empty', 'create' methods.
25984         (struct gl_list_impl_base): Add field 'dispose_fn'.
25985         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
25986         argument.
25987         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
25988         dispose_fn argument.
25989         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
25990         dispose_fn on the dropped values.
25991         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
25992         dispose_fn argument.
25993         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
25994         dropped values.
25995         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
25996         (gl_tree_remove_node): Call dispose_fn on the dropped value.
25997         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
25998         (gl_tree_remove_node): Call dispose_fn on the dropped value.
25999         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
26000         argument.
26001         (gl_tree_list_free): Call dispose_fn on the dropped values.
26002         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
26003         the dropped values.
26004         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
26005         Add dispose_fn argument.
26006         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
26007         Call dispose_fn on the dropped values.
26008         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
26009         Add dispose_fn argument.
26010         (gl_sublist_create): Initialize the 'dispose_fn' field.
26011         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
26012         * tests/test-array_list.c (main): Update.
26013         * tests/test-carray_list.c (main): Update.
26014         * tests/test-avltree_list.c (main): Update.
26015         * tests/test-rbtree_list.c (main): Update.
26016         * tests/test-avltreehash_list.c (main): Update.
26017         * tests/test-rbtreehash_list.c (main): Update.
26018         * tests/test-linked_list.c (main): Update.
26019         * tests/test-linkedhash_list.c (main): Update.
26020         * tests/test-array_oset.c (main): Update.
26021
26022 2007-03-15  Bruno Haible  <bruno@clisp.org>
26023
26024         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
26025         (gl_oset_create_empty): Add dispose_fn argument.
26026         (struct gl_oset_implementation): Add dispose_fn argument to
26027         'create_empty' method.
26028         (struct gl_oset_impl_base): Add dispose_fn field.
26029         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
26030         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
26031         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
26032         values.
26033         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
26034         (gl_tree_oset_free): Call dispose_fn on the dropped values.
26035         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
26036         dropped value.
26037         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
26038         dropped value.
26039         * tests/test-array_oset.c (main): Update.
26040         * tests/test-avltree_oset.c (main): Update.
26041         * tests/test-rbtree_oset.c (main): Update.
26042         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
26043
26044 2007-03-13  Bruno Haible  <bruno@clisp.org>
26045
26046         * tests/test-stdbool.c (i): Update after last patch.
26047
26048 2007-03-12  Bruno Haible  <bruno@clisp.org>
26049
26050         * lib/quotearg.c: Include <wctype.h> early, before the definition of
26051         the iswprint macro. Needed on Solaris 2.5.1.
26052
26053 2007-03-12  Bruno Haible  <bruno@clisp.org>
26054
26055         * tests/test-printf-frexp.c (main): Declare x as volatile.
26056
26057 2007-03-12  Simon Josefsson  <simon@josefsson.org>
26058
26059         * doc/gnulib.texi (Build robot for gnulib): New section.
26060
26061 2007-03-12  Jim Meyering  <jim@meyering.net>
26062
26063         * build-aux/bootstrap: New file.
26064         * build-aux/bootstrap.conf: New file, from coreutils.
26065
26066 2007-03-11  Bruno Haible  <bruno@clisp.org>
26067
26068         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
26069
26070 2007-03-12  Simon Josefsson  <simon@josefsson.org>
26071
26072         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
26073         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
26074         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
26075
26076 2007-03-11  Bruno Haible  <bruno@clisp.org>
26077
26078         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
26079         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
26080
26081 2007-03-11  Bruno Haible  <bruno@clisp.org>
26082
26083         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
26084         formula. Needed for SunPRO C 5.0.
26085
26086 2007-03-11  Bruno Haible  <bruno@clisp.org>
26087
26088         * modules/long-options (Depends-on): Add getopt.
26089
26090 2007-03-11  Bruno Haible  <bruno@clisp.org>
26091
26092         * modules/modechange (Depends-on): Add stdbool.
26093
26094 2007-03-11  Bruno Haible  <bruno@clisp.org>
26095
26096         * modules/i-ring (Depends-on): Add stdbool.
26097
26098 2007-03-11  Bruno Haible  <bruno@clisp.org>
26099
26100         * modules/gc-des (Depends-on): Add stdbool.
26101
26102 2007-03-11  Bruno Haible  <bruno@clisp.org>
26103
26104         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
26105
26106 2007-03-11  Bruno Haible  <bruno@clisp.org>
26107
26108         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
26109
26110 2007-03-11  Bruno Haible  <bruno@clisp.org>
26111
26112         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
26113
26114 2007-03-11  Bruno Haible  <bruno@clisp.org>
26115
26116         * lib/vasnprintf.c (sprintf): Undefine.
26117
26118 2007-03-11  Bruno Haible  <bruno@clisp.org>
26119
26120         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
26121         initializers in SunPRO C and Compaq C compilers.
26122
26123 2007-03-11  Bruno Haible  <bruno@clisp.org>
26124
26125         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
26126         decrementing code ANSI C compliant.
26127
26128 2007-03-11  Bruno Haible  <bruno@clisp.org>
26129
26130         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
26131         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
26132
26133 2007-03-11  Bruno Haible  <bruno@clisp.org>
26134
26135         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
26136         <stdbool.h> substitute doesn't pass.
26137
26138 2007-03-11  Bruno Haible  <bruno@clisp.org>
26139
26140         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
26141
26142 2007-03-11  Bruno Haible  <bruno@clisp.org>
26143
26144         * gnulib-tool (func_create_megatestdir): Create also an autobuild
26145         script, for submission to autobuild.josefsson.org.
26146
26147 2007-03-10  Bruno Haible  <bruno@clisp.org>
26148
26149         * modules/canonicalize-lgpl-tests: New file.
26150         * tests/test-canonicalize-lgpl.sh: New file.
26151         * tests/test-canonicalize-lgpl.c: New file.
26152
26153         * modules/c-strcase-tests: New file.
26154         * tests/test-c-strcase.sh: New file.
26155         * tests/test-c-strcasecmp.c: New file.
26156         * tests/test-c-strncasecmp.c: New file.
26157
26158         * modules/atexit-tests: New file.
26159         * tests/test-atexit.sh: New file.
26160         * tests/test-atexit.c: New file.
26161
26162 2007-03-10  Bruno Haible  <bruno@clisp.org>
26163
26164         * tests/test-binary-io.sh: Use temporary filenames that are not so
26165         likely to clash with those of other tests (in a parallel make).
26166         * tests/test-binary-io.c: Likewise.
26167
26168 2007-03-10  Bruno Haible  <bruno@clisp.org>
26169
26170         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
26171         fallback; use #error instead.
26172         Suggested by Simon Josefsson.
26173
26174 2007-03-10  Bruno Haible  <bruno@clisp.org>
26175
26176         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
26177         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
26178         first and the last.
26179
26180 2007-03-10  Bruno Haible  <bruno@clisp.org>
26181
26182         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
26183
26184 2007-03-10  Bruno Haible  <bruno@clisp.org>
26185
26186         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
26187         "make distcheck".
26188         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
26189         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
26190         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
26191
26192 2007-03-10  Bruno Haible  <bruno@clisp.org>
26193
26194         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
26195         variable.
26196         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
26197         variable.
26198
26199 2007-03-09  Eric Blake  <ebb9@byu.net>
26200         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
26201
26202         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
26203         types are not being provided by gnulib.
26204         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
26205         types are supported.
26206
26207 2007-03-10  Bruno Haible  <bruno@clisp.org>
26208
26209         * lib/stdio_.h (__attribute__): New macro.
26210         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
26211         vsprintf): Specify __attribute__ __format__ for GCC.
26212         Suggested by Eric Blake.
26213
26214 2007-03-09  Bruno Haible  <bruno@clisp.org>
26215
26216         * modules/printf-posix-tests: New file.
26217         * tests/test-printf-posix.sh: New file.
26218         * tests/test-printf-posix.c: New file.
26219
26220         * modules/printf-posix: New file.
26221         * lib/printf.c: New file.
26222         * m4/printf-posix-rpl.m4: New file.
26223         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
26224         REPLACE_PRINTF.
26225         * lib/stdio_.h (printf): New declaration.
26226         (format, __format__, ____printf____, ____scanf____, ____strftime____,
26227         ____strfmon____): New macros.
26228         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
26229         REPLACE_PRINTF.
26230
26231 2007-03-09  Bruno Haible  <bruno@clisp.org>
26232
26233         * tests/test-vasnprintf-posix2.sh: New file.
26234         * tests/test-vasnprintf-posix2.c: New file.
26235         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
26236         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
26237         (Makefile.am): Activate test-vasnprintf-posix2.sh.
26238
26239         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
26240         a locale dependent decimal point, rather than always '.'.
26241
26242 2007-03-09  Eric Blake  <ebb9@byu.net>
26243
26244         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
26245         spite of platforms like Tandem/NSK that define it to -1.
26246
26247 2007-03-08  Bruno Haible  <bruno@clisp.org>
26248
26249         * modules/vprintf-posix-tests: New file.
26250         * tests/test-vprintf-posix.sh: New file.
26251         * tests/test-vprintf-posix.c: New file.
26252         * tests/test-printf-posix.h: New file.
26253
26254         * modules/vprintf-posix: New file.
26255         * lib/vprintf.c: New file.
26256         * m4/vprintf-posix.m4: New file.
26257         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
26258         REPLACE_VPRINTF.
26259         * lib/stdio_.h (vprintf): New declaration.
26260         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
26261         REPLACE_VPRINTF.
26262
26263 2007-03-08  Bruno Haible  <bruno@clisp.org>
26264
26265         * modules/fprintf-posix-tests: New file.
26266         * tests/test-fprintf-posix.sh: New file.
26267         * tests/test-fprintf-posix.c: New file.
26268
26269         * modules/fprintf-posix: New file.
26270         * lib/fprintf.c: New file.
26271         * m4/fprintf-posix.m4: New file.
26272         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
26273         REPLACE_FPRINTF.
26274         * lib/stdio_.h (fprintf): New declaration.
26275         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
26276         REPLACE_FPRINTF.
26277
26278 2007-03-08  Bruno Haible  <bruno@clisp.org>
26279
26280         * modules/vfprintf-posix-tests: New file.
26281         * tests/test-vfprintf-posix.sh: New file.
26282         * tests/test-vfprintf-posix.c: New file.
26283         * tests/test-fprintf-posix.h: New file.
26284         * tests/test-fprintf-posix.out: New file.
26285
26286         * modules/vfprintf-posix: New file.
26287         * lib/vfprintf.c: New file.
26288         * m4/vfprintf-posix.m4: New file.
26289         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
26290         REPLACE_VFPRINTF.
26291         * lib/stdio_.h (vfprintf): New declaration.
26292         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
26293         REPLACE_VFPRINTF.
26294
26295 2007-03-08  Bruno Haible  <bruno@clisp.org>
26296
26297         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
26298
26299 2007-03-08  Bruno Haible  <bruno@clisp.org>
26300
26301         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
26302         instead of 'expr' invocations.
26303         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
26304         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
26305         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
26306         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
26307         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
26308         Suggested by Paul Eggert.
26309
26310 2007-03-08  Bruno Haible  <bruno@clisp.org>
26311
26312         * modules/fseterr-tests: New file.
26313         * tests/test-fseterr.c: New file.
26314
26315         * modules/fseterr: New file.
26316         * lib/fseterr.h: New file.
26317         * lib/fseterr.c: New file.
26318
26319 2007-03-08  Bruno Haible  <bruno@clisp.org>
26320
26321         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
26322         * lib/getopt_.h: Likewise.
26323         * lib/mbswidth.h: Likewise.
26324         * lib/setenv.h: Likewise.
26325         * lib/vasnprintf.h: Likewise.
26326         * lib/vasprintf.h: Likewise.
26327         * lib/verror.h: Likewise.
26328         * lib/xsetenv.h: Likewise.
26329         * lib/xvasprintf.h: Likewise.
26330
26331 2007-03-08  Jim Meyering  <jim@meyering.net>
26332
26333         * users.txt: Add parted.
26334
26335         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
26336
26337 2007-03-07  Bruno Haible  <bruno@clisp.org>
26338
26339         * m4/printf.m4: Make the shell script snippets copy&pastable.
26340
26341 2007-03-02  Bruno Haible  <bruno@clisp.org>
26342
26343         * lib/netinet_in_.h: New file.
26344         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
26345         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
26346         * modules/netinet_in (Files): Add lib/netinet_in_.h.
26347         (Depends-on): Add absolute-header.
26348         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
26349         into netinet/in.h.
26350
26351 2007-03-03  Bruno Haible  <bruno@clisp.org>
26352
26353         * lib/sys_select_.h: New file.
26354         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
26355         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
26356         * modules/sys_select (Files): Add lib/sys_select_.h.
26357         (Depends-on): Add absolute-header.
26358         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
26359         into sys/select.h.
26360
26361 2007-03-02  Bruno Haible  <bruno@clisp.org>
26362
26363         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
26364         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
26365         values.
26366         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
26367         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
26368         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
26369         * modules/sys_socket (Depends-on): Add absolute-header.
26370         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
26371         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
26372         (Include): Remove requirement of inclusion of <sys/types.h>.
26373
26374 2007-03-02  Bruno Haible  <bruno@clisp.org>
26375
26376         * lib/byteswap_.h (bswap_32): Fix formula.
26377
26378 2007-03-06  Bruno Haible  <bruno@clisp.org>
26379
26380         * modules/sprintf-posix-tests: New file.
26381         * tests/test-sprintf-posix.c: New file.
26382
26383         * modules/sprintf-posix: New file.
26384         * lib/sprintf.c: New file.
26385         * m4/sprintf-posix.m4: New file.
26386         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
26387         REPLACE_SPRINTF.
26388         * lib/stdio_.h (sprintf): New declaration.
26389         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
26390         REPLACE_SPRINTF.
26391
26392 2007-03-06  Bruno Haible  <bruno@clisp.org>
26393
26394         * modules/vsprintf-posix-tests: New file.
26395         * tests/test-vsprintf-posix.c: New file.
26396         * tests/test-sprintf-posix.h: New file.
26397
26398         * modules/vsprintf-posix: New file.
26399         * lib/vsprintf.c: New file.
26400         * m4/vsprintf-posix.m4: New file.
26401         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
26402         REPLACE_VSPRINTF.
26403         * lib/stdio_.h (vsprintf): New declaration.
26404         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
26405         REPLACE_VSPRINTF.
26406
26407 2007-03-06  Bruno Haible  <bruno@clisp.org>
26408
26409         * modules/vsnprintf (Depend-on): Remove minmax.
26410
26411 2007-03-06  Bruno Haible  <bruno@clisp.org>
26412
26413         * modules/snprintf-posix-tests: New file.
26414         * tests/test-snprintf-posix.c: New file.
26415
26416         * modules/snprintf-posix: New file.
26417         * m4/snprintf-posix.m4: New file.
26418         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
26419         gl_FUNC_SNPRINTF.
26420         (gl_FUNC_SNPRINTF): Invoke it.
26421         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
26422         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
26423         is set.
26424         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
26425
26426 2007-03-06  Bruno Haible  <bruno@clisp.org>
26427
26428         * modules/vsnprintf-posix-tests: New file.
26429         * tests/test-vsnprintf-posix.c: New file.
26430         * tests/test-snprintf-posix.h: New file.
26431
26432         * modules/vsnprintf-posix: New file.
26433         * m4/vsnprintf-posix.m4: New file.
26434         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
26435         gl_FUNC_VSNPRINTF.
26436         (gl_FUNC_VSNPRINTF): Invoke it.
26437         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
26438         * lib/stdio_.h (vsnprintf): Define as a replacement if
26439         REPLACE_VSNPRINTF is set.
26440         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
26441
26442 2007-03-06  Bruno Haible  <bruno@clisp.org>
26443
26444         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
26445         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
26446
26447 2007-03-06  Bruno Haible  <bruno@clisp.org>
26448
26449         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
26450         (asinl): Declare also if HAVE_DECL_ASINL is set.
26451         (atanl): Declare also if HAVE_DECL_ATANL is set.
26452         (ceill): Declare also if HAVE_DECL_CEILL is set.
26453         (cosl): Declare also if HAVE_DECL_COSL is set.
26454         (expl): Declare also if HAVE_DECL_EXPL is set.
26455         (floorl): Declare also if HAVE_DECL_FLOORL is set.
26456         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
26457         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
26458         (logl): Declare also if HAVE_DECL_LOGL is set.
26459         (sinl): Declare also if HAVE_DECL_SINL is set.
26460         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
26461         (tanl): Declare also if HAVE_DECL_TANL is set.
26462         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
26463         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
26464         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
26465         declaration of frexpl, ldexpl.
26466         * modules/printf-frexpl (Depends-on): Add math.
26467         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
26468
26469 2007-03-05  Bruno Haible  <bruno@clisp.org>
26470
26471         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
26472         frexpl and ldexpl are declared.
26473         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
26474
26475 2007-03-05  Bruno Haible  <bruno@clisp.org>
26476
26477         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
26478         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
26479
26480 2007-03-05  Bruno Haible  <bruno@clisp.org>
26481
26482         * lib/stdio_.h: Include <stddef.h>.
26483
26484 2007-03-05  Bruno Haible  <bruno@clisp.org>
26485
26486         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
26487
26488 2007-03-05  Bruno Haible  <bruno@clisp.org>
26489
26490         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
26491         NetBSD 4, from Ralf Wildenhues.
26492
26493 2007-03-04  Bruno Haible  <bruno@clisp.org>
26494
26495         * lib/vasprintf.h: Update #if logic for the case when the functions
26496         exist but are overridden.
26497
26498 2007-03-04  Bruno Haible  <bruno@clisp.org>
26499
26500         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
26501         implementations: glibc-2.4 and MacOS X 10.3.
26502         * tests/test-vasnprintf-posix.c (test_function): Test also the case
26503         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
26504         * tests/test-vasprintf-posix.c (test_function): Likewise.
26505
26506 2007-03-04  Bruno Haible  <bruno@clisp.org>
26507
26508         * modules/vasprintf-posix-tests: New file.
26509         * tests/test-vasprintf-posix.c: New file.
26510
26511         * modules/vasprintf-posix: New file.
26512         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
26513         defined.
26514         * m4/vasprintf-posix.m4: New file.
26515         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
26516         gl_FUNC_VASPRINTF.
26517         (gl_FUNC_VASPRINTF): Invoke it.
26518         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
26519         here.
26520         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
26521
26522 2007-03-04  Bruno Haible  <bruno@clisp.org>
26523
26524         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
26525         REPLACE_GETTIMEOFDAY.
26526         * modules/sys_time (Makefile.am): Likewise.
26527         * m4/sys_time_h.m4: Likewise.
26528         * m4/gettimeofday.m4: Likewise.
26529
26530 2007-03-04  Bruno Haible  <bruno@clisp.org>
26531
26532         * modules/vasnprintf-posix-tests: New file.
26533         * tests/test-vasnprintf-posix.c: New file.
26534
26535         * modules/vasnprintf-posix: New file.
26536         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
26537         printf-frexpl.h.
26538         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
26539         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
26540         REPLACE_VASNPRINTF is defined.
26541         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
26542         gl_FUNC_VASNPRINTF.
26543         (gl_FUNC_VASNPRINTF): Invoke it.
26544         * m4/vasnprintf-posix.m4: New file.
26545         * m4/printf.m4: New file.
26546
26547 2007-03-04  Bruno Haible  <bruno@clisp.org>
26548
26549         Compile progreloc.c only if --enable-relocatable is specified.
26550         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
26551         if --enable-relocatable was specified.
26552         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
26553         lib_SOURCES.
26554
26555 2007-03-04  Jim Meyering  <jim@meyering.net>
26556
26557         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
26558         Use it consistently, rather than enumerating errno constants.
26559
26560 2007-03-04  Bruno Haible  <bruno@clisp.org>
26561
26562         * modules/xvasprintf-tests: New file.
26563         * tests/test-xvasprintf.c: New file.
26564
26565         * modules/vasprintf-tests: New file.
26566         * tests/test-vasprintf.c: New file.
26567
26568         * modules/vasnprintf-tests: New file.
26569         * tests/test-vasnprintf.c: New file.
26570
26571         * modules/vsnprintf-tests: New file.
26572         * tests/test-vsnprintf.c: New file.
26573
26574         * modules/snprintf-tests: New file.
26575         * tests/test-snprintf.c: New file.
26576
26577 2007-03-04  Bruno Haible  <bruno@clisp.org>
26578
26579         Compile relocatable.c only if --enable-relocatable is specified.
26580         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
26581         gl_RELOCATABLE_LIBRARY.
26582         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
26583         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
26584         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
26585         gl_RELOCATABLE_LIBRARY.
26586         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
26587         (Makefile.am): Remove lib_SOURCES.
26588         * modules/relocatable-lib-lgpl (configure.ac): Invoke
26589         gl_RELOCATABLE_LIBRARY.
26590         (Makefile.am): Remove lib_SOURCES.
26591         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
26592         always.
26593         * modules/relocatable-prog-wrapper (configure.ac): Invoke
26594         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
26595
26596 2007-03-04  Bruno Haible  <bruno@clisp.org>
26597
26598         * modules/argmatch-tests: New file.
26599         * tests/test-argmatch.c: New file.
26600
26601         * tests/test-allocsa.c (main): Halve the number of loop runs.
26602
26603         * modules/alloca-opt-tests: New file.
26604         * tests/test-alloca-opt.c: New file.
26605
26606 2007-03-04  Jim Meyering  <jim@meyering.net>
26607
26608         Work around difference between Linux ACLs and Solaris 10 ZFS.
26609         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
26610         for EINVAL.
26611
26612 2007-03-03  Bruno Haible  <bruno@clisp.org>
26613
26614         * modules/relocatable-prog (Depends-on): Add back progreloc's
26615         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
26616
26617 2007-03-03  Bruno Haible  <bruno@clisp.org>
26618
26619         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
26620         * modules/relocatable-lib: New file.
26621
26622 2007-03-03  Bruno Haible  <bruno@clisp.org>
26623
26624         * modules/relocatable-prog: Renamed from modules/relocatable.
26625         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
26626
26627 2007-03-03  Bruno Haible  <bruno@clisp.org>
26628
26629         * modules/relocatable-script (Files): Add doc/relocatable.texi,
26630         m4/relocatable-lib.m4.
26631         (Depends-on): Remove 'relocatable'.
26632         (configure.ac): Add gl_RELOCATABLE_NOP.
26633
26634 2007-03-03  Bruno Haible  <bruno@clisp.org>
26635
26636         * modules/relocatable-prog-wrapper: New file.
26637         * modules/relocatable (Depends-on): Add it. Remove all other
26638         dependencies except progname.
26639         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
26640
26641         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
26642         (gl_FUNC_STRERROR): Nop.
26643         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
26644
26645         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
26646         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
26647
26648         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
26649         (gl_FUNC_READLINK): Update.
26650
26651         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
26652
26653 2007-03-03  Bruno Haible  <bruno@clisp.org>
26654
26655         * lib/xreadlink.c: Include <unistd.h> unconditionally.
26656         * modules/xreadlink (Depends-on): Add unistd.
26657         * modules/xreadlink-with-size (Depends-on): Likewise.
26658
26659 2007-03-03  Bruno Haible  <bruno@clisp.org>
26660
26661         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
26662         extracted from gt_FUNC_SETENV.
26663         (gt_FUNC_SETENV): Remove macro.
26664         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
26665         remove gt_FUNC_SETENV.
26666
26667 2007-03-03  Bruno Haible  <bruno@clisp.org>
26668
26669         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
26670         ENABLE_RELOCATABLE here.
26671         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
26672
26673 2007-03-03  Bruno Haible  <bruno@clisp.org>
26674
26675         * modules/rbtreehash-list-tests (Depends-on): Add progname.
26676         * tests/test-rbtreehash_list.c: Include progname.h.
26677         (main): Call set_program_name.
26678
26679         * modules/rbtree-oset-tests (Depends-on): Add progname.
26680         * tests/test-rbtree_oset.c: Include progname.h.
26681         (main): Call set_program_name.
26682
26683         * modules/rbtree-list-tests (Depends-on): Add progname.
26684         * tests/test-rbtree_list.c: Include progname.h.
26685         (main): Call set_program_name.
26686
26687         * modules/linked-list-tests (Depends-on): Add progname.
26688         * tests/test-linked_list.c: Include progname.h.
26689         (main): Call set_program_name.
26690
26691 2007-03-03  Bruno Haible  <bruno@clisp.org>
26692
26693         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
26694         All uses of __restrict changed to _Restrict_.
26695         * lib/glob_.h (__restrict): Remove macro.
26696
26697 2007-03-02  Bruno Haible  <bruno@clisp.org>
26698
26699         * modules/gettext (configure.ac): Require gettext infrastructure
26700         from version 0.16.1.
26701
26702 2007-03-02  Bruno Haible  <bruno@clisp.org>
26703
26704         * modules/linkedhash-list-tests (Depends-on): Add progname.
26705         * tests/test-linkedhash_list.c: Include progname.h.
26706         (main): Call set_program_name.
26707
26708         * modules/carray-list-tests (Depends-on): Add progname.
26709         * tests/test-carray_list.c: Include progname.h.
26710         (main): Call set_program_name.
26711
26712         * modules/avltreehash-list-tests (Depends-on): Add progname.
26713         * tests/test-avltreehash_list.c: Include progname.h.
26714         (main): Call set_program_name.
26715
26716         * modules/avltree-oset-tests (Depends-on): Add progname.
26717         * tests/test-avltree_oset.c: Include progname.h.
26718         (main): Call set_program_name.
26719
26720         * modules/avltree-list-tests (Depends-on): Add progname.
26721         * tests/test-avltree_list.c: Include progname.h.
26722         (main): Call set_program_name.
26723
26724         * modules/array-oset-tests (Depends-on): Add progname.
26725         * tests/test-array_oset.c: Include progname.h.
26726         (main): Call set_program_name.
26727
26728         * modules/array-list-tests (Depends-on): Add progname.
26729         * tests/test-array_list.c: Include progname.h.
26730         (main): Call set_program_name.
26731
26732         * modules/argp-tests (Depends-on): Add progname.
26733         * tests/test-argp.c: Include argp.h first. Include progname.h.
26734         (main): Call set_program_name.
26735
26736 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
26737
26738         * doc/gnulib-tool.texi (Initial import): Reword description of
26739         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
26740         limited effect even if defined after the first system include.
26741
26742 2007-03-01  Bruno Haible  <bruno@clisp.org>
26743
26744         * build-aux/config.libpath: Update to libtool-1.5.22.
26745         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
26746
26747 2007-03-01  Bruno Haible  <bruno@clisp.org>
26748
26749         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
26750         foo_CFLAGS.
26751         Reported by Ralf Wildenhues.
26752
26753 2007-03-01  Bruno Haible  <bruno@clisp.org>
26754
26755         * build-aux/install-reloc: Remove object files left over by some
26756         compilers.
26757         Reported by Ralf Wildenhues.
26758
26759 2007-03-01  Bruno Haible  <bruno@clisp.org>
26760
26761         * build-aux/install-reloc: Break long lines.
26762
26763 2007-03-01  Bruno Haible  <bruno@clisp.org>
26764
26765         * doc/relocatable.texi: Document that it may not work on OpenBSD.
26766         Reported by Ralf Wildenhues.
26767
26768 2007-03-01  Bruno Haible  <bruno@clisp.org>
26769
26770         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
26771         include ordering constraints.
26772
26773 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
26774
26775         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
26776         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
26777         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
26778         as another example.
26779         * lib/time_.h: Fix misspelling.
26780         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
26781         Require gl_HEADER_TIME_H_DEFAULTS.
26782         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
26783         * m4/time_r.m4 (gl_TIME_R): Likewise.
26784         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
26785
26786 2007-03-01  Bruno Haible  <bruno@clisp.org>
26787
26788         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
26789         * m4/utimens.m4 (gl_UTIMENS): Likewise.
26790
26791 2007-03-01  Jim Meyering  <jim@meyering.net>
26792
26793         * modules/xreadlink (Maintainer): Add my name.
26794         * modules/xreadlink-with-size (Depends-on): Alphabetize.
26795
26796 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
26797             Bruno Haible  <bruno@clisp.org>
26798
26799         * build-aux/install-reloc: Compile also c-ctype.c.
26800         * build-aux/relocatable.sh.in: New file.
26801         * doc/relocatable.texi: New file.
26802         * doc/relocatable-maint.texi: New file.
26803         * doc/gnulib.texi: Include relocatable-maint.texi.
26804         * lib/progreloc.c: Include unistd.h unconditionally.
26805         * lib/relocwrapper.c: Include unistd.h unconditionally.
26806         Include c-ctype.h.
26807         (add_dotbin): Use c_tolower.
26808         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
26809         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
26810         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
26811         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
26812         to m4/relocatable-lib.m4.
26813         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
26814         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
26815         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
26816         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
26817         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
26818         * modules/relocatable: New file.
26819         * modules/relocatable-lib: New file.
26820         * modules/relocatable-script: New file.
26821
26822 2007-02-28  Bruno Haible  <bruno@clisp.org>
26823
26824         Import --enable-relocatable infrastructure.
26825         * build-aux/config.libpath: New file, from GNU gettext.
26826         * build-aux/install-reloc: New file, from GNU gettext.
26827         * build-aux/reloc-ldflags: New file, from GNU gettext.
26828         * lib/relocatable.h: New file, from GNU gettext.
26829         * lib/relocatable.c: New file, from GNU gettext.
26830         * lib/relocwrapper.c: New file, from GNU gettext.
26831         * m4/relocatable.m4: New file, from GNU gettext.
26832
26833 2007-02-28  Bruno Haible  <bruno@clisp.org>
26834
26835         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
26836
26837         * modules/xreadlink: New file, from GNU gettext with modifications.
26838         * lib/xreadlink.c: New file, from GNU gettext.
26839         * lib/xreadlink.h: Add comments.
26840         (xreadlink): New declaration.
26841
26842         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
26843         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
26844         lib/xreadlink-with-size.c.
26845         (configure.ac): Remove gl_XREADLINK invocation.
26846         (Makefile.am): Augment lib_SOURCES.
26847         * m4/xreadlink.m4: Remove file.
26848         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
26849         (xreadlink_with_size): Renamed from xreadink.
26850         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
26851         * modules/canonicalize (Depends-on): Replace xreadlink with
26852         xreadlink-with-size.
26853         * lib/canonicalize.c (canonicalize_filename_mode): Update.
26854
26855 2007-02-25  Jim Meyering  <jim@meyering.net>
26856
26857         * build-aux/announce-gen: When complaining about excess arguments,
26858         list them.
26859
26860 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
26861
26862         * README: Document signed integer overflow situation more
26863         accurately.
26864
26865 2007-02-25  Bruno Haible  <bruno@clisp.org>
26866
26867         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
26868         'a' or 'A' conversion.
26869
26870 2007-02-25  Bruno Haible  <bruno@clisp.org>
26871
26872         * modules/filename: Renamed from modules/pathname.
26873         (Files): Replace lib/pathname.h with lib/filename.h. Replace
26874         lib/concatpath.c with lib/concat-filename.c.
26875         (Makefile.am): Update.
26876         (Include): Replace pathname.h with filename.h.
26877         * lib/filename.h: Renamed from lib/pathname.h.
26878         (concatenated_filename): Renamed from concatenated_pathname.
26879         * lib/concat-filename.c: Renamed from lib/concatpath.c.
26880         (concatenated_filename): Renamed from concatenated_pathname.
26881         * lib/findprog.c: Include filename.h instead of pathname.h.
26882         (find_in_path): Update.
26883         * lib/javacomp.c: Include filename.h instead of pathname.h.
26884         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
26885         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
26886         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
26887         is_oldgcj_14_13_usable, is_javac_usable): Update.
26888         * lib/javaexec.c: Include filename.h instead of pathname.h.
26889         (execute_java_class): Update.
26890         * modules/findprog: Update.
26891         * modules/javacomp: Update.
26892         * modules/javaexec: Update.
26893         * MODULES.html.sh (File system functions): Add 'filename', remove
26894         'pathname'.
26895
26896 2007-02-25  Bruno Haible  <bruno@clisp.org>
26897
26898         * modules/printf-frexpl-tests: New file.
26899         * tests/test-printf-frexpl.c: New file.
26900
26901         * modules/printf-frexpl: New file.
26902         * lib/printf-frexpl.h: New file.
26903         * lib/printf-frexpl.c: New file.
26904         * m4/printf-frexpl.m4: New file.
26905
26906 2007-02-25  Bruno Haible  <bruno@clisp.org>
26907
26908         * modules/printf-frexp-tests: New file.
26909         * tests/test-printf-frexp.c: New file.
26910
26911         * modules/printf-frexp: New file.
26912         * lib/printf-frexp.h: New file.
26913         * lib/printf-frexp.c: New file.
26914         * m4/printf-frexp.m4: New file.
26915
26916 2007-02-25  Bruno Haible  <bruno@clisp.org>
26917
26918         Assume automake >= 1.10 for the tests.
26919         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
26920         * modules/arctwo-tests: Likewise.
26921         * modules/argp-tests: Likewise.
26922         * modules/avltree-list-tests: Likewise.
26923         * modules/avltree-oset-tests: Likewise.
26924         * modules/avltreehash-list-tests: Likewise.
26925         * modules/carray-list-tests: Likewise.
26926         * modules/crc-tests: Likewise.
26927         * modules/des-tests: Likewise.
26928         * modules/gc-arcfour-tests: Likewise.
26929         * modules/gc-arctwo-tests: Likewise.
26930         * modules/gc-des-tests: Likewise.
26931         * modules/gc-hmac-md5-tests: Likewise.
26932         * modules/gc-hmac-sha1-tests: Likewise.
26933         * modules/gc-md2-tests: Likewise.
26934         * modules/gc-md4-tests: Likewise.
26935         * modules/gc-md5-tests: Likewise.
26936         * modules/gc-pbkdf2-sha1-tests: Likewise.
26937         * modules/gc-rijndael-tests: Likewise.
26938         * modules/gc-sha1-tests: Likewise.
26939         * modules/gc-tests: Likewise.
26940         * modules/getaddrinfo-tests: Likewise.
26941         * modules/hmac-md5-tests: Likewise.
26942         * modules/hmac-sha1-tests: Likewise.
26943         * modules/linked-list-tests: Likewise.
26944         * modules/linkedhash-list-tests: Likewise.
26945         * modules/lock-tests: Likewise.
26946         * modules/md2-tests: Likewise.
26947         * modules/md4-tests: Likewise.
26948         * modules/md5-tests: Likewise.
26949         * modules/rbtree-list-tests: Likewise.
26950         * modules/rbtree-oset-tests: Likewise.
26951         * modules/rbtreehash-list-tests: Likewise.
26952         * modules/read-file-tests: Likewise.
26953         * modules/rijndael-tests: Likewise.
26954         * modules/stdint-tests: Likewise.
26955         * modules/tls-tests: Likewise.
26956
26957 2007-02-24  Bruno Haible  <bruno@clisp.org>
26958
26959         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
26960         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
26961         function; instead check whether isnan with a double argument links.
26962         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
26963         function; instead check whether isnan with a 'long double' argument
26964         links.
26965         Reported by Eric Blake <ebb9@byu.net>.
26966
26967 2007-02-24  Bruno Haible  <bruno@clisp.org>
26968
26969         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
26970         defined.
26971         * lib/isnanl.c: Remove all code. Just include isnan.c.
26972         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
26973
26974 2007-02-25  Jim Meyering  <jim@meyering.net>
26975
26976         Avoid conflicting types for 'unsetenv' on FreeBSD.
26977         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
26978         conflicting with FreeBSD's (5.0 and 6.1) function declaration
26979         in stdlib.h.
26980
26981 2007-02-24  Bruno Haible  <bruno@clisp.org>
26982
26983         * modules/isnanl-nolibm-tests: New file.
26984         * tests/test-isnanl.c: New file.
26985
26986         * modules/isnanl-nolibm: New file.
26987         * lib/isnanl.h: New file.
26988         * lib/isnanl.c: New file.
26989         * m4/isnanl.m4: New file.
26990
26991 2007-02-24  Bruno Haible  <bruno@clisp.org>
26992
26993         * modules/isnan-nolibm-tests: New file.
26994         * tests/test-isnan.c: New file.
26995
26996         * modules/isnan-nolibm: New file.
26997         * lib/isnan.h: New file.
26998         * lib/isnan.c: New file.
26999         * m4/isnan.m4: New file.
27000
27001 2007-02-24  Bruno Haible  <bruno@clisp.org>
27002
27003         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
27004         assume that an exponent fits in 20 bits.
27005
27006 2007-02-24  Jim Meyering  <jim@meyering.net>
27007
27008         * m4/regex.m4: Update the description of the configure-time option,
27009         --without-included-regex, to state accurately what the defaults are,
27010         and perhaps to give people an idea why using this option is risky.
27011
27012 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
27013
27014         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
27015         loops on small arguments.  This attempts to avoid the problem
27016         Bruno Haible reported for AIX 4.3.2 in
27017         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
27018
27019 2007-02-23  Bruno Haible  <bruno@clisp.org>
27020
27021         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
27022         Needed for help2man.
27023
27024 2007-02-23  Karl Berry  <karl@gnu.org>
27025
27026         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
27027         exists, foo.h should be cvs-ignored, not committed.
27028
27029 2007-02-23  Eric Blake  <ebb9@byu.net>
27030
27031         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
27032         * lib/stat-time.h (includes): Likewise.
27033         * lib/utimecmp.c (includes): Likewise.
27034         * lib/utimens.h (includes): Likewise.
27035         * lib/getdate.y (includes): Also include "timespec.h" for use
27036         internal to the module.
27037         * modules/utimens (Depends-on): Revert yesterday's patch.
27038         * modules/nanosleep (Depends-on): Add missing dependency.
27039
27040 2007-02-22  Bruno Haible  <bruno@clisp.org>
27041
27042         * lib/glob.c: Don't include getlogin_r.h.
27043
27044 2007-02-22  Jim Meyering  <jim@meyering.net>
27045
27046         * modules/utimens (Depends-on): Add timespec, required for
27047         utimens.h's inclusion of timespec.h.
27048
27049 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
27050
27051         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
27052         long unreadable paths in GNU/Linux.  Problem reported by Andreas
27053         Schwab in
27054         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
27055         I'll try to think of a better way to fix the Solaris problem.
27056
27057         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
27058         like glibc; on Solaris 10, it fails with errno == EINVAL.
27059         POSIX says the behavior is unspecified if the first argument is NULL,
27060         so play it safe and never pass NULL to the system getcwd.
27061
27062 2007-02-21  Jim Meyering  <jim@meyering.net>
27063
27064         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
27065         of gettimeofday.  It would conflict with the one now always
27066         provided via sys_time_.h.  Reported by Matthew Woehlke, as
27067         an IRIX 6.5 build failure.
27068
27069 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
27070
27071         Minor fixups to port to Solaris 10 with Sun C 5.8.
27072         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
27073         * modules/getcwd (Depends-on): Add dirfd.
27074         * lib/putenv.c (putenv): #undef it.
27075         (rpl_putenv): New decl.
27076         (malloc, free): Include <stdlib.h> rather than prototyping separately.
27077
27078 2007-02-20  Bruno Haible  <bruno@clisp.org>
27079
27080         * modules/stdio-tests: New file.
27081         * tests/test-stdio.c: New file.
27082
27083         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
27084         (Depends-on): Add stdio.
27085         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
27086         (Include): Use <stdio.h> instead of vsnprintf.h.
27087         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
27088         HAVE_DECL_VSNPRINTF.
27089         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
27090
27091         * modules/snprintf (Files): Remove lib/snprintf.h.
27092         (Depends-on): Add stdio.
27093         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
27094         (Include): Use <stdio.h> instead of snprintf.h.
27095         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
27096         HAVE_DECL_SNPRINTF.
27097         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
27098         * lib/getaddrinfo.c: Likewise.
27099
27100         * modules/stdio: New file.
27101         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
27102         * lib/snprintf.h: Remove file.
27103         * lib/vsnprintf.h: Remove file.
27104         * lib/.cppi-disable: Remove snprintf.h.
27105         * m4/stdio_h.m4: New file.
27106         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
27107
27108 2007-02-20  Jim Meyering  <jim@meyering.net>
27109
27110         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
27111         used by e.g., mingw.  From Bruno Haible.
27112
27113 2007-02-19  Bruno Haible  <bruno@clisp.org>
27114
27115         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
27116         warnings.
27117         Reported by Ben Pfaff <blp@cs.stanford.edu>.
27118
27119 2007-02-19  Bruno Haible  <bruno@clisp.org>
27120
27121         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
27122         from mingw users.
27123
27124 2007-02-19  Bruno Haible  <bruno@clisp.org>
27125
27126         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
27127         warnings.
27128         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
27129
27130 2007-02-19  Jim Meyering  <jim@meyering.net>
27131
27132         Don't use FD after a successful "fdopendir (fd)".
27133         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
27134         Reset it by calling dirfd on the just-obtained DIR*.
27135
27136         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
27137         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
27138
27139 2007-02-18  Bruno Haible  <bruno@clisp.org>
27140
27141         * lib/readlink.c: Include <unistd.h>.
27142         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
27143         HAVE_READLINK.
27144         * modules/readlink (Depends-on): Add unistd.
27145         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27146         (Include): Add <unistd.h>.
27147
27148         * lib/getlogin_r.h: Remove file.
27149         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
27150         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
27151         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
27152         HAVE_DECL_GETLOGIN_R.
27153         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
27154         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27155         (Include): Use <unistd.h> instead of getlogin_r.h.
27156
27157         * lib/getcwd.h: Remove file.
27158         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
27159         * lib/xgetcwd.c: Likewise.
27160         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
27161         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
27162         * modules/getcwd (Files): Remove lib/getcwd.h.
27163         (Depends-on): Add unistd.
27164         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27165         (Include): Use <unistd.h> instad of getcwd.h.
27166
27167         * lib/ftruncate.c: Include <unistd.h> first.
27168         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
27169         Set HAVE_FTRUNCATE.
27170         * modules/ftruncate (Depends-on): Add unistd.
27171         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27172
27173         * lib/fchdir.c: Include <unistd.h> first.
27174         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
27175         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
27176         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
27177         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27178         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
27179
27180         * lib/dup2.c: Include <unistd.h> first.
27181         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
27182         HAVE_DUP2.
27183         * modules/dup2 (Depends-on): Add unistd.
27184         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27185
27186         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
27187         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
27188         REPLACE_CHOWN. Don't define chown as a macro here.
27189         * modules/chown (Depends-on): Add unistd.
27190         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
27191
27192         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
27193         Add definition for GL_LINK_WARNING.
27194         (chown, dup2): New declarations.
27195         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
27196         link warning.
27197         (ftruncate): New declaration.
27198         (getcwd): New declaration, taken from old getcwd.h.
27199         (getlogin_r): New declaration, taken from old getlogin_r.h.
27200         (readlink): New declaration.
27201         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
27202         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
27203         (gl_PREREQ_UNISTD): Remove macro.
27204         (gl_UNISTD_MODULE_INDICATOR): New macro.
27205         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
27206         many new variables. Don't set UNISTD_H.
27207         * modules/unistd (Description): Change.
27208         (Depends-on): Add link-warning.
27209         (configure.ac): Update.
27210         (Makefile.am): Create unistd.h always. Substitute many new variables
27211         into it.
27212
27213 2007-02-18  Bruno Haible  <bruno@clisp.org>
27214
27215         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
27216         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
27217         HAVE_GETSUBOPT.
27218         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
27219         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
27220         * lib/getsubopt.h: Remove file.
27221         * modules/getsubopt (Files): Remove lib/getsubopt.h.
27222         (Depends-on): Add stdlib.
27223         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
27224         (Includes): Use <stdlib.h> instead of getsubopt.h.
27225         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
27226         Set HAVE_GETSUBOPT.
27227         * lib/getsubopt.c: Don't include getsubopt.h.
27228
27229 2007-02-18  Bruno Haible  <bruno@clisp.org>
27230
27231         * modules/fchdir (Depends-on): Add dup2.
27232
27233 2007-02-18  Bruno Haible  <bruno@clisp.org>
27234
27235         * lib/stdlib_.h: Handle glibc's special invocation convention
27236         specially.
27237
27238 2007-02-18  Bruno Haible  <bruno@clisp.org>
27239
27240         * modules/stdlib-tests: New file.
27241         * tests/test-stdlib.c: New file.
27242
27243         * modules/mkstemp (Files): Remove lib/mkstemp.h.
27244         (Depends-on): Add stdlib.
27245         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
27246         (Includes): Use <stdlib.h> instead of mkstemp.h.
27247         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
27248         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
27249         * lib/mkstemp.c: Don't include mkstemp.h.
27250         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
27251         * lib/stdlib--.h: Don't include mkstemp.h.
27252
27253         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
27254         (Depends-on): Add stdlib.
27255         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
27256         (Includes): Use <stdlib.h> instead of mkdtemp.h.
27257         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
27258         HAVE_MKDTEMP.
27259         * lib/mkdtemp.c: Don't include mkdtemp.h.
27260         * lib/clean-temp.c: Don't include mkdtemp.h.
27261
27262         * modules/exit (Files): Remove lib/exit.h.
27263         (Depends-on): Add stdlib.
27264         (Makefile.am): Remove lib_SOURCES.
27265         (Include): Use <stdlib.h> instead of exit.h.
27266         * lib/argmatch.c: Don't include exit.h.
27267         * lib/execute.c: Likewise.
27268         * lib/pagealign_alloc.c: Likewise.
27269         * lib/pipe.c: Likewise.
27270         * lib/wait-process.c: Likewise.
27271         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
27272         * lib/exitfail.c: Likewise.
27273         * lib/savewd.c: Likewise.
27274         * lib/xsetenv.c: Likewise.
27275
27276         * modules/stdlib: New file.
27277         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
27278         and extra comments about mkstemp().
27279         * lib/exit.h: Remove file.
27280         * lib/mkdtemp.h: Remove file.
27281         * lib/mkstemp.h: Remove file.
27282         * m4/stdlib_h.m4: New file.
27283         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
27284
27285 2007-02-18  Bruno Haible  <bruno@clisp.org>
27286
27287         * modules/math-tests: New file.
27288         * tests/test-math.c: New file.
27289
27290         * modules/math: New file.
27291         * modules/mathl (Files): Remove lib/mathl.h.
27292         (Depends-on): Add math.
27293         (Makefile.am): Don't mention mathl.h.
27294         (Include): Use <math.h> instead of mathl.h.
27295         * lib/math_.h: New file.
27296         * lib/mathl.h: Remove file.
27297         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
27298         mathl.h.
27299         * lib/asinl.c: Likewise.
27300         * lib/atanl.c: Likewise.
27301         * lib/ceill.c: Likewise.
27302         * lib/cosl.c: Likewise.
27303         * lib/expl.c: Likewise.
27304         * lib/floorl.c: Likewise.
27305         * lib/frexpl.c: Likewise.
27306         * lib/ldexpl.c: Likewise.
27307         * lib/logl.c: Likewise.
27308         * lib/sincosl.c: Likewise.
27309         * lib/sinl.c: Likewise.
27310         * lib/sqrtl.c: Likewise.
27311         * lib/tanl.c: Likewise.
27312         * lib/trigl.c: Likewise.
27313         * m4/math_h.m4: New file.
27314         * MODULES.html.sh (Mathematics): Add math.
27315
27316 2007-02-17  Bruno Haible  <bruno@clisp.org>
27317
27318         * modules/wctype-tests: New file.
27319         * tests/test-wctype.c: New file.
27320
27321         * modules/wchar-tests: New file.
27322         * tests/test-wchar.c: New file.
27323
27324         * modules/unistd-tests: New file.
27325         * tests/test-unistd.c: New file.
27326
27327         * modules/time-tests: New file.
27328         * tests/test-time.c: New file.
27329
27330         * modules/sysexits-tests: New file.
27331         * tests/test-sysexits.c: New file.
27332
27333         * modules/sys_time-tests: New file.
27334         * tests/test-sys_time.c: New file.
27335
27336         * modules/sys_stat-tests: New file.
27337         * tests/test-sys_stat.c: New file.
27338
27339         * modules/sys_socket-tests: New file.
27340         * tests/test-sys_socket.c: New file.
27341
27342         * modules/sys_select-tests: New file.
27343         * tests/test-sys_select.c: New file.
27344
27345         * modules/string-tests: New file.
27346         * tests/test-string.c: New file.
27347
27348         * modules/stdbool-tests: New file.
27349         * tests/test-stdbool.c: New file.
27350
27351         * modules/netinet_in-tests: New file.
27352         * tests/test-netinet_in.c: New file.
27353
27354         * modules/inttypes-tests: New file.
27355         * tests/test-inttypes.c: New file.
27356
27357         * modules/fcntl-tests: New file.
27358         * tests/test-fcntl.c: New file.
27359
27360         * modules/byteswap-tests: New file.
27361         * tests/test-byteswap.c: New file.
27362
27363         * modules/arpa_inet-tests: New file.
27364         * tests/test-arpa_inet.c: New file.
27365
27366 2007-02-17  Bruno Haible  <bruno@clisp.org>
27367
27368         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
27369         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
27370         if the corresponding module is not enabled. Emit link warnings if
27371         the function is used nevertheless.
27372         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
27373         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
27374         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
27375         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
27376         * modules/inttypes (Depends-on): Add link-warning.
27377         (Makefile.am): Copy the contents of build-aux/link-warning.h into
27378         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
27379         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
27380         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
27381         * modules/imaxdiv (configure.ac): Likewise.
27382         * modules/strtoimax (configure.ac): Likewise.
27383         * modules/strtoumax (configure.ac): Likewise.
27384
27385 2007-02-17  Bruno Haible  <bruno@clisp.org>
27386
27387         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
27388         gl_STRING_MODULE_INDICATOR_DEFAULTS.
27389         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
27390         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
27391
27392 2007-02-17  Bruno Haible  <bruno@clisp.org>
27393
27394         * modules/link-warning: New file.
27395         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
27396         * lib/string_.h (GL_LINK_WARNING): Remove definition.
27397         * modules/string (Depends-on): Add link-warning.
27398         (Makefile.am): Copy the contents of build-aux/link-warning.h into
27399         string.h.
27400         * MODULES.html.sh (Support for building libraries and executables): Add
27401         link-warning.
27402
27403 2007-02-17  Bruno Haible  <bruno@clisp.org>
27404
27405         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
27406         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
27407         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
27408         long lines.
27409
27410 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
27411             Bruno Haible  <bruno@clisp.org>
27412
27413         * modules/tmpfile: New file.
27414         * lib/tmpfile.c: New file.
27415         * m4/tmpfile.m4: New file.
27416         * MODULES.html.sh (func_all_modules): New section "Input/output".
27417
27418 2007-02-15  Bruno Haible  <bruno@clisp.org>
27419
27420         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
27421         (supports_delete_on_close): New function.
27422         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
27423
27424 2007-02-14  Bruno Haible  <bruno@clisp.org>
27425
27426         * modules/mbspcasecmp-tests: New file.
27427         * tests/test-mbspcasecmp.sh: New file.
27428         * tests/test-mbspcasecmp.c: New file.
27429
27430         New module mbspcasecmp.
27431         * modules/mbspcasecmp: New file.
27432         * lib/mbspcasecmp.c: New file.
27433         * lib/string_.h (strncasecmp): Change warning message.
27434         (mbspcasecmp): New declaration.
27435         * m4/mbspcasecmp.m4: New file.
27436         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27437         GNULIB_MBSPCASECMP.
27438         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
27439         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
27440
27441 2007-02-14  Bruno Haible  <bruno@clisp.org>
27442
27443         * modules/mbsncasecmp-tests: New file.
27444         * tests/test-mbsncasecmp.sh: New file.
27445         * tests/test-mbsncasecmp.c: New file.
27446
27447         New module mbsncasecmp.
27448         * modules/mbsncasecmp: New file.
27449         * lib/mbsncasecmp.c: New file.
27450         * lib/string_.h (mbsncasecmp): New declaration.
27451         * m4/mbsncasecmp.m4: New file.
27452         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27453         GNULIB_MBSNCASECMP.
27454         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
27455         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
27456
27457 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
27458
27459         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
27460         Verify that it doesn't overlap with our flags.
27461         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
27462         do not have the desired effect in multibyte locales; instead, use
27463         mbscasecmp.
27464         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
27465         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
27466         we don't require GNU fnmatch ourselves (if our users require it, they
27467         should do so explicitly).
27468
27469         Fix regex code so it doesn't rely on strcasecmp.
27470         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
27471         Otherwise, include gnulib's langinfo.h.
27472         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
27473         undesirable behavior in non-C locales.  Instead, rely on localecharset.
27474         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
27475         * modules/regex (FILES): Remove m4/codeset.m4.
27476         (Depends-on): Add localcharset.  Remove strcase.
27477
27478 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27479
27480         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
27481         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
27482
27483 2007-02-13  Bruno Haible  <bruno@clisp.org>
27484
27485         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
27486         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27487
27488 2007-02-12  Bruno Haible  <bruno@clisp.org>
27489
27490         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
27491         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
27492         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
27493         time warning rather than a link error.
27494
27495 2007-02-12  Bruno Haible  <bruno@clisp.org>
27496
27497         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
27498         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
27499         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27500
27501 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
27502
27503         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
27504         args, not 2.
27505
27506 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
27507
27508         New module 'time', so that apps can include <time.h> as per
27509         POSIX and GNU instead of separate include files like time_r.h
27510         and timegm.h.  This implementation tries out a simpler approach
27511         for replacing decls in standard include files (as compared to
27512         the string module), somewhat as an experiment.
27513
27514         * config/srclist.txt: Comment out mktime.c for now.
27515         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
27516         since it doesn't apply any more.  Use generic wording instead.
27517         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
27518         'time'.
27519         * lib/time_.h, m4/time_h.m4, modules/time: New files.
27520         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
27521         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
27522         Don't include <sys/types.h>; no longer needed since we assume C89.
27523         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
27524         * lib/strftime.c: Likewise.
27525         * lib/time_r.c: Likewise.
27526         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
27527         * lib/nanosleep.c: Include <time.h> first, to check interface.
27528         * lib/strptime.c: Likewise.
27529         * lib/time_r.c: Likewise.
27530         * lib/timegm.c: Likewise.
27531         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
27532         needed.
27533         * lib/timegm.c: Don't include timegm.h; no longer needed.
27534         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
27535         time.h now handles any problems in that area.
27536         (struct timespec, nanosleep): Remove; time.h now arranges for these.
27537         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
27538         that time.h defines struct timespec.
27539         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
27540         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
27541         handles that.
27542         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
27543         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
27544         needed.  Set REPLACE_LOCALTIME.
27545         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
27546         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
27547         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
27548         nanosleep; time_h.m4 now does that.  Don't require
27549         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
27550         module handles this now.
27551         * modules/getdate (Depends-on): Remove timespec.  Add time.
27552         * modules/nanosleep (Depends-on): Likewise.
27553         * modules/stat-time (Depends-on): Likewise.
27554         * modules/nanosleep (Include): Include time.h, not timespec.h.
27555         * modules/strptime (Files): Remove lib/strptime.h.
27556         (Depends-on): Add extensions, time.
27557         (Include): Include time.h, not strptime.h.
27558         * modules/time_r (Files): Remove lib/time_r.h.
27559         (Depends-on): Add time.
27560         (Include): Include time.h, not time_r.h.
27561         * modules/timegm: Likewise.
27562         * modules/timespec (Description): Now does timespec-related decls
27563         of our own, instead of struct timespec itself.
27564         (Depends-on): Add time; remove extensions.
27565         (Maintainer): Add self.
27566         * modules/utimecmp (Depends-on): Add time; remove timespec.
27567         * modules/utimens (Depends-on): Likewise.
27568         * modules/xnanosleep (Depends-on): Likewise.
27569
27570 2007-02-11  Bruno Haible  <bruno@clisp.org>
27571
27572         * lib/c-strstr.c: Include allocsa.h.
27573         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
27574         * lib/c-strcasestr.c: Include allocsa.h.
27575         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
27576         * lib/strcasestr.c: Include allocsa.h.
27577         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
27578         * lib/mbsstr.c: Include allocsa.h.
27579         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
27580         allocsa/freesa instead of malloc/free.
27581         * lib/mbscasestr.c: Include allocsa.h.
27582         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
27583         allocsa/freesa instead of malloc/free.
27584         * modules/c-strstr (Depends-on): Add allocsa.
27585         * modules/c-strcasestr (Depends-on): Likewise.
27586         * modules/strcasestr (Depends-on): Likewise.
27587         * modules/mbsstr (Depends-on): Likewise.
27588         * modules/mbscasestr (Depends-on): Likewise.
27589
27590 2007-02-11  Bruno Haible  <bruno@clisp.org>
27591
27592         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
27593
27594         * modules/mbsspn-tests: New file.
27595         * tests/test-mbsspn.sh: New file.
27596         * tests/test-mbsspn.c: New file.
27597
27598 2007-02-11  Bruno Haible  <bruno@clisp.org>
27599
27600         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
27601
27602         * modules/mbspbrk-tests: New file.
27603         * tests/test-mbspbrk.sh: New file.
27604         * tests/test-mbspbrk.c: New file.
27605
27606 2007-02-11  Bruno Haible  <bruno@clisp.org>
27607
27608         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
27609         unneeded cast.
27610
27611         * modules/mbscspn-tests: New file.
27612         * tests/test-mbscspn.sh: New file.
27613         * tests/test-mbscspn.c: New file.
27614
27615 2007-02-11  Bruno Haible  <bruno@clisp.org>
27616
27617         * modules/mbscasecmp-tests: New file.
27618         * tests/test-mbscasecmp.sh: New file.
27619         * tests/test-mbscasecmp.c: New file.
27620
27621 2007-02-11  Bruno Haible  <bruno@clisp.org>
27622
27623         Ensure O(n) worst-case complexity of mbscasestr.
27624         * lib/mbscasestr.c: Include stdbool.h.
27625         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
27626         functions.
27627         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
27628         the bookkeeping indicates that it's worth it.
27629         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
27630
27631         * modules/mbscasestr-tests: New file.
27632         * tests/test-mbscasestr1.c: New file.
27633         * tests/test-mbscasestr2.sh: New file.
27634         * tests/test-mbscasestr2.c: New file.
27635         * tests/test-mbscasestr3.sh: New file.
27636         * tests/test-mbscasestr3.c: New file.
27637         * tests/test-mbscasestr4.sh: New file.
27638         * tests/test-mbscasestr4.c: New file.
27639         * m4/locale-tr.m4: New file.
27640
27641 2007-02-11  Bruno Haible  <bruno@clisp.org>
27642
27643         Ensure O(n) worst-case complexity of mbsstr.
27644         * lib/mbsstr.c: Include stdbool.h.
27645         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
27646         functions.
27647         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
27648         bookkeeping indicates that it's worth it.
27649         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
27650
27651         * modules/mbsstr-tests: New file.
27652         * tests/test-mbsstr1.c: New file.
27653         * tests/test-mbsstr2.sh: New file.
27654         * tests/test-mbsstr2.c: New file.
27655         * tests/test-mbsstr3.sh: New file.
27656         * tests/test-mbsstr3.c: New file.
27657         * m4/locale-fr.m4: New file.
27658
27659 2007-02-11  Bruno Haible  <bruno@clisp.org>
27660
27661         * lib/mbsrchr.c (mbsrchr): Fix bug.
27662
27663         * modules/mbsrchr-tests: New file.
27664         * tests/test-mbsrchr.sh: New file.
27665         * tests/test-mbsrchr.c: New file.
27666
27667 2007-02-11  Bruno Haible  <bruno@clisp.org>
27668
27669         * lib/mbschr.c (mbschr): Fix bug.
27670
27671         * modules/mbschr-tests: New file.
27672         * tests/test-mbschr.sh: New file.
27673         * tests/test-mbschr.c: New file.
27674         * m4/locale-zh.m4: New file.
27675
27676 2007-02-11  Bruno Haible  <bruno@clisp.org>
27677
27678         Support for copying multibyte string iterators.
27679         * lib/mbiter.h: Include <string.h>.
27680         (mbiter_multi_copy): New function.
27681         (mbi_copy): New macro.
27682         * lib/mbuiter.h: Include <string.h>.
27683         (mbuiter_multi_copy): New function.
27684         (mbui_copy): New macro.
27685
27686 2007-02-11  Bruno Haible  <bruno@clisp.org>
27687
27688         New module mbslen.
27689         * modules/mbslen: New file.
27690         * lib/mbslen.c: New file.
27691         * lib/string_.h (mbslen): New declaration.
27692         * m4/mbslen.m4: New file.
27693         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27694         GNULIB_MBSLEN.
27695         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
27696         * MODULES.html.sh (Internationalization functions): Add mbslen.
27697
27698 2007-02-11  Bruno Haible  <bruno@clisp.org>
27699
27700         Ensure O(n) worst-case complexity of strcasestr substitute.
27701         * lib/strcasestr.c: Include stdbool.h.
27702         (knuth_morris_pratt): New function.
27703         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
27704         bookkeeping indicates that it's worth it.
27705         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
27706
27707         * modules/strcasestr-tests: New file.
27708         * tests/test-strcasestr.c: New file.
27709
27710 2007-02-11  Bruno Haible  <bruno@clisp.org>
27711
27712         Ensure O(n) worst-case complexity of c_strcasestr.
27713         * lib/c-strcasestr.c: Include stdbool.h, string.h.
27714         (knuth_morris_pratt): New function.
27715         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
27716         the bookkeeping indicates that it's worth it.
27717         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
27718
27719         * modules/c-strcasestr-tests: New file.
27720         * tests/test-c-strcasestr.c: New file.
27721
27722 2007-02-11  Bruno Haible  <bruno@clisp.org>
27723
27724         Ensure O(n) worst-case complexity of c_strstr.
27725         * lib/c-strstr.c: Include stdbool.h, string.h.
27726         (knuth_morris_pratt): New function.
27727         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
27728         bookkeeping indicates that it's worth it.
27729         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
27730
27731         * lib/c-strstr.c: Complete rewrite for maintainability.
27732
27733         * modules/c-strstr-tests: New file.
27734         * tests/test-c-strstr.c: New file.
27735
27736 2007-02-11  Bruno Haible  <bruno@clisp.org>
27737
27738         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
27739         5.2.1 and earlier, whereby \055 was treated just like the range
27740         delimiter '-'.
27741         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
27742
27743 2007-02-08  Bruno Haible  <bruno@clisp.org>
27744
27745         * modules/regex (Depends-on): Add stdbool.
27746         Reported by Dalibor Topic <robilad@kaffe.org>.
27747
27748 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
27749
27750         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
27751         Prefer returning from main to exiting from it.
27752         Remove unnecessary parens after sizeof.
27753
27754 2007-02-05  Bruno Haible  <bruno@clisp.org>
27755
27756         New module mbssep.
27757         * modules/mbssep: New file.
27758         * lib/mbssep.c: New file.
27759         * lib/string_.h (strsep): Add a conditional link warning.
27760         (mbssep): New declaration.
27761         * m4/mbssep.m4: New file.
27762         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27763         GNULIB_MBSSEP.
27764         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
27765         * MODULES.html.sh (Internationalization functions): Add mbssep.
27766
27767 2007-02-05  Bruno Haible  <bruno@clisp.org>
27768
27769         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
27770         Optimize search in case of 1 delimiter.
27771
27772 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
27773
27774         * lib/acl.h: Include sys/types.h before sys/acl.h.
27775
27776 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
27777
27778         Merge upstream fix for glibc bugzilla #3957:
27779
27780         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
27781
27782         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
27783         bit for RE_HAT_LISTS_NOT_NEWLINE.
27784         (build_charclass_op): Remove bogus comment.
27785
27786 2007-02-05  Simon Josefsson  <simon@josefsson.org>
27787
27788         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
27789
27790 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
27791
27792         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
27793         * lib/memmem.c [!defined _LIBC]: Include config.h.
27794
27795 2007-02-04  Bruno Haible  <bruno@clisp.org>
27796
27797         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
27798         warning message.
27799
27800 2007-02-04  Bruno Haible  <bruno@clisp.org>
27801
27802         New module mbstok_r.
27803         * modules/mbstok_r: New file.
27804         * lib/mbstok_r.c: New file.
27805         * lib/string_.h (strtok_r): Change argument names to match the
27806         comments. Add a conditional link warning.
27807         (mbstok_r): New declaration.
27808         * m4/mbstok_r.m4: New file.
27809         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27810         GNULIB_MBSTOK_R.
27811         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
27812         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
27813
27814 2007-02-04  Bruno Haible  <bruno@clisp.org>
27815
27816         New module mbsspn.
27817         * modules/mbsspn: New file.
27818         * lib/mbsspn.c: New file.
27819         * lib/string_.h (strspn): Add a conditional link warning.
27820         (mbsspn): New declaration.
27821         * m4/mbsspn.m4: New file.
27822         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27823         GNULIB_MBSSPN.
27824         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
27825         * MODULES.html.sh (Internationalization functions): Add mbsspn.
27826
27827 2007-02-04  Bruno Haible  <bruno@clisp.org>
27828
27829         New module mbspbrk.
27830         * modules/mbspbrk: New file.
27831         * lib/mbspbrk.c: New file.
27832         * lib/string_.h (strpbrk): Add a conditional link warning.
27833         (mbspbrk): New declaration.
27834         * m4/mbspbrk.m4: New file.
27835         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27836         GNULIB_MBSPBRK.
27837         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
27838         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
27839
27840 2007-02-04  Bruno Haible  <bruno@clisp.org>
27841
27842         New module mbscspn.
27843         * modules/mbscspn: New file.
27844         * lib/mbscspn.c: New file.
27845         * lib/string_.h (strcspn): Add a conditional link warning.
27846         (mbscspn): New declaration.
27847         * m4/mbscspn.m4: New file.
27848         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27849         GNULIB_MBSCSPN.
27850         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
27851         * MODULES.html.sh (Internationalization functions): Add mbscspn.
27852
27853 2007-02-04  Bruno Haible  <bruno@clisp.org>
27854
27855         New module mbscasestr, reduced goal of strcasestr.
27856         * modules/mbscasestr: New file.
27857         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
27858         (mbscasestr): Renamed from strcasestr.
27859         * lib/strcasestr.c: Don't include mbuiter.h.
27860         (strcasestr): Remove support for multibyte locales.
27861         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
27862         Change the conditional link warning.
27863         (mbscasestr): New declaration.
27864         * m4/mbscasestr.m4: New file.
27865         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
27866         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
27867         REPLACE_STRCASESTR.
27868         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
27869         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
27870         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
27871         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
27872         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
27873         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
27874         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
27875         (Depends-on): Remove mbuiter.
27876         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
27877
27878 2007-02-04  Bruno Haible  <bruno@clisp.org>
27879
27880         Simplify handling of strncasecmp.
27881         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
27882         the conditional link warning.
27883         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
27884         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
27885         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
27886         * modules/strcase (configure.ac): Don't invoke
27887         gl_STRING_MODULE_INDICATOR.
27888         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
27889
27890 2007-02-04  Bruno Haible  <bruno@clisp.org>
27891
27892         New module mbscasecmp, reduced goal of strcasecmp.
27893         * modules/mbscasecmp: New file.
27894         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
27895         (mbscasecmp): Renamed from strcasecmp.
27896         * lib/strcasecmp.c: Don't include mbuiter.h.
27897         (strcasecmp): Remove support for multibyte locales.
27898         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
27899         Change the conditional link warning.
27900         (mbscasecmp): New declaration.
27901         * m4/mbscasecmp.m4: New file.
27902         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
27903         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
27904         REPLACE_STRCASECMP.
27905         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
27906         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27907         GNULIB_MBSCASECMP.
27908         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
27909         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
27910         * modules/strcase (Files): Remove m4/mbrtowc.m4.
27911         (Depends-on): Remove mbuiter.
27912         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
27913
27914 2007-02-04  Bruno Haible  <bruno@clisp.org>
27915
27916         New module mbsstr. Remove module strstr.
27917         * modules/mbsstr: New file.
27918         * modules/strstr: Remove file.
27919         * lib/mbsstr.c: Renamed from lib/strstr.c.
27920         (mbsstr): Renamed from strstr.
27921         * lib/string_.h (strstr): Remove declaration. Change the conditional
27922         link warning.
27923         (mbsstr): New declaration.
27924         * m4/mbsstr.m4: New file.
27925         * m4/strstr.m4: Remove file.
27926         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
27927         REPLACE_STRSTR.
27928         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
27929         Don't initialize GNULIB_STRSTR.
27930         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
27931         substitute GNULIB_STRSTR and REPLACE_STRSTR.
27932         * MODULES.html.sh (Internationalization functions): Add mbsstr.
27933         (Support for systems lacking ANSI C 89): Remove strstr.
27934
27935 2007-02-04  Bruno Haible  <bruno@clisp.org>
27936
27937         New module mbsrchr.
27938         * modules/mbsrchr: New file.
27939         * lib/mbsrchr.c: New file.
27940         * lib/string_.h (strrchr): Add a conditional link warning.
27941         (mbsrchr): New declaration.
27942         * m4/mbsrchr.m4: New file.
27943         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27944         GNULIB_MBSRCHR.
27945         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
27946         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
27947
27948 2007-02-04  Bruno Haible  <bruno@clisp.org>
27949
27950         New module mbschr.
27951         * modules/mbschr: New file.
27952         * lib/mbschr.c: New file.
27953         * lib/string_.h (strchr): Add a conditional link warning.
27954         (mbschr): New declaration.
27955         * m4/mbschr.m4: New file.
27956         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27957         GNULIB_MBSCHR.
27958         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
27959         * MODULES.html.sh (Internationalization functions): Add mbschr.
27960
27961 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
27962
27963         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
27964
27965         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
27966
27967 2007-02-04  Bruno Haible  <bruno@clisp.org>
27968
27969         New module description section 'configure.ac-early'.
27970         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
27971         (func_get_autoconf_early_snippet): New function.
27972         (func_import, func_create_testdir): Use it. Remove special cases for
27973         modules 'extensions' and 'lock'.
27974         * modules/extensions (configure.ac-early): Require
27975         gl_USE_SYSTEM_EXTENSIONS.
27976         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
27977
27978 2007-02-04  Bruno Haible  <bruno@clisp.org>
27979
27980         Make use of gcj-4.3's -fsource and -ftarget option.
27981         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
27982         and if so try the options -fsource and -ftarget.
27983         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
27984         source_version, ftarget_option, target_version arguments.
27985         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
27986         (is_envjavac_oldgcj_14_14_usable): Renamed from
27987         is_envjavac_gcj_14_14_usable.
27988         (is_envjavac_oldgcj_14_13_usable): Renamed from
27989         is_envjavac_gcj_14_13_usable.
27990         (is_gcj_present): Update.
27991         (is_gcj_43, is_gcj43_usable): New functions.
27992         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
27993         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
27994         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
27995         try the options -fsource and -ftarget.
27996
27997 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
27998
27999         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
28000         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
28001         larger value.
28002
28003 2007-02-03  Jim Meyering  <jim@meyering.net>
28004
28005         Give tools a better chance to allocate space for very large buffers.
28006         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
28007
28008         Make pwd and readlink work also when run with an unreadable parent dir
28009         on systems with openat support.
28010         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
28011         provided getcwd function, even when we have openat support.
28012         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
28013
28014 2007-02-02  Bruno Haible  <bruno@clisp.org>
28015
28016         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
28017         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
28018         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
28019         portability problems if one of these functions is only used on specific
28020         platforms.
28021         Reported by Paul Eggert.
28022
28023 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
28024
28025         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
28026         is causing more trouble than it's curing.
28027         * lib/regex_internal.h (__mempcpy): Remove.
28028         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
28029         (and make the code a tad smaller to boot).
28030         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
28031
28032 2007-02-02  Jim Meyering  <jim@meyering.net>
28033
28034         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
28035         section, not in the Makefile.am: one.
28036
28037 2007-02-02  Eric Blake  <ebb9@byu.net>
28038
28039         * lib/strchrnul.c: Always include config.h first.
28040
28041         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
28042         gnulib strstr is not necessary here.
28043
28044 2007-02-02  Simon Josefsson  <simon@josefsson.org>
28045
28046         * m4/socklen.m4: Fix typo.
28047
28048 2007-02-02  Eric Blake  <ebb9@byu.net>
28049
28050         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
28051         * modules/netinet_in (Makefile.am): Likewise.
28052
28053 2007-02-01  Bruno Haible  <bruno@clisp.org>
28054
28055         * lib/string_.h (GL_LINK_WARNING): New macro.
28056         (strcasecmp, strstr, strcasestr): If provided by the system,
28057         conditionally define as a macro that leads to a warning instead of to
28058         an error.
28059         (strncasecmp): Conditionally define as a macro that leads to a warning.
28060
28061 2007-02-01  Karl Berry  <karl@gnu.org>
28062
28063         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
28064
28065 2007-02-01  Bruno Haible  <bruno@clisp.org>
28066
28067         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
28068         renamings.
28069
28070 2007-02-01  Eric Blake  <ebb9@byu.net>
28071
28072         * modules/regex (Depends-on): Revert dependence on mempcpy.
28073         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
28074         module's definition of mempcpy.
28075         Reported by Paul Eggert.
28076
28077 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
28078
28079         * lib/string_.h: If the gnulib module XYZ is not present, undefine
28080         the symbol XYZ before redefining it.  This fixes a problem with
28081         programs that don't use XYZ, when compiled on systems that define
28082         XYZ to something else.
28083
28084 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
28085
28086         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
28087         occurs when "mkdir -m foo" creates a setgid directory that is (1)
28088         writeable to group or other and (2) is intended to have a special
28089         mode bit that is set or cleared.  In such a case, the directory
28090         should be neither group- nor other-writeable until the special
28091         mode bits are right.
28092
28093 2007-01-31  Eric Blake  <ebb9@byu.net>
28094
28095         * modules/mountlist (Depends-on): Add strstr.
28096
28097         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
28098         bug.
28099         * modules/string (Makefile.am): Remove redundant replacement.
28100         * modules/regex (Depends-on): Add mempcpy.
28101
28102 2007-01-31  Bruno Haible  <bruno@clisp.org>
28103
28104         New module description field 'Link'.
28105         * gnulib-tool (func_usage): Document --extract-link-directive.
28106         (sed_extract_prog): Recognize 'Link' directive.
28107         (func_get_link_directive): New function.
28108         (func_import): Show summary of link directives.
28109         Handle --extract-link-directive option.
28110         * modules/acl (Link): New section.
28111         * modules/clock-time (Link): New section.
28112         * modules/euidaccess (Link): New section.
28113         * modules/gettext (Link): New section.
28114         * modules/iconv (Link): New section.
28115         * modules/lock (Link): New section.
28116         * modules/nanosleep (Link): New section.
28117         * modules/readline (Link): New section.
28118
28119 2007-01-27  Bruno Haible  <bruno@clisp.org>
28120
28121         Enforce the use of gnulib modules for unportable <string.h> functions.
28122         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
28123         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
28124         (gl_HEADER_STRING_H_BODY): Require it.
28125         * lib/string_.h: If the gnulib module XYZ is not present, redefine
28126         the symbol XYZ to one that gives a link error.
28127         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
28128         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
28129         * modules/mempcpy (configure.ac): Likewise.
28130         * modules/memrchr (configure.ac): Likewise.
28131         * modules/stpcpy (configure.ac): Likewise.
28132         * modules/stpncpy (configure.ac): Likewise.
28133         * modules/strcase (configure.ac): Likewise.
28134         * modules/strcasestr (configure.ac): Likewise.
28135         * modules/strchrnul (configure.ac): Likewise.
28136         * modules/strdup (configure.ac): Likewise.
28137         * modules/strndup (configure.ac): Likewise.
28138         * modules/strnlen (configure.ac): Likewise.
28139         * modules/strpbrk (configure.ac): Likewise.
28140         * modules/strsep (configure.ac): Likewise.
28141         * modules/strstr (configure.ac): Likewise.
28142         * modules/strtok_r (configure.ac): Likewise.
28143
28144 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
28145
28146         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
28147
28148 2007-01-30  Jim Meyering  <jim@meyering.net>
28149
28150         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
28151
28152 2007-01-29  Bruno Haible  <bruno@clisp.org>
28153
28154         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
28155         * lib/execute.c: Likewise.
28156         * lib/pipe.c: Likewise.
28157         * lib/printf-args.h: Likewise.
28158         * lib/printf-args.c: Likewise.
28159         * lib/printf-parse.c: Likewise.
28160         * lib/vasnprintf.c: Likewise.
28161
28162 2007-01-29  Eric Blake  <ebb9@byu.net>
28163
28164         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
28165         declaration.
28166
28167 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
28168
28169         * lib/strptime.h (strptime): Use 'restrict' for args where
28170         POSIX requires this.
28171         * lib/strptime.c (strptime): Likewise.
28172         Change license notice from LGPL to GPL, since gnulib-tool will
28173         change this as needed.
28174         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
28175         defined.
28176         Include "strptime.h" first, to check interface.
28177         Do not #undef _LIBC and _NL_CURRENT.
28178         Do not include <stdlib.h>; no longer needed.
28179         Include "time_r.h" and declare ptime_locale_status
28180         only if _LIBC is not defined.
28181         (__P): Remove unused macro.
28182         (match_string): Bring back glibc version, but use it only if _LIBC
28183         is defined.
28184         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
28185         Remove unnecessary assertion and abort() call.
28186         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
28187         * m4/strptime.m4: Fix serial number comment.
28188         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
28189         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
28190         (Depends-on): Add time_r.
28191
28192 2007-01-29  Bruno Haible  <bruno@clisp.org>
28193
28194         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
28195         strptime.
28196         * modules/strptime (Depends-on): Add stdbool.
28197         * lib/strptime.h: Include <time.h> always. Add comments.
28198
28199 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
28200
28201         * modules/strptime: New file.
28202         * lib/strptime.h: New file.
28203         * lib/strptime.c: New file.
28204         * m4/strptime.m4: New file.
28205
28206 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
28207
28208         * MODULES.html.sh: New module mpsort.
28209         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
28210
28211         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
28212         a circularity problem with HP-UX ia64 reported by Bob Proulx in
28213         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
28214         All uses changed.
28215         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
28216         All uses changed.
28217         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
28218         to _Restrict_.
28219         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
28220         the parameter matches the prototype.
28221
28222 2007-01-28  Jim Meyering  <jim@meyering.net>
28223
28224         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
28225         sys/time.h here, reverting that part of the previous patch:
28226         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
28227
28228 2007-01-28  Bruno Haible  <bruno@clisp.org>
28229
28230         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
28231         value of $(SYS_TIME_H).
28232         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
28233         remove it conditionally, too. [added by Jim Meyering]
28234         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
28235         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
28236         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
28237         GETTIMEOFDAY_REPLACEMENT to 1.
28238
28239 2007-01-28  Bruno Haible  <bruno@clisp.org>
28240
28241         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
28242         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
28243         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
28244         Set UNISTD_H instead of UNISTD_H2.
28245         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
28246
28247 2007-01-28  Bruno Haible  <bruno@clisp.org>
28248
28249         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
28250         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
28251
28252 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28253
28254         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
28255         (func_create_testdir): Ensure C locale for `grep' and `tr'
28256         character ranges.
28257         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
28258         ACLOCAL_AMFLAGS parsing state machine.
28259
28260 2007-01-27  Bruno Haible  <bruno@clisp.org>
28261
28262         * modules/unistr/base: Update.
28263
28264 2007-01-27  Bruno Haible  <bruno@clisp.org>
28265
28266         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
28267         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
28268         * modules/unistr/u32-mbtouc-unsafe: Renamed from
28269         modules/unistr/u32-mbtouc.
28270         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
28271         * lib/unistr.h: Update.
28272         * lib/linebreak.c: Update.
28273         * modules/unistr/u32-mbtouc: Renamed from
28274         modules/unistr/u32-mbtouc-safe.
28275         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
28276         * lib/unistr.h: Update.
28277         * lib/unistr/u32-to-u8.c: Update.
28278         * lib/unistr/u32-to-u16.c: Update.
28279
28280 2007-01-27  Bruno Haible  <bruno@clisp.org>
28281
28282         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
28283         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
28284         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
28285         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
28286         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
28287         * modules/unistr/u16-mbtouc-unsafe: Renamed from
28288         modules/unistr/u16-mbtouc.
28289         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
28290         * lib/unistr.h: Update.
28291         * lib/linebreak.c: Update.
28292         * modules/linebreak: Update.
28293         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
28294         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
28295         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
28296         * modules/unistr/u16-mbtouc: Renamed from
28297         modules/unistr/u16-mbtouc-safe.
28298         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
28299         * lib/unistr.h: Update.
28300         * lib/unistr/u16-to-u8.c: Update.
28301         * modules/unistr/u16-to-u8: Update.
28302         * lib/unistr/u16-to-u32.c: Update.
28303         * modules/unistr/u16-to-u32: Update.
28304
28305 2007-01-27  Bruno Haible  <bruno@clisp.org>
28306
28307         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
28308         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
28309         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
28310         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
28311         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
28312         * modules/unistr/u8-mbtouc-unsafe: Renamed from
28313         modules/unistr/u8-mbtouc.
28314         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
28315         * lib/unistr.h: Update.
28316         * lib/striconveh.c: Update.
28317         * modules/striconveh: Update.
28318         * lib/linebreak.c: Update.
28319         * modules/linebreak: Update.
28320         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
28321         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
28322         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
28323         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
28324         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
28325         * lib/unistr.h: Update.
28326         * lib/striconveh.c: Update.
28327         * modules/striconveh: Update.
28328         * lib/unistr/u8-to-u16.c: Update.
28329         * modules/unistr/u8-to-u16: Update.
28330         * lib/unistr/u8-to-u32.c: Update.
28331         * modules/unistr/u8-to-u32: Update.
28332
28333 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28334
28335         Sync from Libtool.
28336         * lib/argz.c: Do not include strings.h nor memory.h, include
28337         string.h unconditionally.  Patch by Simon Josefsson.
28338
28339 2007-01-27  Bruno Haible  <bruno@clisp.org>
28340
28341         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
28342         from gl_HEADER_STRING_H_BODY.
28343         (gl_HEADER_STRING_H_BODY): Require it.
28344         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
28345         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
28346         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
28347         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
28348         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
28349         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
28350         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
28351         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
28352         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
28353         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
28354         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
28355         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
28356         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
28357         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
28358         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
28359
28360 2007-01-27  Bruno Haible  <bruno@clisp.org>
28361
28362         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
28363         check_PROGRAMS into noinst_PROGRAMS.
28364         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
28365         check_PROGRAMS in this case.
28366         (func_import): Set for_test to false.
28367         (func_create_testdir): Set for_test to true.
28368
28369 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
28370             Bruno Haible  <bruno@clisp.org>
28371
28372         * modules/strcasestr (Files): Remove lib/strcasestr.h.
28373         (Depends-on): Add string.
28374         (Includes): Use <string.h> instead of strcasestr.h.
28375         * modules/string (Makefile.am): Also substitute the value of
28376         REPLACE_STRCASESTR.
28377         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
28378         assume strcasestr is declared in <string.h> not <strings.h>. Also
28379         set REPLACE_STRCASESTR.
28380         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
28381         REPLACE_STRCASESTR.
28382         * lib/strcasestr.h: Remove file.
28383         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
28384         * lib/string_.h (strcasestr): New declaration.
28385
28386 2007-01-27  Bruno Haible  <bruno@clisp.org>
28387
28388         * lib/string_.h: Use 'extern'.
28389
28390 2007-01-27  Jim Meyering  <jim@meyering.net>
28391
28392         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
28393         of set-but-not-used local, "q".
28394
28395         * lib/mempcpy.c: Include <config.h> before <string.h>.
28396         This fixes a compilation error on HP-UX, due to the system's
28397         "restrict"-using mempcpy prototype.
28398
28399 2007-01-26  Bruno Haible  <bruno@clisp.org>
28400
28401         Small optimization.
28402         * lib/javacomp.c: Include c-strstr.h.
28403          (is_envjavac_gcj): Use c_strstr instead of strstr.
28404         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
28405
28406 2007-01-26  Bruno Haible  <bruno@clisp.org>
28407
28408         * MODULES.html.sh (Unicode string functions): Add the new modules.
28409
28410         * modules/uniconv/u32-strconv-to-locale: New file.
28411         * lib/uniconv/u32-strconv-to-locale.c: New file.
28412
28413         * modules/uniconv/u16-strconv-to-locale: New file.
28414         * lib/uniconv/u16-strconv-to-locale.c: New file.
28415
28416         * modules/uniconv/u8-strconv-to-locale: New file.
28417         * lib/uniconv/u8-strconv-to-locale.c: New file.
28418
28419         * modules/uniconv/u32-strconv-from-locale: New file.
28420         * lib/uniconv/u32-strconv-from-locale.c: New file.
28421
28422         * modules/uniconv/u16-strconv-from-locale: New file.
28423         * lib/uniconv/u16-strconv-from-locale.c: New file.
28424
28425         * modules/uniconv/u8-strconv-from-locale: New file.
28426         * lib/uniconv/u8-strconv-from-locale.c: New file.
28427
28428         * modules/uniconv/u32-strconv-to-enc: New file.
28429         * lib/uniconv/u32-strconv-to-enc.c: New file.
28430         * modules/uniconv/u32-strconv-to-enc-tests: New file.
28431         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
28432
28433         * modules/uniconv/u16-strconv-to-enc: New file.
28434         * lib/uniconv/u16-strconv-to-enc.c: New file.
28435         * lib/uniconv/u-strconv-to-enc.h: New file.
28436         * modules/uniconv/u16-strconv-to-enc-tests: New file.
28437         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
28438
28439         * modules/uniconv/u8-strconv-to-enc: New file.
28440         * lib/uniconv/u8-strconv-to-enc.c: New file.
28441         * modules/uniconv/u8-strconv-to-enc-tests: New file.
28442         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
28443
28444         * modules/uniconv/u32-strconv-from-enc: New file.
28445         * lib/uniconv/u32-strconv-from-enc.c: New file.
28446         * modules/uniconv/u32-strconv-from-enc-tests: New file.
28447         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
28448
28449         * modules/uniconv/u16-strconv-from-enc: New file.
28450         * lib/uniconv/u16-strconv-from-enc.c: New file.
28451         * modules/uniconv/u16-strconv-from-enc-tests: New file.
28452         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
28453
28454         * modules/uniconv/u8-strconv-from-enc: New file.
28455         * lib/uniconv/u8-strconv-from-enc.c: New file.
28456         * lib/uniconv/u-strconv-from-enc.h: New file.
28457         * modules/uniconv/u8-strconv-from-enc-tests: New file.
28458         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
28459
28460         * modules/uniconv/u32-conv-from-enc: New file.
28461         * lib/uniconv/u32-conv-from-enc.c: New file.
28462         * modules/uniconv/u32-conv-from-enc-tests: New file.
28463         * tests/uniconv/test-u32-conv-from-enc.c: New file.
28464
28465         * modules/uniconv/u16-conv-from-enc: New file.
28466         * lib/uniconv/u16-conv-from-enc.c: New file.
28467         * lib/uniconv/u-conv-from-enc.h: New file.
28468         * modules/uniconv/u16-conv-from-enc-tests: New file.
28469         * tests/uniconv/test-u16-conv-from-enc.c: New file.
28470
28471         * modules/uniconv/u8-conv-from-enc: New file.
28472         * lib/uniconv/u8-conv-from-enc.c: New file.
28473         * modules/uniconv/u8-conv-from-enc-tests: New file.
28474         * tests/uniconv/test-u8-conv-from-enc.c: New file.
28475
28476         * modules/uniconv/base: New file.
28477         * lib/uniconv.h: New file.
28478
28479 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
28480
28481         * doc/gnulib-tool.texi (Initial import): Update to match current
28482         behavior with strdup module.
28483         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
28484         * lib/memmem.h: Remove; all uses removed.  This is now done
28485         by <string.h>.
28486         * lib/mempcpy.h: Likewise.
28487         * lib/memrchr.h: Likewise.
28488         * lib/stpcpy.h: Likewise.
28489         * lib/stpncpy.h: Likewise.
28490         * lib/strcase.h: Likewise.
28491         * lib/strchrnul.h: Likewise.
28492         * lib/strdup.h: Likewise.
28493         * lib/strndup.h: Likewise.
28494         * lib/strnlen.h: Likewise.
28495         * lib/strpbrk.h: Likewise.
28496         * lib/strsep.h: Likewise.
28497         * lib/strstr.h: Likewise.
28498         * lib/strtok_r.h: Likewise.
28499         * lib/string_.h: New file.
28500         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
28501         Rely on <string.h> instead.
28502         * lib/canon-host.c: Likewise.
28503         * lib/chdir-long.c: Likewise.
28504         * lib/concatpath.c: Likewise.
28505         * lib/exclude.c: Likewise.
28506         * lib/fchdir.c: Likewise.
28507         * lib/getaddrinfo.c: Likewise.
28508         * lib/getcwd.c: Likewise.
28509         * lib/getsubopt.c: Likewise.
28510         * lib/glob.c: Likewise.
28511         * lib/hard-locale.c: Likewise.
28512         * lib/iconvme.c: Likewise.
28513         * lib/javacomp.c: Likewise.
28514         * lib/mempcpy.c: Likewise.
28515         * lib/memrchr.c: Likewise.
28516         * lib/regex_internal.h: Likewise.
28517         * lib/stpncpy.c: Likewise.
28518         * lib/strcasecmp.c: Likewise.
28519         * lib/strchrnul.c: Likewise.
28520         * lib/strdup.c: Likewise.
28521         * lib/striconv.c: Likewise.
28522         * lib/striconveh.c: Likewise.
28523         * lib/striconveha.c: Likewise.
28524         * lib/strncasecmp.c: Likewise.
28525         * lib/strndup.c: Likewise.
28526         * lib/strnlen.c: Likewise.
28527         * lib/strsep.c: Likewise.
28528         * lib/strstr.c: Likewise.
28529         * lib/strtok_r.c: Likewise.
28530         * lib/userspec.c: Likewise.
28531         * lib/w32spawn.h: Likewise.
28532         * lib/xstrndup.c: Likewise.
28533         * lib/mountlist.c (strstr): Remove decl.
28534         * m4/string_h.m4: New file.
28535         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
28536         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
28537         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
28538         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
28539         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
28540         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
28541         Set REPLACE_STRCASECMP if necessary.
28542         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
28543         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
28544         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
28545         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
28546         HAVE_DECL_STRDUP if necessary.
28547         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
28548         since gl_FUNC_STRNDUP does that now.
28549         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
28550         Check for decl here...
28551         (gl_PREREQ_STRNLEN): ... not here.
28552         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
28553         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
28554         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
28555         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
28556         necessary.
28557         * modules/string: New file.
28558         * modules/memmem (Files): Remove special-purpose include file.
28559         (Depends-on): Add string.
28560         (Include): Include <string.h>, not the removed file.
28561         * modules/mempcpy: Likewise.
28562         * modules/memrchr: Likewise.
28563         * modules/stpcpy: Likewise.
28564         * modules/stpncpy: Likewise.
28565         * modules/strcase: Likewise.
28566         * modules/strchrnul: Likewise.
28567         * modules/strdup: Likewise.
28568         * modules/strndup: Likewise.
28569         * modules/strnlen: Likewise.
28570         * modules/strpbrk: Likewise.
28571         * modules/strsep: Likewise.
28572         * modules/strstr: Likewise.
28573         * modules/strtok_r: Likewise.
28574         * tests/test-dirname.c: Don't include "strdup.h", since
28575         <string.h> now suffices.
28576         * tests/test-memmem.c: Don't include "memmem.h", since
28577         <string.h> now suffices.
28578
28579 2007-01-25  Bruno Haible  <bruno@clisp.org>
28580
28581         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
28582         *resultp is 0.
28583
28584         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
28585         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
28586         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
28587         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
28588
28589         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
28590         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
28591         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
28592         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
28593         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
28594         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
28595
28596 2007-01-24  Bruno Haible  <bruno@clisp.org>
28597
28598         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
28599         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
28600         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
28601         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
28602         gl_FUNC_FTS_CORE.
28603         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
28604         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
28605         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
28606         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
28607         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
28608         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
28609         gl_FUNC_FCHOWNAT.
28610         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
28611         gl_FUNC_STRFTIME.
28612         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
28613         Reported by Ralf Wildenhues.
28614
28615 2007-01-24  Bruno Haible  <bruno@clisp.org>
28616
28617         Drop AC_REQUIRE calls that are redundant with the module dependencies.
28618         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
28619         gl_GETADDRINFO.
28620         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
28621         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
28622         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
28623
28624 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
28625
28626         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
28627         Don't use 'exit'; just return from 'main'.
28628         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
28629
28630         * lib/fnmatch_.h: Readjust white space and comments to match
28631         glibc, to avoid spurious diffs.
28632
28633 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
28634
28635         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
28636         2004-12-01 change by Jakub Jelinek, since this code won't compile
28637         if !LIBC.  Problem reported by Bob Proulx.
28638
28639 2007-01-23  Bruno Haible  <bruno@clisp.org>
28640
28641         * lib/striconveh.c: Include c-strcaseeq.h.
28642         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
28643         * modules/striconveh (Depends-on): Add c-strcaseeq.
28644
28645 2007-01-23  Bruno Haible  <bruno@clisp.org>
28646
28647         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
28648
28649         * modules/c-strcaseeq: New file.
28650         * lib/c-strcaseeq.h: New file.
28651
28652         * modules/streq: New file.
28653         * lib/streq.h: New file.
28654
28655 2007-01-23  Bruno Haible  <bruno@clisp.org>
28656
28657         * modules/striconveha-tests: New file.
28658         * tests/test-striconveha.c: New file.
28659
28660         * lib/striconveha.h: Include <stdbool.h>.
28661         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
28662         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
28663         (mem_iconveha_notranslit): Renamed from mem_iconveha.
28664         (mem_iconveha): New function.
28665         (str_iconveha_notranslit): Renamed from str_iconveha.
28666         (str_iconveha): New function.
28667         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
28668         c-strcase.
28669
28670 2007-01-23  Bruno Haible  <bruno@clisp.org>
28671
28672         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
28673         encodings without forgiving before trying any encoding with handler.
28674         (str_iconveha): Try all encodings without forgiving before trying any
28675         encoding with handler.
28676
28677 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
28678
28679         Import the following changes from libc.
28680
28681         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
28682
28683         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
28684
28685         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
28686
28687         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
28688         normal_bracket label.
28689
28690         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
28691
28692         [BZ #361]
28693         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
28694         to normal_bracket after fetching the next character.
28695
28696 2007-01-22  Bruno Haible  <bruno@clisp.org>
28697
28698         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
28699         argument.
28700         * lib/striconveh.c (iconv_carefully_1): New function.
28701         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
28702         argument.
28703         (str_cd_iconveh): Update.
28704         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
28705         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
28706         * tests/test-striconveh.c (MAGIC): New macro.
28707         (new_offsets): New function.
28708         (main): Test call with and without offsets.
28709
28710 2007-01-22  Bruno Haible  <bruno@clisp.org>
28711
28712         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
28713         * modules/sys_select (Makefile.am): Likewise.
28714         * modules/sys_socket (Makefile.am): Likewise.
28715         * modules/sys_time (Makefile.am): Likewise.
28716
28717 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
28718
28719         * modules/gettimeofday (License): Change from GPL to LGPL, since
28720         gettimeofday is a library function.
28721
28722 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28723
28724         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
28725
28726 2007-01-21  Bruno Haible  <bruno@clisp.org>
28727
28728         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
28729
28730 2007-01-21  Bruno Haible  <bruno@clisp.org>
28731
28732         * modules/striconveha: New file.
28733         * lib/striconveha.h: New file.
28734         * lib/striconveha.c: New file.
28735         * MODULES.html.sh (Internationalization functions): Add striconveha.
28736         * lib/striconv.c (str_iconv): Optimize the case of an empty input
28737         string.
28738         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
28739
28740 2007-01-21  Bruno Haible  <bruno@clisp.org>
28741
28742         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
28743         * lib/striconveh.c (str_iconveh): Likewise.
28744
28745 2007-01-21  Bruno Haible  <bruno@clisp.org>
28746
28747         * lib/striconveh.h (mem_iconveh): New declaration.
28748         * lib/striconveh.c (mem_iconveh): New function.
28749         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
28750
28751 2007-01-21  Bruno Haible  <bruno@clisp.org>
28752
28753         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
28754
28755         * lib/striconveh.h (mem_cd_iconveh): Change specification.
28756         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
28757         original result buffer.
28758         (str_cd_iconveh): Update.
28759         * tests/test-striconveh.c (main): Update.
28760
28761         * lib/striconv.h (mem_cd_iconv): Change specification.
28762         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
28763         result buffer.
28764         (str_cd_iconv): Update.
28765         * tests/test-striconv.c (main): Update.
28766
28767 2007-01-21  Bruno Haible  <bruno@clisp.org>
28768
28769         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
28770
28771 2007-01-20  Jim Meyering  <jim@meyering.net>
28772
28773         * lib/userspec.c (parse_with_separator): If a user or group string
28774         starts with "+", skip the corresponding name-to-ID look-up, since
28775         such a look-up must fail: user and group names may not include "+".
28776
28777 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
28778
28779         * lib/poll.c: Include sys/time.h and time.h unconditionally,
28780         since we now assume the sys_time module.
28781         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
28782         check for sys/time.h; no longer needed.
28783         * modules/poll (Depends-on): Depend on sys_time.
28784
28785 2007-01-18  Bruno Haible  <bruno@clisp.org>
28786
28787         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
28788         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
28789
28790         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
28791         gettimeofday.
28792
28793         * tests/test-gettimeofday.c: Include <time.h>.
28794         (dummy): Remove variable.
28795
28796         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
28797         gl_HEADER_SYS_TIME_H.
28798         (gl_HEADER_SYS_TIME_H): New macro.
28799
28800         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
28801         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28802         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
28803         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
28804         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28805         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
28806         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
28807         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28808         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
28809         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
28810         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28811
28812         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
28813         last change; it caused a compilation error when cross-compiling to
28814         Cygwin.
28815
28816 2007-01-18  Jim Meyering  <jim@meyering.net>
28817
28818         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
28819         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
28820         than the race-prone "test -d sys || mkdir sys".
28821         (configure.ac): Use AC_PROG_MKDIR_P.
28822         * modules/sys_select: Likewise.
28823         * modules/sys_socket: Likewise.
28824         * modules/sys_time: Likewise.
28825
28826 2007-01-18  Eric Blake  <ebb9@byu.net>
28827
28828         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
28829         replace gettimeofday.
28830         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
28831         name, to avoid infinite recursion.
28832
28833 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
28834
28835         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
28836         module sys_time.
28837         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
28838         assume timespec.h defines struct timeval.
28839         * lib/settime.c: Likewise.
28840         * lib/utimens.c: Likewise.
28841         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
28842         since we now assume the gettimeofday module.
28843         * lib/tempname.c (__gen_tempname): Likewise.
28844         * lib/gettimeofday.h: Remove.
28845         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
28846         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
28847         Include <time.h>, for 'time()'.
28848         (localtime_buffer_addr): Also use this workaround if
28849         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
28850         to simplify the uses.  All uses changed.
28851         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
28852         that #undef is inside {}, and 'const' follows type name consistently.
28853         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
28854         (gettimeofday): Do not use the maximum possible value for
28855         tv->tv_usec, since that might break usages other than ls.c.
28856         Instead, we'll leave ls.c alone.  This undoes today's patch
28857         by Bruno.  Add a compile-time warning for 1s-clock resolution;
28858         we've never observed the problem but might as well keep the
28859         canary.
28860         * lib/nanosleep.c: Include timespec.h first, for interface check.
28861         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
28862         now assume the sys_time module.
28863         * lib/tempname.c: Likewise.
28864         * lib/timespec.h: Likewise.
28865         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
28866         needed.
28867         * lib/strftime.c: Likewise.
28868         * lib/timespec.h: Likewise.
28869         * lib/posixtm.c: Include posixtm.h first, for interface check.
28870         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
28871         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
28872         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
28873         * lib/sys_time_.h: New file.
28874         * lib/timespec.h (struct timespec): Use long int, not long.
28875         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
28876         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
28877         Remove obsolescent call to AC_HEADER_TIME.
28878         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
28879         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
28880         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
28881         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
28882         Likewise.
28883         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
28884         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
28885         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
28886         into the sys_time module.  Check for gettimeofday just once.
28887         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
28888         for gettimeofday signature to just check the signature.  Merely
28889         compile it, since linking doesn't test signature.  Improve test for
28890         whether gettimeofday.o is actually needed.
28891         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
28892         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
28893         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
28894         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28895         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
28896         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
28897         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
28898         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
28899         than worrying about sys/time.h.
28900         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
28901         Don't bother worrying about TIME_WITH_SYS_TIME.
28902         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
28903         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
28904         * m4/sys_time_h.m4: New file.
28905         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
28906         Don't include sys/time.h.  Return from main rather than exiting.
28907         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
28908         all uses changed.
28909         * modules/gethrxtime (Depends-on): Add sys_time.
28910         * modules/gettime (Depends-on): Likewise.
28911         * modules/gettimeofday (Depends-on): Likewise.
28912         * modules/nanosleep (Depends-on): Likewise.
28913         * modules/settime (Depends-on): Likewise.
28914         * modules/tempname (Depends-on): Likewise.
28915         * modules/utimens (Depends-on): Likewise.
28916         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
28917         (Include:) Change back to <sys/time.h>.
28918         (Maintainer:) Add self.
28919         * modules/sys_time: New file.
28920         * modules/tempname (Depends-on): Add gettimeofday.
28921         * tests/test-gettimeofday.c: Include <sys/time.h>
28922         rather than gettimeofday.h.
28923
28924 2007-01-17  Bruno Haible  <bruno@clisp.org>
28925
28926         * gnulib-tool (func_get_license): Revert last patch. Instead, let
28927         the license default to GPL.
28928         (func_create_testdir): Don't complain if a module is LGPL and its
28929         tests module depends on GPLed modules.
28930
28931 2007-01-17  Bruno Haible  <bruno@clisp.org>
28932
28933         * lib/gettimeofday.c (gettimeofday): Add code for the case
28934         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
28935         maximum possible value for tv->tv_usec, rather than the minimum one.
28936
28937 2005-10-08  Martin Lambers  <marlam@marlam.de>
28938 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
28939 2007-01-16  Bruno Haible  <bruno@clisp.org>
28940
28941         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
28942         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
28943         gl_FUNC_GETTIMEOFDAY.
28944         (Include): Add gettimeofday.h.
28945         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
28946         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
28947         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
28948         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
28949         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
28950         * lib/gettimeofday.h: New file.
28951         * lib/gettimeofday.c: Include <sys/timeb.h>.
28952         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
28953         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28954         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
28955         fall back on time().
28956
28957         * tests/test-gettimeofday.c: New file.
28958         * modules/gettimeofday-tests: New file.
28959
28960 2007-01-16  Eric Blake  <ebb9@byu.net>
28961
28962         * modules/fnmatch (Depends-on): Depend on wchar.
28963         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
28964         * m4/fnmatch.m4: Likewise.
28965         * modules/mbchar (Makefile.am): Assume <wchar.h>.
28966         * m4/mbchar.m4: Likewise.
28967         * modules/mbswidth (Depends-on): Depend on wchar.
28968         * lib/mbswidth.c: Assume <wchar.h>.
28969         * m4/mbswidth.m4: Likewise.
28970         * modules/quotearg (Depends-on): Depend on wchar.
28971         * lib/quotearg.c: Assume <wchar.h>.
28972         * m4/quotearg.m4: Likewise.
28973         * modules/regex (Depends-on): Depend on wchar.
28974         * lib/regex_internal.h: Assume <wchar.h>.
28975         * m4/regex.m4: Likewise.
28976         * modules/stdint (Depends-on): Depend on wchar.
28977         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
28978         * m4/stdint.m4: Likewise.
28979         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
28980         * modules/strftime (Depends-on): Depend on wchar.
28981         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
28982         * modules/strtol (Depends-on): Depend on wchar.
28983         * lib/strtol.c: Assume <wchar.h>.
28984         * modules/wcwidth (Depends-on): Depend on wchar.
28985         * lib/wcwidth.h: Assume <wchar.h>.
28986         * m4/wcwidth.m4: Likewise.
28987
28988 2007-01-16  Bruno Haible  <bruno@clisp.org>
28989
28990         * modules/csharpexec-script: New, created from...
28991         * modules/csharpexec: ... this.
28992
28993 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
28994
28995         * modules/javaexec-script: New, created from...
28996         * modules/javaexec: ... this.
28997
28998 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28999
29000         * modules/poll (Dependencies): Add sys_select.
29001
29002 2007-01-15  Jim Meyering  <jim@meyering.net>
29003
29004         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
29005         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
29006         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
29007         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
29008
29009 2007-01-15  Bruno Haible  <bruno@clisp.org>
29010
29011         * modules/striconveh: New file.
29012         * lib/striconveh.h: New file.
29013         * lib/striconveh.c: New file.
29014         * MODULES.html.sh (Internationalization functions): Add striconveh.
29015
29016         * modules/striconveh-tests: New file.
29017         * tests/test-striconveh.c: New file.
29018
29019 2007-01-15  Bruno Haible  <bruno@clisp.org>
29020
29021         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
29022         not from GNU libiconv or GNU libc.
29023
29024 2007-01-15  Bruno Haible  <bruno@clisp.org>
29025
29026         * doc/gnulib-intro.texi (Copyright): Explain the different license
29027         terms for module descriptions, autoconf macros, tests, documentation.
29028
29029 2007-01-14  Bruno Haible  <bruno@clisp.org>
29030
29031         * modules/striconv-tests: New file.
29032         * tests/test-striconv.c: New file.
29033
29034 2007-01-14  Bruno Haible  <bruno@clisp.org>
29035
29036         * modules/iconv-tests: New file.
29037         * tests/test-iconv.c: New file.
29038
29039 2007-01-14  Bruno Haible  <bruno@clisp.org>
29040
29041         * gnulib-tool (func_get_license): For test modules, use the license of
29042         the main module.
29043
29044 2007-01-14  Bruno Haible  <bruno@clisp.org>
29045
29046         * modules/iconv (Include): Clarify that <iconv.h> can only be included
29047         if iconv is found to exist.
29048
29049 2007-01-14  Bruno Haible  <bruno@clisp.org>
29050
29051         * modules/c-ctype-tests: New file.
29052         * tests/test-c-ctype.c: New file.
29053
29054 2007-01-14  Bruno Haible  <bruno@clisp.org>
29055
29056         * modules/binary-io-tests: New file.
29057         * tests/test-binary-io.sh: New file.
29058         * tests/test-binary-io.c: New file.
29059
29060 2007-01-14  Bruno Haible  <bruno@clisp.org>
29061
29062         * modules/array-oset-tests: New file.
29063         * tests/test-array_oset.c: New file.
29064
29065 2007-01-14  Bruno Haible  <bruno@clisp.org>
29066
29067         * modules/array-list-tests: New file.
29068         * tests/test-array_list.c: New file.
29069
29070 2007-01-14  Bruno Haible  <bruno@clisp.org>
29071
29072         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
29073         and make.
29074         Reported by Simon Josefsson in
29075         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
29076
29077 2007-01-14  Bruno Haible  <bruno@clisp.org>
29078
29079         * modules/allocsa-tests: New file.
29080         * tests/test-allocsa.c: New file.
29081
29082 2007-01-14  Bruno Haible  <bruno@clisp.org>
29083
29084         * modules/fchdir (Depends-on): Add absolute-header.
29085         * modules/unistd (Depends-on): Likewise.
29086
29087 2006-12-30  Bruno Haible  <bruno@clisp.org>
29088
29089         * modules/fchdir: New file.
29090         * modules/unistd (Files): Add lib/unistd_.h.
29091         (Makefile.am): Generate unistd.h from unistd_.h.
29092         * lib/fchdir.c: New file.
29093         * lib/dirent_.h: New file.
29094         * lib/unistd_.h: New file.
29095         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
29096         * m4/fchdir.m4: New file.
29097         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
29098         (gl_HEADER_UNISTD): Invoke it.
29099         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
29100         function.
29101         * lib/backupfile.c (opendir, closedir): Undefine.
29102         * lib/chown.c (open, close): Undefine.
29103         * lib/clean-temp.c (open, close): Undefine.
29104         * lib/copy-file.c (open, close): Undefine.
29105         * lib/execute.c (open, close): Undefine.
29106         * lib/fsusage.c (open, close): Undefine.
29107         * lib/gc-gnulib.c (open, close): Undefine.
29108         * lib/getcwd.c (opendir, closedir): Undefine.
29109         * lib/glob.c (opendir, closedir): Undefine.
29110         * lib/javacomp.c (open, close): Undefine.
29111         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
29112         * lib/openat-proc.c (open, close): Undefine.
29113         * lib/pagealign_alloc.c (open, close): Undefine.
29114         * lib/pipe.c (open, close): Undefine.
29115         * lib/progreloc.c (open, close): Undefine.
29116         * lib/savedir.c (opendir, closedir): Undefine.
29117         * lib/utime.c (open, close): Undefine.
29118         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
29119
29120 2007-01-10  Bruno Haible  <bruno@clisp.org>
29121
29122         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
29123
29124 2007-01-12  Eric Blake  <ebb9@byu.net>
29125
29126         Provide a robust <wchar.h>.  Further simplifications are now
29127         possible in other modules, but not included here.
29128         * modules/wchar: New module.
29129         * m4/wchar.m4: New file.
29130         * lib/wchar_.h: Likewise.
29131         * modules/mbchar (Depends-on): Depend on wchar, as the first use
29132         of the new module.
29133         * MODULES.html.sh (Extended multibyte and wide character utilities):
29134         New section.
29135
29136 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
29137
29138         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
29139         to a reasonable default for memory allocation.
29140         (xreadlink): Don't allocate a huge buffer, to work around a buggy
29141         file system that reports garbage st_size values for symlinks.
29142         Problem reported by Liyang Hu.
29143
29144 2007-01-11  Simon Josefsson  <simon@josefsson.org>
29145
29146         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
29147         Emacs .#* auto-save files).
29148
29149 2007-01-11  Bruno Haible  <bruno@clisp.org>
29150
29151         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
29152         directory.
29153
29154 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
29155
29156         Use @...@ consistently in lib/wctype_.h.
29157         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
29158         on it being set to 1 or 0.
29159         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
29160         go back to AC_SUBSTing it.
29161         * modules/wctype (Makefile.am): Undo previous change.
29162
29163 2007-01-10  Eric Blake  <ebb9@byu.net>
29164
29165         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
29166         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
29167         * modules/wctype (Makefile.am): Likewise.
29168         Reported by Chris McGuire.
29169
29170 2007-01-10  Jim Meyering  <jim@meyering.net>
29171
29172         fts.c: a small readability/maintainability improvement
29173         * lib/fts.c (fts_read): Make this code slightly more readable and
29174         maintainable by hoisting the "sp->fts_cur = p" assignments to
29175         immediately follow the statements that set P.  Derived from
29176         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
29177
29178 2007-01-10  Eric Blake  <ebb9@byu.net>
29179
29180         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
29181         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
29182         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
29183         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
29184         Reported by Chris McGuire.
29185
29186 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29187
29188         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
29189         in sed script.
29190
29191 2007-01-09  Bruno Haible  <bruno@clisp.org>
29192
29193         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
29194         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
29195         variables.
29196         (func_module): Use them.
29197
29198 2007-01-09  Bruno Haible  <bruno@clisp.org>
29199
29200         * modules/unistr/base: New file.
29201         * lib/unistr.h: New file.
29202
29203         * modules/unistr/u8-to-u16: New file.
29204         * lib/unistr/u8-to-u16.c: New file.
29205
29206         * modules/unistr/u8-to-u32: New file.
29207         * lib/unistr/u8-to-u32.c: New file.
29208
29209         * modules/unistr/u16-to-u8: New file.
29210         * lib/unistr/u16-to-u8.c: New file.
29211
29212         * modules/unistr/u16-to-u32: New file.
29213         * lib/unistr/u16-to-u32.c: New file.
29214
29215         * modules/unistr/u32-to-u8: New file.
29216         * lib/unistr/u32-to-u8.c: New file.
29217
29218         * modules/unistr/u32-to-u16: New file.
29219         * lib/unistr/u32-to-u16.c: New file.
29220
29221         * modules/unistr/u8-check: New file.
29222         * modules/unistr/u16-check: New file.
29223         * modules/unistr/u32-check: New file.
29224         * lib/unistr/u8-check.c: New file.
29225         * lib/unistr/u16-check.c: New file.
29226         * lib/unistr/u32-check.c: New file.
29227
29228         * modules/unistr/u8-chr: New file.
29229         * modules/unistr/u16-chr: New file.
29230         * modules/unistr/u32-chr: New file.
29231         * lib/unistr/u8-chr.c: New file.
29232         * lib/unistr/u16-chr.c: New file.
29233         * lib/unistr/u32-chr.c: New file.
29234
29235         * modules/unistr/u8-cmp: New file.
29236         * modules/unistr/u16-cmp: New file.
29237         * modules/unistr/u32-cmp: New file.
29238         * lib/unistr/u8-cmp.c: New file.
29239         * lib/unistr/u16-cmp.c: New file.
29240         * lib/unistr/u32-cmp.c: New file.
29241
29242         * modules/unistr/u8-cpy: New file.
29243         * modules/unistr/u16-cpy: New file.
29244         * modules/unistr/u32-cpy: New file.
29245         * lib/unistr/u8-cpy.c: New file.
29246         * lib/unistr/u16-cpy.c: New file.
29247         * lib/unistr/u32-cpy.c: New file.
29248         * lib/unistr/u-cpy.h: New file.
29249
29250         * modules/unistr/u8-cpy-alloc: New file.
29251         * modules/unistr/u16-cpy-alloc: New file.
29252         * modules/unistr/u32-cpy-alloc: New file.
29253         * lib/unistr/u8-cpy-alloc.c: New file.
29254         * lib/unistr/u16-cpy-alloc.c: New file.
29255         * lib/unistr/u32-cpy-alloc.c: New file.
29256         * lib/unistr/u-cpy-alloc.h: New file.
29257
29258         * modules/unistr/u8-endswith: New file.
29259         * modules/unistr/u16-endswith: New file.
29260         * modules/unistr/u32-endswith: New file.
29261         * lib/unistr/u8-endswith.c: New file.
29262         * lib/unistr/u16-endswith.c: New file.
29263         * lib/unistr/u32-endswith.c: New file.
29264         * lib/unistr/u-endswith.h: New file.
29265
29266         * modules/unistr/u8-mblen: New file.
29267         * modules/unistr/u16-mblen: New file.
29268         * modules/unistr/u32-mblen: New file.
29269         * lib/unistr/u8-mblen.c: New file.
29270         * lib/unistr/u16-mblen.c: New file.
29271         * lib/unistr/u32-mblen.c: New file.
29272
29273         * modules/unistr/u8-mbtouc: New file.
29274         * modules/unistr/u16-mbtouc: New file.
29275         * modules/unistr/u32-mbtouc: New file.
29276         * lib/unistr/u8-mbtouc.c: New file.
29277         * lib/unistr/u16-mbtouc.c: New file.
29278         * lib/unistr/u32-mbtouc.c: New file.
29279
29280         * modules/unistr/u8-mbtouc-safe: New file.
29281         * modules/unistr/u16-mbtouc-safe: New file.
29282         * modules/unistr/u32-mbtouc-safe: New file.
29283         * lib/unistr/u8-mbtouc-safe.c: New file.
29284         * lib/unistr/u16-mbtouc-safe.c: New file.
29285         * lib/unistr/u32-mbtouc-safe.c: New file.
29286
29287         * modules/unistr/u8-move: New file.
29288         * modules/unistr/u16-move: New file.
29289         * modules/unistr/u32-move: New file.
29290         * lib/unistr/u8-move.c: New file.
29291         * lib/unistr/u16-move.c: New file.
29292         * lib/unistr/u32-move.c: New file.
29293         * lib/unistr/u-move.h: New file.
29294
29295         * modules/unistr/u8-next: New file.
29296         * modules/unistr/u16-next: New file.
29297         * modules/unistr/u32-next: New file.
29298         * lib/unistr/u8-next.c: New file.
29299         * lib/unistr/u16-next.c: New file.
29300         * lib/unistr/u32-next.c: New file.
29301
29302         * modules/unistr/u8-prev: New file.
29303         * modules/unistr/u16-prev: New file.
29304         * modules/unistr/u32-prev: New file.
29305         * lib/unistr/u8-prev.c: New file.
29306         * lib/unistr/u16-prev.c: New file.
29307         * lib/unistr/u32-prev.c: New file.
29308
29309         * modules/unistr/u8-set: New file.
29310         * modules/unistr/u16-set: New file.
29311         * modules/unistr/u32-set: New file.
29312         * lib/unistr/u8-set.c: New file.
29313         * lib/unistr/u16-set.c: New file.
29314         * lib/unistr/u32-set.c: New file.
29315         * lib/unistr/u-set.h: New file.
29316
29317         * modules/unistr/u8-startswith: New file.
29318         * modules/unistr/u16-startswith: New file.
29319         * modules/unistr/u32-startswith: New file.
29320         * lib/unistr/u8-startswith.c: New file.
29321         * lib/unistr/u16-startswith.c: New file.
29322         * lib/unistr/u32-startswith.c: New file.
29323         * lib/unistr/u-startswith.h: New file.
29324
29325         * modules/unistr/u8-stpcpy: New file.
29326         * modules/unistr/u16-stpcpy: New file.
29327         * modules/unistr/u32-stpcpy: New file.
29328         * lib/unistr/u8-stpcpy.c: New file.
29329         * lib/unistr/u16-stpcpy.c: New file.
29330         * lib/unistr/u32-stpcpy.c: New file.
29331         * lib/unistr/u-stpcpy.h: New file.
29332
29333         * modules/unistr/u8-stpncpy: New file.
29334         * modules/unistr/u16-stpncpy: New file.
29335         * modules/unistr/u32-stpncpy: New file.
29336         * lib/unistr/u8-stpncpy.c: New file.
29337         * lib/unistr/u16-stpncpy.c: New file.
29338         * lib/unistr/u32-stpncpy.c: New file.
29339         * lib/unistr/u-stpncpy.h: New file.
29340
29341         * modules/unistr/u8-strcat: New file.
29342         * modules/unistr/u16-strcat: New file.
29343         * modules/unistr/u32-strcat: New file.
29344         * lib/unistr/u8-strcat.c: New file.
29345         * lib/unistr/u16-strcat.c: New file.
29346         * lib/unistr/u32-strcat.c: New file.
29347         * lib/unistr/u-strcat.h: New file.
29348
29349         * modules/unistr/u8-strchr: New file.
29350         * modules/unistr/u16-strchr: New file.
29351         * modules/unistr/u32-strchr: New file.
29352         * lib/unistr/u8-strchr.c: New file.
29353         * lib/unistr/u16-strchr.c: New file.
29354         * lib/unistr/u32-strchr.c: New file.
29355
29356         * modules/unistr/u8-strcmp: New file.
29357         * modules/unistr/u16-strcmp: New file.
29358         * modules/unistr/u32-strcmp: New file.
29359         * lib/unistr/u8-strcmp.c: New file.
29360         * lib/unistr/u16-strcmp.c: New file.
29361         * lib/unistr/u32-strcmp.c: New file.
29362
29363         * modules/unistr/u8-strcpy: New file.
29364         * modules/unistr/u16-strcpy: New file.
29365         * modules/unistr/u32-strcpy: New file.
29366         * lib/unistr/u8-strcpy.c: New file.
29367         * lib/unistr/u16-strcpy.c: New file.
29368         * lib/unistr/u32-strcpy.c: New file.
29369         * lib/unistr/u-strcpy.h: New file.
29370
29371         * modules/unistr/u8-strcspn: New file.
29372         * modules/unistr/u16-strcspn: New file.
29373         * modules/unistr/u32-strcspn: New file.
29374         * lib/unistr/u8-strcspn.c: New file.
29375         * lib/unistr/u16-strcspn.c: New file.
29376         * lib/unistr/u32-strcspn.c: New file.
29377         * lib/unistr/u-strcspn.h: New file.
29378
29379         * modules/unistr/u8-strdup: New file.
29380         * modules/unistr/u16-strdup: New file.
29381         * modules/unistr/u32-strdup: New file.
29382         * lib/unistr/u8-strdup.c: New file.
29383         * lib/unistr/u16-strdup.c: New file.
29384         * lib/unistr/u32-strdup.c: New file.
29385         * lib/unistr/u-strdup.h: New file.
29386
29387         * modules/unistr/u8-strlen: New file.
29388         * modules/unistr/u16-strlen: New file.
29389         * modules/unistr/u32-strlen: New file.
29390         * lib/unistr/u8-strlen.c: New file.
29391         * lib/unistr/u16-strlen.c: New file.
29392         * lib/unistr/u32-strlen.c: New file.
29393         * lib/unistr/u-strlen.h: New file.
29394
29395         * modules/unistr/u8-strmblen: New file.
29396         * modules/unistr/u16-strmblen: New file.
29397         * modules/unistr/u32-strmblen: New file.
29398         * lib/unistr/u8-strmblen.c: New file.
29399         * lib/unistr/u16-strmblen.c: New file.
29400         * lib/unistr/u32-strmblen.c: New file.
29401
29402         * modules/unistr/u8-strmbtouc: New file.
29403         * modules/unistr/u16-strmbtouc: New file.
29404         * modules/unistr/u32-strmbtouc: New file.
29405         * lib/unistr/u8-strmbtouc.c: New file.
29406         * lib/unistr/u16-strmbtouc.c: New file.
29407         * lib/unistr/u32-strmbtouc.c: New file.
29408
29409         * modules/unistr/u8-strncat: New file.
29410         * modules/unistr/u16-strncat: New file.
29411         * modules/unistr/u32-strncat: New file.
29412         * lib/unistr/u8-strncat.c: New file.
29413         * lib/unistr/u16-strncat.c: New file.
29414         * lib/unistr/u32-strncat.c: New file.
29415         * lib/unistr/u-strncat.h: New file.
29416
29417         * modules/unistr/u8-strncmp: New file.
29418         * modules/unistr/u16-strncmp: New file.
29419         * modules/unistr/u32-strncmp: New file.
29420         * lib/unistr/u8-strncmp.c: New file.
29421         * lib/unistr/u16-strncmp.c: New file.
29422         * lib/unistr/u32-strncmp.c: New file.
29423
29424         * modules/unistr/u8-strncpy: New file.
29425         * modules/unistr/u16-strncpy: New file.
29426         * modules/unistr/u32-strncpy: New file.
29427         * lib/unistr/u8-strncpy.c: New file.
29428         * lib/unistr/u16-strncpy.c: New file.
29429         * lib/unistr/u32-strncpy.c: New file.
29430         * lib/unistr/u-strncpy.h: New file.
29431
29432         * modules/unistr/u8-strnlen: New file.
29433         * modules/unistr/u16-strnlen: New file.
29434         * modules/unistr/u32-strnlen: New file.
29435         * lib/unistr/u8-strnlen.c: New file.
29436         * lib/unistr/u16-strnlen.c: New file.
29437         * lib/unistr/u32-strnlen.c: New file.
29438         * lib/unistr/u-strnlen.h: New file.
29439
29440         * modules/unistr/u8-strpbrk: New file.
29441         * modules/unistr/u16-strpbrk: New file.
29442         * modules/unistr/u32-strpbrk: New file.
29443         * lib/unistr/u8-strpbrk.c: New file.
29444         * lib/unistr/u16-strpbrk.c: New file.
29445         * lib/unistr/u32-strpbrk.c: New file.
29446         * lib/unistr/u-strpbrk.h: New file.
29447
29448         * modules/unistr/u8-strrchr: New file.
29449         * modules/unistr/u16-strrchr: New file.
29450         * modules/unistr/u32-strrchr: New file.
29451         * lib/unistr/u8-strrchr.c: New file.
29452         * lib/unistr/u16-strrchr.c: New file.
29453         * lib/unistr/u32-strrchr.c: New file.
29454
29455         * modules/unistr/u8-strspn: New file.
29456         * modules/unistr/u16-strspn: New file.
29457         * modules/unistr/u32-strspn: New file.
29458         * lib/unistr/u8-strspn.c: New file.
29459         * lib/unistr/u16-strspn.c: New file.
29460         * lib/unistr/u32-strspn.c: New file.
29461         * lib/unistr/u-strspn.h: New file.
29462
29463         * modules/unistr/u8-strstr: New file.
29464         * modules/unistr/u16-strstr: New file.
29465         * modules/unistr/u32-strstr: New file.
29466         * lib/unistr/u8-strstr.c: New file.
29467         * lib/unistr/u16-strstr.c: New file.
29468         * lib/unistr/u32-strstr.c: New file.
29469         * lib/unistr/u-strstr.h: New file.
29470
29471         * modules/unistr/u8-strtok: New file.
29472         * modules/unistr/u16-strtok: New file.
29473         * modules/unistr/u32-strtok: New file.
29474         * lib/unistr/u8-strtok.c: New file.
29475         * lib/unistr/u16-strtok.c: New file.
29476         * lib/unistr/u32-strtok.c: New file.
29477         * lib/unistr/u-strtok.h: New file.
29478
29479         * modules/unistr/u8-uctomb: New file.
29480         * modules/unistr/u16-uctomb: New file.
29481         * modules/unistr/u32-uctomb: New file.
29482         * lib/unistr/u8-uctomb.c: New file.
29483         * lib/unistr/u16-uctomb.c: New file.
29484         * lib/unistr/u32-uctomb.c: New file.
29485
29486         * MODULES.html.sh (Unicode string functions): Add the new modules.
29487
29488 2007-01-08  Bruno Haible  <bruno@clisp.org>
29489
29490         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
29491         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
29492         subdirectories.
29493
29494 2007-01-08  Karl Berry  <karl@gnu.org>
29495
29496         * doc/error.texi: mention that main() fns must set program_name
29497         when progname is used.
29498
29499 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
29500
29501         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
29502         WCTYPE_H is empty, for the benefit of builds from non-distclean
29503         directories.  Problem reported by Eric Blake in
29504         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
29505
29506 2007-01-08  Bruno Haible  <bruno@clisp.org>
29507
29508         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
29509         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
29510         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
29511         PROVIDE_CANONICALIZE_FILENAME_MODE.
29512         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
29513
29514 2007-01-08  Bruno Haible  <bruno@clisp.org>
29515
29516         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
29517         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
29518         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
29519         * lib/fts.c: Likewise.
29520         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
29521
29522 2006-12-25  Bruno Haible  <bruno@clisp.org>
29523
29524         * modules/utf8-ucs4-safe: New file.
29525         * lib/utf8-ucs4-safe.h: New file.
29526         * lib/unistr/utf8-ucs4-safe.c: New file.
29527
29528         * modules/utf16-ucs4-safe: New file.
29529         * lib/utf16-ucs4-safe.h: New file.
29530         * lib/unistr/utf16-ucs4-safe.c: New file.
29531
29532         * MODULES.html.sh (Unicode string functions): Add the new modules.
29533
29534 2007-01-08  Bruno Haible  <bruno@clisp.org>
29535
29536         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
29537         (Depends-on): Add unitypes.
29538         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
29539         (u8_mbtouc_aux): Move out to separate file.
29540         (u8_mbtouc): Use ucs4_t, uint8_t types.
29541         * lib/unistr/utf8-ucs4.c: New file.
29542
29543         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
29544         (Depends-on): Add unitypes.
29545         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
29546         (u16_mbtouc_aux): Move out to separate file.
29547         (u16_mbtouc): Use ucs4_t, uint16_t types.
29548         * lib/unistr/utf16-ucs4.c: New file.
29549
29550         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
29551         (Depends-on): Add unitypes.
29552         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
29553         (u8_uctomb_aux): Move out to separate file.
29554         (u8_uctomb): Use ucs4_t, uint8_t types.
29555         * lib/unistr/ucs4-utf8.c: New file.
29556
29557         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
29558         (Depends-on): Add unitypes.
29559         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
29560         (u16_uctomb_aux): Move out to separate file.
29561         (u16_uctomb): Use ucs4_t, uint16_t types.
29562         * lib/unistr/ucs4-utf16.c: New file.
29563
29564 2006-12-25  Bruno Haible  <bruno@clisp.org>
29565
29566         * modules/unitypes: New file.
29567         * lib/unitypes.h: New file.
29568         * MODULES.html.sh (func_all_modules): New section "Unicode string
29569         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
29570         this section. Add unitypes.
29571
29572 2007-01-08  Bruno Haible  <bruno@clisp.org>
29573
29574         Avoid variable names that conflict with those from libtool.
29575         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
29576         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
29577         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
29578         library_names_spec to acl_library_names_spec, hardcode_* to
29579         acl_hardcode_*.
29580         Reported by Ralf Wildenhues.
29581
29582 2007-01-08  Bruno Haible  <bruno@clisp.org>
29583
29584         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
29585         definition.
29586         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
29587         definition.
29588         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
29589         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
29590         definition.
29591         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
29592         definition.
29593         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
29594         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
29595         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
29596         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
29597         definition.
29598         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
29599         definition.
29600         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
29601         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
29602         GC_USE_<algorithm>.
29603         * lib/gc-libgcrypt.c: Likewise.
29604         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
29605         * modules/gc-arctwo (configure.ac): Likewise.
29606         * modules/gc-des (configure.ac): Likewise.
29607         * modules/gc-hmac-md5 (configure.ac): Likewise.
29608         * modules/gc-hmac-sha1 (configure.ac): Likewise.
29609         * modules/gc-md2 (configure.ac): Likewise.
29610         * modules/gc-md4 (configure.ac): Likewise.
29611         * modules/gc-md5 (configure.ac): Likewise.
29612         * modules/gc-random (configure.ac): Likewise.
29613         * modules/gc-rijndael (configure.ac): Likewise.
29614         * modules/gc-sha1 (configure.ac): Likewise.
29615
29616 2007-01-08  Bruno Haible  <bruno@clisp.org>
29617
29618         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
29619         macro definition.
29620         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
29621         definition.
29622         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
29623         definition.
29624         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
29625         * modules/fcntl-safer (configure.ac): Likewise.
29626         * modules/fopen-safer (configure.ac): Likewise.
29627         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
29628         GNULIB_FWRITEERROR macro definition.
29629
29630 2007-01-08  Bruno Haible  <bruno@clisp.org>
29631
29632         * m4/gnulib-common.m4: New file.
29633         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
29634         (func_get_filelist): Add m4/gnulib-common.m4.
29635
29636 2007-01-08  Bruno Haible  <bruno@clisp.org>
29637
29638         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
29639         command.
29640
29641 2007-01-08  Jim Meyering  <jim@meyering.net>
29642
29643         Use a more robust test for a "can't happen" condition.
29644         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
29645         narrowed the st_size value.  Presuming the "can't happen" condition
29646         is true, that narrowing could conceivably convert an invalid st_size
29647         value into a valid one.  Instead, use a change based on Matthew
29648         Woehlke's original patch.
29649
29650         Slight readability improvement: use an assert-like macro
29651         in place of literal "abort ()" uses.
29652         * lib/fts.c (fts_assert): Define.
29653         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
29654         Use this macro instead of a bare 'abort'.
29655
29656 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
29657
29658         Don't worry about using IRIX 5.3's wctype.h broken definitions;
29659         simply work around them.
29660         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
29661         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
29662         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
29663         declaring.
29664         Don't bother to define as macros, since the standard doesn't require it.
29665         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
29666         longer worry about IRIX 5.3.
29667         (HAVE_WCTYPE_CTMP_BUG): Remove.
29668
29669 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
29670
29671         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
29672         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
29673         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
29674         Problems reported by Georg Schwarz for IRIX 5.3.
29675
29676         * gnulib-tool (autoconf_minversion): Take the maximum version number
29677         found, not the minimum.  Problem reported by James Youngman.
29678
29679 2007-01-03  Karl Berry  <karl@gnu.org>
29680
29681         * doc/error.texi: new file, explaining interaction with progname.
29682         * doc/gnulib.texi: include it.  Update copyright.
29683
29684 2007-01-03  Simon Josefsson  <simon@josefsson.org>
29685
29686         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
29687         AC_CANONICAL_HOST, to improve autobuild outputs.
29688
29689 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
29690             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
29691
29692         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
29693         sockets, server sockets, and other file descriptors.  Count errors
29694         to compute the return value.  Reorder the code a bit to be easier
29695         to follow.  Don't set event bits that were not requested (except
29696         POLLERR and POLLHUP).
29697
29698 2007-01-01  Bruno Haible  <bruno@clisp.org>
29699
29700         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
29701
29702 2007-01-03  Jim Meyering  <jim@meyering.net>
29703
29704         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
29705
29706 2007-01-02  Bruno Haible  <bruno@clisp.org>
29707
29708         * modules/settime (Include): Require timespec.h.
29709         * modules/nanosleep (Include): Likewise.
29710
29711 2007-01-01  Bruno Haible  <bruno@clisp.org>
29712
29713         * gnulib-tool (func_emit_copyright_notice): Bump year.
29714         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
29715
29716 2007-01-01  Bruno Haible  <bruno@clisp.org>
29717
29718         Improve support for OpenBSD.
29719         * build-aux/config.rpath (libname_spec): Export.
29720         (library_names_spec): New variable. Export.
29721         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
29722         library_names_spec from the config.rpath output. Locate shared library
29723         through the name pattern in library_names_spec.
29724
29725 2007-01-01  Eric Blake  <ebb9@byu.net>
29726
29727         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
29728
29729 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
29730
29731         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
29732         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
29733         assume the C locale, and avoid an "eval" that could cause trouble.
29734         Problem with SORT reported by Bob Proulx.
29735
29736         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
29737         Define.  Trivial patch from Henning Nielsen Lund, originally
29738         sent to bug-grep@gnu.org today.
29739
29740 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
29741
29742         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
29743         struct stat.  Problem reported by Henning Nielsen Lund.
29744         * lib/acl.c: Include acl.h first, to check interface.  Don't
29745         bother to include sys/types.h and sys/stat.h again.
29746
29747 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
29748
29749         Import the following change from libc; problem reported by
29750         Sven Verdoolaege.
29751
29752         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
29753
29754         [BZ #1373]
29755         * lib/argp.h: Remove __NTH for __argp_usage inline function.
29756
29757 2006-12-28  Jim Meyering  <jim@meyering.net>
29758
29759         * build-aux/announce-gen: Do not assume that the package
29760         builds any of tar.gz, tar.bz2, and .xdelta files.
29761         Suggestion from Simon Josefsson.
29762
29763 2006-12-28  Simon Josefsson  <simon@josefsson.org>
29764
29765         * modules/announce-gen: New file.
29766
29767 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
29768
29769         * lib/mbchar.h: Just include <wctype.h>; the wctype module
29770         handles its gotchas now.
29771         * lib/mbswidth.c: Likewise.
29772         * lib/wcwidth.h: Likewise.
29773         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
29774         and iswcntrl; the wctype module does this stuff now.
29775         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
29776         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
29777         * modules/mbchar (Depends-on): Add wctype.
29778         * modules/mbswidth (Depends-on): Likewise.
29779         * modules/wcwidth (Depends-on): Likewise.
29780
29781 2006-12-27  Eric Blake  <ebb9@byu.net>
29782
29783         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
29784         module uses more than what <wctype.h> is required to provide.
29785
29786 2006-12-26  Eric Blake  <ebb9@byu.net>
29787
29788         * gnulib-tool (sed_extract_prog): Avoid space-tab.
29789
29790 2006-12-26  Eric Blake  <ebb9@byu.net>
29791
29792         * modules/absolute-header: New module.
29793         * modules/fcntl (Depends-on): Depend on it.
29794         * modules/inttypes (Depends-on): Likewise.
29795         * modules/stdint (Depends-on): Likewise.
29796         * modules/sys_stat (Depends-on): Likewise.
29797         * modules/wctype (Depends-on): Likewise.
29798         * MODULES.html.sh (Support for building libraries and
29799         executables): Document it.
29800
29801 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
29802
29803         * gnulib-tool (SED): Remove, undoing previous change.
29804         The problem was that it broke coreutils on Solaris, because
29805         "sed --posix" leaked into a makefile.
29806         (sed): New alias, if 'alias' and GNU sed.
29807
29808 2006-12-24  Jim Meyering  <jim@meyering.net>
29809
29810         Work around an fchownat bug in glibc-2.4:
29811         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
29812         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
29813         in spite of the -P option.
29814         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
29815         New macros.
29816         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
29817         * modules/openat (Files): Add lib/fchownat.c.
29818         * lib/openat.c (fchownat): Don't define here.  Move to...
29819         * lib/fchownat.c: ...this new file.
29820
29821 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
29822
29823         Fix bug reported by Bruno Haible in
29824         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
29825         where quotearg.c didn't compile on Mac OS X 10.2 because it
29826         lacks <wchar.h> and wint_t.
29827         * lib/wctype_.h (__wctype_wint_t): New type.
29828         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
29829         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
29830         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
29831         Arg is now of type __wctype_wint_t, not wint_t.
29832         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
29833         substitute HAVE_WINT_T.
29834         * modules/wctype (Files): Add m4/wint_t.m4.
29835         (wctype.h): Substitute HAVE_WINT_T.
29836
29837 2006-12-23  Bruno Haible  <bruno@clisp.org>
29838
29839         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
29840
29841 2006-12-23  Bruno Haible  <bruno@clisp.org>
29842
29843         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
29844         S_ISLNK.
29845         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
29846         mingw.
29847
29848 2006-12-22  Bruno Haible  <bruno@clisp.org>
29849
29850         * lib/copy-file.c: Include acl.h.
29851         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
29852         Close the file descriptors only after being done with copy_acl.
29853         * modules/copy-file (Depends-on): Add acl.
29854
29855 2006-12-22  Bruno Haible  <bruno@clisp.org>
29856
29857         * gnulib-tool (SED): New variable.
29858         Use $SED instead of sed everywhere.
29859
29860 2006-12-22  Bruno Haible  <bruno@clisp.org>
29861
29862         * modules/no-c++: New file.
29863         * m4/no-c++.m4: New file.
29864         * MODULES.html.sh (Support for building libraries and executables):
29865         Add no-c++.
29866
29867 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
29868
29869         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
29870         Include <limits.h>, and use its INT_MAX to rewrite the
29871         j loop so that it does not overflow 'int'.  Problem reported by
29872         Ralf Wildenhues in
29873         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
29874         Play it safe by shifting left by 1 rather than multiplying by 2,
29875         as GCC is less likely to optimize this away when the value
29876         is signed (when it assumes overflow leads to undefined behavior).
29877         Also, don't assume time_t uses two's complement.
29878
29879 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
29880
29881         * MODULES.html.sh: New module wctype.
29882         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
29883         * lib/fnmatch.c: Don't bother to include <wchar.h> before
29884         <wctype.h>, since the new wctype module should fix this.
29885         * lib/quotearg.c: Include <wctype.h> unconditionally, since
29886         the wctype module should arrange for it.
29887         * lib/regex_internal.h: Likewise.
29888         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
29889         since the wctype module should handle this now.
29890         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
29891         * modules/fnmatch (Depends-on): Add wctype.
29892         * modules/quotearg (Depends-on): Likewise.
29893         * modules/regex (Depends-on): Likewise.
29894
29895 2006-12-19  Bruno Haible  <bruno@clisp.org>
29896
29897         * lib/strdup.h [C++]: Wrap definitions in extern "C".
29898         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
29899
29900 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29901
29902         * modules/savewd (Depends-on): Fix dependency on fcntl.
29903
29904 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
29905
29906         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
29907         conforms to C99, rather than relying on the user's environment
29908         setting of STDINT_H.
29909
29910 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
29911         and Eric Blake  <ebb9@byu.net>
29912
29913         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
29914         This is more consistent with the other defines here.
29915         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
29916         Port to z/OS.  Problem reported by Paul Gilmartin.
29917         Change local vars to use gl_ prefix rather than ac_.
29918         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
29919         with other defines.
29920         * modules/double-slash-root: New module.
29921         * modules/dirname (Files): Remove m4/double-slash-root.m4.
29922         (Depends-on): Add double-slash-root.
29923         * MODULES.html.sh (File system functions): Mention new module.
29924
29925 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
29926
29927         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
29928         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
29929         This is for the benefit of gzip, which doesn't do i18n.
29930
29931 2006-12-12  Jim Meyering  <jim@meyering.net>
29932
29933         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
29934         Reported by Andreas Schwab <schwab@suse.de>.
29935
29936 2006-12-12  Bruno Haible  <bruno@clisp.org>
29937
29938         Merge these changes.
29939         2006-09-05  Bruno Haible  <bruno@clisp.org>
29940         * lib/iconvme.c (iconv_string): No need to save and restore errno when
29941         iconv_alloc succeeded.
29942         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
29943         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
29944         test for " && dest " at the end - dest is always != NULL there. Call
29945         iconv with 4xNULL arguments initially, to reset the state. Call iconv
29946         with 2xNULL arguments, also to flush the state storage. Handle the
29947         IRIX iconv behaviour. Realloc the final result, to throw away unused
29948         memory.
29949
29950 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
29951
29952         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
29953         and fchmodat unconditionally, since glibc 2.4 has them.
29954         Problem reported by Arkadiusz Miskiewicz.
29955
29956 2006-12-10  Bruno Haible  <bruno@clisp.org>
29957
29958         * gnulib-tool (func_import): Show the include files only for those
29959         modules that are copied and specified.
29960         Reported by Karl Berry.
29961
29962 2006-12-08  Jim Meyering  <jim@meyering.net>
29963
29964         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
29965         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
29966
29967         * build-aux/announce-gen: Add two new options, both optional:
29968         --bootstrap-tools=TOOL_LIST
29969               a comma-separated list of tools, e.g.,
29970               autoconf,automake,bison,gnulib
29971         --gnulib-snapshot-date=DATE
29972               if gnulib is in the bootstrap tool list,
29973               then report this as the snapshot date.
29974               If not specified, use the current date/time.
29975               If you specify a date here, be sure it's UTC.
29976
29977 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29978
29979         * tests/test-argp-2.sh: Fix test to match actual output.
29980         (func_compare): Fix sed script to be portable.
29981
29982 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
29983
29984         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
29985         workaround for this case.  It is not autoconfigured now; offhand
29986         it's hard to see how to autoconfigure it.
29987
29988 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
29989
29990         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
29991         a directory that is about to be chowned.  Such a directory's
29992         initial file permissions should permit the owner only and this
29993         should not be changed until after the chown, since the group and
29994         other bits would be incorrect if they granted permission before
29995         the chown.
29996
29997         Fix porting problem for iswctype reported by Georg Schwarz in:
29998         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
29999         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
30000         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
30001         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
30002         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
30003
30004 2006-12-03  Jim Meyering  <jim@meyering.net>
30005
30006         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
30007         p->fts_statp may not yet be defined.
30008         (fts_read): Instead, set it in the caller, once p->fts_statp is
30009         sure to be defined, and corresponds to a top-level directory.
30010         This bug made du -x fail.  Here's the coreutils test case:
30011         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
30012         Reported by Mike Frysinger.
30013
30014 2006-12-01  Jim Meyering  <jim@meyering.net>
30015
30016         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
30017         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
30018         Reported by Simon Josefsson.
30019
30020 2006-11-30  Jim Meyering  <jim@meyering.net>
30021
30022         * m4/warning.m4: Use the all-permissive copyright notice
30023         recommended by RMS (rather than LGPL).
30024         * m4/vararrays.m4: Likewise.
30025         * m4/flexmember.m4: Likewise.
30026
30027 2006-11-29  Bruno Haible  <bruno@clisp.org>
30028
30029         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
30030         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
30031         using +=.
30032         Reported by Simon Josefsson <simon@josefsson.org>.
30033
30034 2006-11-28  James Youngman <jay@gnu.org>
30035
30036         * README: Advise users that they might find the bug-gnulib@gnu.org
30037         and autotools-announce@gnu.org mailing lists useful.
30038
30039 2006-11-28  Bruno Haible  <bruno@clisp.org>
30040
30041         * m4/ptrdiff_max.m4: Remove file.
30042
30043 2006-11-21  Bruno Haible  <bruno@clisp.org>
30044
30045         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
30046         _AC_COMPUTE_INT.
30047         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
30048         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
30049         _AC_COMPUTE_INT.
30050         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
30051         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
30052         _AC_COMPUTE_INT.
30053         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
30054
30055 2006-11-28  Jim Meyering  <jim@meyering.net>
30056
30057         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
30058         warning from "gcc -Wshadow" about shadowing the builtin.
30059
30060 2006-11-27  Bruno Haible  <bruno@clisp.org>
30061
30062         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
30063         _AC_COMPUTE_INT.
30064         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
30065
30066 2006-11-27  Bruno Haible  <bruno@clisp.org>
30067             Paul Eggert  <eggert@cs.ucla.edu>
30068
30069         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
30070
30071 2006-11-26  Bruno Haible  <bruno@clisp.org>
30072
30073         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
30074         noinst_LTLIBRARIES.
30075
30076 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
30077             Bruno Haible  <bruno@clisp.org>
30078
30079         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
30080         if compiling with "gcc -ansi".
30081
30082 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
30083
30084         Fix some incompatibilities with gcc -ansi -pedantic.
30085         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
30086         if compiling pedantically with GCC, unless it's C99 or later.
30087         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
30088         it mishandles gcc -ansi -pedantic as well.
30089         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
30090         if gcc -pedantic.
30091         * lib/regexec.c (check_node_accept_bytes): Don't use auto
30092         initializers for struct if -pedantic, unless it's C99 or later.
30093
30094 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
30095
30096         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
30097         Don't close an fd more than once. Identical atimes indicate
30098         success, not failure.
30099
30100 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
30101
30102         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
30103
30104 2006-11-23  Jim Meyering  <jim@meyering.net>
30105
30106         * build-aux/announce-gen: New file.  From coreutils.
30107
30108 2006-11-22  Jim Meyering  <jim@meyering.net>
30109
30110         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
30111         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
30112         (fts_read): Use a temporary to narrow the overused st_size member
30113         before using it in a switch statement.  Reported by Matthew Woehlke.
30114
30115         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
30116         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
30117
30118 2006-11-20  Bruno Haible  <bruno@clisp.org>
30119
30120         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
30121         changequote instead of pairs of brackets.
30122         Reported by Andreas Schwab <schwab@suse.de>.
30123
30124 2006-11-21  Jim Meyering  <jim@meyering.net>
30125
30126         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
30127         so as to remain compatible with older compilers.
30128         Patch from Michael Deutschmann.
30129
30130 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
30131
30132         * MODULES.html.sh (File system functions): Add openat.
30133
30134         * lib/openat.h (rpl_fstatat): New macro, if
30135         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
30136         (fstatat): Define to rpl_fstatat under the same conditions,
30137         unless COMPILING_FSTATAT.
30138         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
30139         seems to have the bug.
30140         * lib/fstatat.c: New file.
30141         * modules/openat (Files): Add it.
30142
30143 2006-11-20  Bruno Haible  <bruno@clisp.org>
30144
30145         * Makefile: New file.
30146
30147 2006-11-20  Jim Meyering  <jim@meyering.net>
30148
30149         The beginnings of syntax-related checks for gnulib.
30150         * lib/Makefile: New file.
30151         * lib/t-idcache: New script.  Ensure that the two halves of
30152         idcache.c stay in sync.
30153
30154         * lib/idcache.c: Adjust comments in user- and group- portions to
30155         be more accurate, and to be consistent with one another.
30156
30157 2006-11-20  Jim Meyering  <jim@meyering.net>
30158
30159         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
30160         continue using the flexible array member (thus, this module performs
30161         half as many malloc calls), with the addition that...
30162         (getgroup, getuser): Consistently record a non-match via an empty
30163         "name" string, and map an empty string match to a NULL return value.
30164         * modules/idcache (Depends-on): Re-add flexmember.
30165
30166         * lib/idcache.c (getuser): Remove all uses of the register keyword.
30167         (getuidbyname, getgroup, getgidbyname): Likewise.
30168
30169         Use cleaner syntax: NULL rather than 0.
30170         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
30171
30172 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
30173
30174         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
30175         It mishandled the case where the group was missing.
30176         Problem reported by Greg Schafer.
30177         * modules/idcache: Likewise.
30178
30179 2006-11-18  Jim Meyering  <jim@meyering.net>
30180
30181         * check-module (%exempt_header): Add exception for some
30182         conditionally-included headers.
30183
30184         * modules/i-ring (Depends-on): Add verify.
30185         (License): Change to LGPL.
30186
30187 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30188
30189         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
30190         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
30191         and inttostr.h.  Use snprintf rather than uinttostr, so that
30192         LGPLed code doesn't depend on GPLed.
30193
30194 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
30195
30196         * modules/inline (License): Change from GPL to LGPL.
30197
30198 2006-11-17  Jim Meyering  <jim@meyering.net>
30199
30200         * modules/d-type (License): Switch to LGPL.
30201
30202 2006-11-15  Bruno Haible  <bruno@clisp.org>
30203
30204         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
30205
30206 2006-11-15  Eric Blake  <ebb9@byu.net>
30207
30208         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
30209         the module dependency.
30210
30211 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
30212             Bruno Haible  <bruno@clisp.org>
30213
30214         * gnulib-tool (func_create_testdir): Add license consistency check.
30215
30216 2006-11-15  Eric Blake  <ebb9@byu.net>
30217
30218         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
30219         random "(cached)" in configure output.
30220
30221 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30222
30223         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
30224         test for conforming inttypes.h is both announced and cached.
30225
30226         * MODULES.html.sh (seen_modules, seen_files): New variables.
30227         (func_module): Rewrite to use a few less gnulib-tool and sed
30228         invocations.  Avoid a couple of quadratic algorithms for ...
30229         (missed_modules, missed_files): ... these, with ...
30230         (func_append, func_tmpdir): ... these new functions, from
30231         gnulib-tool.  Analogously, install traps for cleanup.
30232
30233         * tests/test-gc.c (main): Remove unused variables.
30234         * tests/test-read-file.c: Include stdlib.h, for 'free'.
30235
30236 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
30237
30238         * modules/inttostr (License): Change to LGPL.
30239
30240 2006-11-14  Eric Blake  <ebb9@byu.net>
30241
30242         * modules/tempname (License): Change to LGPL.
30243
30244 2006-11-14  Eric Blake  <ebb9@byu.net>
30245
30246         * doc/functions.texi (Function Portability): *printf functions on
30247         Cygwin now understand all POSIX size specifiers.
30248
30249 2006-11-14  Bruno Haible  <bruno@clisp.org>
30250
30251         * modules/c-ctype (License): Change to LGPL.
30252
30253 2006-11-12  Bruno Haible  <bruno@clisp.org>
30254
30255         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
30256         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
30257         for GNOME libraries, for which the include files are installed in
30258         subdirectories of $prefix/include.
30259
30260 2006-11-12  Bruno Haible  <bruno@clisp.org>
30261
30262         * m4/lib-link.m4: Require at least autoconf-2.54.
30263         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
30264         name to underscores for the --with option.
30265
30266 2006-11-13  Bruno Haible  <bruno@clisp.org>
30267
30268         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
30269         the tests directory.
30270         Reported by Ralf Wildenhues.
30271
30272 2006-11-13  Bruno Haible  <bruno@clisp.org>
30273
30274         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
30275         (func_emit_initmacro_end): Undo the override here.
30276         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
30277         Works around the famous automake error in coreutils.
30278
30279 2006-11-13  Eric Blake  <ebb9@byu.net>
30280
30281         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
30282         element, not its node.
30283
30284 2006-11-12  Bruno Haible  <bruno@clisp.org>
30285
30286         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
30287         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
30288
30289 2006-11-12  Bruno Haible  <bruno@clisp.org>
30290
30291         * gnulib-tool: New option --local-symlink.
30292         (func_usage): Document it.
30293         (lsymbolic): New variable.
30294         (func_import, func_create_testdir): If --symlink was not specified,
30295         test whether --local-symlink was specified and the file comes from
30296         the local_gnulib_dir.
30297
30298 2006-11-12  Bruno Haible  <bruno@clisp.org>
30299
30300         * gnulib-tool (func_ln): New function.
30301         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
30302
30303 2006-11-12  Bruno Haible  <bruno@clisp.org>
30304
30305         Finish support for source files in subdirectories.
30306         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
30307         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
30308         AUTOMAKE_OPTIONS.
30309         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
30310
30311 2006-11-12  Bruno Haible  <bruno@clisp.org>
30312
30313         * gnulib-tool (func_get_automake_snippet): Synthesize also an
30314         EXTRA_lib_SOURCES augmentation.
30315         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
30316
30317 2006-11-12  Jim Meyering  <jim@meyering.net>
30318
30319         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
30320         file descriptors.  This also averts a failure on systems with
30321         native openat support when a traversed directory lacks "x" access.
30322         * lib/fts_.h: Include "i-ring.h"
30323         (struct FTS) [fts_fd_ring]: New member.
30324         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
30325         (FCHDIR): Add parentheses.
30326         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
30327         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
30328         When descending, rather than simply closing the previous
30329         fts_cwd_fd value, push that file descriptor onto the ring.
30330         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
30331         (fts_open): Initialize the new fd_ring member.
30332         (fts_close): Clear the ring.
30333         (fts_safe_changedir): When possible, use our new fd_ring to skip
30334         the diropen and fstat and dev/ino comparison that would normally
30335         accompany a virtual `chdir ("..")'.
30336
30337         * modules/fts (Depends-on): Add i-ring.
30338         * modules/i-ring: New module.
30339         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
30340         * m4/i-ring.m4: New file.
30341
30342 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30343
30344         * gnulib-tool (func_create_testdir): Fix replacement of
30345         `build-aux' in configure.ac.  Run autotools in gltests
30346         subdirectory.
30347         (func_create_testdir, func_create_megatestdir, test): There is
30348         no need for '--force' in most autotool invocations in a new
30349         tree.  Actually fail the whole test if any of the tools, or the
30350         configure or make stages fail.
30351
30352         Sync from Automake.
30353         * build-aux/gnupload: Revert last change.  Add pointer to upload
30354         instructions of the GNU Maintenance Instructions.
30355         Suggestion by Karl Berry.
30356
30357 2006-11-10  Jim Meyering  <jim@meyering.net>
30358
30359         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
30360
30361 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
30362
30363         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
30364         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
30365         (bind_textdomain_codeset) [! ENABLE_NLS]:
30366         Evaluate all the arguments.  That way, callers get compatible behavior
30367         if the arguments have side effects.  Also, it avoids some GCC
30368         diagnostics in some cases; Joel E. Denny reported problems when Bison
30369         was configured with --enable-gcc-warnigs.
30370
30371 2006-11-10  Jim Meyering  <jim@meyering.net>
30372
30373         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
30374         relevant options in CFLAGS (like -O, -fno-inline) are taken into
30375         account.
30376
30377 2006-11-10  Jim Meyering  <jim@meyering.net>
30378
30379         * modules/inline: New file/module.
30380         * modules/xalloc (Files): Remove m4/inline.m4.
30381         (Depends-on): Add inline, instead.
30382         * modules/oset: Likewise.
30383         * modules/list: Likewise.
30384
30385 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
30386
30387         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
30388         Problem reported by Matthew Woehlke.
30389
30390 2006-11-09  Bruno Haible  <bruno@clisp.org>
30391
30392         * lib/tempname.c (gen_tempname): Remove variant that invokes
30393         __gen_tempname.
30394         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
30395         __gen_tempname.
30396
30397 2006-11-08  Bruno Haible  <bruno@clisp.org>
30398
30399         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
30400         to 'yes' instead of 'cross-compiling'.
30401
30402 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
30403
30404         * lib/quotearg.h (quotearg_free): New decl.
30405         * lib/quotearg.c (quotearg_free): New function.
30406         (slot0, nslots, slotvec0, slotvec):
30407         Now file-scope so that quotearg_free can get at them.
30408
30409 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30410
30411         Sync from Automake.
30412         * build-aux/gnupload: Add missing 'gnu' to example URL.
30413         Report by Karl Berry.
30414
30415 2006-11-08  Bruno Haible  <bruno@clisp.org>
30416
30417         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
30418         Suggested by Paul Eggert.
30419
30420 2006-11-08  Jim Meyering  <jim@meyering.net>
30421
30422         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
30423         It's already included if !_LIBC.
30424         (fts_safe_changedir): Add a comment.
30425
30426 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
30427
30428         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
30429         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
30430         Matthew Woehlke.
30431
30432         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
30433         definitions up, to avoid colliding with change below.
30434         (static_inline) [HAVE_INLINE]: New macro.
30435         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
30436         Provide extern decls when !HAVE_INLINE.  Do not define unless
30437         static_inline is defined, either by us or by xmalloc.c.  Use
30438         static_inline rather than static inline.
30439         (XCALLOC): Optimize sizeof(T) = 1 case.
30440         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
30441
30442 2006-11-07  Bruno Haible  <bruno@clisp.org>
30443
30444         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
30445         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
30446         AC_C_INLINE.
30447         * modules/xalloc (Files): Add m4/inline.m4.
30448
30449 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30450
30451         * README: Fix typo.
30452         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
30453         (Miscellanous Notes): ...from this.
30454
30455 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
30456
30457         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
30458         Mention that offsetof should be used instead of sizeof.
30459         From Bruno Haible.
30460
30461 2006-11-07  Bruno Haible  <bruno@clisp.org>
30462
30463         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
30464
30465 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
30466
30467         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
30468         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
30469         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
30470         (gl_tree_add_before, gl_tree_add_after):
30471         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
30472         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
30473         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
30474         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
30475         (gl_linked_add_after, gl_linked_add_at): Likewise.
30476         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
30477         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
30478         (gl_tree_add_before, gl_tree_add_after): Likewise.
30479         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
30480         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
30481         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
30482
30483 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30484
30485         * lib/gl_oset.h: Use C comment style, not C++ comment style.
30486
30487 2006-11-06  Bruno Haible  <bruno@clisp.org>
30488
30489         * m4/inline.m4: New file.
30490         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
30491         * modules/list (Files): Add m4/inline.m4.
30492         * modules/oset (Files): Likewise.
30493
30494 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
30495
30496         * lib/idcache.c: Include <stddef.h>, for offsetof.
30497         (struct userid.name): Change from char * to a flexible array member.
30498         All uses changed.
30499         * modules/idcache (Depends-on): Add flexmember.
30500
30501         * MODULES.html.sh (Core language properties): New module flexmember.
30502         * modules/flexmember, m4/flexmember.m4: New files.
30503
30504         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
30505         inline functions that are identical with the old xnmalloc_inline,
30506         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
30507         that we can avoid some unnecessary integer multiplications and
30508         divisions in the common case where the element size is known at
30509         compile time.
30510         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
30511         needed.
30512         (xnboundedmalloc): Remove.
30513         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
30514         arguments, for consistency with rest of this header.
30515         (xcharalloc): Rewrite using XNMALLOC.
30516         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
30517         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
30518         versions have been moved to lib/xalloc.h and renamed to be the
30519         non-*_inline versions.
30520         (xmalloc, xrealloc): Implement without reference to the xnmalloc
30521         and xnrealloc functions, since those functions are now inline and
30522         now call us.
30523         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
30524         renaming described above.
30525         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
30526         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
30527         captures the dependency in AC_C_INLINE.
30528
30529         New module canonicalize-lgpl, proposed by Charles Wilson in
30530         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
30531         with a few small changes afterwards.
30532         * MODULES.html.sh (File system functions): New module
30533         canonicalize-lgpl.
30534         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
30535         and canonicalize_file_name.
30536         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
30537         * modules/canonicalize-lgpl: New files.
30538
30539 2006-11-05  Bruno Haible  <bruno@clisp.org>
30540
30541         * gnulib-tool (func_import, func_create_testdir): Create directories
30542         also for files in subdirectories of lib/.
30543
30544 2006-11-05  Bruno Haible  <bruno@clisp.org>
30545
30546         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
30547         ANSI C compliant.
30548
30549 2006-11-03  Bruno Haible  <bruno@clisp.org>
30550
30551         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
30552         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
30553         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
30554         (xnboundedmalloc): New inline function.
30555         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
30556         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
30557         xmalloc.
30558         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
30559         xmalloc.
30560         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
30561         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
30562         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
30563         xmalloc.
30564         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
30565         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
30566         xmalloc.
30567         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
30568         gl_tree_add_after): Use XMALLOC instead of xmalloc.
30569         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
30570         xmalloc.
30571         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
30572         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
30573         gl_tree_add_after): Use XMALLOC instead of xmalloc.
30574         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
30575         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
30576         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
30577         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
30578
30579 2006-11-03  Bruno Haible  <bruno@clisp.org>
30580
30581         * lib/c-ctype.h [C++]: Define functions without name mangling.
30582         * lib/fwriteerror.h [C++]: Likewise.
30583         * lib/gcd.h [C++]: Likewise.
30584         * lib/linebreak.h [C++]: Likewise.
30585
30586 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
30587
30588         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
30589         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
30590         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
30591         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
30592         Check for functions and headers just once.
30593         Check for declaration of canonicalize_file_name.
30594         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
30595
30596 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
30597
30598         * gnulib-tool (func_import): Fix typo in actioncmd.
30599
30600 2006-11-02  Bruno Haible  <bruno@clisp.org>
30601
30602         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
30603         newline sequence in the Makefile.am snippet as a space, like "make"
30604         does.
30605         Reported by Roger Persson <perrog@gmail.com>.
30606
30607 2006-11-01  Bruno Haible  <bruno@clisp.org>
30608
30609         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
30610         already declared in <string.h>.
30611         * lib/strcase.h (strncasecmp): Don't declare it if yes.
30612
30613 2006-11-01  Bruno Haible  <bruno@clisp.org>
30614
30615         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
30616         * lib/strcase.h: Include <string.h>.
30617         (strcasecmp): Define to rpl_strcasecmp here.
30618
30619 2006-11-01  Bruno Haible  <bruno@clisp.org>
30620
30621         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
30622
30623 2006-11-01  Eric Blake  <ebb9@byu.net>
30624
30625         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
30626
30627         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
30628
30629 2006-10-29  Bruno Haible  <bruno@clisp.org>
30630
30631         Make it compile in C++ mode.
30632         * lib/full-write.c (full_rw): Add a cast.
30633
30634 2006-11-01  Bruno Haible  <bruno@clisp.org>
30635
30636         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
30637         be POSIX compliant.
30638         Reported by Roger Persson <perrog@gmail.com>.
30639
30640 2006-11-01  Eric Blake  <ebb9@byu.net>
30641
30642         * lib/getopt_.h: Fix comments.
30643
30644 2006-10-31  Eric Blake  <ebb9@byu.net>
30645
30646         * modules/tmpdir (Depends-on): Add sys_stat.
30647         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
30648         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
30649         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
30650         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
30651         tempname.
30652
30653 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
30654
30655         Avoid some C++ diagnostics reported by Bruno Haible.
30656         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
30657         xmalloc.
30658         (quotearg_alloc): Use xcharalloc rather than xmalloc.
30659         (struct slotvec): Move to top level.
30660         (quotearg_n_options): Rewrite to avoid xmalloc.
30661         * lib/xalloc.h (xcharalloc): New function.
30662         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
30663         [defined __cplusplus]: Add function template that provides result
30664         type propagation.  This part of the change is from Bruno Haible.
30665
30666 2006-10-29  Bruno Haible  <bruno@clisp.org>
30667
30668         Make it compile in C++ mode.
30669         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
30670         * lib/strnlen1.c (strnlen1): Cast memchr result.
30671         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
30672         * lib/clean-temp.c (string_equals, string_hash): Add casts.
30673         (create_temp_dir): Rename local variable 'template'.
30674         (compile_csharp_using_sscli): Add cast.
30675         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
30676         * lib/findprog.c (find_in_path): Likewise.
30677         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
30678         * lib/wait-process.c (register_slave_subprocess): Likewise.
30679
30680 2006-10-22  Bruno Haible  <bruno@clisp.org>
30681
30682         * modules/tsearch: New file.
30683         * lib/tsearch.h: New file.
30684         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
30685         * m4/tsearch.m4: New file.
30686         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
30687
30688 2006-10-29  Eric Blake  <ebb9@byu.net>
30689
30690         * lib/arcfour.c: Assume config.h.
30691         * lib/arctwo.c: Likewise.
30692         * lib/base64.c: Likewise.
30693         * lib/check-version.c: Likewise.
30694         * lib/crc.c: Likewise.
30695         * lib/des.c: Likewise.
30696         * lib/gc-gnulib.c: Likewise.
30697         * lib/gc-libgcrypt.c: Likewise.
30698         * lib/gc-pbkdf2-sha1.c: Likewise.
30699         * lib/getaddrinfo.c: Likewise.
30700         * lib/getdelim.c: Likewise.
30701         * lib/getline.c: Likewise.
30702         * lib/hmac-md5.c: Likewise.
30703         * lib/hmac-sha1.c: Likewise.
30704         * lib/iconvme.c: Likewise.
30705         * lib/md2.c: Likewise.
30706         * lib/md4.c: Likewise.
30707         * lib/memxor.c: Likewise.
30708         * lib/read-file.c: Likewise.
30709         * lib/readline.c: Likewise.
30710         * lib/rijndael-alg-fst.c: Likewise.
30711         * lib/rijndael-api-fst.c: Likewise.
30712         * lib/xgetdomainname.c: Likewise.
30713
30714 2006-10-28  Eric Blake  <ebb9@byu.net>
30715
30716         * lib/xstrndup.c: Assume config.h.
30717
30718 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
30719
30720         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
30721         stat-macros.h is now for our own macros, whereas stat_h is for
30722         macros in the <sys/stat.h> name space.
30723         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
30724         (STAT_MACROS_H): Remove.
30725         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
30726         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
30727         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
30728         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
30729         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
30730         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
30731         Move these macros to ...
30732         * lib/stat_.h: here.  Don't include stat-macros.h.
30733         * lib/canonicalize.c: Don't include stat-macros.h.
30734         * lib/chown.c: Likewise.
30735         * lib/euidaccess.c: Likewise.
30736         * lib/file-type.c: Likewise.
30737         * lib/filemode.c: Likewise.
30738         * lib/glob.c: Likewise.
30739         * lib/isapipe.c: Likewise.
30740         * lib/lchown.c: Likewise.
30741         * lib/lstat.c: Likewise.
30742         * lib/mkdir-p.c: Likewise.
30743         * lib/rmdir.c: Likewise.
30744         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
30745         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
30746         unless mkdir isn't declared, to speed up 'configure'.
30747         Always create sys/stat.h, since it's unlikely any real sys/stat.h
30748         would define all the S_* symbols.
30749         * modules/canonicalize (Depends-on):
30750         Depend on sys_stat, not stat-macros.
30751         * modules/chown: Likewise.
30752         * modules/euidaccess: Likewise.
30753         * modules/filemode: Likewise.
30754         * modules/file-type: Likewise.
30755         * modules/glob: Likewise.
30756         * modules/isapipe: Likewise.
30757         * modules/lchown: Likewise.
30758         * modules/lstat: Likewise.
30759         * modules/mkancesdirs: Likewise.
30760         * modules/rmdir: Likewise.
30761         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
30762         * modules/modechange: Likewise.
30763         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
30764         (configure.ac): Remove gl_STAT_MACROS.
30765         * modules/sys_stat (Depends-on): Remove stat-macros.
30766
30767 2006-10-27  Bruno Haible  <bruno@clisp.org>
30768
30769         * m4/signed.m4: Remove file.
30770         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
30771         invocation.
30772         * modules/vasnprintf (Files): Remove m4/signed.m4.
30773
30774 2006-10-27  Bruno Haible  <bruno@clisp.org>
30775
30776         Update to GNU gettext 0.16.
30777         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
30778         m4/inttypes-h.m4, m4/signed.m4.
30779         * m4/gettext.m4: Update to GNU gettext 0.16.
30780         * m4/intl.m4: New file, from GNU gettext.
30781         * m4/intldir.m4: New file, from GNU gettext.
30782         * config/srclist.txt: Update
30783
30784 2006-10-27  Eric Blake  <ebb9@byu.net>
30785
30786         * MODULES.html.sh: Document tempname.
30787         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
30788         dependencies.
30789         (Files): Move lib/tempname.c...
30790         * modules/tempname: ...to this new module.
30791         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
30792         (gl_PREREQ_TEMPNAME): Move...
30793         * m4/tempname.m4: ...to this new file.
30794         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
30795         * modules/sys_stat (Depends-on): Add stat-macros.
30796         * lib/stat_.h (includes): Pick up stat macros.
30797         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
30798         if stat macros are broken.
30799         * lib/tempname.c (includes): No need to include "stat-macros.h".
30800         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
30801         (direxists, __path_search) [!_LIBC]: Don't compile these in
30802         gnulib; the tmpdir module covers that.
30803         * lib/tempname.h: New file.
30804
30805 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
30806
30807         * COPYING: Explain how gnulib-tool converts licence headers.
30808         Almost all wording by Eric Blake.
30809
30810 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
30811
30812         * lib/mbchar.h (is_basic_table): Make read-only.
30813         * lib/mbchar.c (is_basic_table): Likewise.
30814         Reported by John Darrington.
30815
30816 2006-10-25  Bruno Haible  <bruno@clisp.org>
30817
30818         * lib/progname.h (set_program_name): Undefine before defining.
30819
30820 2006-10-25  Bruno Haible  <bruno@clisp.org>
30821
30822         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
30823         false for non-gcc C++ compilers.
30824         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
30825
30826 2006-10-24  Bruno Haible  <bruno@clisp.org>
30827
30828         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
30829         iconv implementations like Irix iconv.
30830
30831 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30832
30833         * modules/vararrays: New file.
30834         * m4/vararrays.m4: New file, taken from diffutils.
30835         * MODULES.html.sh: New module vararrays.
30836
30837 2006-10-24  Karl Berry  <karl@gnu.org>
30838
30839         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
30840         Don't call GNU Unix.
30841
30842 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30843
30844         * users.txt: Add Libtool.
30845
30846         Sync from Libtool:
30847
30848         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30849
30850         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
30851         to gnulib's policy of including config.h unconditionally.
30852
30853 2006-10-24  Bruno Haible  <bruno@clisp.org>
30854
30855         * modules/wcwidth (Files): Add m4/wint_t.m4.
30856         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
30857         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
30858
30859 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30860
30861         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
30862         to pacify GCC with some -W flags enabled.  Problem reported by
30863         Bruno Haible.
30864
30865 2006-10-24  Jim Meyering  <jim@meyering.net>
30866
30867         * MODULES.html.sh: Remove uinttostr.  It's not a module.
30868         Reported by Karl Berry.
30869
30870 2006-10-23  Bruno Haible  <bruno@clisp.org>
30871
30872         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
30873
30874 2006-10-24  Bruno Haible  <bruno@clisp.org>
30875
30876         * lib/gl_list.h: Use C comment style, not C++ comment style.
30877
30878 2006-10-23  Eric Blake  <ebb9@byu.net>
30879
30880         * lib/getaddrinfo.c (includes): Add missing include.
30881
30882 2006-10-23  Bruno Haible  <bruno@clisp.org>
30883             Paul Eggert  <eggert@cs.ucla.edu>
30884
30885         Ability to rename obstack_free.
30886         * lib/obstack.h (__obstack_free): New macro. Declare instead of
30887         obstack_free.
30888         (obstack_free): Invoke the __obstack_free macro.
30889         * lib/obstack.c (obstack_free): Use __obstack_free macro.
30890
30891 2006-10-23  Bruno Haible  <bruno@clisp.org>
30892             Paul Eggert  <eggert@cs.ucla.edu>
30893
30894         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
30895         __argc, __argv from the declaration. (They are defined as macros on
30896         mingw.)
30897
30898 2006-10-22  Bruno Haible  <bruno@clisp.org>
30899
30900         * doc/gnulib-intro.texi: New file.
30901         * doc/gnulib.texi: Include it.
30902
30903 2006-10-21  Bruno Haible  <bruno@clisp.org>
30904
30905         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
30906         "Introduction", "Miscellanous Notes", "Particular Modules".
30907
30908 2006-10-21  Bruno Haible  <bruno@clisp.org>
30909
30910         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
30911         Change mostlyclean-local rule to avoid sh syntax error from bash
30912         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
30913
30914 2006-10-23  Jim Meyering  <jim@meyering.net>
30915
30916         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
30917         in place of snprintf.
30918
30919         * modules/inttostr (Files): Add lib/uinttostr.c.
30920         * lib/uinttostr.c (inttostr): New file/function.
30921         * lib/inttostr.h (uinttostr): Declare.
30922         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
30923         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
30924         Add uinttostr.
30925         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
30926
30927 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
30928
30929         * lib/canonicalize.c (ELOOP): Define if not already defined.
30930         Problem reported by Bruno Haible in
30931         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
30932
30933 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
30934
30935         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
30936         Problem reported by Perry Smith and Ville Laurikari.
30937
30938         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
30939         uses.
30940
30941 2006-10-19  Bruno Haible  <bruno@clisp.org>
30942
30943         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
30944         for mingw.
30945
30946 2006-10-19  Bruno Haible  <bruno@clisp.org>
30947
30948         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
30949         Needed for mingw.
30950
30951 2006-10-19  Bruno Haible  <bruno@clisp.org>
30952
30953         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
30954
30955 2006-10-19  Bruno Haible  <bruno@clisp.org>
30956
30957         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
30958         it.
30959
30960 2006-10-19  Bruno Haible  <bruno@clisp.org>
30961
30962         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
30963         invocation.
30964
30965 2006-10-19  Bruno Haible  <bruno@clisp.org>
30966
30967         * gnulib-tool (func_create_testdir): Don't include ftruncate and
30968         mountlist by default.
30969
30970 2006-10-16  Bruno Haible  <bruno@clisp.org>
30971
30972         * lib/c-strstr.c: Include c-strstr.h.
30973
30974 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
30975
30976         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
30977         in a slash.
30978
30979 2006-10-18  Bruno Haible  <bruno@clisp.org>
30980
30981         * lib/lock.h [C++]: Wrap definitions in extern "C".
30982
30983 2006-10-18  Bruno Haible  <bruno@clisp.org>
30984
30985         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
30986         gl_LIBOBJS list.
30987
30988 2006-10-18  Bruno Haible  <bruno@clisp.org>
30989
30990         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
30991
30992 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
30993
30994         * lib/xstrtol.h: Include gettext.h.
30995         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
30996         Problem reported by Eric Blake.
30997         * modules/xstrtol (Depends-on): Add gettext-h.
30998
30999 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
31000
31001         * lib/strftime.c (advance): New macro.
31002         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
31003         incomplete type, so you can't add 0 to it.  Problem and patch
31004         reported by Eelco Dolstra for dietlibc.
31005
31006 2006-10-18  Jim Meyering  <jim@meyering.net>
31007
31008         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
31009         type for a local, and rename it: s/up/user_proc/.
31010
31011 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
31012
31013         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
31014         READ_UTMP_USER_PROCESS.
31015         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
31016
31017 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
31018
31019         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
31020         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
31021
31022 2006-10-17  Eric Blake  <ebb9@byu.net>
31023
31024         * lib/sigprocmask.c (sigprocmask): Fix typo.
31025
31026         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
31027
31028         * modules/clean-temp (Makefile.am): Don't add to make output...
31029         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
31030         config.h.
31031
31032 2006-10-17  Bruno Haible  <bruno@clisp.org>
31033
31034         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
31035         differently if DEFAULT_TEXT_DOMAIN is set.
31036
31037 2006-10-16  Bruno Haible  <bruno@clisp.org>
31038
31039         * lib/clean-temp.c: Include fwriteerror.h.
31040
31041 2006-10-16  Bruno Haible  <bruno@clisp.org>
31042
31043         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
31044
31045 2006-10-16  Bruno Haible  <bruno@clisp.org>
31046
31047         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
31048         * lib/sigprocmask.h: Include <sys/types.h>.
31049         (sigset_t): Use the system's definition if present.
31050
31051 2006-10-17  Eric Blake  <ebb9@byu.net>
31052
31053         * lib/xvasprintf.c (includes): Assume config.h.
31054         * lib/xasprintf.c (includes): Likewise.
31055
31056 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
31057
31058         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
31059         at least as wide as intmax_t.
31060
31061 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
31062
31063         (Imported from Automake.)
31064         * build-aux/gnupload: Update to version 1.1 of directive file.
31065
31066 2006-10-16  Eric Blake  <ebb9@byu.net>
31067
31068         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
31069         match Automake 1.10a.
31070
31071 2006-10-14  Bruno Haible  <bruno@clisp.org>
31072
31073         * modules/sigprocmask: New file.
31074         * lib/sigprocmask.h: New file.
31075         * lib/sigprocmask.c: New file.
31076         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
31077         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
31078         request sigprocmask.o.
31079         (gl_PREREQ_SIGPROCMASK): New macro.
31080         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
31081         (Depends-on): Add sigprocmask.
31082         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
31083         gt_SIGNALBLOCKING. Test for 'raise' only once.
31084         * lib/fatal-signal.c: Include sigprocmask.h.
31085         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
31086         unblock_fatal_signals): Define always.
31087         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
31088         sigprocmask.
31089
31090 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
31091
31092         Sync from Automake.
31093         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
31094         which incorrectly sets the mode of an existing destination
31095         directory.  In some cases the unpatched install-sh could do the
31096         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
31097         system.  We hope this is rare in practice, but it's clearly worth
31098         fixing.  Problem reported by Alex Unleashed in
31099         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
31100         Also, don't bother to check for -m bugs unless we're using -m;
31101         suggested by Stepan Kasal.
31102
31103 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31104
31105         Sync from Automake.
31106         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
31107         `-c' flag, so they appear at the same position as in %FASTDEP%
31108         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
31109         which ignores unknown options only after the first non-option.
31110         Bug report against M4 by Nelson H. F. Beebe.
31111
31112 2006-10-13  Jim Meyering  <jim@meyering.net>
31113
31114         Fix a bug in yesterday's change.
31115         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
31116         p->fts_statp->st_dev would be used uninitialized.
31117         Ensures that we always call fts_stat on the very first entry.
31118         Miklos Szeredi reported that find -xdev stopped working.
31119
31120 2006-10-12  Bruno Haible  <bruno@clisp.org>
31121
31122         * gnulib-tool (func_get_automake_snippet): Append an automatically
31123         computed EXTRA_DIST augmentation.
31124         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
31125         * modules/alloca-opt (Makefile.am): Likewise.
31126         * modules/allocsa (Makefile.am): Likewise.
31127         * modules/arcfour (Makefile.am): Likewise.
31128         * modules/arctwo (Makefile.am): Likewise.
31129         * modules/argmatch (Makefile.am): Likewise.
31130         * modules/argz (Makefile.am): Likewise.
31131         * modules/atexit (Makefile.am): Likewise.
31132         * modules/backupfile (Makefile.am): Likewise.
31133         * modules/byteswap (Makefile.am): Likewise.
31134         * modules/c-strtod (Makefile.am): Likewise.
31135         * modules/c-strtold (Makefile.am): Likewise.
31136         * modules/calloc (Makefile.am): Likewise.
31137         * modules/canon-host (Makefile.am): Likewise.
31138         * modules/canonicalize (Makefile.am): Likewise.
31139         * modules/chdir-long (Makefile.am): Likewise.
31140         * modules/chdir-safer (Makefile.am): Likewise.
31141         * modules/check-version (Makefile.am): Likewise.
31142         * modules/chown (Makefile.am): Likewise.
31143         * modules/cloexec (Makefile.am): Likewise.
31144         * modules/close-stream (Makefile.am): Likewise.
31145         * modules/closeout (Makefile.am): Likewise.
31146         * modules/crc (Makefile.am): Likewise.
31147         * modules/csharpexec (Makefile.am): Likewise.
31148         * modules/cycle-check (Makefile.am): Likewise.
31149         * modules/des (Makefile.am): Likewise.
31150         * modules/dev-ino (Makefile.am): Likewise.
31151         * modules/dirfd (Makefile.am): Likewise.
31152         * modules/dirname (Makefile.am): Likewise.
31153         * modules/dup2 (Makefile.am): Likewise.
31154         * modules/eealloc (Makefile.am): Likewise.
31155         * modules/error (Makefile.am): Likewise.
31156         * modules/euidaccess (Makefile.am): Likewise.
31157         * modules/exclude (Makefile.am): Likewise.
31158         * modules/exitfail (Makefile.am): Likewise.
31159         * modules/fcntl-safer (Makefile.am): Likewise.
31160         * modules/fcntl (Makefile.am): Likewise.
31161         * modules/file-type (Makefile.am): Likewise.
31162         * modules/fileblocks (Makefile.am): Likewise.
31163         * modules/filemode (Makefile.am): Likewise.
31164         * modules/filenamecat (Makefile.am): Likewise.
31165         * modules/fnmatch (Makefile.am): Likewise.
31166         * modules/fopen-safer (Makefile.am): Likewise.
31167         * modules/fpending (Makefile.am): Likewise.
31168         * modules/fprintftime (Makefile.am): Likewise.
31169         * modules/free (Makefile.am): Likewise.
31170         * modules/fsusage (Makefile.am): Likewise.
31171         * modules/ftruncate (Makefile.am): Likewise.
31172         * modules/fts (Makefile.am): Likewise.
31173         * modules/gc-arcfour (Makefile.am): Likewise.
31174         * modules/gc-des (Makefile.am): Likewise.
31175         * modules/gc-hmac-md5 (Makefile.am): Likewise.
31176         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
31177         * modules/gc-md4 (Makefile.am): Likewise.
31178         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
31179         * modules/gc-sha1 (Makefile.am): Likewise.
31180         * modules/gc (Makefile.am): Likewise.
31181         * modules/getaddrinfo (Makefile.am): Likewise.
31182         * modules/getcwd (Makefile.am): Likewise.
31183         * modules/getdelim (Makefile.am): Likewise.
31184         * modules/getdomainname (Makefile.am): Likewise.
31185         * modules/getgroups (Makefile.am): Likewise.
31186         * modules/gethostname (Makefile.am): Likewise.
31187         * modules/gethrxtime (Makefile.am): Likewise.
31188         * modules/getline (Makefile.am): Likewise.
31189         * modules/getloadavg (Makefile.am): Likewise.
31190         * modules/getlogin_r (Makefile.am): Likewise.
31191         * modules/getndelim2 (Makefile.am): Likewise.
31192         * modules/getopt (Makefile.am): Likewise.
31193         * modules/getpagesize (Makefile.am): Likewise.
31194         * modules/getpass-gnu (Makefile.am): Likewise.
31195         * modules/getpass (Makefile.am): Likewise.
31196         * modules/getsubopt (Makefile.am): Likewise.
31197         * modules/gettime (Makefile.am): Likewise.
31198         * modules/gettimeofday (Makefile.am): Likewise.
31199         * modules/getugroups (Makefile.am): Likewise.
31200         * modules/getusershell (Makefile.am): Likewise.
31201         * modules/glob (Makefile.am): Likewise.
31202         * modules/group-member (Makefile.am): Likewise.
31203         * modules/hard-locale (Makefile.am): Likewise.
31204         * modules/hash (Makefile.am): Likewise.
31205         * modules/hmac-md5 (Makefile.am): Likewise.
31206         * modules/hmac-sha1 (Makefile.am): Likewise.
31207         * modules/human (Makefile.am): Likewise.
31208         * modules/idcache (Makefile.am): Likewise.
31209         * modules/imaxabs (Makefile.am): Likewise.
31210         * modules/imaxdiv (Makefile.am): Likewise.
31211         * modules/inet_ntop (Makefile.am): Likewise.
31212         * modules/inet_pton (Makefile.am): Likewise.
31213         * modules/intprops (Makefile.am): Likewise.
31214         * modules/inttostr (Makefile.am): Likewise.
31215         * modules/inttypes (Makefile.am): Likewise.
31216         * modules/isapipe (Makefile.am): Likewise.
31217         * modules/javaversion (Makefile.am): Likewise.
31218         * modules/lchmod (Makefile.am): Likewise.
31219         * modules/lchown (Makefile.am): Likewise.
31220         * modules/localcharset (Makefile.am): Likewise.
31221         * modules/long-options (Makefile.am): Likewise.
31222         * modules/lstat (Makefile.am): Likewise.
31223         * modules/malloc (Makefile.am): Likewise.
31224         * modules/mathl (Makefile.am): Likewise.
31225         * modules/mbchar (Makefile.am): Likewise.
31226         * modules/md2 (Makefile.am): Likewise.
31227         * modules/md4 (Makefile.am): Likewise.
31228         * modules/md5 (Makefile.am): Likewise.
31229         * modules/memcasecmp (Makefile.am): Likewise.
31230         * modules/memchr (Makefile.am): Likewise.
31231         * modules/memcmp (Makefile.am): Likewise.
31232         * modules/memcoll (Makefile.am): Likewise.
31233         * modules/memcpy (Makefile.am): Likewise.
31234         * modules/memmem (Makefile.am): Likewise.
31235         * modules/memmove (Makefile.am): Likewise.
31236         * modules/mempcpy (Makefile.am): Likewise.
31237         * modules/memrchr (Makefile.am): Likewise.
31238         * modules/memset (Makefile.am): Likewise.
31239         * modules/memxor (Makefile.am): Likewise.
31240         * modules/mkancesdirs (Makefile.am): Likewise.
31241         * modules/mkdir-p (Makefile.am): Likewise.
31242         * modules/mkdir (Makefile.am): Likewise.
31243         * modules/mkdtemp (Makefile.am): Likewise.
31244         * modules/mkstemp (Makefile.am): Likewise.
31245         * modules/mktime (Makefile.am): Likewise.
31246         * modules/modechange (Makefile.am): Likewise.
31247         * modules/mountlist (Makefile.am): Likewise.
31248         * modules/nanosleep (Makefile.am): Likewise.
31249         * modules/obstack (Makefile.am): Likewise.
31250         * modules/openat (Makefile.am): Likewise.
31251         * modules/pagealign_alloc (Makefile.am): Likewise.
31252         * modules/pathmax (Makefile.am): Likewise.
31253         * modules/physmem (Makefile.am): Likewise.
31254         * modules/poll (Makefile.am): Likewise.
31255         * modules/posixtm (Makefile.am): Likewise.
31256         * modules/posixver (Makefile.am): Likewise.
31257         * modules/putenv (Makefile.am): Likewise.
31258         * modules/quote (Makefile.am): Likewise.
31259         * modules/quotearg (Makefile.am): Likewise.
31260         * modules/raise (Makefile.am): Likewise.
31261         * modules/read-file (Makefile.am): Likewise.
31262         * modules/readline (Makefile.am): Likewise.
31263         * modules/readlink (Makefile.am): Likewise.
31264         * modules/readtokens (Makefile.am): Likewise.
31265         * modules/readutmp (Makefile.am): Likewise.
31266         * modules/realloc (Makefile.am): Likewise.
31267         * modules/regex (Makefile.am): Likewise.
31268         * modules/rename-dest-slash (Makefile.am): Likewise.
31269         * modules/rename (Makefile.am): Likewise.
31270         * modules/rijndael (Makefile.am): Likewise.
31271         * modules/rmdir (Makefile.am): Likewise.
31272         * modules/rpmatch (Makefile.am): Likewise.
31273         * modules/safe-read (Makefile.am): Likewise.
31274         * modules/safe-write (Makefile.am): Likewise.
31275         * modules/same-inode (Makefile.am): Likewise.
31276         * modules/same (Makefile.am): Likewise.
31277         * modules/save-cwd (Makefile.am): Likewise.
31278         * modules/savedir (Makefile.am): Likewise.
31279         * modules/setenv (Makefile.am): Likewise.
31280         * modules/settime (Makefile.am): Likewise.
31281         * modules/sha1 (Makefile.am): Likewise.
31282         * modules/sig2str (Makefile.am): Likewise.
31283         * modules/snprintf (Makefile.am): Likewise.
31284         * modules/stat-macros (Makefile.am): Likewise.
31285         * modules/stat-time (Makefile.am): Likewise.
31286         * modules/stdbool (Makefile.am): Likewise.
31287         * modules/stdint (Makefile.am): Likewise.
31288         * modules/stdlib-safer (Makefile.am): Likewise.
31289         * modules/stpcpy (Makefile.am): Likewise.
31290         * modules/stpncpy (Makefile.am): Likewise.
31291         * modules/strcase (Makefile.am): Likewise.
31292         * modules/strcasestr (Makefile.am): Likewise.
31293         * modules/strchrnul (Makefile.am): Likewise.
31294         * modules/strcspn (Makefile.am): Likewise.
31295         * modules/strdup (Makefile.am): Likewise.
31296         * modules/strerror (Makefile.am): Likewise.
31297         * modules/strftime (Makefile.am): Likewise.
31298         * modules/strndup (Makefile.am): Likewise.
31299         * modules/strnlen (Makefile.am): Likewise.
31300         * modules/strpbrk (Makefile.am): Likewise.
31301         * modules/strsep (Makefile.am): Likewise.
31302         * modules/strstr (Makefile.am): Likewise.
31303         * modules/strtod (Makefile.am): Likewise.
31304         * modules/strtoimax (Makefile.am): Likewise.
31305         * modules/strtok_r (Makefile.am): Likewise.
31306         * modules/strtol (Makefile.am): Likewise.
31307         * modules/strtoll (Makefile.am): Likewise.
31308         * modules/strtoul (Makefile.am): Likewise.
31309         * modules/strtoull (Makefile.am): Likewise.
31310         * modules/strtoumax (Makefile.am): Likewise.
31311         * modules/strverscmp (Makefile.am): Likewise.
31312         * modules/sys_socket (Makefile.am): Likewise.
31313         * modules/sys_stat (Makefile.am): Likewise.
31314         * modules/sysexits (Makefile.am): Likewise.
31315         * modules/time_r (Makefile.am): Likewise.
31316         * modules/timegm (Makefile.am): Likewise.
31317         * modules/timespec (Makefile.am): Likewise.
31318         * modules/tmpfile-safer (Makefile.am): Likewise.
31319         * modules/trim (Makefile.am): Likewise.
31320         * modules/unistd-safer (Makefile.am): Likewise.
31321         * modules/unlinkdir (Makefile.am): Likewise.
31322         * modules/unlocked-io (Makefile.am): Likewise.
31323         * modules/userspec (Makefile.am): Likewise.
31324         * modules/utime (Makefile.am): Likewise.
31325         * modules/utimecmp (Makefile.am): Likewise.
31326         * modules/utimens (Makefile.am): Likewise.
31327         * modules/vasnprintf (Makefile.am): Likewise.
31328         * modules/vasprintf (Makefile.am): Likewise.
31329         * modules/vsnprintf (Makefile.am): Likewise.
31330         * modules/xalloc (Makefile.am): Likewise.
31331         * modules/xgetcwd (Makefile.am): Likewise.
31332         * modules/xnanosleep (Makefile.am): Likewise.
31333         * modules/xreadlink (Makefile.am): Likewise.
31334         * modules/xstrtod (Makefile.am): Likewise.
31335         * modules/xstrtol (Makefile.am): Likewise.
31336         * modules/xstrtold (Makefile.am): Likewise.
31337         * modules/yesno (Makefile.am): Likewise.
31338         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
31339
31340 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
31341
31342         * modules/error (Makefile.am): Distribute files through
31343         EXTRA_DIST, not lib_SOURCES.
31344
31345 2006-10-12  Eric Blake  <ebb9@byu.net>
31346
31347         * modules/error (Makefile.am): Distribute files in /lib.
31348         * modules/obstack (Makefile.am): Likewise.
31349
31350 2006-10-12  Bruno Haible  <bruno@clisp.org>
31351
31352         * modules/acl (Makefile.am): Distribute all files in lib/ through
31353         EXTRA_DIST.
31354         * modules/arcfour (Makefile.am): Likewise.
31355         * modules/arctwo (Makefile.am): Likewise.
31356         * modules/argmatch (Makefile.am): Likewise.
31357         * modules/argz (Makefile.am): Likewise.
31358         * modules/atexit (Makefile.am): Likewise.
31359         * modules/backupfile (Makefile.am): Likewise.
31360         * modules/c-strtod (Makefile.am): Likewise.
31361         * modules/c-strtold (Makefile.am): Likewise.
31362         * modules/calloc (Makefile.am): Likewise.
31363         * modules/canon-host (Makefile.am): Likewise.
31364         * modules/canonicalize (Makefile.am): Likewise.
31365         * modules/chdir-long (Makefile.am): Likewise.
31366         * modules/chdir-safer (Makefile.am): Likewise.
31367         * modules/check-version (Makefile.am): Likewise.
31368         * modules/chown (Makefile.am): Likewise.
31369         * modules/cloexec (Makefile.am): Likewise.
31370         * modules/close-stream (Makefile.am): Likewise.
31371         * modules/closeout (Makefile.am): Likewise.
31372         * modules/crc (Makefile.am): Likewise.
31373         * modules/cycle-check (Makefile.am): Likewise.
31374         * modules/des (Makefile.am): Likewise.
31375         * modules/dirfd (Makefile.am): Likewise.
31376         * modules/dirname (Makefile.am): Likewise.
31377         * modules/dup2 (Makefile.am): Likewise.
31378         * modules/euidaccess (Makefile.am): Likewise.
31379         * modules/exclude (Makefile.am): Likewise.
31380         * modules/exitfail (Makefile.am): Likewise.
31381         * modules/fcntl-safer (Makefile.am): Likewise.
31382         * modules/file-type (Makefile.am): Likewise.
31383         * modules/fileblocks (Makefile.am): Likewise.
31384         * modules/filemode (Makefile.am): Likewise.
31385         * modules/filenamecat (Makefile.am): Likewise.
31386         * modules/fnmatch (Makefile.am): Likewise.
31387         * modules/fopen-safer (Makefile.am): Likewise.
31388         * modules/fpending (Makefile.am): Likewise.
31389         * modules/fprintftime (Makefile.am): Likewise.
31390         * modules/free (Makefile.am): Likewise.
31391         * modules/fsusage (Makefile.am): Likewise.
31392         * modules/ftruncate (Makefile.am): Likewise.
31393         * modules/fts (Makefile.am): Likewise.
31394         * modules/gc (Makefile.am): Likewise.
31395         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
31396         * modules/getaddrinfo (Makefile.am): Likewise.
31397         * modules/getcwd (Makefile.am): Likewise.
31398         * modules/getdelim (Makefile.am): Likewise.
31399         * modules/getdomainname (Makefile.am): Likewise.
31400         * modules/getgroups (Makefile.am): Likewise.
31401         * modules/gethostname (Makefile.am): Likewise.
31402         * modules/gethrxtime (Makefile.am): Likewise.
31403         * modules/getline (Makefile.am): Likewise.
31404         * modules/getloadavg (Makefile.am): Likewise.
31405         * modules/getlogin_r (Makefile.am): Likewise.
31406         * modules/getopt (Makefile.am): Likewise.
31407         * modules/getpass (Makefile.am): Likewise.
31408         * modules/getpass-gnu (Makefile.am): Likewise.
31409         * modules/getsubopt (Makefile.am): Likewise.
31410         * modules/gettime (Makefile.am): Likewise.
31411         * modules/gettimeofday (Makefile.am): Likewise.
31412         * modules/getugroups (Makefile.am): Likewise.
31413         * modules/getusershell (Makefile.am): Likewise.
31414         * modules/glob (Makefile.am): Likewise.
31415         * modules/group-member (Makefile.am): Likewise.
31416         * modules/hard-locale (Makefile.am): Likewise.
31417         * modules/hash (Makefile.am): Likewise.
31418         * modules/hmac-md5 (Makefile.am): Likewise.
31419         * modules/hmac-sha1 (Makefile.am): Likewise.
31420         * modules/human (Makefile.am): Likewise.
31421         * modules/idcache (Makefile.am): Likewise.
31422         * modules/imaxabs (Makefile.am): Likewise.
31423         * modules/imaxdiv (Makefile.am): Likewise.
31424         * modules/inet_ntop (Makefile.am): Likewise.
31425         * modules/inet_pton (Makefile.am): Likewise.
31426         * modules/inttostr (Makefile.am): Likewise.
31427         * modules/isapipe (Makefile.am): Likewise.
31428         * modules/lchown (Makefile.am): Likewise.
31429         * modules/long-options (Makefile.am): Likewise.
31430         * modules/lstat (Makefile.am): Likewise.
31431         * modules/malloc (Makefile.am): Likewise.
31432         * modules/mathl (Makefile.am): Likewise.
31433         * modules/mbchar (Makefile.am): Likewise.
31434         * modules/md2 (Makefile.am): Likewise.
31435         * modules/md4 (Makefile.am): Likewise.
31436         * modules/md5 (Makefile.am): Likewise.
31437         * modules/memcasecmp (Makefile.am): Likewise.
31438         * modules/memchr (Makefile.am): Likewise.
31439         * modules/memcmp (Makefile.am): Likewise.
31440         * modules/memcoll (Makefile.am): Likewise.
31441         * modules/memcpy (Makefile.am): Likewise.
31442         * modules/memmem (Makefile.am): Likewise.
31443         * modules/memmove (Makefile.am): Likewise.
31444         * modules/mempcpy (Makefile.am): Likewise.
31445         * modules/memrchr (Makefile.am): Likewise.
31446         * modules/memset (Makefile.am): Likewise.
31447         * modules/memxor (Makefile.am): Likewise.
31448         * modules/mkancesdirs (Makefile.am): Likewise.
31449         * modules/mkdir (Makefile.am): Likewise.
31450         * modules/mkdir-p (Makefile.am): Likewise.
31451         * modules/mkdtemp (Makefile.am): Likewise.
31452         * modules/mkstemp (Makefile.am): Likewise.
31453         * modules/mktime (Makefile.am): Likewise.
31454         * modules/modechange (Makefile.am): Likewise.
31455         * modules/mountlist (Makefile.am): Likewise.
31456         * modules/nanosleep (Makefile.am): Likewise.
31457         * modules/openat (Makefile.am): Likewise.
31458         * modules/pagealign_alloc (Makefile.am): Likewise.
31459         * modules/physmem (Makefile.am): Likewise.
31460         * modules/poll (Makefile.am): Likewise.
31461         * modules/posixtm (Makefile.am): Likewise.
31462         * modules/posixver (Makefile.am): Likewise.
31463         * modules/putenv (Makefile.am): Likewise.
31464         * modules/quote (Makefile.am): Likewise.
31465         * modules/quotearg (Makefile.am): Likewise.
31466         * modules/raise (Makefile.am): Likewise.
31467         * modules/read-file (Makefile.am): Likewise.
31468         * modules/readline (Makefile.am): Likewise.
31469         * modules/readlink (Makefile.am): Likewise.
31470         * modules/readtokens (Makefile.am): Likewise.
31471         * modules/readutmp (Makefile.am): Likewise.
31472         * modules/realloc (Makefile.am): Likewise.
31473         * modules/regex (Makefile.am): Likewise.
31474         * modules/rename (Makefile.am): Likewise.
31475         * modules/rename-dest-slash (Makefile.am): Likewise.
31476         * modules/rijndael (Makefile.am): Likewise.
31477         * modules/rmdir (Makefile.am): Likewise.
31478         * modules/rpmatch (Makefile.am): Likewise.
31479         * modules/safe-read (Makefile.am): Likewise.
31480         * modules/safe-write (Makefile.am): Likewise.
31481         * modules/same (Makefile.am): Likewise.
31482         * modules/save-cwd (Makefile.am): Likewise.
31483         * modules/savedir (Makefile.am): Likewise.
31484         * modules/setenv (Makefile.am): Likewise.
31485         * modules/settime (Makefile.am): Likewise.
31486         * modules/sha1 (Makefile.am): Likewise.
31487         * modules/sig2str (Makefile.am): Likewise.
31488         * modules/snprintf (Makefile.am): Likewise.
31489         * modules/stdlib-safer (Makefile.am): Likewise.
31490         * modules/stpcpy (Makefile.am): Likewise.
31491         * modules/stpncpy (Makefile.am): Likewise.
31492         * modules/strcase (Makefile.am): Likewise.
31493         * modules/strcasestr (Makefile.am): Likewise.
31494         * modules/strchrnul (Makefile.am): Likewise.
31495         * modules/strcspn (Makefile.am): Likewise.
31496         * modules/strdup (Makefile.am): Likewise.
31497         * modules/strerror (Makefile.am): Likewise.
31498         * modules/strftime (Makefile.am): Likewise.
31499         * modules/strndup (Makefile.am): Likewise.
31500         * modules/strnlen (Makefile.am): Likewise.
31501         * modules/strpbrk (Makefile.am): Likewise.
31502         * modules/strsep (Makefile.am): Likewise.
31503         * modules/strstr (Makefile.am): Likewise.
31504         * modules/strtod (Makefile.am): Likewise.
31505         * modules/strtoimax (Makefile.am): Likewise.
31506         * modules/strtok_r (Makefile.am): Likewise.
31507         * modules/strtol (Makefile.am): Likewise.
31508         * modules/strtoll (Makefile.am): Likewise.
31509         * modules/strtoul (Makefile.am): Likewise.
31510         * modules/strtoull (Makefile.am): Likewise.
31511         * modules/strtoumax (Makefile.am): Likewise.
31512         * modules/strverscmp (Makefile.am): Likewise.
31513         * modules/time_r (Makefile.am): Likewise.
31514         * modules/timegm (Makefile.am): Likewise.
31515         * modules/tmpfile-safer (Makefile.am): Likewise.
31516         * modules/unistd-safer (Makefile.am): Likewise.
31517         * modules/unlinkdir (Makefile.am): Likewise.
31518         * modules/userspec (Makefile.am): Likewise.
31519         * modules/utime (Makefile.am): Likewise.
31520         * modules/utimecmp (Makefile.am): Likewise.
31521         * modules/utimens (Makefile.am): Likewise.
31522         * modules/vasnprintf (Makefile.am): Likewise.
31523         * modules/vasprintf (Makefile.am): Likewise.
31524         * modules/vsnprintf (Makefile.am): Likewise.
31525         * modules/xalloc (Makefile.am): Likewise.
31526         * modules/xgetcwd (Makefile.am): Likewise.
31527         * modules/xnanosleep (Makefile.am): Likewise.
31528         * modules/xreadlink (Makefile.am): Likewise.
31529         * modules/xstrtod (Makefile.am): Likewise.
31530         * modules/xstrtol (Makefile.am): Likewise.
31531         * modules/xstrtold (Makefile.am): Likewise.
31532         * modules/yesno (Makefile.am): Likewise.
31533
31534 2006-10-12  Jim Meyering  <jim@meyering.net>
31535
31536         * m4/getloadavg.m4: Revert the change below.
31537
31538         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
31539         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
31540         fail with a symlink, which is what coreutils' ./bootstrap now
31541         creates by default.
31542
31543 2006-10-12  Bruno Haible  <bruno@clisp.org>
31544
31545         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
31546         mingw.
31547         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
31548         MSVC and mingw explicitly.
31549
31550 2006-10-11  Simon Josefsson  <jas@extundo.com>
31551             Bruno Haible  <bruno@clisp.org>
31552
31553         Add support for multiple gnulib-tool invocations in the scope of a
31554         single configure.ac file.
31555         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
31556         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
31557         with the same contents as the _LIBADD variable.
31558         (func_emit_initmacro_start, func_emit_initmacro_end,
31559         func_emit_initmacro_done): New functions.
31560         (func_import, func_create_testdir): Invoke them. Allow the identifiers
31561         gl_LIBOBJS and gl_LTLIBOBJS.
31562
31563 2006-10-11  Bruno Haible  <bruno@clisp.org>
31564
31565         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
31566         (func_create_testdir): Don't create po/Makefile.am, don't invoke
31567         autoreconf. Instead, invoke autopoint explicitly but move back the
31568         *.m4 files from gnulib.
31569
31570 2006-10-11  Bruno Haible  <bruno@clisp.org>
31571
31572         * gnulib-tool (func_usage): Make module names after --create-testdir
31573         optional.
31574         (func_create_testdir): If no module was specified, use nearly all
31575         modules.
31576
31577 2006-10-12  Jim Meyering  <jim@meyering.net>
31578
31579         Big performance improvement for fts-based tools that use FTS_NOSTAT.
31580         Avoid spurious inode-mismatch problems on non-POSIX file systems.
31581         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
31582         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
31583         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
31584         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
31585         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
31586         (fts_set_stat_required): New function.
31587         (fts_open): Defer the calls to fts_stat, if possible or requested.
31588         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
31589         into fts_stat itself.
31590         (fts_read): Perform any required (deferred) fts_stat call.
31591         (fts_build): Likewise, for the directory we're about to open and read.
31592         In the readdir loop, carefully decide whether each entry will require
31593         an eventual call to fts_stat, using dirent.d_type info if available.
31594         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
31595         a command line argument into this function.  Update all callers.
31596         Map a return value of FTS_DOT to FTS_D for a command line argument.
31597         * modules/fts (Depends-on): Add d-type.  Alphabetize.
31598         Thanks to Miklos Szeredi for his tenacity and for the initial
31599         bug report about "find" failing on a FUSE-based file system.
31600
31601         * lib/fts.c (fts_open): Use consistent indentation.
31602
31603 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
31604
31605         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
31606         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
31607         reported by Jim Meyering.  All uses of cache variables renamed
31608         to match Autoconf's.
31609         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
31610         the other one.
31611
31612         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
31613         Fix misspelling in diagnostic.
31614
31615 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
31616
31617         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
31618         defined.  Problem reported by Matthew Woehlke.
31619
31620         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
31621         Add support for Tandem NonStop R series.
31622         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
31623         Use new macro.
31624
31625         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
31626         (has_trailing_slash): Omit size arg; all callers changed.
31627         Omit 'inline', since it doesn't help performance and we'd
31628         need to configure it.
31629         Don't count //, ///, etc. as having a trailing slash.
31630         As a side effect, this removes a C99ism reported by Matthew Woehlke.
31631         (rpl_rename_dest_slash): On failure, use rename's errno rather
31632         than (in some cases) an incorrect or junk errno.
31633         Simplify code by removing need to compute length; this does
31634         cause it to make two passes instead of one over the file name,
31635         but it's worth it.
31636
31637         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
31638         change, since Autoconf's version may no longer be appropriate now
31639         that we are using CVS Autoconf's version.  Add support for Tandem.
31640
31641 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
31642             Bruno Haible  <bruno@clisp.org>
31643
31644         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
31645         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
31646         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
31647         gl_AC_TYPE_LONG_LONG.
31648
31649         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
31650         instead of HAVE_LONG_LONG.
31651         * lib/printf-args.c (printf_fetchargs): Likewise.
31652         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
31653         * lib/vasnprintf.c (VASNPRINTF): Likewise.
31654         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
31655         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
31656         gl_AC_TYPE_LONG_LONG.
31657
31658 2006-10-11  Bruno Haible  <bruno@clisp.org>
31659
31660         * m4/longlong.m4: Add comments.
31661         * m4/ulonglong.m4: Likewise.
31662
31663 2006-10-10  Bruno Haible  <bruno@clisp.org>
31664
31665         Make it possible to #define stpcpy, strdup to aliases.
31666         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
31667         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
31668
31669 2006-10-10  Bruno Haible  <bruno@clisp.org>
31670
31671         Make it possible to #define gcd to an alias.
31672         * lib/gcd.c: Include config.h.
31673
31674 2006-10-10  Bruno Haible  <bruno@clisp.org>
31675
31676         Make it possible to #define c_isascii to an alias.
31677         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
31678         defined. Undefine the macros before defining them, to avoid gcc
31679         warnings.
31680         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
31681         define NO_C_CTYPE_MACROS early.
31682
31683 2006-10-10  Bruno Haible  <bruno@clisp.org>
31684
31685         Make it possible to #define set_program_name to an alias.
31686         * lib/progname.c: Don't undefine set_program_name; instead, undefine
31687         ENABLE_RELOCATABLE early.
31688
31689 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
31690
31691         Port to Tandem NSK OSS, which has 64-bit signed int but at most
31692         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
31693         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
31694         More generally, don't assume that 64-bit signed int is available
31695         if unsigned int is, and vice versa.
31696         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
31697         unsigned symbols, not on their signed counterparts.
31698         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
31699         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
31700         (UINT64_C, UINTMAX_C):
31701         Likewise.
31702         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
31703         unsigned counterparts.
31704         (Have_long_long, Unsigned): New macros.
31705         (Int): Renamed from INT.
31706         (strtoimax): Use the new macros.
31707         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
31708         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
31709         * modules/inttypes (inttypes.h): Substitute
31710         HAVE_UNSIGNED_LONG_LONG_INT.
31711         * modules/stdint (stdint.h): Likewise.
31712         (Files): Add m4/ulonglong.m4.
31713
31714 2006-10-10  Bruno Haible  <bruno@clisp.org>
31715
31716         Fix a gcc -Wshadow warning.
31717         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
31718         to 'bucket'.
31719         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
31720         gl_linked_indexof_from_to): Likewise.
31721         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
31722         Likewise.
31723         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
31724         Likewise.
31725         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
31726         Reported by Eric Blake.
31727
31728 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
31729
31730         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
31731         for NetBSD.  Problem reported by Bruno Haible.
31732
31733 2006-10-09  Jim Meyering  <jim@meyering.net>
31734
31735         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
31736         Patch from Bruno Haible.
31737
31738 2006-10-09  Jim Meyering  <jim@meyering.net>
31739
31740         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
31741         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
31742         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
31743
31744 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
31745
31746         Don't include <config.h> twice; this doesn't work in some cases,
31747         e.g., when config.h has "#define intmax_t long long int" and
31748         we include <config.h>, <inttypes.h>, <config.h> in that order.
31749         Problem reported by Matthew Woehlke in:
31750         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
31751         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
31752         * lib/fts-cycle.c: Don't include config.h.
31753         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
31754         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
31755         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
31756         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
31757         inttypes.h.
31758         * lib/xstrtoumax.c: Likewise.
31759         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
31760         __strtol and the like, so that this module is more like its siblings.
31761         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
31762         Remove; no longer needed now that we assume gnulib inttypes.h.
31763
31764 2006-10-08  Bruno Haible  <bruno@clisp.org>
31765
31766         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
31767         option.
31768
31769 2006-10-07  Jim Meyering  <jim@meyering.net>
31770
31771         * modules/inttypes (inttypes.h): Revert what seems to have been
31772         an inadvertent part of today's change: use "|", not "/" in the
31773         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
31774
31775 2006-10-07  Bruno Haible  <bruno@clisp.org>
31776
31777         * modules/sublist: New file.
31778
31779 2006-10-07  Bruno Haible  <bruno@clisp.org>
31780
31781         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
31782         * modules/argz (argz.h): Likewise.
31783         * modules/arpa_inet (arpa/inet.h): Likewise.
31784         * modules/byteswap (byteswap.h): Likewise.
31785         * modules/configmake (configmake.h): Likewise.
31786         * modules/fcntl (fcntl.h): Likewise.
31787         * modules/fnmatch (fnmatch.h): Likewise.
31788         * modules/getopt (getopt.h): Likewise.
31789         * modules/glob (glob.h): Likewise.
31790         * modules/inttypes (inttypes.h): Likewise.
31791         * modules/netinet_in (netinet/in.h): Likewise.
31792         * modules/poll (poll.h): Likewise.
31793         * modules/stdbool (stdbool.h): Likewise.
31794         * modules/stdint (stdint.h): Likewise.
31795         * modules/sys_select (sys/select.h): Likewise.
31796         * modules/sys_socket (sys/socket.h): Likewise.
31797         * modules/sys_stat (sys/stat.h): Likewise.
31798         * modules/sysexits (sysexits.h): Likewise.
31799         * modules/unistd (unistd.h): Likewise.
31800         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
31801         Add a "DO NOT EDIT" comment to the generated file.
31802         (func_import): Likewise for gnulib-comp.m4.
31803
31804 2006-10-07  Bruno Haible  <bruno@clisp.org>
31805
31806         * lib/gl_sublist.h: New file.
31807         * lib/gl_sublist.c: New file.
31808
31809 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
31810
31811         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
31812         name (relative to the original working directory) and the file
31813         name component (relative to the temporary working directory).  All
31814         callers changed.
31815         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
31816         * lib/mkdir-p.c (make_dir_parents): Likewise.
31817         * lib/mkdir-p.h (make_dir_parents): Likewise.
31818
31819 2006-10-06  Eric Blake  <ebb9@byu.net>
31820
31821         Define several macros for use by the clean-temp module.
31822         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
31823         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
31824         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
31825
31826         * lib/clean-temp.h (close_stream_temp): New declaration.
31827         * lib/clean-temp.c (includes): Pull in headers according to what
31828         other modules are in use.
31829         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
31830
31831 2006-10-06  Bruno Haible  <bruno@clisp.org>
31832
31833         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
31834         instead of fopen, fwriteerror.
31835
31836 2006-10-06  Bruno Haible  <bruno@clisp.org>
31837
31838         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
31839         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
31840         int.
31841         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
31842         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
31843         Return an error indicator.
31844         Suggested by Eric Blake.
31845
31846 2006-10-06  Bruno Haible  <bruno@clisp.org>
31847
31848         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
31849         Reported by Eric Blake.
31850
31851 2006-10-06  Bruno Haible  <bruno@clisp.org>
31852
31853         * modules/closeout (Description): Mention stderr too.
31854
31855 2006-10-06  Bruno Haible  <bruno@clisp.org>
31856         and Paul Eggert  <eggert@cs.ucla.edu>
31857
31858         * lib/closeout.c (close_stdout): Also close stderr.
31859         * lib/closeout.h: Update comment.
31860
31861 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
31862
31863         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
31864         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
31865         * lib/dirchownmod.c: Include lchown.h.
31866         * lib/lchown.c: Don't include files that lchown.h now includes.
31867         Don't declare chown, since lchown.h now does that.
31868         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
31869         (lchown): Define to rpl_chown if lchown is declared but
31870         does not exist.  Declare using a prototype if lchown is not
31871         declared.  Add a copyright notice.
31872         * lib/mkstemp.h: Include <unistd.h>.
31873         * lib/openat.c: Include lchown.h.
31874
31875         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
31876         we now test for that separately.
31877         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
31878         rather than O_NOFOLLOW, when testing whether it's possible to
31879         avoid a race condition reliably.
31880         * lib/savewd.c (savewd_chdir): Likewise.
31881
31882         Remove macros that are no longer needed now that stdint.h is
31883         reliable.
31884         * lib/fsusage.c (UINTMAX_MAX): Remove.
31885         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
31886         * lib/utimecmp.c (SIZE_MAX): Remove.
31887
31888         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
31889
31890         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
31891         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
31892         O_NOATIME works.
31893
31894 2006-10-05  Bruno Haible  <bruno@clisp.org>
31895
31896         * lib/gl_list.h (gl_sortedlist_search_from_to,
31897         gl_sortedlist_indexof_from_to): New declarations.
31898         (gl_list_implementation): New fields sortedlist_search_from_to,
31899         sortedlist_indexof_from_to.
31900         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
31901         inline functions.
31902         * lib/gl_list.c (gl_sortedlist_search_from_to,
31903         gl_sortedlist_indexof_from_to): New functions.
31904         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
31905         function.
31906         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
31907         (gl_array_sortedlist_search_from_to): New function.
31908         (gl_array_list_implementation): Update.
31909         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
31910         function.
31911         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
31912         (gl_carray_sortedlist_search_from_to): New function.
31913         (gl_carray_list_implementation): Update.
31914         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
31915         gl_linked_sortedlist_indexof_from_to): New functions.
31916         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
31917         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
31918         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
31919         gl_tree_sortedlist_indexof_from_to): New functions.
31920         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
31921         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
31922         Update.
31923         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
31924         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
31925         Update.
31926
31927 2006-10-05  Bruno Haible  <bruno@clisp.org>
31928
31929         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
31930         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
31931         (struct gl_list_implementation): Add fields search_from_to,
31932         indexof_from_to. Remove fields search, indexof.
31933         (gl_list_search): Use the search_from_to method.
31934         (gl_list_search_from, gl_list_search_from_to): New functions.
31935         (gl_list_indexof): Use the indexof_from_to method.
31936         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
31937         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
31938         (gl_list_search_from, gl_list_search_from_to): New functions.
31939         (gl_list_indexof): Use the indexof_from_to method.
31940         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
31941         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
31942         gl_array_indexof. Add start_index, end_index arguments.
31943         (gl_array_search_from_to): Renamed from gl_array_search. Add
31944         start_index, end_index arguments.
31945         (gl_array_remove, gl_array_list_implementation): Update.
31946         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
31947         gl_carray_indexof. Add start_index, end_index arguments.
31948         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
31949         start_index, end_index arguments.
31950         (gl_carray_remove, gl_carray_list_implementation): Update.
31951         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
31952         gl_linked_search. Add start_index, end_index arguments.
31953         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
31954         start_index, end_index arguments.
31955         (gl_linked_remove): Update.
31956         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
31957         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
31958         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
31959         field to 'size_t'.
31960         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
31961         gl_tree_search. Add start_index, end_index arguments.
31962         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
31963         start_index, end_index arguments.
31964         (gl_tree_remove): Update.
31965         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
31966         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
31967         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
31968         function.
31969         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
31970         gl_tree_search. Add start_index, end_index arguments.
31971         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
31972         start_index, end_index arguments.
31973         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
31974         Update.
31975         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
31976
31977 2006-10-05  Bruno Haible  <bruno@clisp.org>
31978
31979         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
31980
31981         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
31982         fwriteerror_temp): New declarations.
31983         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
31984         (descriptors): New variable.
31985         (cleanup): First, close the descriptors.
31986         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
31987         fclose_temp, fwriteerror_temp): New functions.
31988
31989 2006-10-04  Jim Meyering  <jim@meyering.net>
31990
31991         * lib/fts.c (fts_open): Tiny comment change.
31992
31993 2006-10-04  Bruno Haible  <bruno@clisp.org>
31994
31995         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
31996         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
31997         gl_LOCK_BODY.
31998         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
31999         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
32000         gl_LOCK_EARLY_BODY.
32001         (gl_LOCK): Require gl_LOCK_BODY.
32002
32003 2006-10-04  Bruno Haible  <bruno@clisp.org>
32004
32005         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
32006         (gl_oset_search_atleast): New declaration.
32007         (struct gl_oset_implementation): Add field 'search_atleast'.
32008         (gl_oset_search_atleast): New inline function.
32009         * lib/gl_oset.c (gl_oset_search_atleast): New function.
32010         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
32011         (gl_array_oset_implementation): Update.
32012         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
32013         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
32014         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
32015
32016 2006-10-04  Bruno Haible  <bruno@clisp.org>
32017
32018         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
32019
32020 2006-10-03  Bruno Haible  <bruno@clisp.org>
32021
32022         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
32023         from gl_avltreehash_list_implementation.
32024
32025 2006-10-03  Bruno Haible  <bruno@clisp.org>
32026
32027         * lib/gl_oset.c (gl_oset_add): Fix return type.
32028
32029 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
32030
32031         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
32032
32033 2006-10-02  Eric Blake  <ebb9@byu.net>
32034
32035         * modules/strnlen (Depends-on): Add extensions.
32036
32037 2006-10-02  Eric Blake  <ebb9@byu.net>
32038
32039         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
32040         definition in 2.60+.
32041
32042 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
32043
32044         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
32045         checks.
32046
32047 2006-10-02  Bruno Haible  <bruno@clisp.org>
32048
32049         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
32050         to the AUTOMAKE_OPTIONS.
32051         Reported by Jim Meyering.
32052
32053 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
32054
32055         Work around bug in Solaris 10 /proc file system:
32056         /proc/self/fd/NNN/.. isn't the parent directory of
32057         the directory whose file descriptor is NNN.  This needs to
32058         be worked around at run time, not compile time, since a
32059         program might be built on Solaris 8, where things work, and
32060         run on Solaris 10.
32061         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
32062         to use the following interface instead:
32063         (OPENAT_BUFFER_SIZE): New macro.
32064         (openat_proc_name): New function.
32065         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
32066         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
32067         Likewise.
32068         * lib/openat-proc.c: New file.
32069         * modules/openat (Files): Add lib/openat-proc.c.
32070         (Depends-on): Add same-inode, stdbool.
32071         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
32072
32073 2006-09-29  Bruno Haible  <bruno@clisp.org>
32074
32075         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
32076         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
32077         argument. Set stdout_closed before testing for ferror, not after.
32078         (fwriteerror, fwriteerror_no_ebadf): New functions.
32079
32080 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32081
32082         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
32083
32084 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
32085
32086         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
32087         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
32088
32089 2006-09-28  Jim Meyering  <jim@meyering.net>
32090
32091         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
32092         Include <unistd.h>.
32093
32094 2006-09-28  Bruno Haible  <bruno@clisp.org>
32095
32096         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
32097         * modules/linkedhash-list (Depends-on): Likewise.
32098         * modules/rbtreehash-list (Depends-on): Likewise.
32099
32100 2006-09-28  Bruno Haible  <bruno@clisp.org>
32101
32102         * lib/strndup.h: Simplify the redefinition of strndup.
32103         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
32104         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
32105
32106 2006-09-28  Bruno Haible  <bruno@clisp.org>
32107
32108         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
32109         * lib/gl_linkedhash_list.c: Likewise.
32110         * lib/gl_rbtreehash_list.c: Likewise.
32111
32112 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
32113
32114         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
32115         getaddrinfo.
32116
32117         * lib/__fpending.h: Don't include <stdio_ext.h> unless
32118         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
32119         it causes <stdio_ext.h> to cause a compile-time error.
32120         Problem reported by Nelson H. F. Beebe.
32121         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
32122         of HAVE_DECL___PENDING.
32123
32124         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
32125         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
32126         declaration.
32127
32128 2006-09-27  Jim Meyering  <jim@meyering.net>
32129
32130         This file could end up with a definition for a function
32131         named __strndup, rather than rpl_strndup on a system with
32132         incomplete weak_alias support.
32133         * lib/strndup.c (strndup): Rename from __strndup.
32134         Remove #defines that used to map __strndup to strndup.
32135         Don't use K&R prototypes.
32136         Remove LIBC-related code, since this file is not sync'd with glibc.
32137         * lib/strndup.h: Revamp, accordingly.
32138         * m4/strndup.m4: Modernize.
32139
32140 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
32141
32142         * modules/savewd (Depends-on): Add 'raise'.
32143         * lib/savewd.c: Include <signal.h>, for 'raise'.
32144
32145 2006-09-26  Jim Meyering  <jim@meyering.net>
32146
32147         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
32148         when we detect Darwin 8.7.0's acl_get_file bug.
32149         Rearrange to perform the new (below) run-test while $LIBS
32150         contains any acl-related library.  Set USE_ACL at the end.
32151         (gl_ACL_GET_FILE): New function.
32152
32153 2006-09-26  Eric Blake  <ebb9@byu.net>
32154
32155         * lib/verror.c: Include <config.h> unconditionally.
32156
32157 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
32158
32159         * modules/clock-time (Maintainer): Add self.
32160         * modules/getlogin_r (Depends-on): Add extensions.
32161
32162 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32163
32164         * modules/clock-time: New module.
32165         * modules/nanosleep (Depends-on): Add clock-time.
32166         * modules/gethrxtime (Depends-on): Likewise.
32167         * modules/gettime (Depends-on): Likewise.
32168         * modules/settime (Depends-on): Likewise.
32169
32170         * modules/fts-lgpl: Depend on openat.
32171         * modules/mkancesdirs: Depend on savewd.
32172         * modules/mkdir-p: Likewise.
32173
32174 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32175
32176         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
32177
32178         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
32179         `gl_have_arbitrary_file_name_length_limit' to
32180         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
32181         actually works between configure runs.
32182
32183 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32184             Bruno Haible  <bruno@clisp.org>
32185
32186         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
32187
32188 2006-09-25  Jim Meyering  <jim@meyering.net>
32189
32190         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
32191         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
32192
32193 2006-09-25  Eric Blake  <ebb9@byu.net>
32194
32195         * gnulib-tool (func_import, func_create_testdir): Fix typos in
32196         exec's in 2006-09-18 patch when shuffling fds.
32197
32198 2006-09-25  Bruno Haible  <bruno@clisp.org>
32199
32200         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
32201         Reported by Jim Meyering.
32202
32203 2006-09-24  Jim Meyering  <jim@meyering.net>
32204
32205         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
32206         compare a pointer against a literal "0".  That caused failures with
32207         at least HP-UX's hpcc.
32208
32209 2006-09-22  Simon Josefsson  <jas@extundo.com>
32210
32211         * modules/gc-sha1:
32212         * modules/gc-md4:
32213         * modules/gc-hmac-sha1:
32214         * modules/gc-hmac-md5:
32215         * modules/gc-des:
32216         * modules/gc-arcfour: Distribute more files.
32217
32218 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32219
32220         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
32221         (gl_linked_iterator_from_to): Initialize struct completely.
32222         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
32223         (gl_tree_iterator_from_to): Likewise
32224         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
32225         * lib/gl_array_list.c [lint] (gl_array_iterator)
32226         (gl_array_iterator_from_to): Likewise.
32227         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
32228         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
32229         (gl_carray_iterator_from_to): Likewise.
32230
32231         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
32232         * lib/md4.c (md4_process_block): Remove unused variable.
32233         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
32234         parentheses for clarity.
32235
32236 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32237
32238         * modules/bison-i18n (Depends-on): Add gettext.
32239
32240 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32241
32242         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
32243         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
32244         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
32245         also add missing comma that caused broken test.
32246         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
32247         stdlib.h, for `abort'.
32248         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
32249         variables.
32250         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
32251         include unistd.h if present, for `rmdir'.
32252         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
32253         variables.
32254         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
32255         in the process include standard headers for prototypes.
32256         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
32257         gets declared on GNU/Linux.
32258         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
32259         unistd.h, for `rmdir'.
32260         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
32261
32262         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
32263         always true.
32264         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
32265
32266         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
32267
32268 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32269
32270         * gnulib-tool (func_version): Create output all at once.  This
32271         may help avoid triggering unnecessary SIGPIPEs, and at any
32272         rate it doesn't hurt.
32273
32274 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32275             Bruno Haible  <bruno@clisp.org>
32276
32277         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
32278         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
32279         * m4/signed.m4 (bh_C_SIGNED): Likewise.
32280
32281         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
32282         (gl_FUNC_VASPRINTF): Invoke it.
32283
32284 2006-09-22  Bruno Haible  <bruno@clisp.org>
32285
32286         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
32287         getloadavg.c as first argument.
32288
32289 2006-09-22  Bruno Haible  <bruno@clisp.org>
32290
32291         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
32292         at the beginning of the gl_INIT macro.
32293         * modules/getloadavg (configure.ac): Pass $gl_source_base to
32294         gl_GETLOADAVG.
32295
32296 2006-09-22  Bruno Haible  <bruno@clisp.org>
32297
32298         * gnulib-tool (func_create_megatestdir): Don't include the config-h
32299         module.
32300         Suggested by Ralf Wildenhues.
32301
32302 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
32303
32304         Import this patch from libc:
32305
32306         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
32307
32308         * lib/regex_internal.c (re_string_reconstruct): Handle
32309         offset < pstr->valid_raw_len && pstr->offsets_needed case.
32310         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
32311         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
32312         re_string_context_at.
32313
32314         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
32315         now requires it.
32316         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
32317         gl_REGEX now does it for us.
32318         (gl_REGEX): Add test taken from
32319         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
32320
32321         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
32322         Check that large offsets work.  Modernize Autoconf usages.
32323         Prefer "yes" to mean a good thing rather than a bad.
32324         Don't put "#define mkstemp" in config.h, as this might interfere
32325         with standard system headers that "#define mkstemp mkstemp64".
32326
32327         * modules/mkstemp (Depends-on): Add extensions, so that
32328         mkstemp is visible on some platforms.
32329         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
32330         (Include): Change to "mkstemp.h" from <stdlib.h>.
32331         (Files): Add mkstemp.h.
32332
32333         * lib/mkstemp.h: New file, since some standard headers
32334         #define mkstemp.
32335         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
32336         Include "mkstemp.h".
32337         Make the _LIBC code resemble glibc original more,
32338         e.g., use K&R style.
32339         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
32340         (mkstemp): Remove, since mkstemp.h does this for us.
32341         * lib/stdlib--.h: Include mkstemp.h.
32342
32343         Import this patch from libc:
32344
32345         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
32346
32347         * lib/tempname.c (__gen_tempname): Change attempts_min
32348         into a macro.  Use preprocessor to decide how to initialize
32349         attempts [Coverity CID 67].
32350
32351 2006-09-20  Bruno Haible  <bruno@clisp.org>
32352
32353         * lib/mkdtemp.c: Import from libc.
32354         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
32355                 * sysdeps/posix/tempname.c (__gen_tempname): Change
32356                 attempts_min into a macro.  Use preprocessor to decide how to
32357                 initialize attempts [Coverity CID 67].
32358         2001-11-27  Paul Eggert  <eggert@twinsun.com>
32359                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
32360                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
32361
32362 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32363
32364         * gnulib-tool (func_exit): New function, to allow to pass the
32365         exit status portably through the trap.  Use everywhere.
32366         (--help, --version): Signal a write error.
32367         (trap): catch SIGPIPE, for write errors.
32368         Exit at the end of the trap, with the correct exit status.
32369
32370 2006-09-19  Karl Berry  <karl@gnu.org>
32371
32372         * doc/gnulib.texi: note about the license texinfo files.
32373
32374 2006-09-19  Eric Blake  <ebb9@byu.net>
32375
32376         * gnulib-tool: Avoid space-tab.
32377
32378 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
32379
32380         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
32381         that prevented coreutils 6.1 from building.  Problem reported
32382         by Petter Reinholdtsen.
32383
32384 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
32385
32386         * gnulib-tool (avoidlist): Fix typo that broke options like
32387         --avoid=lock that are used by coreutils bootstrap.
32388
32389 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
32390
32391         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
32392         more systematically.
32393
32394 2006-09-18  Jim Meyering  <jim@meyering.net>
32395
32396         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
32397
32398 2006-09-18  Bruno Haible  <bruno@clisp.org>
32399
32400         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
32401
32402 2006-09-18  Bruno Haible  <bruno@clisp.org>
32403
32404         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
32405         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
32406         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
32407         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
32408         * m4/gettext.m4: Require autoconf >= 2.52.
32409         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
32410         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
32411         of gl_cv_header_inttypes_h.
32412
32413 2006-09-18  Bruno Haible  <bruno@clisp.org>
32414
32415         * lib/javaversion.c: Include configmake.h.
32416
32417 2006-09-18  Bruno Haible  <bruno@clisp.org>
32418
32419         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
32420         avoid that the while loops be executed in a subshell.
32421
32422 2006-09-18  Bruno Haible  <bruno@clisp.org>
32423
32424         * MODULES.html.sh (func_module): Break long lines.
32425         Suggested by Bruce Korb <bkorb@gnu.org>.
32426
32427 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32428
32429         Speed up by a factor of 1.12.
32430         * gnulib-tool (nl): New variable.
32431         (func_import): Rewrite include directive extraction to only read each
32432         directive once.
32433
32434 2006-09-17  Bruno Haible  <bruno@clisp.org>
32435
32436         * modules/javaversion (Makefile.am): Remove DEFS setting.
32437         (Depends-on): Add configmake, for PKGDATADIR definition.
32438
32439 2006-09-17  Bruno Haible  <bruno@clisp.org>
32440
32441         * gnulib-tool (func_create_testdir): Rewrite all files at once.
32442
32443 2006-09-17  Bruno Haible  <bruno@clisp.org>
32444
32445         * gnulib-tool (func_append): New function, stolen from libtool.m4.
32446         (func_modules_transitive_closure, func_modules_add_dummy,
32447         func_modules_to_filelist, func_import, func_create_testdir,
32448         func_create_megatestdir, ...): Use it wherever possible.
32449         Suggested by Ralf Wildenhues.
32450
32451 2006-09-16  Karl Berry  <karl@gnu.org>
32452
32453         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
32454         to avoid sectioning errors.
32455         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
32456         [ifinfo]: blank line after @center-ed titles.
32457         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
32458         Spell FSF address consistently with others.
32459         (These changes approved by rms.)
32460
32461 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32462
32463         Speed up by a factor of 1.61.
32464         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
32465         already checked module names again.
32466
32467 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32468
32469         Speed up by a factor of 1.13.
32470         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
32471         for new_files, and the input to func_add_or_update.
32472
32473 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32474
32475         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
32476         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
32477
32478 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
32479
32480         * modules/mkancesdirs (Depends-on): Add fcntl.
32481         * modules/savewd: New file.
32482         * MODULES.html.sh (File system functions): Add savewd.
32483
32484         * modules/configmake (Makefile.am): Add support for the
32485         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
32486
32487 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
32488
32489         * m4/savewd.m4: New file.
32490
32491 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
32492
32493         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
32494         (dirchownmod): New arg FD.  All callers changed.
32495         Use FD rather than opening the directory ourself, as opening is
32496         now the caller's responsibility.
32497         * lib/dirchownmod.h: Likewise.
32498         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
32499         hosts that require <sys/types.h> before <sys/stat.h>.  Include
32500         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
32501         (test_dir): Remove.
32502         (mkancesdirs): Return length of prefix of FILE that has already
32503         been made, or -2 if there is a child doing the work.  Redo
32504         algorithm so that it is O(N) rather than O(N**2).  Optimize away
32505         ".", and treat ".." specially since it might stray back into
32506         already-created areas.  Use a subprocess if necessary.  New arg
32507         WD; all users changed.  MAKE_DIR function should now return 1
32508         if it creates a directory that is not readable.  Return -2 if
32509         a child process is spun off.
32510         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
32511         Adjust signature to match code.
32512         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
32513         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
32514         all users changed.
32515         * lib/savewd.c, lib/savewd.h: New files.
32516
32517 2006-09-15  Jim Meyering  <jim@meyering.net>
32518
32519         * modules/rename-dest-slash: New module.
32520         * MODULES.html.sh (posix_compat): Add it here.
32521
32522         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
32523
32524 2006-09-15  Jim Meyering  <jim@meyering.net>
32525
32526         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
32527         file.
32528
32529         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
32530
32531 2006-09-15  Jim Meyering  <jim@meyering.net>
32532
32533         * lib/rename-dest-slash.c (has_trailing_slash): Use
32534         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
32535         (rpl_rename_dest_slash): Perform the cheaper trailing slash
32536         test before testing whether SRC is a directory.
32537         Suggestions from Bruno Haible.
32538
32539         Avoid a warning about an unused variable.
32540         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
32541         into the #ifdef block where it's used.
32542
32543         * lib/rename-dest-slash.c: New file.
32544
32545 2006-09-14  Bruno Haible  <bruno@clisp.org>
32546
32547         * lib/allocsa.c: Include <config.h> unconditionally.
32548         * lib/asnprintf.c: Likewise.
32549         * lib/asprintf.c: Likewise.
32550         * lib/c-strcasecmp.c: Likewise.
32551         * lib/c-strcasestr.c: Likewise.
32552         * lib/c-strncasecmp.c: Likewise.
32553         * lib/c-strstr.c: Likewise.
32554         * lib/classpath.c: Likewise.
32555         * lib/clean-temp.c: Likewise.
32556         * lib/concatpath.c: Likewise.
32557         * lib/copy-file.c: Likewise.
32558         * lib/csharpcomp.c: Likewise.
32559         * lib/csharpexec.c: Likewise.
32560         * lib/execute.c: Likewise.
32561         * lib/fatal-signal.c: Likewise.
32562         * lib/findprog.c: Likewise.
32563         * lib/fwriteerror.c: Likewise.
32564         * lib/gl_array_list.c: Likewise.
32565         * lib/gl_array_oset.c: Likewise.
32566         * lib/gl_avltree_list.c: Likewise.
32567         * lib/gl_avltree_oset.c: Likewise.
32568         * lib/gl_avltreehash_list.c: Likewise.
32569         * lib/gl_carray_list.c: Likewise.
32570         * lib/gl_linked_list.c: Likewise.
32571         * lib/gl_linkedhash_list.c: Likewise.
32572         * lib/gl_list.c: Likewise.
32573         * lib/gl_oset.c: Likewise.
32574         * lib/gl_rbtree_list.c: Likewise.
32575         * lib/gl_rbtree_oset.c: Likewise.
32576         * lib/gl_rbtreehash_list.c: Likewise.
32577         * lib/imaxabs.c: Likewise.
32578         * lib/imaxdiv.c: Likewise.
32579         * lib/javacomp.c: Likewise.
32580         * lib/javaexec.c: Likewise.
32581         * lib/javaversion.c: Likewise.
32582         * lib/linebreak.c: Likewise.
32583         * lib/localcharset.c: Likewise.
32584         * lib/lock.c: Likewise.
32585         * lib/mbchar.c: Likewise.
32586         * lib/mbswidth.c: Likewise.
32587         * lib/mkdtemp.c: Likewise.
32588         * lib/pipe.c: Likewise.
32589         * lib/printf-args.c: Likewise.
32590         * lib/printf-parse.c: Likewise.
32591         * lib/progname.c: Likewise.
32592         * lib/progreloc.c: Likewise.
32593         * lib/readlink.c: Likewise.
32594         * lib/sh-quote.c: Likewise.
32595         * lib/stpcpy.c: Likewise.
32596         * lib/stpncpy.c: Likewise.
32597         * lib/strcasecmp.c: Likewise.
32598         * lib/strcasestr.c: Likewise.
32599         * lib/strcspn.c: Likewise.
32600         * lib/striconv.c: Likewise.
32601         * lib/strncasecmp.c: Likewise.
32602         * lib/strnlen1.c: Likewise.
32603         * lib/strstr.c: Likewise.
32604         * lib/strtok_r.c: Likewise.
32605         * lib/tls.c: Likewise.
32606         * lib/tmpdir.c: Likewise.
32607         * lib/unicodeio.c: Likewise.
32608         * lib/unsetenv.c: Likewise.
32609         * lib/vasnprintf.c: Likewise.
32610         * lib/vasprintf.c: Likewise.
32611         * lib/wait-process.c: Likewise.
32612         * lib/xallocsa.c: Likewise.
32613         * lib/xsetenv.c: Likewise.
32614         * lib/xstriconv.c: Likewise.
32615
32616 2006-09-13  Simon Josefsson  <jas@extundo.com>
32617
32618         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
32619         that internally, suggested by Ralf Wildenhues
32620         <Ralf.Wildenhues@gmx.de>.
32621
32622 2006-09-13  Simon Josefsson  <jas@extundo.com>
32623
32624         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
32625         @LIBOBJS@.
32626         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
32627
32628 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
32629
32630         * lib/_fpending.c: Include <config.h> unconditionally, since we no
32631         longer worry about uses that don't define HAVE_CONFIG_H.
32632         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
32633         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
32634         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
32635         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
32636         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
32637         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
32638         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
32639         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
32640         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
32641         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
32642         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
32643         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
32644         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
32645         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
32646         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
32647         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
32648         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
32649         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
32650         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
32651         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
32652         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
32653         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
32654         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
32655         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
32656         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
32657         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
32658         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
32659         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
32660         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
32661         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
32662         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
32663         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
32664         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
32665         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
32666         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
32667         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
32668         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
32669         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
32670         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
32671         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
32672         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
32673         Likewise.
32674
32675 2006-09-13  Eric Blake  <ebb9@byu.net>
32676
32677         * lib/getopt.c: Fix typo in last commit.
32678
32679 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
32680
32681         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
32682         dgettext.
32683
32684 2006-09-12  Jim Meyering  <jim@meyering.net>
32685
32686         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
32687         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
32688         Reported by Nelson H. F. Beebe.
32689
32690 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
32691
32692         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
32693         program_invocation_name and program_invocation_short_name are
32694         initialized.
32695         * lib/argp-namefrob.h: Move declarations of program_invocation_name
32696         and program_invocation_short_name to argp.h, so they are visible
32697         to user programs.
32698         * lib/argp.h: Likewise
32699
32700 2006-09-10  Bruno Haible  <bruno@clisp.org>
32701
32702         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
32703         m4/inttypes_h.m4, m4/uintmax_t.m4.
32704
32705 2006-09-10  Bruno Haible  <bruno@clisp.org>
32706
32707         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
32708         gl_AC_TYPE_UINTMAX_T.
32709
32710 2006-09-10  Bruno Haible  <bruno@clisp.org>
32711
32712         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
32713
32714 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
32715
32716         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
32717         convention.  Text proposed by Bruno Haible.
32718         (struct argp_option): Document the use of N_() wrappers.
32719
32720         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
32721         '\v', and translate the two parts separately, instead of feeding
32722         the whole string to gettext.  This allows to exclude
32723         '\v' from the strings visible to the translator by writing doc
32724         strings as N_("..") "\v" N_("..").
32725
32726 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
32727
32728         * config/srclist.txt: Undo latest change; the bug was fixed.
32729
32730 2006-09-09  Bruno Haible  <bruno@clisp.org>
32731
32732         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
32733         assignments if building a library without libtool.
32734         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
32735         in func_emit_lib_Makefile_am.
32736         (func_import): When building a static library libfoo.a, arrange to
32737         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
32738         (func_create_testdir): Likewise.
32739         * modules/gc (configure.ac, Makefile.am): If building statically,
32740         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
32741         * modules/iconvme (configure.ac, Makefile.am): Likewise.
32742         * modules/striconv (configure.ac, Makefile.am): Likewise.
32743         Based on a suggestion by Ralf Wildenhues.
32744
32745 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32746
32747         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
32748         Check for unistd.h too, since Autoconf doesn't assume POSIX.
32749         Also:
32750
32751         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32752         Add year_2050_test to catch glibc bug 2821
32753         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
32754
32755         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
32756         Prefer #ifdef to #if.
32757
32758         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
32759         Return from 'main' instead of calling 'exit'.
32760
32761 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32762
32763         * lib/mktime.c (guess_time_tm): Fix bug where mktime
32764         returned the maximum time_t value rather than (time_t) -1.
32765         Problem originally reported by William Bardwell
32766         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
32767
32768         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
32769         Moved to here ...
32770         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
32771         ... from here.
32772
32773 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32774
32775         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
32776         2821 is fixed.
32777
32778 2006-09-08  Jim Meyering  <jim@meyering.net>
32779
32780         Don't make generated files read-only.  That would bother too many
32781         people.  However, do retain the ability to work when targets are
32782         read-only: remove the destination and temporary files before writing
32783         them (when generated via sed or echo), or by using the -f option for
32784         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
32785         * modules/alloca-opt, modules/argz, modules/arpa_inet:
32786         * modules/byteswap, modules/configmake, modules/fcntl:
32787         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
32788         * modules/localcharset, modules/netinet_in, modules/poll:
32789         * modules/stdbool, modules/stdint, modules/sys_select:
32790         * modules/sys_socket, modules/sys_stat, modules/sysexits:
32791
32792 2006-09-08  Jim Meyering  <jim@meyering.net>
32793
32794         Avoid new build failure on FreeBSD 6.0.
32795         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
32796         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
32797         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
32798
32799 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32800
32801         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
32802
32803 2006-09-07  Jim Meyering  <jim@meyering.net>
32804
32805         Fix global typo in last change: use chmod u-w, not chmod u-x.
32806         Spotted by Paul Eggert and Bruce Korb.
32807         * modules/alloca-opt, modules/argz, modules/arpa_inet:
32808         * modules/byteswap, modules/configmake, modules/fcntl:
32809         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
32810         * modules/localcharset, modules/netinet_in, modules/poll:
32811         * modules/stdbool, modules/stdint, modules/sys_select:
32812         * modules/sys_socket, modules/sys_stat, modules/sysexits:
32813
32814 2006-09-06  Jim Meyering  <jim@meyering.net>
32815
32816         Make generated files be read-only.
32817         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
32818         Ensure that each generated file is now read-only.
32819         * modules/argz: Likewise.
32820         * modules/arpa_inet: Likewise.
32821         * modules/byteswap: Likewise.
32822         * modules/configmake: Likewise.
32823         * modules/fcntl: Likewise.
32824         * modules/fnmatch: Likewise.
32825         * modules/getopt: Likewise.
32826         * modules/glob: Likewise.
32827         * modules/inttypes: Likewise.
32828         * modules/netinet_in: Likewise.
32829         * modules/poll: Likewise.
32830         * modules/stdbool: Likewise.
32831         * modules/stdint: Likewise.
32832         * modules/sys_select: Likewise.
32833         * modules/sys_socket: Likewise.
32834         * modules/sys_stat: Likewise.
32835         * modules/sysexits: Likewise.
32836         * modules/localcharset: Same as above, but continue using temporary
32837         file named "t-$@" (why different?) rather than the "$@-t" used
32838         everywhere else.
32839
32840         * modules/sysexits (Makefile.am): Replace literal occurrences
32841         of "sysexit.h" more readable, and more consistent, "$@".
32842
32843 2006-09-06  Bruno Haible  <bruno@clisp.org>
32844
32845         * modules/striconv: New file.
32846         * modules/xstriconv: New file.
32847         * MODULES.html.sh (Internationalization functions): Add striconv,
32848         xstriconv.
32849
32850 2006-09-06  Bruno Haible  <bruno@clisp.org>
32851
32852         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
32853         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
32854         not using libtool correctly.
32855
32856 2006-09-06  Bruno Haible  <bruno@clisp.org>
32857
32858         * lib/striconv.h: New file.
32859         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
32860         iconvstring.c.
32861         * lib/xstriconv.h: New file.
32862         * lib/xstriconv.c: New file.
32863
32864 2006-09-06  Bruno Haible  <bruno@clisp.org>
32865
32866         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
32867         lib_..._LDFLAGS.
32868
32869 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32870
32871         * lib/argz_.h: Sync from Libtool.
32872
32873         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
32874                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
32875
32876         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
32877
32878 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
32879
32880         * modules/trim: New file.
32881
32882 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
32883
32884         * lib/trim.h: New file.
32885         * lib/trim.c: New file.
32886
32887 2006-09-05  Bruno Haible  <bruno@clisp.org>
32888
32889         * MODULES.html.sh (String handling): Add trim.
32890
32891 2006-09-04  Karl Berry  <karl@gnu.org>
32892
32893         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
32894         until next release.
32895
32896 2006-09-03  Bruno Haible  <bruno@clisp.org>
32897
32898         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
32899         correctly.
32900
32901 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
32902
32903         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
32904         not gl_GETLOADAVG.  Omit unneeded semicolons.
32905         Problems reported by Ralf Wildenhues in
32906         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
32907         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
32908         at the end, which is the usual gnulib style.
32909
32910         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
32911         of doing all the work ourselves.
32912         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
32913         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
32914
32915 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
32916
32917         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
32918         Problem reported by Ralf Wildenhues in
32919         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
32920
32921         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
32922         HAVE_STRUCT_STATFS_F_FSTYPENAME.
32923
32924 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
32925
32926         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
32927         yesterday's patch by changing test -n to test -z.
32928
32929 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
32930
32931         * modules/getloadavg (Files): Add m4/getloadavg.m4.
32932         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
32933         the former is now obsolescent.
32934
32935         * modules/chdir-long (Depends-on): Add fcntl.
32936
32937 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
32938
32939         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
32940         obsolescent, and programs should use gnulib instead.
32941         * m4/getloadavg.m4: New file, with contents taken from Autoconf
32942         but with prefixes changed.
32943
32944 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
32945
32946         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
32947         or stdbool.h, because they might not exist while configuring.
32948
32949         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
32950         Don't include unistd.h or limits.h; not needed, since chdir-long.h
32951         does that for us.
32952         (O_DIRECTORY): Remove.
32953
32954 2006-08-31  Eric Blake  <ebb9@byu.net>
32955
32956         * gnulib-tool: Don't let emacs change spaces to TAB.
32957
32958 2006-08-31  Bruno Haible  <bruno@clisp.org>
32959
32960         * gnulib-tool: When calling func_import more than once, do it in a
32961         subshell.
32962         Reported by Eric Blake <ebb9@byu.net>.
32963
32964 2006-08-31  Bruno Haible  <bruno@clisp.org>
32965
32966         * gnulib-tool (nl): Remove variable.
32967         (sed_transform_lib_file): Use more robust test for config-h module.
32968         (func_import): Fix typo in 2006-08-25 patch.
32969
32970 2006-08-31  Bruno Haible  <bruno@clisp.org>
32971
32972         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
32973         specified, augment Makefile.am variables instead of assigning them.
32974
32975 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
32976
32977         Work around a bug in both the Linux and SunOS 64-bit kernels:
32978         nanosleep mishandles sleeps for longer than 2**31 seconds.
32979         Problem reported by Frank v Waveren in
32980         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
32981         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
32982         Check for nanosleep bug.
32983         (LIB_NANOSLEEP): Append clock_gettime library if needed.
32984
32985 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
32986
32987         Work around a bug in both the Linux and SunOS 64-bit kernels:
32988         nanosleep mishandles sleeps for longer than 2**31 seconds.
32989         Problem reported by Frank v Waveren in
32990         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
32991         * lib/nanosleep.c (BILLION): New constant.
32992         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
32993         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
32994         implementation.
32995
32996 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
32997
32998         * modules/nanosleep (Depends-on): Add gettime.
32999
33000 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
33001         and Simon Josefsson  <jas@extundo.com>
33002         and Oskar Liljeblad  <oskar@osk.mine.nu>
33003
33004         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
33005         * gnulib-tool (func_import): New license type 'unmodifiable license
33006         text'.
33007         * modules/fdl: Use it.  Longer description.
33008         * module/gpl, module/lgpl: New files.
33009
33010 2006-08-30  Jim Meyering  <jim@meyering.net>
33011
33012         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
33013         shadowing the parameter.
33014
33015 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33016
33017         Sync from Libtool:
33018
33019         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33020
33021         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
33022         sharing with gnulib.  Report by Eric Blake.
33023
33024 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
33025
33026         * modules/isapipe: New file.
33027         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
33028
33029 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
33030
33031         * modules/configmake (Makefile.am): Add a comment, and omit
33032         the CONFIGMAKE_ prefix from generated macro names.  Suggested
33033         by Bruno Haible.
33034
33035 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
33036
33037         * m4/isapipe.m4: New file.
33038
33039 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
33040
33041         * lib/isapipe.c, lib/isapipe.h: New files.
33042
33043 2006-08-29  Jim Meyering  <jim@meyering.net>
33044
33045         * modules/configmake (Makefile.am): Make configmake.h depend on
33046         Makefile.  Otherwise, a stale configmake.h could hang around.
33047
33048 2006-08-29  Eric Blake  <ebb9@byu.net>
33049
33050         * lib/error.c (error_at_line, print_errno_message): Match libc, after
33051         resolution of upstream bug 3044.
33052
33053 2006-08-29  Bruno Haible  <bruno@clisp.org>
33054
33055         * modules/localcharset (Depends-on): Add configmake.
33056         (Makefile.am): Remove setting of LIBDIR through DEFS.
33057
33058 2006-08-29  Bruno Haible  <bruno@clisp.org>
33059
33060         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
33061         defined.
33062
33063 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
33064
33065         * modules/fcntl: New file.
33066         * modules/chdir-safer (Depends-on): Add fcntl.
33067         * modules/fts: Likewise.
33068         * modules/mkdir-p: Likewise.
33069
33070         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
33071         This undoes the most recent change, since we're now addressing the
33072         problem in a different way.
33073
33074         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
33075         into output, since the output might be called Makefile.am even
33076         if $makefile_name is something different.
33077         (func_import): Use $makefile_am rather than
33078         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
33079         empty.
33080
33081         * modules/inttypes (Files): Add m4/inttypes-h.m4.
33082
33083 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
33084
33085         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
33086         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
33087         recent change to stdint.m4, since we're now addressing the problem in a
33088         different way.
33089
33090 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
33091
33092         * m4/fcntl_h.m4: New file.
33093
33094 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
33095
33096         * lib/fcntl_.h: New file.
33097         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
33098         the fcntl module.
33099         * lib/dirchownmod.c: Likewise.
33100         * lib/fts.c: Likewise.
33101
33102         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
33103         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
33104         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
33105         just before including <inttypes.h>, to avoid circular inclusion.
33106
33107 2006-08-28  Jim Meyering  <jim@meyering.net>
33108
33109         * doc/visibility.texi: Actually read and correct the grammar of the
33110         sentence affected by yesterday's change.
33111
33112 2006-08-28  Eric Blake  <ebb9@byu.net>
33113
33114         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
33115         needs wrapper.
33116
33117 2006-08-28  Eric Blake  <ebb9@byu.net>
33118
33119         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
33120
33121 2006-08-28  Eric Blake  <ebb9@byu.net>
33122
33123         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
33124
33125 2006-08-28  Bruno Haible  <bruno@clisp.org>
33126
33127         * modules/c-strstr: New file, from GNU gettext.
33128         * MODULES.html.sh (String handling): Add c-strstr.
33129
33130 2006-08-28  Bruno Haible  <bruno@clisp.org>
33131
33132         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
33133         macros.
33134         Reported by Eric Blake.
33135
33136 2006-08-28  Bruno Haible  <bruno@clisp.org>
33137
33138         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
33139         (VASNPRINTF): Return a string of length > INT_MAX without failing.
33140         * lib/vasprintf.c: Include errno.h, limits.h.
33141         (EOVERFLOW): New fallback definition.
33142         (vasprintf): Test here whether the string length is > INT_MAX.
33143         * lib/vsnprintf.c: Include errno.h, limits.h.
33144         (EOVERFLOW): New fallback definition.
33145         (vsnprintf): Fix bug when generated string was too long for the buffer.
33146         Test here whether the string length is > INT_MAX.
33147
33148 2006-08-28  Bruno Haible  <bruno@clisp.org>
33149
33150         * lib/inttypes_.h (SCNX*): Remove definitions.
33151         Reported by Eric Blake.
33152
33153 2006-08-28  Bruno Haible  <bruno@clisp.org>
33154
33155         * lib/c-strstr.h: New file, from GNU gettext.
33156         * lib/c-strstr.c: New file, from GNU gettext.
33157
33158 2006-08-28  Bruno Haible  <bruno@clisp.org>
33159
33160         * gnulib-tool: Reorder some statements.
33161
33162 2006-08-28  Bruno Haible  <bruno@clisp.org>
33163
33164         * gnulib-tool: New option --makefile-name.
33165         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
33166         $makefile_name.
33167         (func_import): Write $makefile_name to the cache file, and read it from
33168         there unless explicitly specified. Use $makefile_name as file name
33169         instead of Makefile.am. Adjust the recommendations accordingly.
33170
33171 2006-08-28  Bruno Haible  <bruno@clisp.org>
33172
33173         * gnulib-tool (func_verify_module): Check against misapplying patch.
33174
33175 2006-08-28  Bruno Haible  <bruno@clisp.org>
33176
33177         * gnulib-tool (func_relativize, func_relconcat): New functions.
33178         Give an error if --local-dir is given with --update.
33179         Remove trailing slashes from $local_gnulib_dir.
33180         (func_import): Store the relativized $local_gnulib_dir in
33181         gnulib-cache.m4, and read it from there if not specified explicitly.
33182
33183 2006-08-28  Bruno Haible  <bruno@clisp.org>
33184
33185         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
33186         is the current directory. Respect also $local_gnulib_dir.
33187
33188 2006-08-28  Bruno Haible  <bruno@clisp.org>
33189             Simon Josefsson  <jas@extundo.com>
33190
33191         BeOS portability.
33192         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
33193
33194 2006-08-27  Jim Meyering  <jim@meyering.net>
33195
33196         * doc/visibility.texi: Remove duplicate word: "pointer".
33197
33198 2006-08-26  Bruno Haible  <bruno@clisp.org>
33199
33200         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
33201         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
33202         (Makefile.am): Create inttypes.h from inttypes_.h.
33203         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
33204
33205         * modules/imaxabs: New file.
33206
33207         * modules/imaxdiv: New file.
33208
33209 2006-08-26  Bruno Haible  <bruno@clisp.org>
33210
33211         * m4/inttypes.m4: New file.
33212         * m4/_inttypes_h.m4: Remove file.
33213         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
33214         PRI_MACROS_BROKEN.
33215         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
33216
33217         * m4/imaxabs.m4: New file.
33218
33219         * m4/imaxdiv.m4: New file.
33220
33221 2006-08-26  Bruno Haible  <bruno@clisp.org>
33222
33223         * lib/inttypes_.h: New file.
33224         * lib/inttypes.h: Remove file.
33225         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
33226
33227         * lib/imaxabs.c: New file.
33228
33229         * lib/imaxdiv.c: New file.
33230
33231 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33232
33233         New config-h module, so that "make" output needn't be cluttered
33234         by -DHAVE_CONFIG_H.
33235         * MODULES.html.sh (Support for building libraries and executables):
33236         Add config-h.
33237         * modules/config-h: New file.
33238         * gnulib-tool (nl, sed_transform_lib_file): New vars.
33239         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
33240         the config-h module is used.
33241
33242         New configmake module, so that "make" output needn't be cluttered
33243         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
33244         * MODULES.html.sh (Support for building libraries and executables):
33245         Add configmake.
33246         * modules/configmake: New file.
33247
33248 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33249
33250         * m4/config-h.m4: New file.
33251
33252 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
33253
33254         * config/srclist.txt: Add elisp-comp.
33255
33256 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
33257
33258         * MODULES.html.sh (Support for building libraries and executables):
33259         Add elisp-comp.
33260         * build-aux/elisp-comp: New file.
33261         * modules/elisp-comp: New file.
33262
33263 2006-08-24  Bruno Haible  <bruno@clisp.org>
33264
33265         * gnulib-tool (func_create_testdir): Use non-default values of
33266         sourcebase and m4base.
33267
33268 2006-08-24  Bruno Haible  <bruno@clisp.org>
33269
33270         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
33271         HTML structure.
33272
33273 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
33274
33275         * modules/openat (Depends-on): Add lchown.
33276
33277 2006-08-23  Bruno Haible  <bruno@clisp.org>
33278
33279         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
33280         of gl_LOCK_EARLY instead of gl_LOCK.
33281
33282 2006-08-23  Bruno Haible  <bruno@clisp.org>
33283
33284         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
33285         on OSF/1 to no.
33286         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
33287
33288 2006-08-23  Bruno Haible  <bruno@clisp.org>
33289
33290         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
33291         as unusable.
33292
33293         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
33294         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
33295         (gl_LOCK): New macro.
33296
33297 2006-08-22  Simon Josefsson  <jas@extundo.com>
33298
33299         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
33300         to md5 module.
33301
33302 2006-08-22  Simon Josefsson  <jas@extundo.com>
33303
33304         * MODULES.html.sh: Add "Support for maintaining and release
33305         projects".
33306
33307         * build-aux/gnupload: New file, from coreutils.
33308
33309 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
33310
33311         Avoid the need for AC_LIBSOURCES in m4 macros.
33312         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
33313         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
33314         * modules/check-version (EXTRA_DIST): Add check-version.h.
33315         * modules/crc (EXTRA_DIST): Add crc.h.
33316         * modules/des (EXTRA_DIST): Add des.h.
33317         * modules/gc (EXTRA_DIST): Add gc.h.
33318         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
33319         * modules/getline (EXTRA_DIST): Add getline.h.
33320         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
33321         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
33322         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
33323         * modules/md2 (EXTRA_DIST): Add md2.h.
33324         * modules/md4 (EXTRA_DIST): Add md4.h.
33325         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
33326         * modules/read-file (EXTRA_DIST): Add read-file.h.
33327         * modules/readline (EXTRA_DIST): Add readline.h.
33328         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
33329         rijndael-api-fst.h.
33330
33331 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
33332
33333         * m4/rijndael.m4 (gl_ARCFOUR):
33334         * m4/arctwo.m4 (gl_ARCTWO):
33335         * m4/check-version.m4 (gl_CHECK_VERSION):
33336         * m4/crc.m4 (gl_CRC):
33337         * m4/des.m4 (gl_DES):
33338         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
33339         * m4/gc.m4 (gl_GC):
33340         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
33341         * m4/getline.m4 (gl_FUNC_GETLINE):
33342         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
33343         * m4/hmac-md5.m4 (gl_HMAC_MD5):
33344         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
33345         * m4/md2.m4 (gl_MD2):
33346         * m4/md4.m4 (gl_MD4):
33347         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
33348         * m4/read-file.m4 (gl_FUNC_READ_FILE):
33349         * m4/readline.m4 (gl_FUNC_READLINE):
33350         * m4/rijndael.m4 (gl_RIJNDAEL):
33351         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
33352         to get the necessary .h files and whatnot.
33353
33354 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
33355
33356         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
33357         gnulib rather than the other way around.
33358         * config/srclistvars.sh (COREUTILS): Remove.
33359
33360 2006-08-22  Jim Meyering  <jim@meyering.net>
33361
33362         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
33363
33364         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
33365
33366 2006-08-22  Eric Blake  <ebb9@byu.net>
33367
33368         * modules/regexprops-generic: New file.
33369         * MODULES.html.sh (Support for building documentation): List it.
33370
33371 2006-08-22  Eric Blake  <ebb9@byu.net>
33372
33373         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
33374         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
33375         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
33376         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
33377
33378 2006-08-22  Bruno Haible  <bruno@clisp.org>
33379
33380         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
33381         and lib_LTLIBRARIES like the other lib_* variables.
33382
33383 2006-08-22  Bruno Haible  <bruno@clisp.org>
33384
33385         * build-aux/x-to-1.in: New file, from GNU gettext.
33386
33387 2006-08-22  Bruno Haible  <bruno@clisp.org>
33388
33389         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
33390         <utmpx.h> exists.
33391
33392 2006-08-22  Bruno Haible  <bruno@clisp.org>
33393
33394         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
33395         <utmpx.h> exists.
33396
33397 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
33398
33399         BeOS portability.
33400         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
33401         exist.
33402         Problem reported by Bruno Haible.
33403
33404 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
33405
33406         Avoid the need for AC_LIBSOURCES in m4 macros.
33407         * modules/acl (EXTRA_DIST): Add acl.h.
33408         * modules/argmatch (Files): Add m4/argmatch.m4.
33409         (configure.ac): Add gl_ARGMATCH.
33410         (EXTRA_DIST): Renamed from lib_SOURCES, for
33411         consistency with the other modules.  Remove argmatch.c.
33412         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
33413         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
33414         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
33415         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
33416         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
33417         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
33418         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
33419         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
33420         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
33421         * modules/closeout (EXTRA_DIST): Add closeout.h.
33422         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
33423         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
33424         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
33425         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
33426         dirname.h; remove basename.c and stripslash.c.
33427         * modules/exclude (EXTRA_DIST): Add exclude.h.
33428         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
33429         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
33430         * modules/file-type (EXTRA_DIST): Add file-type.h.
33431         * modules/filemode (EXTRA_DIST): Add filemode.h.
33432         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
33433         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
33434         * modules/fpending (EXTRA_DIST): Add __fpending.h.
33435         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
33436         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
33437         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
33438         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
33439         * modules/getdate (EXTRA_DIST): Add getdate.c.
33440         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
33441         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
33442         * modules/getpass (EXTRA_DIST): Add getpass.h.
33443         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
33444         * modules/group-member (EXTRA_DIST): Add group-member.h.
33445         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
33446         * modules/hash (EXTRA_DIST): Add hash.h.
33447         * modules/human (EXTRA_DIST): Add human.h.
33448         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
33449         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
33450         * modules/lchown (EXTRA_DIST): Add lchown.h.
33451         * modules/long-options (EXTRA_DIST): Add long-options.h.
33452         * modules/lstat (EXTRA_DIST): Add lstat.h.
33453         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
33454         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
33455         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
33456         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
33457         * modules/memxor (EXTRA_DIST): Add memxor.h.
33458         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
33459         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
33460         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
33461         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
33462         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
33463         * modules/physmem (EXTRA_DIST): Add physmem.h.
33464         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
33465         * modules/posixver (EXTRA_DIST): Add posixver.h.
33466         * modules/quote (EXTRA_DIST): Add quote.h.
33467         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
33468         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
33469         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
33470         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
33471         regex_internal.h regexec.c.
33472         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
33473         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
33474         * modules/same (EXTRA_DIST): Add same.h.
33475         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
33476         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
33477         * modules/savedir (EXTRA_DIST): Add savedir.h.
33478         * modules/sha1 (EXTRA_DIST): Add sha1.h.
33479         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
33480         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
33481         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
33482         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
33483         * modules/strdup (EXTRA_DIST): Add strdup.h.
33484         * modules/strftime (EXTRA_DIST): Add strftime.h.
33485         * modules/strndup (EXTRA_DIST): Add strndup.h.
33486         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
33487         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
33488         * modules/time_r (EXTRA_DIST): Add time_r.h.
33489         * modules/timespec (EXTRA_DIST): Add timespec.h.
33490         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
33491         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
33492         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
33493         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
33494         * modules/userspec (EXTRA_DIST): Add userspec.h.
33495         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
33496         * modules/utimens (EXTRA_DIST): Add utimens.h.
33497         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
33498         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
33499         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
33500         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
33501         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
33502         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
33503         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
33504         * modules/yesno (EXTRA_DIST): Add yesno.h.
33505
33506 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
33507
33508         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
33509
33510         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
33511         * m4/dev-ino.m4, same-inode.m4: Remove.
33512
33513         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
33514         * m4/acl.m4 (AC_FUNC_ACL):
33515         * m4/backupfile.m4 (gl_BACKUPFILE):
33516         * m4/c-strtod.m4 (gl_C99_STRTOLD):
33517         * m4/canon-host.m4 (gl_CANON_HOST):
33518         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
33519         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
33520         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
33521         * m4/cloexec.m4 (gl_CLOEXEC):
33522         * m4/close-stream.m4 (gl_CLOSE_STREAM):
33523         * m4/closeout.m4 (gl_CLOSEOUT):
33524         * m4/dirfd.m4 (gl_FUNC_DIRFD):
33525         * m4/dirname.m4 (gl_DIRNAME):
33526         * m4/exclude.m4 (gl_EXCLUDE):
33527         * m4/exitfail.m4 (gl_EXITFAIL):
33528         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
33529         * m4/file-type.m4 (gl_FILE_TYPE):
33530         * m4/filemode.m4 (gl_FILEMODE):
33531         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
33532         * m4/fpending.m4 (gl_FUNC_FPENDING):
33533         * m4/fprintftime.m4 (gl_FPRINTFTIME):
33534         * m4/fts.m4 (gl_FUNC_FTS):
33535         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
33536         * m4/getdate.m4 (gl_GETDATE):
33537         * m4/gethrxtime.m4 (gl_GETHRXTIME):
33538         * m4/getpagesize.m4 (gl_GETPAGESIZE):
33539         * m4/getpass.m4 (gl_FUNC_GETPASS):
33540         * m4/gettime.m4 (gl_GETTIME):
33541         * m4/getugroups.m4 (gl_GETUGROUPS):
33542         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
33543         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
33544         * m4/hard-locale.m4 (gl_HARD_LOCALE):
33545         * m4/hash.m4 (gl_HASH):
33546         * m4/idcache.m4 (gl_IDCACHE):
33547         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
33548         * m4/lchown.m4 (gl_FUNC_LCHOWN):
33549         * m4/long-options.m4 (gl_LONG_OPTIONS):
33550         * m4/lstat.m4 (gl_FUNC_LSTAT):
33551         * m4/md5.m4 (gl_MD5):
33552         * m4/memcasecmp.m4 (gl_MEMCASECMP):
33553         * m4/memcoll.m4 (gl_MEMCOLL):
33554         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
33555         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
33556         * m4/memxor.m4 (gl_MEMXOR):
33557         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
33558         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
33559         * m4/modechange.m4 (gl_MODECHANGE):
33560         * m4/mountlist.m4 (gl_MOUNTLIST):
33561         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
33562         * m4/openat.m4 (gl_FUNC_OPENAT):
33563         * m4/pathmax.m4 (gl_PATHMAX):
33564         * m4/physmem.m4 (gl_PHYSMEM):
33565         * m4/posixtm.m4 (gl_POSIXTM):
33566         * m4/posixver.m4 (gl_POSIXVER):
33567         * m4/quote.m4 (gl_QUOTE):
33568         * m4/quotearg.m4 (gl_QUOTEARG):
33569         * m4/readtokens.m4 (gl_READTOKENS):
33570         * m4/readutmp.m4 (gl_READUTMP):
33571         * m4/regex.m4 (gl_REGEX):
33572         * m4/safe-read.m4 (gl_SAFE_READ):
33573         * m4/safe-write.m4 (gl_SAFE_WRITE):
33574         * m4/same.m4 (gl_SAME):
33575         * m4/save-cwd.m4 (gl_SAVE_CWD):
33576         * m4/savedir.m4 (gl_SAVEDIR):
33577         * m4/settime.m4 (gl_SETTIME):
33578         * m4/sha1.m4 (gl_SHA1):
33579         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
33580         * m4/stat-macros.m4 (gl_STAT_MACROS):
33581         * m4/stat-time.m4 (gl_STAT_TIME):
33582         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
33583         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
33584         * m4/strdup.m4 (gl_FUNC_STRDUP):
33585         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
33586         * m4/strndup.m4 (gl_FUNC_STRNDUP):
33587         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
33588         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
33589         * m4/time_r.m4 (gl_TIME_R):
33590         * m4/timespec.m4 (gl_TIMESPEC):
33591         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
33592         * m4/unlinkdir.m4 (gl_UNLINKDIR):
33593         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
33594         * m4/userspec.m4 (gl_USERSPEC):
33595         * m4/utimecmp.m4 (gl_UTIMECMP):
33596         * m4/utimens.m4 (gl_UTIMENS):
33597         * m4/xalloc.m4 (gl_XALLOC):
33598         * m4/xgetcwd.m4 (gl_XGETCWD):
33599         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
33600         * m4/xreadlink.m4 (gl_XREADLINK):
33601         * m4/xstrtod.m4 (gl_XSTRTOD):
33602         * m4/yesno.m4 (gl_YESNO):
33603         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
33604         to get the necessary .h files and whatnot.
33605
33606 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
33607             Bruno Haible  <bruno@clisp.org>
33608
33609         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
33610         /bin/sh understanding of '!' conditional negation.
33611
33612 2006-08-21  Jim Meyering  <jim@meyering.net>
33613
33614         * modules/openat (Depends-on): Really alphabetize.
33615
33616         * modules/acl (Depends-on): Add error and quote.
33617
33618         * check-module (find_included_lib_files): Add at-func.c to the
33619         ok-to-include-more-than-once white list.
33620
33621         * modules/openat (Depends-on): Add lstat.  Alphabetize.
33622
33623 2006-08-21  Bruno Haible  <bruno@clisp.org>
33624
33625         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
33626         Emit a pkgdata_DATA variable only if some snippets add contents to it.
33627         Reported by Martin Lambers <marlam@marlam.de>.
33628
33629 2006-08-21  Bruno Haible  <bruno@clisp.org>
33630
33631         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
33632         specify an installation location, don't emit a noinst_LIBRARIES or
33633         noinst_LTLIBRARIES assignment.
33634
33635 2006-08-21  Bruno Haible  <bruno@clisp.org>
33636
33637         BeOS portability.
33638         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
33639         BeOS has mbrtowc() but no <wctype.h>.
33640
33641 2006-08-21  Bruno Haible  <bruno@clisp.org>
33642
33643         BeOS portability.
33644         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
33645         exist.
33646
33647 2006-08-21  Bruno Haible  <bruno@clisp.org>
33648
33649         BeOS portability.
33650         * lib/mbchar.h: Include <wctype.h> only if it exists.
33651
33652 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33653
33654         Remove files that are no longer needed by their respective modules.
33655         * m4/obstack.m4: Remove.
33656         * m4/strerror_r.m4: Remove.
33657         * m4/uint32_t.m4: Remove.
33658         * m4/uintptr_t.m4: Remove.
33659         * m4/ullong_max.m4: Remove.
33660         * m4/xstrtoimax.m4: Remove.
33661         * m4/xstrtoumax.m4: Remove.
33662
33663         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
33664         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
33665         dependencies now capture this.
33666
33667         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
33668         Do not use AC_LIBSOURCES, since gnulib modules now do this.
33669         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
33670         * m4/human.m4 (gl_HUMAN): Likewise.
33671         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
33672         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
33673
33674         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
33675
33676         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
33677         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
33678         stdint.
33679         * m4/human.m4 (gl_HUMAN): Likewise.
33680         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
33681         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
33682         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
33683         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
33684         * m4/xstrtol (gl_XSTRTOL): Likewise.
33685
33686         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
33687         AC_TYPE_LONG_LONG_INT.
33688         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
33689         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
33690         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
33691         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
33692
33693         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
33694         on stdbool.
33695
33696         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
33697         (gl_PREREQ_XSTRTOUL): Remove.
33698
33699         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
33700
33701         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
33702         mode.
33703
33704 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33705
33706         Add and change modules to make it easier for coreutils to use
33707         gnulib-tool.
33708         * modules/backupfile (Files): Remove m4/d-ino.m4.
33709         (Depends-on): Add d-ino.
33710         * modules/cycle-check (Depends-on): Add stdint.
33711         (lib_SOURCES): Add cycle-check.h.
33712         * modules/d-ino: New module.
33713         * modules/d-type: New module.
33714         * modules/error (Files): Remove m4/strerror_r.m4.
33715         * modules/filemode (Files): Add m4/st_dm_mode.m4.
33716         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
33717         m4/inttypes_h.m4, m4/uintmax_t.m4.
33718         (Depends-on): Add stdint.
33719         (lib_SOURCES): Add fsusage.h.
33720         * modules/getcwd (Files): Remove d-ino.m4.
33721         (Depends-on): Add d-ino.
33722         * modules/getndelim2 (Depends-on): Add stdint.
33723         * modules/glob (Files): Remove m4/d-type.m4.
33724         (Depends-on): Add d-type.
33725         * modules/host-os: New module.
33726         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
33727         m4/inttypes_h.m4, m4/uintmax_t.m4.
33728         * Depends-on: Add stdint.
33729         (lib_SOURCES): Add human.h.
33730         * modules/inttostr (Files): Remove m4/intmax_t.m4,
33731         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
33732         m4/uintmax_t.m4, m4/ulonglong.m4.
33733         (Depends-on): Add stdint.
33734         (EXTRA_DIST): Add inttostr.h.
33735         * modules/lchmod: New module.
33736         * modules/link-follow: New module.
33737         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
33738         (Depends-on): Add lchmod.
33739         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
33740         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
33741         (Depends-on): Add stdint.
33742         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
33743         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
33744         (Depends-on): Add stdint.
33745         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
33746         * modules/perl: New module.
33747         * modules/regex (Depends-on): Add stdint.
33748         * modules/rmdir-errno: New module.
33749         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
33750         m4/intmax_t.m4.
33751         (Depends-on): Add stdint.
33752         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
33753         m4/uintmax_t.m4.
33754         (Depends-on): Add stdint.
33755         * modules/unlink-busy: New module.
33756         * modules/utimecmp (Depends-on): Add stdint.
33757         * modules/uptime: New module.
33758         * modules/winsz-ioctl: New module.
33759         * modules/winsz-termios: New module.
33760         * modules/xnanosleep (Depends-on): Add nanosleep.
33761         * modules/ullong_max: Remove.
33762         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
33763         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
33764         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
33765         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
33766         (Depends-on): Add inttypes.
33767         (lib_SOURCES): Add xstrtol.h.
33768         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
33769         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
33770         * MODULES.html.sh: Move 'assert' into the assert section.
33771         Move 'dummy' into the linking section.
33772         Remove ullong_max.
33773         Add section for compatibility checks for POSIX:2001 functions,
33774         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
33775         winsz-ioctl, and winsz-termios into it.
33776         Add lchmod.
33777         Add top-level Misc section and put host-os, perl, and uptime
33778         into it.
33779
33780 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33781
33782         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
33783         now assume the stdint module.  Do not include inttypes.h.
33784         * lib/fsusage.h: Likewise.
33785         * lib/getndelim2.c: Likewise.
33786         * lib/human.h: Likewise.
33787         * lib/inttostr.h: Likewise.
33788         * lib/obstack.c: Likewise.
33789         * lib/regex_internal.h: Likewise.
33790         * lib/tempname.c: Likewise.
33791         * lib/utimecmp.c: Likewise.
33792         * lib/xstrtol.h: Likewise.
33793
33794         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
33795
33796         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
33797         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
33798         * lib/xtime.h: Likewise.
33799
33800 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33801
33802         * modules/openat (Files): Add lib/fchmodat.c.
33803         Fixes problem reported by Jay Youngman.
33804
33805 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33806
33807         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
33808         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
33809
33810 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
33811             Bruno Haible  <bruno@clisp.org>
33812
33813         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
33814         and is a script that invokes bison. Tighten the code. Add comments.
33815
33816 2006-08-18  Jim Meyering  <jim@meyering.net>
33817
33818         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
33819         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
33820         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
33821         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
33822
33823 2006-08-18  Bruno Haible  <bruno@clisp.org>
33824
33825         * modules/bison-i18n: New file.
33826         * MODULES.html.sh (Internationalization functions): Add it.
33827
33828 2006-08-18  Bruno Haible  <bruno@clisp.org>
33829
33830         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
33831         sys/statvfs.h. When getmntinfo was found, check its declaration and
33832         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
33833
33834 2006-08-18  Bruno Haible  <bruno@clisp.org>
33835
33836         * m4/bison-i18n.m4: New file, from bison.
33837
33838 2006-08-18  Bruno Haible  <bruno@clisp.org>
33839
33840         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
33841         (ME_DUMMY): Treat "kernfs" as a dummy.
33842         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
33843
33844 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
33845
33846         Update from coreutils.
33847
33848         2006-08-15  Jim Meyering  <jim@meyering.net>
33849
33850         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
33851
33852         2006-01-17  Jim Meyering  <jim@meyering.net>
33853
33854         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
33855
33856         2006-01-11  Jim Meyering  <jim@meyering.net>
33857
33858         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
33859         Check for the lchmod function.
33860
33861 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
33862
33863         Update from coreutils.
33864
33865         * lib/__fpending.h: Add copyright notice.
33866         * lib/fprintftime.h: Likewise.
33867         * lib/savedir.c: Use (C) in copyright notice.
33868         * lib/savedir.h: Likewise.
33869
33870         2006-08-15  Jim Meyering  <jim@meyering.net>
33871
33872         * lib/at-func.c: New file, with the logic of all emulated at-functions.
33873         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
33874         in support of the EXPECTED_ERRNO macro.
33875         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
33876         definitions.  Instead, define the appropriate symbols and include
33877         "at-func.c".
33878         * lib/mkdirat.c (mkdirat): Likewise.
33879         * lib/fchmodat.c (fchmodat): Likewise.
33880         (ENOSYS): Remove definition.
33881         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
33882         it.  Don't include "unistd--.h" -- it wasn't ever used.
33883
33884         2006-01-17  Jim Meyering  <jim@meyering.net>
33885
33886         Rewrite fts.c not to change the current working directory,
33887         by using openat, fstatat, fdopendir, etc..
33888
33889         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
33890         (HAVE_OPENAT_SUPPORT): Define.
33891         [_LIBC] (fchdir): Don't undef or define; no longer used.
33892         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
33893         Now, this `function' always succeeds, and consumes its file descriptor
33894         parameter -- so callers must not close such FDs.  Update callers.
33895         (diropen_fd, opendirat, cwd_advance_fd): New functions.
33896         (diropen): Add parameter, SP.  Adjust all callers.
33897         Implement using diropen_fd, rather than open.
33898         (fts_open): Initialize new member, fts_cwd_fd.
33899         Remove fts_rft-setting code.
33900         (fts_close): Close fts_cwd_fd, if necessary.
33901         (__opendir2): Define in terms of opendir or opendirat,
33902         depending on whether the FST_NOCHDIR flag is set.
33903         (fts_build): Since fts_safe_changedir consumes its FD, and since
33904         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
33905         and close the dup'd file descriptor upon failure.
33906         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
33907         (fts_safe_changedir): Tweak semantics to reflect that this function
33908         now calls cwd_advance_fd and hence consumes its FD argument.
33909         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
33910         [struct FTS] (fts_rft): Remove now-unused member.
33911         [struct FTS] (fts_cycle.state): Improve comment.
33912
33913         * lib/openat.c (openat_needs_fchdir): New function.
33914         * lib/openat.h (openat_needs_fchdir): Declare it.
33915
33916 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
33917
33918         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
33919         Problem and fix reported by Pádraig Brady in
33920         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
33921
33922 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
33923
33924         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
33925
33926 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
33927
33928         * lib/memcoll.c (memcoll): Optimize for the common case where the
33929         arguments are bytewise equal.
33930
33931 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
33932
33933         * doc/regexprops-generic.texi: Add a copyright notice.
33934
33935 2006-08-15  Bruno Haible  <bruno@clisp.org>
33936
33937         * modules/tmpdir (License): Change to LGPL.
33938
33939 2006-08-15  Bruno Haible  <bruno@clisp.org>
33940
33941         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
33942         module.
33943
33944 2006-08-14  Simon Josefsson  <jas@extundo.com>
33945
33946         * config/srclist.txt: Add gnupload.
33947
33948 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
33949
33950         Change copyright notice from LGPL 2 to GPL 2, since that's the
33951         standard form used in the gnulib repository.
33952         * tests/test-lock.c: Likewise.
33953         * tests/test-stdint.c: Likewise.
33954         * tests/test-tls.c: Likewise.
33955
33956         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
33957         prelude-manager.  User shorter URLs for GNU projects, without '?'.
33958         Add copyright notice.
33959
33960         * check-module: Add copyright notice.  Output a copyright
33961         notice if "--version" is specified.
33962         * modules/COPYING: New file.
33963         * tests/test-getaddrinfo.c: Add copyright notice.
33964         * tests/test-verify.c: Likewise.
33965
33966 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
33967
33968         Change copyright notice from LGPL 2 to GPL 2, since that's the
33969         standard form used in the gnulib repository.
33970         * lib/lock.c: LGPL -> GPL.
33971         * lib/lock.h: Likewise.
33972         * lib/strnlen1.c: Likewise.
33973         * lib/strnlen1.h: Likewise.
33974         * lib/tls.c: Likewise.
33975         * lib/tls.h: Likewise.
33976         * lib/tmpdir.c: Likewise.
33977
33978         * lib/TODO: Remove; this belongs only in coreutils.
33979
33980 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
33981
33982         Add copyright notices to long-enough files that lack them, since
33983         otherwise the files aren't clearly free.  Use the same notice that
33984         getdate.texi already uses.
33985         * doc/alloca-opt.texi: Add copyright notice.
33986         * doc/alloca.texi: Likewise.
33987         * doc/ctime.texi: Likewise.
33988         * doc/functions.texi: Likewise.
33989         * doc/gcd.texi: Likewise.
33990         * doc/gnulib-tool.texi: Likewise.
33991         * doc/inet_ntoa.texi: Likewise.
33992         * doc/visibility.texi: Likewise.
33993
33994         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
33995         * doc/quote.texi: Add copyright notice.
33996
33997         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
33998         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
33999         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
34000         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
34001         is now obsolete, and give a pointer to the Sun list.
34002         Add copyright notice.
34003
34004 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
34005
34006         * config/srclistvars.sh: Add copyright notice.
34007
34008 2006-08-14  Eric Blake  <ebb9@byu.net>
34009
34010         Import the following change from libc:
34011
34012         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
34013
34014         Upstream bug 2997.
34015         * lib/misc/error.c: Add space between program name and message if file
34016         name is missing.
34017
34018 2006-08-12  Karl Berry  <karl@gnu.org>
34019
34020         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
34021         remove, these originate in gnulib now.
34022
34023 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34024
34025         * doc/Makefile (standards.info standards.html standards.dvi):
34026         Also depend on make-stds.texi.
34027
34028 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
34029
34030         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
34031         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
34032
34033         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
34034         in wchar_t.  Problem reported by Eric Blake.
34035
34036         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
34037         LEN is smaller than SIZE.  Suggested by Bruno Haible.
34038         Also, help the compiler to keep LEN in a register.
34039
34040 2006-08-11  Eric Blake  <ebb9@byu.net>
34041
34042         * users.txt: Sort.  Add tar.
34043
34044 2006-08-11  Bruno Haible  <bruno@clisp.org>
34045
34046         * users.txt: New file.
34047
34048 2006-08-11  Bruno Haible  <bruno@clisp.org>
34049
34050         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
34051         before <wchar.h>. Needed for OSF/1 and BSD/OS.
34052
34053 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
34054
34055         * modules/snprintf (Depends-on): Remove minmax.
34056         (Maintainer): Add self and Bruno.
34057
34058 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
34059
34060         * lib/.cppi-disable: Add snprintf.h, socket_.h.
34061         * lib/snprintf.c: Include <errno.h> and <limits.h>.
34062         (EOVERFLOW): Define if the system does not.
34063         Do not include "minmax.h"; it wasn't used.
34064         (snprintf): Don't assume size_t promotes to an unsigned type.
34065         Fix bug when generated string was too long for the buffer: the
34066         buffer's contents are supposed to be the initial prefix of the
34067         output.  Don't assume vasnprintf returns EOVERFLOW if the size
34068         exceeds INT_MAX; do the check ourselves.
34069
34070         Import the following changes from libc:
34071
34072         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
34073
34074         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
34075         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
34076         set wc to the byte which couldn't be converted.
34077         (re_string_reconstruct): Don't clear valid_raw_len before calling
34078         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
34079         tip_context using re_string_context_at.
34080
34081         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
34082
34083         * lib/posix/regex.h: g++ still cannot handled [restrict].
34084
34085         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
34086
34087         * lib/posix/regex.h: Remove special handling for VMS.
34088
34089 2006-08-10  Jim Meyering  <jim@meyering.net>
34090
34091         * modules/same-inode: New module.
34092         * modules/dev-ino: New module.
34093         * modules/cycle-check: Depend on these modules, rather than simply
34094         including their .h files.
34095         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
34096         required via m4/cycle-check.m4.
34097         * modules/same: Depend on new same-inode module, rather than
34098         including same-inode.h.
34099         * modules/chdir-safer: New file.
34100
34101         * modules/chown (Depends-on): Add stat-macros.
34102
34103 2006-08-10  Jim Meyering  <jim@meyering.net>
34104
34105         * m4/cycle-check.m4: New file.
34106         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
34107         * m4/dev-ino.m4, m4/same-inode.m4: New files.
34108
34109 2006-08-10  Eric Blake  <ebb9@byu.net>
34110
34111         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
34112         in from original proposal.
34113
34114 2006-08-10  Eric Blake  <ebb9@byu.net>
34115         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
34116
34117         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
34118         namespace.
34119
34120 2006-08-10  Bruno Haible  <bruno@clisp.org>
34121
34122         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
34123         as well.
34124
34125 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
34126
34127         Sync from coreutils.
34128
34129         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
34130
34131         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
34132         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
34133
34134 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
34135
34136         * modules/restrict: Remove; no longer needed now that we assume
34137         Autoconf 2.59 or later.
34138         * MODULES.html.sh: Remove 'restrict'.
34139         * modules/argp (Depends-on): Remove 'restrict'.
34140         * modules/base64 (Depends-on): Likewise.
34141         * modules/gc (Depends-on): Likewise.
34142         * modules/getaddrinfo (Depends-on): Likewise.
34143         * modules/glob (Depends-on): Likewise.
34144         * modules/inet_ntop (Depends-on): Likewise.
34145         * modules/inet_pton (Depends-on): Likewise.
34146         * modules/memxor (Depends-on): Likewise.
34147         * modules/regex (Depends-on): Likewise.
34148         * modules/strtok_r (Depends-on): Likewise.
34149         * modules/time_r (Depends-on): Likewise.
34150
34151 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
34152
34153         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
34154         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
34155         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
34156         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
34157         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
34158         * m4/memxor.m4 (gl_MEMXOR): Likewise.
34159         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
34160         gl_C_RESTRICT replaced by AC_C_RESTRICT.
34161
34162         Merge from coreutils.
34163         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
34164         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
34165         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
34166         * m4/time_r.m4 (gl_TIME_R): Likewise.
34167
34168 2006-08-09  Karl Berry  <karl@gnu.org>
34169
34170         * config/srclist.txt: no more gettext-tools, per Bruno.
34171
34172 2006-08-08  Eric Blake  <ebb9@byu.net>
34173
34174         * modules/verror: New module.
34175         * MODULES.html.sh: Document it.
34176
34177 2006-08-08  Eric Blake  <ebb9@byu.net>
34178
34179         * lib/verror.h, lib/verror.c: New files.
34180
34181 2006-08-08  Eric Blake  <ebb9@byu.net>
34182
34183         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
34184         verror_at_line output complies with GNU Coding Standards even when
34185         file is NULL.
34186
34187 2006-08-07  Bruno Haible  <bruno@clisp.org>
34188
34189         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
34190         versions of AIX.
34191         Reported by Ralf Wildenhues.
34192
34193 2006-08-07  Bruno Haible  <bruno@clisp.org>
34194
34195         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
34196         in an AC_DEFUN. Needed so that the autoconf snippets can use
34197         AC_REQUIRE.
34198
34199 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34200
34201         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
34202         Initialize pkgdata_DATA.
34203         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
34204         overriding it.
34205
34206 2006-08-06  Eric Blake  <ebb9@byu.net>
34207
34208         * lib/error.h: Fold in some upstream changes from glibc.
34209         * lib/error.c: Likewise.
34210
34211 2006-08-04  Bruno Haible  <bruno@clisp.org>
34212
34213         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
34214         Make the mostlyclean-local rule depend on mostlyclean-generic.
34215         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
34216
34217 2006-07-31  Bruno Haible  <bruno@clisp.org>
34218
34219         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
34220         <stdlib.h>, <string.h>.
34221
34222 2006-07-30  Bruno Haible  <bruno@clisp.org>
34223
34224         * modules/readlink (License): Change to LGPL.
34225
34226 2006-07-30  Bruno Haible  <bruno@clisp.org>
34227
34228         * modules/javaversion (Makefile.am): Distribute javaversion.java and
34229         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
34230         set PKGDATADIR to point to it.
34231
34232 2006-07-30  Bruno Haible  <bruno@clisp.org>
34233
34234         * modules/csharpexec (configure.ac): Comment out macro invocation.
34235         * modules/javaexec (configure.ac): Likewise.
34236         * modules/javacomp-script (configure.ac): Likewise.
34237
34238         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
34239
34240 2006-07-30  Bruno Haible  <bruno@clisp.org>
34241
34242         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
34243         linked-list.
34244
34245 2006-07-30  Bruno Haible  <bruno@clisp.org>
34246
34247         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
34248
34249 2006-07-30  Bruno Haible  <bruno@clisp.org>
34250
34251         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
34252         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
34253         get removed.
34254
34255 2006-07-29  Bruno Haible  <bruno@clisp.org>
34256
34257         Make it possible for gnulib-tool to work with locally modified or
34258         augmented gnulib repositories.
34259         * gnulib-tool (func_usage): Document --local-dir option.
34260         (local_gnulib_dir): New variable.
34261         Handle --local-dir option.
34262         (func_lookup_file): New function.
34263         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
34264         (func_get_description, func_get_filelist, func_get_description,
34265         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
34266         func_get_automake_snippet, func_get_include_directive,
34267         func_get_license, func_get_maintainer): Use func_lookup_file.
34268         (func_import, func_create_testdir): Use func_lookup_file.
34269
34270 2006-07-29  Bruno Haible  <bruno@clisp.org>
34271
34272         * modules/setenv (Depends-on): Add unistd.
34273
34274 2006-07-29  Bruno Haible  <bruno@clisp.org>
34275
34276         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
34277
34278 2006-07-29  Bruno Haible  <bruno@clisp.org>
34279
34280         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
34281
34282 2006-07-29  Bruno Haible  <bruno@clisp.org>
34283
34284         * gnulib-tool (import, update): If there is no Makefile.am, look at
34285         aclocal.m4, instead of bailing out.
34286
34287 2006-07-29  Bruno Haible  <bruno@clisp.org>
34288
34289         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
34290         Categorize the options by when they are useful.
34291
34292 2006-07-29  Bruno Haible  <bruno@clisp.org>
34293
34294         * gnulib-tool (func_usage): Document option --no-libtool.
34295         Handle option --no-libtool.
34296         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
34297         for changed semantics of $libtool variable.
34298         (func_import): Likewise. If libtool is not used, show this through
34299         an option --no-libtool.
34300         (func_create_testdir): Update.
34301
34302 2006-07-29  Bruno Haible  <bruno@clisp.org>
34303
34304         * gnulib-tool (func_import): Extend error message about missing
34305         --doc-base.
34306
34307 2006-07-29  Bruno Haible  <bruno@clisp.org>
34308
34309         * gnulib-tool (func_import): Don't create the $docbase directory if
34310         there is no file to store there.
34311
34312 2006-07-29  Bruno Haible  <bruno@clisp.org>
34313
34314         * gnulib-tool (autoconf_minversion): If a --dir option is given and
34315         relevant, look for configure.ac there, not in the current directory.
34316         Also use a simple search for AC_PREREQ, not "autoconf --trace".
34317
34318 2006-07-29  Bruno Haible  <bruno@clisp.org>
34319
34320         * gnulib-tool (SORT): New variable.
34321         (func_usage): Undocument --assume-autoconf option.
34322         Remove --assume-autoconf option handling.
34323         (autoconf_minversion): Determine from the contents of configure.ac.
34324         (func_import): Remove autoconf_minversion handling.
34325         Suggested by Eric Blake.
34326
34327 2006-07-29  Bruno Haible  <bruno@clisp.org>
34328
34329         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
34330
34331 2006-07-29  Bruno Haible  <bruno@clisp.org>
34332
34333         * config/srclist.txt (*setenv.[ch]): Remove rules.
34334
34335 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34336
34337         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
34338
34339 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34340
34341         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
34342         arpa/inet.h.
34343
34344 2006-07-28  Simon Josefsson  <jas@extundo.com>
34345
34346         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
34347         * modules/inet_pton (Depends-on): Likewise.
34348
34349 2006-07-28  Simon Josefsson  <jas@extundo.com>
34350
34351         * m4/netinet_in_h.m4: New file.
34352
34353 2006-07-28  Simon Josefsson  <jas@extundo.com>
34354
34355         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
34356         #include's.
34357
34358 2006-07-28  Simon Josefsson  <jas@extundo.com>
34359
34360         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
34361         #include's.
34362
34363 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
34364
34365         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
34366         setgid on directories only if they set these bits.
34367         * lib/modechange.h: Remove obsolete comment about masks.
34368
34369 2006-07-28  Eric Blake  <ebb9@byu.net>
34370
34371         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
34372         macro expansion.
34373
34374 2006-07-28  Bruno Haible  <bruno@clisp.org>
34375
34376         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
34377
34378 2006-07-28  Bruno Haible  <bruno@clisp.org>
34379
34380         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
34381
34382 2006-07-28  Bruno Haible  <bruno@clisp.org>
34383
34384         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
34385         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
34386         Define fallbacks.
34387         Avoids link error on FreeBSD 4.x.
34388         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
34389
34390         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
34391         encoding.
34392         * lib/mbswidth.c (iswcntrl): Likewise.
34393
34394 2006-07-27  Bruno Haible  <bruno@clisp.org>
34395
34396         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
34397         test.
34398
34399 2006-07-27  Bruno Haible  <bruno@clisp.org>
34400
34401         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
34402         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
34403         defined.
34404
34405 2006-07-26  Eric Blake  <ebb9@byu.net>
34406
34407         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
34408
34409 2006-07-26  Eric Blake  <ebb9@byu.net>
34410
34411         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
34412         like mingw that lack mkstemp.
34413         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
34414         avoid compilation warning on mingw.
34415
34416 2006-07-26  Bruno Haible  <bruno@clisp.org>
34417
34418         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
34419         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
34420         INT_FAST*_MIN, INTPTR_MIN.
34421
34422 2006-07-25  Bruno Haible  <bruno@clisp.org>
34423
34424         * modules/version-etc (Depends-on): Add stdarg.
34425
34426 2006-07-25  Bruno Haible  <bruno@clisp.org>
34427
34428         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
34429         complex commands.
34430
34431 2006-07-25  Bruno Haible  <bruno@clisp.org>
34432
34433         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
34434         defined in <stdarg.h> or config.h.
34435
34436 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
34437
34438         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
34439         (gl_STDIO_SAFER): Remove.
34440
34441 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
34442
34443         * MODULES.html.sh (File stream based Input/Output):
34444         Add fopen-safer, tmpfile-safer; remove stdio-safer.
34445         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
34446         * modules/fopen-safer, modules/tmpfile-safer: New files.
34447         * modules/stdio-safer: Remove.
34448
34449 2006-07-24  Bruno Haible  <bruno@clisp.org>
34450
34451         * modules/tmpdir: New file.
34452         * MODULES.html.sh (File system functions): Add it.
34453
34454 2006-07-24  Bruno Haible  <bruno@clisp.org>
34455
34456         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
34457         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
34458
34459 2006-07-24  Bruno Haible  <bruno@clisp.org>
34460
34461         * modules/clean-temp: New file.
34462
34463 2006-07-24  Bruno Haible  <bruno@clisp.org>
34464
34465         * m4/tmpdir.m4: New file, from GNU gettext.
34466
34467 2006-07-24  Bruno Haible  <bruno@clisp.org>
34468
34469         * lib/tmpdir.h: New file, from GNU gettext.
34470         * lib/tmpdir.c: New file, from GNU gettext.
34471
34472 2006-07-24  Bruno Haible  <bruno@clisp.org>
34473
34474         * lib/clean-temp.h: New file, from GNU gettext.
34475         * lib/clean-temp.c: New file, from GNU gettext.
34476
34477 2006-07-23  Eric Blake  <ebb9@byu.net>
34478
34479         * modules/stdio-safer (Files): Add tmpfile-safer.c.
34480         (Depends-on): Add binary-io.
34481
34482 2006-07-23  Eric Blake  <ebb9@byu.net>
34483
34484         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
34485
34486 2006-07-23  Eric Blake  <ebb9@byu.net>
34487
34488         * lib/tmpfile-safer.c: New file.
34489         * lib/stdio-safer.h (fopen_safer): Add prototype.
34490         * lib/stdio--.h (tmpfile): Make safer.
34491
34492 2006-07-23  Bruno Haible  <bruno@clisp.org>
34493
34494         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
34495         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
34496         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
34497         gl_linked_remove_at): Use it.
34498
34499 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34500         and Simon Josefsson <jas@extundo.com>
34501
34502         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
34503
34504         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
34505
34506 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
34507
34508         * modules/close-stream: New file.
34509         * modules/closeout (Description): Make it clear that it exits
34510         with a diagnostic on error.
34511         (Depends-on): Add close-stream.  Remove fpending, stdbool.
34512         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
34513
34514 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
34515
34516         * m4/close-stream.m4: New file.
34517
34518 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
34519
34520         * lib/close-stream.c, lib/close-stream.h: New files.
34521
34522 2006-07-22  Bruno Haible  <bruno@clisp.org>
34523
34524         Merge from GNU gettext 0.15.
34525
34526         2006-05-01  Bruno Haible  <bruno@clisp.org>
34527
34528                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
34529
34530         2006-07-22  Bruno Haible  <bruno@clisp.org>
34531
34532                 * modules/javaversion: New file.
34533                 * MODULES.html.sh (Java): Add javaversion.
34534
34535         2006-03-12  Bruno Haible  <bruno@clisp.org>
34536
34537                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
34538
34539         2005-12-04  Bruno Haible  <bruno@clisp.org>
34540
34541                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
34542                 (untested).
34543
34544         2006-06-21  Bruno Haible  <bruno@clisp.org>
34545
34546                 Avoid warnings from recent versions of mcs.
34547                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
34548                 -o, -L, -r any more. Use options documented since mcs-1.0
34549                 instead. Similarly for -g.
34550
34551         2005-12-04  Bruno Haible  <bruno@clisp.org>
34552
34553                 * build-aux/csharpcomp.sh.in: Suffix for resources is
34554                 .resources, not .resource.
34555
34556         2005-07-09  Bruno Haible  <bruno@clisp.org>
34557
34558                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
34559                 add a .dll suffix.
34560                 Reported by Mark Junker <mjscod@gmx.de>.
34561
34562         2006-07-22  Bruno Haible  <bruno@clisp.org>
34563
34564                 * modules/gettext: Upgrade to gettext-0.15.
34565                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
34566                 m4/visibility.m4.
34567                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
34568
34569 2006-07-22  Bruno Haible  <bruno@clisp.org>
34570
34571         Merge from GNU gettext 0.15.
34572
34573         2006-03-25  Bruno Haible  <bruno@clisp.org>
34574
34575                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
34576
34577         2006-07-21  Bruno Haible  <bruno@clisp.org>
34578
34579                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
34580                 "1.1".
34581
34582         2006-05-09  Bruno Haible  <bruno@clisp.org>
34583
34584                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
34585                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
34586                 for the conftestver execution.
34587
34588         2006-05-01  Bruno Haible  <bruno@clisp.org>
34589
34590                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
34591                 optional target-version argument. Verify that the compiler
34592                 groks source of the specified source-version, or add -source
34593                 option as necessary. Verify that the compiler produces
34594                 bytecode in the specified target-version, or add -target and
34595                 -source options as necessary. Make the result of the test
34596                 available as variable CONF_JAVAC. Also log error output in
34597                 config.log.
34598
34599         2006-03-11  Bruno Haible  <bruno@clisp.org>
34600
34601                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
34602
34603         2006-05-09  Bruno Haible  <bruno@clisp.org>
34604
34605                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
34606                 CLASSPATH_SEPARATOR to a semicolon.
34607
34608         2006-03-12  Bruno Haible  <bruno@clisp.org>
34609
34610                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
34611                 available as variable CONF_JAVA, for subsequent autoconf
34612                 tests. Also log error output in config.log.
34613
34614         2006-07-19  Bruno Haible  <bruno@clisp.org>
34615
34616                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
34617                 that getline works on glibc2 systems. Needed to avoid trouble
34618                 in relocatable.c.
34619                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
34620
34621         2005-12-04  Bruno Haible  <bruno@clisp.org>
34622
34623                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
34624                 launcher (untested).
34625
34626         2005-12-04  Bruno Haible  <bruno@clisp.org>
34627
34628                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
34629
34630         2006-07-22  Bruno Haible  <bruno@clisp.org>
34631
34632                 * gettext.m4: Update from GNU gettext-0.15.
34633                 * nls.m4: Likewise.
34634                 * po.m4: Likewise.
34635                 * inttypes-pri.m4: Likewise.
34636                 * inttypes-h.m4: Renamed from inttypes.m4.
34637                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
34638
34639 2006-07-22  Bruno Haible  <bruno@clisp.org>
34640
34641         Merge from GNU gettext 0.15.
34642
34643         2005-07-05  Bruno Haible  <bruno@clisp.org>
34644
34645                 * printf-args.c (printf_fetchargs): Work around broken
34646                 definition of wint_t on mingw.
34647
34648         2005-02-12  Bruno Haible  <bruno@clisp.org>
34649
34650                 * xallocsa.h: Add extern "C" for C++.
34651
34652         2006-05-17  Bruno Haible  <bruno@clisp.org>
34653
34654                 Cygwin portability.
34655                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
34656
34657         2006-04-30  Bruno Haible  <bruno@clisp.org>
34658
34659                 * progreloc.c: Include <mach-o/dyld.h> if available.
34660                 (find_executable): Use _NSGetExecutablePath when possible.
34661
34662         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
34663
34664                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
34665                 function.
34666
34667         2005-12-29  Bruno Haible  <bruno@clisp.org>
34668
34669                 * progreloc.c (set_program_name_and_installdir): Fix
34670                 compilation error.
34671
34672         2005-12-04  Bruno Haible  <bruno@clisp.org>
34673
34674                 Cygwin portability.
34675                 * progreloc.c: Include <windows.h> also on Cygwin.
34676                 (find_executable): Add support for Cygwin.
34677                 (set_program_name_and_installdir): Handle also platforms with
34678                 nonempty EXEEXT.
34679
34680         2006-07-11  Bruno Haible  <bruno@clisp.org>
34681
34682                 * javacomp.c: Fix a comment.
34683                 Reported by Jim Meyering.
34684
34685         2006-04-30  Bruno Haible  <bruno@clisp.org>
34686
34687                 * javacomp.h (compile_java_class): Add source_version,
34688                 target_version arguments.
34689                 * javacomp.c: Rewritten to choose only a compiler that
34690                 respects the specified source_version and target_version.
34691
34692         2006-06-27  Bruno Haible  <bruno@clisp.org>
34693
34694                 Assume correct S_ISDIR macro.
34695                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
34696
34697         2006-07-22  Bruno Haible  <bruno@clisp.org>
34698
34699                 * javaversion.h: New file, from GNU gettext.
34700                 * javaversion.c: New file, from GNU gettext.
34701                 * javaversion.java: New file, from GNU gettext.
34702                 * javaversion.class: New file, from GNU gettext.
34703
34704         2006-05-17  Bruno Haible  <bruno@clisp.org>
34705
34706                 Cygwin portability.
34707                 * javaexec.c (execute_java_class): Test for jview program
34708                 also on Cygwin.
34709
34710         2006-04-09  Bruno Haible  <bruno@clisp.org>
34711
34712                 * fatal-signal.c: Don't include string.h.
34713                 (at_fatal_signal): Use a copying loop instead of memcpy.
34714
34715         2005-12-04  Bruno Haible  <bruno@clisp.org>
34716
34717                 * csharpexec.c: Add support for 'clix' launcher (untested).
34718                 (execute_csharp_using_sscli): New function.
34719                 (execute_csharp_program): Call it.
34720
34721         2006-06-21  Bruno Haible  <bruno@clisp.org>
34722
34723                 Avoid warnings from recent versions of mcs.
34724                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
34725                 -o, -L, -r any more. Use options documented since mcs-1.0
34726                 instead. Similarly for -g.
34727
34728         2005-07-09  Bruno Haible  <bruno@clisp.org>
34729
34730                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
34731                 add a .dll suffix.
34732                 Reported by Mark Junker <mjscod@gmx.de>.
34733
34734         2006-06-17  Bruno Haible  <bruno@clisp.org>
34735
34736                 * config.charset: Update for NetBSD 3.0.
34737
34738         2006-05-17  Bruno Haible  <bruno@clisp.org>
34739
34740                 Cygwin portability.
34741                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
34742
34743         2006-05-16  Bruno Haible  <bruno@clisp.org>
34744
34745                 * localcharset.c [CYGWIN]: Include <windows.h>.
34746                 (get_charset_aliases): For Cygwin, return the same CPxxx
34747                 aliases list as under WIN32.
34748                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
34749                 the environment variables. Fall back to GetACP().
34750
34751         2006-04-05  Bruno Haible  <bruno@clisp.org>
34752
34753                 * config.charset: Update Juan Manuel Guerrero's address.
34754
34755         2005-02-12  Bruno Haible  <bruno@clisp.org>
34756
34757                 * allocsa.h: Add extern "C" for C++.
34758
34759         2005-02-10  Bruno Haible  <bruno@clisp.org>
34760
34761                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
34762                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
34763
34764         2006-07-22  Bruno Haible  <bruno@clisp.org>
34765
34766                 * gettext.h: Update to GNU gettext-0.15.
34767
34768 2006-07-22  Bruno Haible  <bruno@clisp.org>
34769
34770         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
34771         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
34772         lib-prefix.m4, longdouble.m4, ssize_t.m4.
34773
34774 2006-07-21  Eric Blake  <ebb9@byu.net>
34775
34776         * modules/stdlib-safer: New file.
34777         * MODULES.html.sh (File stream based Input/Output): Add
34778         stdlib-safer.
34779
34780 2006-07-21  Eric Blake  <ebb9@byu.net>
34781
34782         * lib/stdlib-safer.h: New file from coreutils, required by
34783         stdlib--.h.
34784
34785 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
34786
34787         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
34788
34789 2006-07-20  Bruno Haible  <bruno@clisp.org>
34790
34791         * gnulib-tool: Recognize new option --assume-autoconf.
34792         (autoconf_minversion): New variable.
34793         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
34794
34795 2006-07-20  Bruno Haible  <bruno@clisp.org>
34796
34797         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
34798
34799 2006-07-19  Derek R. Price  <derek@ximbiot.com>
34800
34801         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
34802         Reindent and repaginate.
34803
34804 2006-07-19  Derek Price  <derek@ximbiot.com>
34805
34806         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
34807         Correct grammar.
34808
34809 2006-07-17  Bruno Haible  <bruno@clisp.org>
34810
34811         * modules/list: New file.
34812         * modules/array-list: New file.
34813         * modules/carray-list, modules/carray-list-tests: New files.
34814         * modules/linked-list, modules/linked-list-tests: New files.
34815         * modules/avltree-list, modules/avltree-list-tests: New files.
34816         * modules/rbtree-list, modules/rbtree-list-tests: New files.
34817         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
34818         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
34819         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
34820         * modules/oset: New file.
34821         * modules/array-oset: New file.
34822         * modules/avltree-oset, modules/avltree-oset-tests: New files.
34823         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
34824         * tests/test-carray_list.c: New file.
34825         * tests/test-linked_list.c: New file.
34826         * tests/test-avltree_list.c: New file.
34827         * tests/test-rbtree_list.c: New file.
34828         * tests/test-linkedhash_list.c: New file.
34829         * tests/test-avltreehash_list.c: New file.
34830         * tests/test-rbtreehash_list.c: New file.
34831         * tests/test-avltree_oset.c: New file.
34832         * tests/test-rbtree_oset.c: New file.
34833         * MODULES.html.sh (Container data structures): New section.
34834
34835 2006-07-17  Bruno Haible  <bruno@clisp.org>
34836
34837         * m4/gl_list.m4: New file.
34838
34839 2006-07-17  Bruno Haible  <bruno@clisp.org>
34840
34841         * lib/gl_list.h: New file.
34842         * lib/gl_list.c: New file.
34843         * lib/gl_array_list.h: New file.
34844         * lib/gl_array_list.c: New file.
34845         * lib/gl_carray_list.h: New file.
34846         * lib/gl_carray_list.c: New file.
34847         * lib/gl_linked_list.h: New file.
34848         * lib/gl_linked_list.c: New file.
34849         * lib/gl_anylinked_list1.h: New file.
34850         * lib/gl_anylinked_list2.h: New file.
34851         * lib/gl_avltree_list.h: New file.
34852         * lib/gl_avltree_list.c: New file.
34853         * lib/gl_anyavltree_list1.h: New file.
34854         * lib/gl_anyavltree_list2.h: New file.
34855         * lib/gl_rbtree_list.h: New file.
34856         * lib/gl_rbtree_list.c: New file.
34857         * lib/gl_anyrbtree_list1.h: New file.
34858         * lib/gl_anyrbtree_list2.h: New file.
34859         * lib/gl_anytree_list1.h: New file.
34860         * lib/gl_anytree_list2.h: New file.
34861         * lib/gl_linkedhash_list.h: New file.
34862         * lib/gl_linkedhash_list.c: New file.
34863         * lib/gl_anyhash_list1.h: New file.
34864         * lib/gl_anyhash_list2.h: New file.
34865         * lib/gl_avltreehash_list.h: New file.
34866         * lib/gl_avltreehash_list.c: New file.
34867         * lib/gl_rbtreehash_list.h: New file.
34868         * lib/gl_rbtreehash_list.c: New file.
34869         * lib/gl_anytreehash_list1.h: New file.
34870         * lib/gl_anytreehash_list2.h: New file.
34871
34872         * lib/gl_oset.h: New file.
34873         * lib/gl_oset.c: New file.
34874         * lib/gl_array_oset.h: New file.
34875         * lib/gl_array_oset.c: New file.
34876         * lib/gl_avltree_oset.h: New file.
34877         * lib/gl_avltree_oset.c: New file.
34878         * lib/gl_rbtree_oset.h: New file.
34879         * lib/gl_rbtree_oset.c: New file.
34880         * lib/gl_anytree_oset.h: New file.
34881
34882 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
34883
34884         * m4/mkancesdirs.m4: New file.
34885         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
34886         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
34887         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
34888         it.
34889
34890 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
34891
34892         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
34893         * lib/mkancesdirs.h: New files.
34894         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
34895         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
34896         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
34897         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
34898         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
34899         callers changed.  Revamp internals significantly, by not
34900         attempting to create directories that are temporarily more
34901         permissive than the final results.  Do not attempt to use
34902         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
34903         This removes some race conditions, fixes some bugs, and simplifies
34904         things.  Use new dirchownmod function to do owner and mode changes.
34905         * lib/mkdir-p.h: Likewise.
34906         * lib/modechange.c (octal_to_mode): New function.
34907         (struct mode_change): New member mentioned.
34908         (make_node_op_equals): New arg mentioned.  All callers changed.
34909         (mode_compile): Keep track of which mode bits the user has explicitly
34910         mentioned.
34911         (mode_adjust): New arg DIR, so that we implement the X op correctly.
34912         New arg PMODE_BITS, to keep track of which mode bits the user
34913         mentioned; it treats S_ISUID and S_ISGID speciall.
34914         All callers changed.
34915         * lib/modechange.h: Likewise.
34916
34917 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
34918
34919         * MODULES.html.sh: Add mkancestors.
34920         * modules/mkancesdirs: New module.
34921         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
34922         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
34923         The chdir-safer and afs files are now orphans; I'll remove them
34924         unless someone speaks up.
34925         Add lib/dirchownmod.c, lib/dirchownmod.h.
34926         (Depends-on): Remove alloca, chown, save-cwd, dirname.
34927         Add lchown, mkancesdirs.
34928         (Maintainer): Add self.
34929
34930 2006-07-15  Karl Berry  <karl@gnu.org>
34931
34932         * gnulib-tool: help message wording/arrangement.
34933
34934 2006-07-14  Simon Josefsson  <jas@extundo.com>
34935
34936         * doc/gnulib.texi (Libtool and Windows): New section.
34937
34938 2006-07-12  Simon Josefsson  <jas@extundo.com>
34939
34940         * modules/gendocs (License): Fix license, approved by Karl.
34941
34942 2006-07-12  Eric Blake  <ebb9@byu.net>
34943
34944         * MODULES.html.sh: Add gendocs.
34945
34946 2006-07-11  Eric Blake  <ebb9@byu.net>
34947
34948         * modules/fdl: New module, to install doc/fdl.texi.
34949         * MODULES.html.sh: Add new section for documentation modules.
34950         * gnulib-tool: Avoid space-tab.
34951         (--doc-base): New option, to manage files from doc.
34952
34953 2006-07-11  Eric Blake  <ebb9@byu.net>
34954
34955         * m4/absolute-header.m4: Fix comments to match recent change.
34956
34957 2006-07-11  Eric Blake  <ebb9@byu.net>
34958
34959         * gnulib-tool: List --doc-base before --tests-base.
34960
34961 2006-07-11  Derek R. Price  <derek@ximbiot.com>
34962
34963         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
34964
34965 2006-07-11  Bruno Haible  <bruno@clisp.org>
34966
34967         * README: Mention where to put documentation.
34968
34969 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34970
34971         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
34972
34973 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
34974
34975         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
34976         to stdint.m4.
34977
34978 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
34979
34980         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
34981         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
34982         "no/such/file/stdint.h" when there is no such file, so that
34983         the resulting C code can be parsed by dodgy compilers.
34984         Problems reported by Bob Proulx.
34985
34986 2006-07-10  Derek R. Price  <derek@ximbiot.com>
34987
34988         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
34989         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
34990         macros into the GNU _D_EXACT_NAMLEN.
34991         * lib/savedir.c:  Likewise.
34992         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
34993
34994 2006-07-10  Derek R. Price  <derek@ximbiot.com>
34995         and Paul Eggert  <eggert@cs.ucla.edu>
34996
34997         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
34998         * m4/savedir.m4:
34999         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
35000         macros into the GNU _D_EXACT_NAMLEN.
35001
35002 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
35003
35004         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
35005         around the absolute name, to work around a problem with the HP-UX
35006         11.23 native C compiler, reported by Bob Proulx.
35007
35008 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
35009
35010         * doc/maintain.texi, make-stds.texi: Sync from
35011         <http://savannah.gnu.org/projects/gnustandards>.
35012
35013 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
35014
35015         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
35016
35017 2006-07-09  Jim Meyering  <jim@meyering.net>
35018
35019         * m4/glob.m4: Remove a doubled word in a comment.
35020
35021 2006-07-09  Jim Meyering  <jim@meyering.net>
35022
35023         * lib/argp-pv.c: Remove a doubled word in a comment.
35024         * lib/check-version.c (check_version): Likewise.
35025         * lib/javacomp.c (compile_java_class): Likewise.
35026
35027 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
35028
35029         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
35030         for the benefit of people using Autoconf 2.60.  If you want to
35031         support older Autoconf versions you can copy m4/onceonly_2_57.m4
35032         (or m4/onceonly.m4, if pre-2.57) manually.
35033
35034 2006-07-08  Jim Meyering  <jim@meyering.net>
35035
35036         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
35037         comment.
35038         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
35039         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
35040         comment.
35041
35042 2006-07-08  Jim Meyering  <jim@meyering.net>
35043
35044         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
35045
35046 2006-07-07  Simon Josefsson  <jas@extundo.com>
35047
35048         * tests/test-crc.c: Change expected crc value, the test vector
35049         were probably computed using the old broken crc.c?
35050
35051 2006-07-06  Simon Josefsson  <jas@extundo.com>
35052
35053         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
35054         now the canonical place for the M4 file).
35055
35056         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
35057         from the sys_socket dependency now.
35058
35059         * modules/inet_pton (Files): Ditto.
35060
35061         * modules/inet_ntop (Files): Ditto.
35062
35063 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
35064
35065         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
35066         not gl_PREREQ_GETUSERSHELL.
35067
35068 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35069
35070         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
35071         with only one argument, for Autoconf 2.60.
35072         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
35073         expand to nothing, so add a shell command to avoid syntax error.
35074         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
35075
35076 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35077
35078         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
35079
35080 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
35081
35082         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
35083         no longer needed.  Check for isblank decl.
35084         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
35085         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
35086         of existence.
35087
35088 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
35089
35090         * lib/getloadavg.c: Use __VMS, not VMS.
35091         * lib/getopt.c: Likewise.
35092         * lib/getpagesize.h: Likewise.
35093         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
35094         and probably does not work.
35095
35096 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
35097
35098         * lib/.cppi-disable: Add wcwidth.
35099         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
35100         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
35101         (ISGRAPH): Remove.  All uses changed to isgraph.
35102         (FOLD) [!defined _LIBC]: Remove special case.
35103         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
35104         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
35105         HAVE_ISBLANK.
35106         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
35107         case.
35108
35109 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
35110
35111         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
35112         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
35113         brackets.  Other minor changes to suppress some compiler
35114         warnings.
35115
35116 2006-07-06  Derek R. Price  <derek@ximbiot.com>
35117         and Paul Eggert  <eggert@cs.ucla.edu>
35118
35119         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
35120         of invoking obsolescent AC_HEADER_DIRENT macro.
35121         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
35122         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
35123         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
35124         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
35125         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
35126         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
35127         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
35128         * m4/readdir.m4: Remove; no longer needed.
35129
35130 2006-07-06  Derek R. Price  <derek@ximbiot.com>
35131         and Paul Eggert  <eggert@cs.ucla.edu>
35132
35133         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
35134         Don't worry about this obsolete case any more.
35135         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
35136         directories.
35137         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
35138         worry about this obsolete case any more.
35139         * lib/fts.c: Likewise.
35140         * lib/getcwd.c: Likewise.
35141         * lib/glob.h: Likewise.
35142         * lib/savedir.c: Likewise.
35143
35144 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
35145
35146         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
35147         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
35148         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
35149         needed.
35150         All uses removed.
35151         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
35152         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
35153         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
35154         needed.
35155         * m4/getdate.m4 (gl_GETDATE): Likewise.
35156         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
35157         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
35158         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
35159         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
35160         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
35161         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
35162         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
35163         needed.
35164
35165 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
35166
35167         * lib/memcasecmp.c: Include <limits.h>.
35168         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
35169         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
35170         Don't assume isdigit succeeds only on '0' through '9'.
35171
35172 2006-07-05  Eric Blake  <ebb9@byu.net>
35173
35174         * modules/getaddrinfo (Depends-on): Add snprintf.
35175
35176 2006-07-05  Eric Blake  <ebb9@byu.net>
35177
35178         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
35179         to avoid 'header present but could not be compiled' on cygwin.
35180
35181 2006-07-05  Eric Blake  <ebb9@byu.net>
35182
35183         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
35184         missing from netdb.h.
35185         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
35186
35187 2006-07-05  Derek R. Price  <derek@ximbiot.com>
35188
35189         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
35190         no longer needed.
35191         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
35192         * m4/getdate.m4 (gl_GETDATE): Likewise.
35193         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
35194         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
35195         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
35196         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
35197         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
35198
35199 2006-07-05  Derek R. Price  <derek@ximbiot.com>
35200
35201         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
35202         All uses of is_space replaced by isspace.
35203         * lib/exit.h: Don't talk about STDC_HEADERS.
35204         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
35205         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
35206         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
35207         replaced by isprint etc.
35208         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
35209         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
35210         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
35211         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
35212         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
35213         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
35214
35215 2006-07-05  Bruno Haible  <bruno@clisp.org>
35216
35217         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
35218         the function exists, before testing against AIX.
35219         Reported by Martin Lambers <marlam@marlam.de>.
35220
35221 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
35222
35223         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
35224         From Mark D. Baushke.
35225
35226 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
35227
35228         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
35229         to the absolute name, not just one, to bypass Sun C 5.8's
35230         "warning: #include of /usr/include/... may be non-portable".
35231
35232 2006-07-04  Eric Blake  <ebb9@byu.net>
35233
35234         * modules/dirname-tests: New test module.
35235         * tests/test-dirname.c: New file, replacing dirname.c
35236         TEST_DIRNAME section that was recently deleted.
35237
35238 2006-07-04  Bruno Haible  <bruno@clisp.org>
35239
35240         Assume ANSI C header files and <ctype.h> functions.
35241         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
35242         (mbsnwidth): Use isprint, iscntrl instead.
35243
35244 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
35245
35246         Merge from coreutils.
35247         * MODULES.html.sh: Add xstrtold.
35248         * modules/xstrtold: New file.
35249         * modules/cycle-check (Files): Add lib/same-inode.h.
35250         * modules/dirname (Files): Add m4/double-slash-root.m4.
35251         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
35252         * modules/mkdir-p (Files): Add lib/same-inode.h.
35253         * modules/same (Files): Add lib/same-inode.h.
35254
35255 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
35256
35257         * m4/absolute-header.m4: Renamed from full-header-path.m4.
35258         This is to keep the terminology clean; POSIX talks about
35259         "absolute pathnames", not "full pathnames", but the GNU
35260         Coding Standards say to use "path" for something else;
35261         so use "absolute" to keep both sides happy.
35262         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
35263         Set gl_absolute_header, not gl_full_header_path.
35264         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
35265         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
35266         All uses changed.
35267
35268         Merge from coreutils.
35269
35270         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
35271
35272         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
35273         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
35274         want to require the building of c-strtod.o.
35275         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
35276         needs -lm directly.
35277         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
35278
35279         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
35280
35281         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
35282         --as-needed option if available.  Problem reported by Albert Chin in
35283         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
35284         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
35285         cc merely issues a bunch of annoying warnings for --as-needed
35286         (this problem was reported by Bob Proulx).  Also, try linking with
35287         -lm to detect a bug in binutils 2.16 (this problem was reported
35288         by Ralf Wildenhues).
35289
35290         2006-06-18  Jim Meyering  <jim@meyering.net>
35291
35292         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
35293         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
35294         macro.
35295         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
35296         also check for glibc-2.4's abort-inducing bug.
35297
35298         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
35299         Low-probability clean-up should be to use rmdir to get rid of
35300         the just-created directory, not unlink.
35301
35302         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
35303         configure fail, and request a bug report to inform us about it.
35304         Add a comment that, barring reports to the contrary, in 2007 we'll
35305         assume ftruncate is universally available.
35306
35307         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
35308
35309         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
35310
35311         2006-03-12  Jim Meyering  <jim@meyering.net>
35312
35313         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
35314         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
35315         * m4/same.m4 (gl_SAME): Likewise.
35316         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
35317
35318         2006-03-11  Eric Blake  <ebb9@byu.net>
35319
35320         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
35321         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
35322         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
35323         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
35324
35325 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
35326
35327         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
35328         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
35329         reported by Mark D. Baushke, one in
35330         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
35331
35332         Merge from coreutils.
35333
35334         * lib/.cppi-disable: Add stdint_.h.
35335         * lib/.cvsignore: Add stdint.h.
35336
35337         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
35338
35339         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
35340         both double and long double versions.
35341         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
35342         * lib/xstrtold.c: New file.
35343         * lib/xstrtod.h (xstrtold): New decl.
35344
35345         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
35346
35347         * lib/filemode.c (setst): Remove.
35348         (strmode): Rewrite to avoid setst.  This makes the code shorter,
35349         (arguably) clearer, and the generated code is a bit smaller on my
35350         Debian GNU/Linux stable x86 host.
35351
35352         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
35353
35354         * lib/filemode.c: Include "filemode.h" first, to test the interface.
35355         Assume that filemode.h includes sys/types.h and sys/stat.h.
35356         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
35357         (ftypelet): Reorder to put common cases first, for efficiency.
35358         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
35359         to do 'M'.
35360         (strmode): Renamed from mode_string, and now stores 12 bytes instead
35361         of 10, for compatibility with FreeBSD.  All callers changed.
35362         (filemodestring): Now stores 12 bytes instead of 10, and sets file
35363         types that can't be deduced solely from st_mode.  First arg is now a
35364         const pointer.
35365         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
35366         (strmode): Renamed from mode_string.
35367         (filemodestring): New decl.
35368         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
35369         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
35370         needed.
35371         (S_ISPORT, S_ISWHT): New macros, if not already defined.
35372
35373         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
35374
35375         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
35376         fsusage.h now does that.  Include fsusage.h first, to test interface.
35377         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
35378         at most one method (the old code could have generated decls that
35379         didn't conform to C89, not that this was ever exercised).
35380         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
35381
35382         2006-03-19  Jim Meyering  <jim@meyering.net>
35383
35384         Work even in a chroot where d_ino values for entries in "/"
35385         don't match the stat.st_ino values for the same names.
35386         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
35387         number, iterate through all entries again, using lstat instead.
35388         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
35389         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
35390
35391         * lib/getcwd.c (__getcwd): Clarify a comment.
35392         Use memcpy in place of a call to strcpy.
35393
35394         2006-03-12  Jim Meyering  <jim@meyering.net>
35395
35396         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
35397         matches that of the current directory (which we're about to chdir ".."
35398         out of), then save the dev-ino of the parent, instead.
35399
35400         * lib/same-inode.h (SAME_INODE): New file/macro.
35401         * lib/chdir-safer.c (SAME_INODE): Remove definition.
35402         Include "same-inode.h", instead.
35403         * lib/same.c: Likewise.
35404         * lib/cycle-check.h: Include "same-inode.h".
35405         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
35406         * lib/cycle-check.c (SAME_INODE): Remove definition.
35407         * lib/root-dev-ino.h: Include "same-inode.h".
35408
35409         2006-03-11  Eric Blake  <ebb9@byu.net>
35410
35411         * lib/same.c (same_name): s/base_name/last_component/
35412         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
35413         * lib/filenamecat.c (file_name_concat): Likewise.
35414
35415         2006-03-11  Eric Blake  <ebb9@byu.net>,
35416                     Paul Eggert  <eggert@cs.ucla.edu>
35417
35418         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
35419         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
35420         drive prefix.
35421         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
35422         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
35423         (last_component): New method.
35424         * lib/dirname.c (dir_len): Determine when drive letters need a
35425         subsequent slash.  Preserve // when it is special.
35426         (dir_name): Don't append dot when drive letter is absolute.
35427         [TEST_DIRNAME]: Move into a full-blown gnulib test.
35428         * lib/basename.c (base_name): New semantics - malloc the result.
35429         Preserve // when it is special.  Preserve relative files that look
35430         like drive letters.
35431         (base_len): Preserve // when it is special.
35432         (last_component): New method, similar to old base_name semantics.
35433         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
35434         base_name.  Strip redundant slashes from ///.
35435
35436 2006-07-03  Jim Meyering  <jim@meyering.net>
35437
35438         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
35439         macro is used before the first cycle_check call.
35440
35441 2006-07-03  Eric Blake  <ebb9@byu.net>
35442
35443         * modules/dirname (Depends-on): Add xstrndup.
35444
35445 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
35446
35447         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
35448         test cases, so that config.log is a bit easier to follow.
35449
35450 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
35451
35452         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
35453         both are 64 bits, since this seems to be the tradition, and this
35454         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
35455         we ever run into a host that prefers long long to long in this
35456         case, we'll need another configure-time test.  Problem reported by
35457         Jim Meyering.
35458
35459 2006-07-02  Eric Blake  <ebb9@byu.net>
35460
35461         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
35462
35463 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
35464
35465         * modules/inttypes (Depends-on): No longer depends on stdint.
35466         * modules/stdint (Description): Say more about assumptions.
35467         Say that the fast types might differ.  Say macros are used.
35468         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
35469         (Makefile.am): Revise list of substituted symbols to match
35470         new stdint.m4.
35471         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
35472         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
35473         * tests/test-stdint.c (verify_same_types)
35474         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
35475         the code conforms to C99/C89.
35476         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
35477         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
35478
35479 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
35480
35481         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
35482         but fix a bug, by requiring at least 64 bits.
35483         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
35484         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
35485         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
35486         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
35487
35488         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
35489         changes.  Make 2.59 a prerequisite.  Check and substitute for
35490         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
35491         inttypes.h.  Do not use special include files; just use the
35492         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
35493         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
35494         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
35495         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
35496         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
35497         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
35498         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
35499         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
35500         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
35501         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
35502         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
35503         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
35504         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
35505         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
35506         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
35507         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
35508         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
35509         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
35510         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
35511         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
35512         WINT_MAX.  Check for C99 conformance more strictly, by detecting
35513         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
35514         not check for things that C99 does not require, e.g., int8_t.  If
35515         a test isn't needed unless <stdint.h> isn't working, and is
35516         unlikely to be needed for any other reason, then don't do it
35517         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
35518         size_t, since we assume C89 freestanding at least.  Do not check
35519         for sig_atomic_t, wchar_t, or wint_t, since the code now does
35520         the right thing even if the types are not defined.  Instead use:
35521         (gl_STDINT_TYPE_PROPERTIES): New macro.
35522         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
35523         testing whether <sys/types.h> clashes, as Autoconf does this for
35524         us now.  All uses removed.
35525         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
35526         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
35527         (gl_CHECK_TYPE_SAME):
35528         Remove; no longer needed.
35529         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
35530         exists, since we'll return 0 anyway in that case.
35531         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
35532
35533 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
35534
35535         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
35536         possible collision with system files.
35537         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
35538         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
35539         WCHAR_MIN and WCHAR_MAX in this case.
35540         (<stddef.h>): Do not include; no longer needed.
35541         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
35542         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
35543         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
35544         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
35545         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
35546         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
35547         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
35548         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
35549         !defined(__c99))]: Include in this case too, since it's harmless
35550         now.
35551         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
35552         dangerous to do so.
35553         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
35554         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
35555         (_STDINT_MIN, _STDINT_MAX): New macros.
35556         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
35557         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
35558         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
35559         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
35560         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
35561         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
35562         macros, not typedefs; this simplifies things quite a bit.
35563         Use long int for all types narrower than int64_t.
35564         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
35565         Define in terms of long long int or int64_t or long int,
35566         not int64_t or int32_t.  This saves some compile-time testing.
35567         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
35568         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
35569         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
35570         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
35571         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
35572         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
35573         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
35574         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
35575         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
35576         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
35577         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
35578         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
35579         undef any previous version and define our own version, for
35580         simplicity and consistency with the new macros for types.
35581         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
35582         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
35583         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
35584         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
35585         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
35586         @WINT_T_SUFFIX@ to keep things simple here.
35587         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
35588         Simplify by assuming typical 8/16/32/64 host, since we're
35589         already doing that elsewhere anyway.
35590         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
35591         and assume long long int is 64 bits if available.  This
35592         speeds up 'configure'.
35593
35594 2006-07-01  Eric Blake  <ebb9@byu.net>
35595
35596         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
35597         Reported by Andreas Buening.
35598
35599 2006-07-01  Eric Blake  <ebb9@byu.net>
35600
35601         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
35602
35603 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
35604
35605         * lib/getaddrinfo.c: fixed typo
35606
35607 2006-06-29  Jim Meyering  <jim@meyering.net>
35608
35609         * modules/strftime (Maintainer): Add my name, since with the
35610         FPRINTFTIME changes strftime.c has forked from glibc.
35611
35612 2006-06-29  Eric Blake  <ebb9@byu.net>
35613
35614         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
35615
35616 2006-06-29  Eric Blake  <ebb9@byu.net>
35617
35618         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
35619
35620 2006-06-29  Eric Blake  <ebb9@byu.net>
35621
35622         * lib/stat_.h: New file.
35623
35624 2006-06-29  Eric Blake  <ebb9@byu.net>
35625
35626         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
35627         unused static function.
35628
35629 2006-06-29  Eric Blake  <ebb9@byu.net>
35630
35631         * doc/functions.texi (Function Portability): Document missing lstat
35632         on mingw.
35633
35634 2006-06-29  Eric Blake  <ebb9@byu.net>
35635
35636         * MODULES.html.sh: Add sys_stat.
35637         * modules/sys_stat: New module.
35638         * modules/mkstemp (Depends-on): Add sys_stat.
35639
35640 2006-06-29  Derek R. Price  <derek@ximbiot.com>
35641
35642         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
35643
35644 2006-06-29  Derek R. Price  <derek@ximbiot.com>
35645
35646         * m4/c-bs-a.m4: Removed.
35647
35648 2006-06-29  Derek R. Price  <derek@ximbiot.com>
35649
35650         * lib/strftime.c: Assume strftime() exists.
35651
35652 2006-06-29  Derek Price  <derek@ximbiot.com>
35653
35654         * modules/c-bs-a: Removed - \a is C89.
35655         * MODULES.html.sh: Remove c-bs-a.
35656
35657 2006-06-29  Bruno Haible  <bruno@clisp.org>
35658
35659         * modules/wcwidth (License): Change to LGPL.
35660
35661 2006-06-28  Simon Josefsson  <jas@extundo.com>
35662
35663         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
35664         on _WIN32.
35665
35666         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
35667         getnameinfo.
35668
35669 2006-06-28  Simon Josefsson  <jas@extundo.com>
35670
35671         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
35672
35673 2006-06-28  Simon Josefsson  <jas@extundo.com>
35674
35675         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
35676         functions there.  It will succeed on Windows XP, but on Windows
35677         2000 and (presumably) earlier, it will fail, and use the internal
35678         re-implementation.
35679         (use_win32_p): New function.
35680         (getaddrinfo): Use strtoul on servname, to support numeric ports.
35681         Support AI_NUMERICSERV to disable getservbyname.
35682         (getnameinfo): New function, only supports
35683         NI_NUMERICHOST|NI_NUMERICSERV for now.
35684
35685         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
35686         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
35687         getnameinfo.
35688
35689 2006-06-28  Eric Blake  <ebb9@byu.net>
35690
35691         * modules/wcwidth: New file.
35692         * modules/mbchar (Depends-on): Add wcwidth.
35693         * modules/mbswidth (Depends-on): Add wcwidth.
35694         * MODULES.html.sh: Add wcwidth.
35695
35696 2006-06-28  Eric Blake  <ebb9@byu.net>
35697
35698         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
35699         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
35700
35701 2006-06-28  Eric Blake  <ebb9@byu.net>
35702
35703         * lib/xvasprintf.h: Fix comments.
35704
35705 2006-06-28  Eric Blake  <ebb9@byu.net>
35706
35707         * lib/mbchar.h (wcwidth): Include wcwidth.h.
35708         * lib/mbswidth.c (wcwidth): Move from here...
35709         * lib/wcwidth.h: ...to this new file.
35710
35711 2006-06-28  Derek R. Price  <derek@ximbiot.com>
35712
35713         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
35714
35715         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
35716         it's obsolete.
35717         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
35718
35719 2006-06-28  Derek R. Price  <derek@ximbiot.com>
35720
35721         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
35722         Autoconf 2.60 says this stuff was obsolete.
35723
35724 2006-06-28  Bruno Haible  <bruno@clisp.org>
35725
35726         * modules/wcwidth (Files): Add m4/wchar_t.m4.
35727
35728 2006-06-28  Bruno Haible  <bruno@clisp.org>
35729
35730         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
35731         gt_TYPE_WCHAR_T.
35732
35733 2006-06-28  Bruno Haible  <bruno@clisp.org>
35734
35735         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
35736         declaration for wcwidth.
35737         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
35738
35739 2006-06-28  Bruno Haible  <bruno@clisp.org>
35740
35741         * lib/mkdtemp.c [MINGW]: Include <io.h>.
35742         (mkdir): Define using _mkdir.
35743
35744 2006-06-28  Bruno Haible  <bruno@clisp.org>
35745
35746         * lib/getaddrinfo.h: Fix POSIX URL.
35747         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
35748         _WIN32.
35749         (use_win32_p): Make static.
35750         (getaddrinfo): Reject service name if it is empty or does not consist
35751         solely of decimal digits, or if its value is > 65535.
35752         (getnameinfo): Remove useless casts.
35753
35754 2006-06-27  Simon Josefsson  <jas@extundo.com>
35755
35756         * modules/sys_select: New file, suggested by Bruno Haible, Paul
35757         Eggert and Martin Lambers.
35758
35759 2006-06-27  Simon Josefsson  <jas@extundo.com>
35760
35761         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
35762         Eggert and Martin Lambers.
35763
35764 2006-06-27  Bruno Haible  <bruno@clisp.org>
35765
35766         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
35767         result to 0, not to empty.
35768         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
35769
35770 2006-06-27  Bruno Haible  <bruno@clisp.org>
35771
35772         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
35773
35774 2006-06-26  Simon Josefsson  <jas@extundo.com>
35775
35776         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
35777         present.
35778
35779 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
35780
35781         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
35782         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
35783         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
35784
35785 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
35786
35787         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
35788
35789 2006-06-26  Bruno Haible  <bruno@clisp.org>
35790
35791         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
35792
35793 2006-06-26  Bruno Haible  <bruno@clisp.org>
35794
35795         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
35796
35797 2006-06-26  Bruno Haible  <bruno@clisp.org>
35798
35799         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
35800         SGI C compiler in pre-C99 mode.
35801         Suggested by Mark D. Baushke and Larry Jones.
35802
35803 2006-06-26  Bruno Haible  <bruno@clisp.org>
35804
35805         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
35806         WCHAR_MAX.
35807         Reported by Mark D. Baushke and Larry Jones.
35808
35809 2006-06-26  Bruno Haible  <bruno@clisp.org>
35810
35811         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
35812         in pre-C99 mode.
35813         Suggested by Mark D. Baushke and Larry Jones.
35814
35815 2006-06-23  Simon Josefsson  <jas@extundo.com>
35816             Bruno Haible  <bruno@clisp.org>
35817
35818         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
35819         Emit mostlyclean-local rule.
35820         (func_emit_tests_Makefile_am): Likewise.
35821         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
35822
35823 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
35824
35825         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
35826
35827 2006-06-23  Bruno Haible  <bruno@clisp.org>
35828
35829         * tests/test-stdint.c: Update to match ISO C 99 Technical
35830         Corrigendum 1.
35831
35832 2006-06-23  Bruno Haible  <bruno@clisp.org>
35833
35834         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
35835
35836 2006-06-23  Bruno Haible  <bruno@clisp.org>
35837
35838         * lib/stdint_.h: Treat IRIX like OpenBSD.
35839
35840 2006-06-23  Bruno Haible  <bruno@clisp.org>
35841
35842         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
35843         ISO C 99 Technical Corrigendum 1.
35844
35845 2006-06-22  Simon Josefsson  <jas@extundo.com>
35846
35847         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
35848         MinGW.
35849
35850 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
35851
35852         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
35853         needed.  Some compiler complained about some of them.  Problem reported
35854         by Larry Jones in
35855         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
35856
35857 2006-06-21  Simon Josefsson  <jas@extundo.com>
35858
35859         * tests/test-getaddrinfo.c: New file.
35860
35861         * modules/getaddrinfo-tests: New file.
35862
35863         * MODULES.html.sh: Add inet_pton.
35864
35865         * modules/inet_pton: New file.
35866
35867 2006-06-21  Simon Josefsson  <jas@extundo.com>
35868
35869         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
35870         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
35871         of using the (limited) gnulib implementation on Windows XP.
35872
35873         * m4/inet_pton.m4: New file.
35874
35875 2006-06-21  Simon Josefsson  <jas@extundo.com>
35876
35877         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
35878         variable.
35879
35880         * lib/socket_.h: Don't define WINVER.
35881
35882         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
35883         slightly modified to work in gnulib.
35884
35885 2006-06-21  Simon Josefsson  <jas@extundo.com>
35886
35887         * doc/gnulib.texi (Windows sockets): Add.
35888
35889 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
35890
35891         * lib/read-file.c (fread_file): Start with buffer allocation of
35892         0 bytes rather than 1 byte; this simplifies the code.
35893         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
35894         code to free buffer and save/restore errno.
35895         (internal_read_file): Remove unused local.
35896
35897 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
35898
35899         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
35900         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
35901         Problem reported by Denis Excoffier in
35902         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
35903
35904 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
35905
35906         * modules/sys_socket, modules/socklen: Include sys/types since
35907         FreeBSD 4.x's sys/socket.h needs it.
35908
35909 2006-06-19  Simon Josefsson  <jas@extundo.com>
35910
35911         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
35912
35913 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
35914
35915         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
35916
35917 2006-06-19  Bruno Haible  <bruno@clisp.org>
35918
35919         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
35920         and FULL_PATH_INTTYPES_H in angle brackets.
35921         Reported by Mark D. Baushke <mdb@gnu.org>.
35922
35923 2006-06-17  Eric Blake  <ebb9@byu.net>
35924
35925         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
35926         errno.
35927
35928 2006-06-17  Bruno Haible  <bruno@clisp.org>
35929
35930         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
35931         <sys/inttypes.h>.
35932
35933 2006-06-17  Bruno Haible  <bruno@clisp.org>
35934
35935         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
35936         whether errno is declared. Assume <errno.h> declares errno.
35937
35938 2006-06-17  Bruno Haible  <bruno@clisp.org>
35939
35940         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
35941
35942 2006-06-17  Bruno Haible  <bruno@clisp.org>
35943
35944         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
35945         problem on Solaris 2.5.1.
35946
35947 2006-06-16  Eric Blake  <ebb9@byu.net>
35948
35949         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
35950         * lib/unicodeio.c [!defined errno]: Likewise.
35951         * lib/strtol.c [!defined errno]: Likewise.
35952         * lib/strtod.c [!defined errno]: Likewise.
35953
35954 2006-06-15  Eric Blake  <ebb9@byu.net>
35955
35956         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
35957
35958 2006-06-15  Eric Blake  <ebb9@byu.net>
35959
35960         * config/srclist.txt (ssize_t.m4): Lose sync.
35961
35962 2006-06-15  Bruno Haible  <bruno@clisp.org>
35963
35964         * modules/stdint (Files): Include m4/full-header-path.m4,
35965         m4/size_max.m4, m4/wchar_t.m4.
35966         (Makefile.am): Many more substitutions.
35967         * modules/stdint-tests: New file.
35968         * tests/test-stdint.c: New file.
35969
35970 2006-06-15  Bruno Haible  <bruno@clisp.org>
35971
35972         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
35973         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
35974         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
35975         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
35976         gl_CHECK_TYPE_SAME): New macros.
35977
35978 2006-06-15  Bruno Haible  <bruno@clisp.org>
35979
35980         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
35981
35982 2006-06-15  Bruno Haible  <bruno@clisp.org>
35983
35984         * lib/stdint_.h: Rewritten to be fully auto-configured.
35985         Fixes bug on HP-UX/IA64.
35986
35987 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
35988
35989         * lib/getdate.y (__attribute__): Don't define if already defined.
35990         Problem reported by Larry Jones.
35991         * lib/utimens.c (__attribute__): Likewise.
35992
35993 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
35994
35995         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
35996         reported by Andreas Schwab.
35997
35998 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35999             Bruno Haible  <bruno@clisp.org>
36000
36001         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
36002         check for the declaration of strnlen and a run test that exposes the
36003         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
36004         rpl_strndup.
36005
36006 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36007             Bruno Haible  <bruno@clisp.org>
36008
36009         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
36010
36011 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36012
36013         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
36014         compile test, for Tru64 4.0D.
36015
36016 2006-05-28  Karl Berry  <karl@gnu.org>
36017
36018         * config/srclist.txt (printf-args.c): lose sync.
36019
36020 2006-05-26  Martin Lambers  <marlam@marlam.de>
36021
36022         * lib/getpass.c: Updates the test for the native W32 API, and adds
36023         missing includes, thus fixing compilation warnings.
36024
36025 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
36026
36027         * lib/exclude.c (exclude_fnmatch): New function.
36028         (excluded_file_name): Call exclude_fnmatch.
36029         * lib/exclude.h (excluded_file_name): New prototype
36030
36031 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
36032
36033         * lib/tempname.c (small_open, large_open): New macros.
36034         (__open, __open64) [!_LIBC]: Remove.
36035         (__gen_tempname): Use small_open and large_open instead of __open
36036         and __open64.  This fixes a portability bug on HP-UX 11.11i
36037         reported by Simon Wing-Tang in
36038         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
36039
36040 2006-05-24  Bruno Haible  <bruno@clisp.org>
36041
36042         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
36043         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
36044         Reported by Thorsten Maerz <torte@netztorte.de> via
36045         Aaron Stone <aaron@serendipity.cx>.
36046
36047 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
36048
36049         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
36050         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
36051         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
36052         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
36053         not really conditional on the cache.
36054         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
36055
36056 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
36057
36058         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
36059         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
36060         (my_usleep): Don't mishandle maximum value.
36061
36062 2006-05-19  Jim Meyering  <jim@meyering.net>
36063
36064         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
36065
36066 2006-05-17  Bruno Haible  <bruno@clisp.org>
36067
36068         Cygwin portability.
36069         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
36070
36071 2006-05-17  Bruno Haible  <bruno@clisp.org>
36072
36073         * lib/stdint_.h: Fix recognition of Cygwin.
36074
36075 2006-05-15  Bruno Haible  <bruno@clisp.org>
36076
36077         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
36078         on libtool patch by Ralf Wildenhues.
36079
36080 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36081
36082         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
36083         test for C99 conformance; (bool) 0.5 is an integer constant
36084         expression, but (bool) -0.5 is not.  Problem reported by Fedor
36085         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
36086
36087 2006-05-11  Simon Josefsson  <jas@extundo.com>
36088
36089         * m4/xvasprintf.m4: Fix obvious typo.
36090
36091 2006-05-11  Jim Meyering  <jim@meyering.net>
36092
36093         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
36094         James Lemley.
36095
36096 2006-05-10  Simon Josefsson  <jas@extundo.com>
36097
36098         * lib/md4.c: Typo fix, update copyright years.
36099         (K1, K2): Don't use L because it turn computations into 64-bit on
36100         64-bit platforms.
36101
36102 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
36103
36104         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
36105         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
36106         unwanted sign propagation, e.g., on hosts with 64-bit int.
36107         There still are some problems with reeelly weird theoretical hosts
36108         (e.g., 33-bit int) but it's not worth worrying about now.
36109         * lib/sha1.c (rol): Likewise.
36110         (K1, K2, K3, K4): Remove unnecessary L suffix.
36111
36112 2006-05-10  Bruno Haible  <bruno@clisp.org>
36113
36114         * lib/des.c: Cast to avoid warnings.
36115
36116 2006-05-09  Bruno Haible  <bruno@clisp.org>
36117
36118         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
36119         (Depends-on): Depend also on xsize, stdarg.
36120         (configure.ac): Add gl_XVASPRINTF.
36121
36122 2006-05-09  Bruno Haible  <bruno@clisp.org>
36123
36124         * m4/xvasprintf.m4: New file.
36125
36126 2006-05-09  Bruno Haible  <bruno@clisp.org>
36127
36128         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
36129         (EOVERFLOW): Define fallback value.
36130         (xstrcat): New function.
36131         (xvasprintf): Recognize the special case of a string concatenation.
36132
36133 2006-05-08  Eric Blake  <ebb9@byu.net>
36134
36135         * gnulib-tool (func_version): Base copyright year on CVS date.
36136         (func_emit_copyright_notice): New function.
36137         (func_emit_lib_Makefile_am): Use it.
36138         (func_emit_tests_Makefile_am): Likewise.
36139         (func_import): Likewise.
36140
36141 2006-05-08  Bruno Haible  <bruno@clisp.org>
36142
36143         * modules/stdarg: New file.
36144         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
36145
36146 2006-05-08  Bruno Haible  <bruno@clisp.org>
36147
36148         * m4/stdarg.m4: New file, from GNU gettext.
36149
36150 2006-05-08  Bruno Haible  <bruno@clisp.org>
36151
36152         * config/srclist.txt (build-aux/config.rpath): different from latest
36153         release.
36154
36155 2006-05-08  Bruno Haible  <bruno@clisp.org>
36156
36157         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
36158
36159 2006-05-05  Jim Meyering  <jim@meyering.net>
36160
36161         * m4/warning.m4: New file, derived from bison's file by the same name.
36162
36163 2006-05-03  Bruno Haible  <bruno@clisp.org>
36164
36165         * lib/stdint_.h: Shorter URL.
36166         * lib/inttypes.h: Likewise.
36167
36168 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
36169
36170         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
36171
36172 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
36173
36174         * lib/verify.h: Document the internals better.  Most of this change
36175         was written by Bruno Haible.
36176
36177 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
36178
36179         * doc/verify.texi: New file, partly based on a proposal by
36180         Bruno Haible.
36181
36182 2006-05-02  Bruno Haible  <bruno@clisp.org>
36183
36184         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
36185         test from here...
36186         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
36187
36188 2006-04-29  Bruno Haible  <bruno@clisp.org>
36189
36190         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
36191         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
36192
36193 2006-04-29  Bruno Haible  <bruno@clisp.org>
36194
36195         * gnulib-tool: Make --update option actually work.
36196
36197 2006-04-29  Bruno Haible  <bruno@clisp.org>
36198
36199         * doc/gcd.texi: New file.
36200         * doc/gnulib.texi: Include it.
36201
36202 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
36203
36204         * lib/getdate.y (get_date): When adding relative date, start with the
36205         initial time, not with the result of the first mktime call.
36206
36207 2006-04-25  Bruno Haible  <bruno@clisp.org>
36208
36209         * gnulib-tool (func_import): Output the include directives in three
36210         blocks, sorted separately.
36211         Reported by Ben Pfaff <blp@cs.stanford.edu>.
36212
36213 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
36214
36215         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
36216         to define main with arguments, for C++.  Reported by Eric Blake.
36217         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
36218         Prefer 'int main ()' to 'int main (void)', for C++.
36219         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
36220         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
36221         for 'main', for C99 and C++.
36222
36223 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
36224
36225         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
36226         Don't assume that exit status -1 is valid.
36227         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
36228         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
36229         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
36230         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
36231         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
36232         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
36233         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
36234         functions can be used without declaring them, or that you can
36235         exit with status -1.
36236         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
36237
36238 2006-04-24  Karl Berry  <karl@gnu.org>
36239
36240         * config/srclist.txt (longdouble.m4): sync lost.
36241
36242 2006-04-24  Eric Blake  <ebb9@byu.net>
36243
36244         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
36245
36246 2006-04-24  Bruno Haible  <bruno@clisp.org>
36247
36248         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
36249         poll() implementation in AIX.
36250         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36251
36252 2006-04-24  Bruno Haible  <bruno@clisp.org>
36253
36254         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
36255         assigned exactly once.
36256
36257 2006-04-23  Claudio Fontana  <claudio@gnu.org>
36258             Bruno Haible  <bruno@clisp.org>
36259
36260         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
36261         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
36262         for AM_CPPFLAGS.
36263
36264 2006-04-23  Bruno Haible  <bruno@clisp.org>
36265
36266         * modules/copy-file: Depend on unistd.
36267         * modules/execute: Likewise.
36268         * modules/fatal-signal: Likewise.
36269         * modules/findprog: Likewise.
36270         * modules/mkdtemp : Likewise.
36271         * modules/pipe: Likewise.
36272         * modules/wait-process: Likewise.
36273
36274 2006-04-23  Bruno Haible  <bruno@clisp.org>
36275
36276         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
36277         condition was already detected.
36278         Reported by Ben Pfaff <blp@cs.stanford.edu>.
36279
36280 2006-04-23  Bruno Haible  <bruno@clisp.org>
36281
36282         * lib/copy-file.c: Include <unistd.h> unconditionally.
36283         * lib/execute.c: Likewise.
36284         * lib/fatal-signal.c: Likewise.
36285         * lib/findprog.c: Likewise.
36286         * lib/mkdtemp.c: Likewise.
36287         * lib/pipe.h: Likewise.
36288         * lib/pipe.c: Likewise.
36289         * lib/wait-process.h: Likewise.
36290
36291 2006-04-23  Bruno Haible  <bruno@clisp.org>
36292
36293         * gnulib-tool (func_usage): Fix --import description. Document
36294         --update.
36295         (func_import): Create temporary file in a temporary directory, if
36296         --dry-run is specified. Silence errors from 'grep' when there are no
36297         m4 files in $m4dir.
36298         (func_create_testdir): Silence errors from 'grep' when there are no
36299         m4 files in $m4dir.
36300         Reported by Karl Berry <karl@freefriends.org>.
36301
36302 2006-04-20  Bruno Haible  <bruno@clisp.org>
36303
36304         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
36305         one argument, so that the code will be portable to Autoconf 2.60.
36306         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
36307         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
36308         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
36309
36310 2006-04-19  Derek Price  <derek@ximbiot.com>
36311             Eric Blake  <ebb9@byu.net>
36312
36313         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
36314         rather than "/full/path.h".  Update comment to match.  Shorten &
36315         generalize m4_translit call via AS_TR_CPP.
36316
36317 2006-04-19  Derek Price  <derek@ximbiot.com>
36318             Eric Blake  <ebb9@byu.net>
36319
36320         * lib/inttypes.h: Correct grammar in comment.
36321
36322 2006-04-18  Derek Price  <derek@ximbiot.com>
36323             Paul Eggert  <eggert@cs.ucla.edu>
36324
36325         * modules/inttypes: New file.
36326         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
36327
36328 2006-04-18  Derek Price  <derek@ximbiot.com>
36329             Paul Eggert  <eggert@cs.ucla.edu>
36330
36331         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
36332         New files.
36333
36334 2006-04-18  Derek Price  <derek@ximbiot.com>
36335             Paul Eggert  <eggert@cs.ucla.edu>
36336
36337         * lib/inttypes.h: New file.
36338         * lib/strtoimax.c: Assume <inttypes.h>.
36339
36340 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
36341
36342         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
36343         isn't mounted.  Problem reported by Kir Kolyshkin.
36344
36345 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
36346
36347         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
36348         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
36349         Derek R. Price.
36350         * lib/regex.h (RE_DUP_MAX): Update comment to match current
36351         implementation.
36352
36353 2006-04-12  Eric Blake  <ebb9@byu.net>
36354
36355         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
36356         is now done automatically by the corresponding Autoconf macro.
36357
36358 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
36359
36360         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
36361         time_r.h.
36362
36363 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36364
36365         Merge regex changes from libc, removing some of our
36366         POSIX-conformance changes that were rejected and redoing them in a
36367         less-intrusive way.
36368
36369         * lib/regcomp.c (re_compile_internal, init_dfa):
36370         Length arg is now size_t, not Idx.  All uses changed.
36371         (peek_token): Forward decl now says internal_function.
36372         (__re_error_msgid, __re_error_msgid_idx):
36373         Now static rather than extern with attribute_hidden.
36374         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
36375         For some reason libc prefers K&R style defns for external functions.
36376         (regerror) [!defined _LIBC]: Likewise.
36377         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
36378         (seek_collating_symbol_entry, lookup_collation_sequence_value):
36379         (build_range_exp, build_collating_symbol):
36380         Use K&R-style defn.
36381         (re_compile_fastmap): Use '\0' to memset, not 0.
36382         (utf8_sb_map): Make the calculations more obvious.
36383         (init_dfa, parse_bracket_exp, build_charclass_op):
36384         Call calloc and cast result, as glibc does.
36385         (init_word_char, fetch_token, peek_token, peek_token_bracket):
36386         (build_range_exp, build_collating_symbol):
36387         Now internal functions.
36388
36389         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
36390
36391         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
36392         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
36393         Don't depend on VMS; depend on __VMS instead, for POSIX
36394         namespace cleanness.
36395         (regoff_t): Define to ssize_t, not long int.
36396
36397         Remove the REG_ macros named below.  Instead, make the old names
36398         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
36399         __USE_GNU_REGEX.
36400         (REG_BACKSLASH_ESCAPE_IN_LISTS):
36401         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
36402         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
36403         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
36404         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
36405         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
36406         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
36407         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
36408         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
36409         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
36410         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
36411         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
36412         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
36413         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
36414         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
36415         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
36416         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
36417         (REG_NREGS):
36418         Remove.  All uses replaced by the old RE_* names.
36419         (RE_BACKSLASH_ESCAPE_IN_LISTS):
36420         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
36421         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
36422         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
36423         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
36424         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
36425         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
36426         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
36427         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
36428         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
36429         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
36430         Don't bother having these macros be independent of each others'
36431         values, since they no longer exist in the POSIX name space.
36432
36433         Rename the following member names back to their old names,
36434         unless !__USE_GNU_REGEX.  All uses changed back.
36435         (buffer): Renamed from re_buffer.
36436         (allocated): Renamed from re_allocated.
36437         (used): Renamed from re_used.
36438         (syntax): Renamed from re_syntax.
36439         (fastmap): Renamed from re_fastmap.
36440         (translate): Renamed from re_translate.
36441         (can_be_null): Renamed from re_can_be_null.
36442         (regs_allocated): Renamed from re_regs_allocated.
36443         (fastmap_accurate): Renamed from re_fastmap_accurate.
36444         (no_sub): Renamed from re_no_sub.
36445         (not_bol): Renamed from re_not_bol.
36446         (not_eol): Renamed from re_not_eol.
36447         (newline_anchor): Renamed from re_newline_anchor.
36448         (num_regs): Renamed from rm_num_regs.
36449         (start): Renamed from rm_start.
36450         (end): Renamed from rm_end.
36451
36452         (free_state): Move up a bit.
36453
36454         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
36455         #define to be empty.
36456         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
36457         when that is what is intended.
36458         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
36459         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
36460         (MAX): New macro.
36461         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
36462         All uses changed back to re_malloc, etc.  It's now the caller's
36463         responsibility to check for overflow; all callers changed.
36464         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
36465         (re_x2nrealloc): Remove.
36466         (free_state): Remove decl.
36467
36468         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
36469         (re_set_registers, re_exec):
36470         Use K&R-style defn.
36471
36472         2006-01-31  Roland McGrath  <roland@redhat.com>
36473
36474         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
36475         Reported by Mike Frysinger <vapier@gentoo.org>.
36476
36477         2006-01-15  Andreas Jaeger  <aj@suse.de>
36478
36479         [BZ #1950]
36480         * lib/regex_internal.c (re_string_reconstruct): Adjust for
36481         build_wcs_upper_buffer change.
36482         (build_wcs_upper_buffer): Change return type.
36483
36484         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
36485
36486         * lib/regex_internal.h: Include <stdint.h> if available.
36487
36488         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
36489
36490         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
36491
36492         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
36493
36494         * lib/regcomp.c: Adjust for changed secondary hash function.
36495
36496         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
36497
36498         * lib/regex.h: Pretty printing.
36499         Clean up namespace a bit.
36500
36501         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
36502
36503         * lib/regexec.c (update_cur_sifted_state, check_arrival,
36504         check_arrival_add_next_nodes): Avoid using uninitialized variable.
36505
36506         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
36507                     Ulrich Drepper  <drepper@redhat.com>
36508
36509         [BZ #1302]
36510         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
36511         changed.
36512         (bitset_word_t): Renamed from bitset_word.  All uses changed.
36513
36514         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
36515
36516         [BZ #281]
36517         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
36518         * lib/regcomp.c: Remove unnecessary uses of
36519         unsigned RE_TRANSLATE_TYPE.
36520         * lib/regex_internal.h: Likewise.
36521         * lib/regex_internal.c: Likewise.
36522         * lib/regexec.c: Likewise.
36523         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
36524
36525         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
36526
36527         * lib/regexec.c (find_recover_state): Remove unnecessary
36528         initialization.
36529         (transit_state_bkref): Make DFA a const pointer.
36530         (get_subexp): Likewise.
36531         (check_arrival): Likewise.
36532         (update_cur_sifted_state): Likewise.
36533         (re_search_internal): Likewise.
36534         (prune_impossible_nodes): Likewise.
36535         (acquire_init_state_context): Likewise.
36536         (proceed_next_node): Likewise.
36537         (set_regs): Likewise.
36538         (free_fail_stack_return): Likewise.
36539         (check_arrival_expand_ecl): Mark DFA parameter as const.
36540         (check_arrival_expand_ecl_sub): Likewise.
36541         (check_subexp_limits): Likewise.
36542         (sub_epsilon_src_nodes):  Likewise.
36543         (add_epsilon_src_nodes):  Likewise.
36544         (merge_state_array): Likewise.
36545         (update_regs): Likewise.
36546         (build_trtable): Likewise.
36547         (sift_states_backward): Mark MCTX parameter as const.
36548         (build_sifted_states): Likewise.
36549         (update_cur_sifted_state): Likewise.
36550         (sift_states_mkref): Likewise.
36551         (check_arrival_expand_ecl): Mark eclosure as const.
36552         (check_dst_limits_calc_pos_1): Likewise.
36553         * lib/regex_internal.h (re_match_context_t): Make dfa a const
36554         pointer.
36555
36556         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
36557
36558         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
36559         (transit_state_sb): Likewise.
36560         (transit_state_mb): Likewise.
36561         (sift_states_iter_mb): Likewise.
36562         (check_arrival_add_next_nodes): Likewise.
36563         (check_node_accept_bytes): Change first parameter to pointer-to-const.
36564         [_LIBC] (re_search_2_stub): Use mempcpy.
36565
36566         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
36567         mbrtowc for very simple UTF-8 case.
36568
36569         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
36570         a pointer-to-const.
36571         (re_acquire_state_context): Likewise.
36572         * lib/regex_internal.h: Adjust prototypes.
36573
36574         * lib/regex.c: Prevent using C++ compilers.
36575
36576         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
36577         (re_acquire_state_context): Likewise.
36578
36579 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36580
36581         * modules/regex (Depends-on): Add ssize_t.
36582
36583 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36584
36585         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
36586         translation table.
36587
36588 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36589
36590         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
36591
36592 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
36593             Bruno Haible  <bruno@clisp.org>
36594
36595         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
36596         <sys/types.h> and <inttypes.h>.
36597
36598 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36599
36600         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
36601         `__error_t_defined', so argp.h will not typedef the former.
36602
36603 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
36604
36605         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
36606         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
36607         glibc names.  Even if glibc is changed to conform to POSIX, the
36608         traditional names will be available anyway, since regex depends on
36609         the extensions module.  Also, fix a longstanding typo in the
36610         implementation of Spencer ERE test #75 from grep 2.3.  Problems
36611         reported by Emanuele Giaquinta.  Also, change sense of cached
36612         variable, so that the message makes sense.
36613
36614 2006-03-24  Simon Josefsson  <jas@extundo.com>
36615
36616         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
36617         including some doc fixes.
36618         (base64_encode_alloc): Fix +1 bug on allocation failures.
36619
36620 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36621
36622         * lib/base64.c (base64_encode): Do not read past end of array with
36623         unsanitized input on systems with CHAR_BIT > 8.
36624
36625 2006-03-24  Eric Blake  <ebb9@byu.net>
36626
36627         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
36628
36629 2006-03-22  Karl Berry  <karl@gnu.org>
36630
36631         * config/srclist.txt (*setenv.[ch]): get from coreutils.
36632         * config/srclistvars.sh (COREUTILS): new var.
36633
36634 2006-03-17  Jim Meyering  <jim@meyering.net>
36635
36636         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
36637         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
36638
36639 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
36640
36641         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
36642         no longer needs it.  Instead, check that regoff_t is as least
36643         as wide as ptrdiff_t.
36644
36645         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
36646         so that our regex.h stays compatible with the installed regex.
36647         This is helpful for installers who configure --without-included-regex.
36648         Problem reported by Emanuele Giaquinta.
36649
36650 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
36651
36652         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
36653         Typedef to long int, not to off_, as POSIX will likely change
36654         in that direction.
36655
36656 2006-03-15  Eric Blake  <ebb9@byu.net>
36657
36658         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
36659
36660 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
36661
36662         * lib/argp-help.c (validate_uparams): Fix typo
36663         * lib/argp-parse.c (argp_default_options): Consistently begin help
36664         messages with a lowercase letter.
36665
36666 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
36667
36668         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
36669         overrun buffers and shouldn't be used (much as gets shouldn't be
36670         used).
36671         * lib/time_r.c (asctime_r, ctime_r): Likewise.
36672
36673 2006-03-08  Simon Josefsson  <jas@extundo.com>
36674
36675         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
36676         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36677
36678 2006-03-08  Simon Josefsson  <jas@extundo.com>
36679
36680         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
36681         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36682
36683 2006-03-08  Simon Josefsson  <jas@extundo.com>
36684
36685         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
36686         signal that configure disabled the device.
36687
36688 2006-03-08  Simon Josefsson  <jas@extundo.com>
36689
36690         * build-aux/maint.mk: Fix refresh-po, to handle no translated
36691         languages.
36692
36693 2006-03-07  Simon Josefsson  <jas@extundo.com>
36694
36695         * modules/getopt (Depends-on): Add unistd.
36696
36697         * modules/unistd: New file.
36698
36699 2006-03-07  Simon Josefsson  <jas@extundo.com>
36700
36701         * modules/gc-random: New file.
36702
36703 2006-03-07  Simon Josefsson  <jas@extundo.com>
36704
36705         * m4/unistd_h.m4: New file.
36706
36707 2006-03-07  Simon Josefsson  <jas@extundo.com>
36708
36709         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
36710         test to be side-effect free by storing the result in the cache
36711         variable gl_cv_lib_readline, and moving the assignment of
36712         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
36713         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36714
36715 2006-03-07  Simon Josefsson  <jas@extundo.com>
36716
36717         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
36718         error on missing devices (the functions will return an error).
36719
36720         * m4/gc.m4: Move random stuff to gc-random.m4
36721
36722 2006-03-07  Simon Josefsson  <jas@extundo.com>
36723
36724         * lib/unistd_.h: New file.
36725
36726 2006-03-07  Simon Josefsson  <jas@extundo.com>
36727
36728         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
36729
36730 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
36731
36732         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
36733         Problem reported by Juan Manuel Guerrero.
36734
36735 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
36736
36737         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
36738         the unistd module.
36739         * lib/getlogin_r.c: Likewise.
36740         * lib/getlogin_r.h: Likewise.
36741         * lib/glob.c: Likewise.
36742         * lib/pagealign_alloc.c: Likewise.
36743         * lib/unistd_.h: Remove; no longer needed.
36744
36745 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
36746
36747         * MODULES.html.sh (Support for systems lacking POSIX:2001):
36748         Add unistd.
36749         * modules/c-stack (Depends-on): Add unistd.
36750         * modules/getlogin_r: Likewise.
36751         * modules/glob: Likewise.
36752         * modules/pagealign_alloc: Likewise.
36753         * modules/unistd (Files): Remove lib/unistd_.h.
36754         (EXTRA_DIST): Remove.
36755         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
36756         need unistd_.h.
36757         (MOSTLYCLEANFILES): Remove unistd.h-t.
36758
36759 2006-03-03  Simon Josefsson  <jas@extundo.com>
36760
36761         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
36762
36763 2006-03-03  Simon Josefsson  <jas@extundo.com>
36764
36765         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
36766         libidn and bison.
36767
36768 2006-03-03  Simon Josefsson  <jas@extundo.com>
36769
36770         * build-aux/maint.mk: Add indent target.
36771
36772 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
36773
36774         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
36775         our replacement poll.h in any case, to avoid a differing
36776         declaration from a system header.  Seen on AIX.
36777
36778 2006-03-01  Simon Josefsson  <jas@extundo.com>
36779
36780         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
36781         <kasal@ucw.cz>.
36782
36783 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
36784
36785         * modules/gettime (Depends-on): Add extensions module.
36786         * modules/nanosleep (Depends-on): Likewise.
36787         * modules/settime (Depends-on): Likewise.
36788
36789 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
36790
36791         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
36792         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
36793         pedantically.
36794         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
36795         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
36796
36797         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
36798         not "==".  Reported by Ralf Wildenhues.
36799
36800 2006-03-01  Karl Berry  <karl@gnu.org>
36801
36802         * doc/Copyright/request-*: new files, synced from gnuorg.
36803
36804 2006-03-01  Karl Berry  <karl@gnu.org>
36805
36806         * config/srclist.txt (Copyright/*): new entries.
36807
36808 2006-02-28  Simon Josefsson  <jas@extundo.com>
36809
36810         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
36811
36812 2006-02-27  Simon Josefsson  <jas@extundo.com>
36813
36814         * lib/base64.h: Indent #define's.  From Jim Meyering
36815         <jim@meyering.net>.
36816
36817 2006-02-27  Jim Meyering  <jim@meyering.net>
36818
36819         Revert the change of 2006-02-24, so these files can continue
36820         to be sync'd from gettext.
36821         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
36822         of `config.h'.
36823
36824 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
36825
36826         * modules/intprops: New file.
36827         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
36828         Add intprops.
36829         * modules/getloadavg (Files): Remove lib/intprops.h.
36830         (Depends-on): Add intprops.
36831         * modules/human: Likewise.
36832         * modules/inttostr: Likewise.
36833         * modules/openat: Likewise.
36834         * modules/sig2str: Likewise.
36835         * modules/userspec: Likewise.
36836         * modules/utimecmp: Likewise.
36837         * modules/xnanosleep: Likewise.
36838         * modules/xstrtol: Likewise.
36839
36840 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
36841
36842         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
36843         * modules/lock-tests (TESTS): Use $(EXEEXT).
36844         * modules/tls-tests: Likewise.
36845         * modules/argp-tests: Likewise.
36846         (check_PROGRAMS): New var, replacing...
36847         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
36848
36849 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36850
36851         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
36852         `config.h'.
36853
36854 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
36855
36856         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
36857
36858 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36859
36860         Sync from coreutils.
36861         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
36862         gl_CHDIR_SAFER.
36863
36864 2006-02-22  Jim Meyering  <jim@meyering.net>
36865
36866         Sync from coreutils.
36867         * m4/chdir-safer.m4: New file.
36868
36869 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
36870
36871         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
36872         AT_FDCWD exceeds INT_MAX.
36873         * lib/openat.h (AT_FDCWD): Likewise.
36874
36875 2006-02-17  Eric Blake  <address@hidden>
36876
36877         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
36878
36879 2006-02-16  Simon Josefsson  <jas@extundo.com>
36880
36881         * modules/getaddrinfo (Depends-on): Add sys_socket.
36882
36883 2006-02-15  Simon Josefsson  <jas@extundo.com>
36884
36885         * build-aux/maint.mk: Add dsyntax-check rule.
36886
36887 2006-02-15  Eric Blake  <ebb9@byu.net>
36888
36889         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
36890         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
36891         'present but cannot compile' warnings on cygwin.
36892         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
36893         use ws2tcpip.h if sys/socket.h works.
36894         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
36895         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
36896
36897 2006-02-14  Simon Josefsson  <jas@extundo.com>
36898
36899         * modules/maintainer-makefile (Files): Rename.
36900
36901         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
36902         and (the local) Makefile.cfg to maint-cfg.mk.
36903
36904         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
36905         to the latter.
36906
36907         * modules/maintainer-makefile: New module.
36908
36909         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
36910         severaly stripped to make it possible to build it up from scratch
36911         with reliable tests.
36912
36913         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
36914         fixes to permit overriding the default actions when configure and
36915         makefile are not available.
36916
36917 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
36918
36919         Sync from coreutils.
36920         * modules/lstat (Depends-on): Don't depend on xalloc.
36921         (License): Change from GPL to LGPL, since this is now simply a
36922         replacement for a libc function.
36923
36924 2006-02-14  Jim Meyering  <jim@meyering.net>
36925
36926         Sync from coreutils.
36927
36928         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
36929         failure on deficient systems, and simplify gnulib lgpl dependencies.
36930         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
36931         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
36932
36933         * lib/xalloc-die.c: Remove unused definition of N_.
36934
36935 2006-02-14  Jim Meyering  <jim@meyering.net>
36936
36937         Sync from coreutils.
36938         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
36939         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
36940         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
36941         double-quote uses of that variable, to accommodate the rare case in
36942         which getmntent is available in none of the libraries checked.  This
36943         happens at least on FreeBSD 5.0.
36944
36945 2006-02-13  Simon Josefsson  <jas@extundo.com>
36946
36947         * gnulib-tool (Usage): Fix --import, from
36948         karl@freefriends.org (Karl Berry).
36949
36950 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
36951
36952         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
36953
36954 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
36955
36956         * lib/argp-namefrob.h: Restore changes accidentally lost during the
36957         "autoupdate" on 2005-12-12.
36958
36959 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
36960
36961         * modules/closeout (Depends-on): Remove atexit.
36962
36963 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
36964
36965         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
36966         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
36967
36968 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
36969
36970         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
36971         __EXTENSIONS__ if this causes compilation to fail.  Problem
36972         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
36973         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
36974
36975 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
36976
36977         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
36978         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
36979         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
36980         All uses changed.
36981
36982 2006-01-26  Simon Josefsson  <jas@extundo.com>
36983
36984         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
36985         prototype is visible on mingw32.
36986
36987         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
36988         for mingw32.
36989
36990         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
36991         mingw32).
36992
36993 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
36994
36995         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
36996         attempt to open for write; this always fails, at least on POSIX
36997         hosts.  This reinstates the 2006-01-09 change, which was
36998         inadvertently removed.
36999
37000 2006-01-26  Bruno Haible  <bruno@clisp.org>
37001
37002         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
37003         Reported by Paul Eggert.
37004
37005 2006-01-26  Bruno Haible  <bruno@clisp.org>
37006             Paul Eggert  <eggert@cs.ucla.edu>
37007
37008         * lib/stdbool_.h (_Bool)
37009         [(! (defined __cplusplus || defined __BEOS__)
37010           && !defined __GNUC__
37011           && !(defined __HP_cc || defined __xlc__
37012                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
37013                || defined __sgi))]:
37014         #define to signed char in these cases too; this simplifies
37015         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
37016         etc., separately) and makes it more conservative.
37017
37018 2006-01-25  Simon Josefsson  <jas@extundo.com>
37019
37020         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
37021         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
37022         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
37023
37024 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
37025
37026         * lib/argp-namefrob.h: Bugfix. Remove stray #
37027
37028 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
37029
37030         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
37031         so that we test the test.
37032         Check for yet another HP-UX cc bug involving *bool |= bool.
37033
37034 2006-01-25  Karl Berry  <karl@gnu.org>
37035
37036         * config/srclist.txt (vasnprintf.c): sync lost.
37037
37038 2006-01-25  Jim Meyering  <jim@meyering.net>
37039
37040         Sync from the stable (b5) branch of coreutils:
37041
37042         * lib/fts.c (fts_children): Don't let close() clobber errno from
37043         failed fchdir().
37044
37045         * lib/fts.c (fts_stat): When following a symlink-to-directory,
37046         don't necessarily interpret stat-fails+lstat-succeeds as indicating
37047         a dangling symlink.  That can also happen at least for ELOOP.
37048         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
37049         FYI, this bug predates the inclusion of fts.c in coreutils.
37050
37051         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
37052         in their own block, so pre-c99 compilers don't object.
37053
37054         Avoid the double-free (first in fts_read, second in fts_close) that
37055         would occur when an `active' directory is made inaccessible (e.g.,
37056         via chmod a-x) during a traversal.
37057         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
37058         before returning.  Reproduce this failure by
37059         mkdir -p a/b; cd a; chmod a-x . b
37060         Reported by Stavros Passas.
37061
37062 2006-01-25  Jim Meyering  <jim@meyering.net>
37063
37064         * lib/fileblocks.c: Remove more useless parentheses.
37065         * lib/readutmp.h: Likewise.
37066
37067 2006-01-25  Bruno Haible  <bruno@clisp.org>
37068
37069         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
37070         warnings.
37071         Reported by Paul Eggert.
37072
37073 2006-01-25  Bruno Haible  <bruno@clisp.org>
37074
37075         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
37076         rid of a trap command. For Solaris sh.
37077         Reported by Mark D. Baushke <mdb@gnu.org>.
37078
37079 2006-01-24  Simon Josefsson  <jas@extundo.com>
37080
37081         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
37082         Bruno.
37083
37084 2006-01-24  Karl Berry  <karl@gnu.org>
37085
37086         * config/srclist.txt (argp-namefrob.h): sync lost.
37087
37088 2006-01-24  Jim Meyering  <jim@meyering.net>
37089
37090         * modules/openat (Files): Add lib/intprops.h.
37091         From Mark D. Baushke.
37092
37093 2006-01-24  Jim Meyering  <jim@meyering.net>
37094
37095         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
37096         Reported by Mark D. Baushke.
37097
37098 2006-01-24  Jim Meyering  <jim@meyering.net>
37099
37100         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
37101
37102 2006-01-24  Bruno Haible  <bruno@clisp.org>
37103
37104         * modules/strnlen (Maintainer): Change from glibc to all.
37105
37106 2006-01-24  Bruno Haible  <bruno@clisp.org>
37107
37108         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
37109         Patch by Paul Eggert.
37110
37111 2006-01-24  Bruno Haible  <bruno@clisp.org>
37112
37113         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
37114         already has it.
37115         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
37116         2005-11-26.
37117
37118         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
37119         'signed char' to avoid problems with the built-in _Bool type.
37120         Reported by Paul Eggert on 2005-11-26.
37121
37122 2006-01-24  Bruno Haible  <bruno@clisp.org>
37123
37124         * gnulib-tool (func_import): Avoid constructing complicated sed
37125         expressions inside backquote.
37126         Report and solution by Mark D. Baushke <mdb@gnu.org>.
37127
37128 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
37129
37130         These changes imported from libc.
37131         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
37132         test and two separate function calls.
37133         * lib/strndup.c (__strndup): Add libc_hidden_def.
37134
37135 2006-01-23  Simon Josefsson  <jas@extundo.com>
37136
37137         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
37138         Remove the test_*_SOURCES variable: automake infers it by default.
37139         * modules/tls-tests: Likewise.
37140
37141 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
37142
37143         Work around porting bugs reported by Dieter in
37144         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
37145         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
37146         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
37147         Include "getopt.h" first, to check interface.
37148         (getenv): Declare only if defined HAVE_DECL_GETENV &&
37149         !HAVE_DECL_GETENV.
37150         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
37151         (__strndup): Revert to K&R-style function dfns, the glibc style.
37152         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
37153         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
37154         Include strnlen.h first, to get prototype properly.
37155         (strnlen): Renamed from __strnlen.
37156         Remove weak alias.
37157
37158 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
37159
37160         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
37161
37162 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
37163
37164         * config/srclist.txt: Adjust to reflect glibc reorganization.
37165         This affects only comments.
37166
37167 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
37168
37169          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
37170          Reported by Bruce Korb <bkorb@gnu.org>.
37171
37172 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
37173
37174         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
37175         to pacify gcc -Wswitch-default.
37176
37177 2006-01-22  Bruno Haible  <bruno@clisp.org>
37178
37179         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
37180         temporary buffer for sprintf, take into account the precision also
37181         for 'd', 'i', 'u', 'o', 'x', 'X'.
37182
37183 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
37184
37185         * modules/argp-tests: New module
37186         * tests/test-argp.c: New file
37187         * tests/test-argp-2.sh: New file
37188
37189 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
37190
37191         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
37192         (__argp_base_name): Removed
37193         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
37194         typo.
37195         (__argp_base_name): Provide macro definition or extern declaration
37196         depending on the configuration
37197
37198 2006-01-20  Simon Josefsson  <jas@extundo.com>
37199
37200         * modules/inet_ntop (Depends-on): Depend on sys_socket.
37201
37202 2006-01-20  Simon Josefsson  <jas@extundo.com>
37203
37204         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
37205
37206 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
37207
37208         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
37209         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
37210         Suggested by Bruno Haible.
37211
37212 2006-01-20  Karl Berry  <karl@gnu.org>
37213
37214         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
37215         until changes propagate, I guess.
37216
37217 2006-01-19  Simon Josefsson  <jas@extundo.com>
37218
37219         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
37220
37221 2006-01-19  Simon Josefsson  <jas@extundo.com>
37222
37223         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
37224
37225 2006-01-19  Simon Josefsson  <jas@extundo.com>
37226
37227         * gnulib-tool: Set check_PROGRAMS.
37228
37229         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
37230         modules/des-tests, modules/gc-arcfour-tests,
37231         modules/gc-arctwo-tests, modules/gc-des-tests,
37232         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
37233         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
37234         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
37235         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
37236         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
37237         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
37238         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
37239         test_*_SOURCES.
37240
37241 2006-01-18  Simon Josefsson  <jas@extundo.com>
37242
37243         * modules/socklen (Depends-on): Depend on sys_socket.
37244
37245 2006-01-18  Simon Josefsson  <jas@extundo.com>
37246
37247         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
37248         modules/des-tests, modules/gc-arcfour-tests,
37249         modules/gc-arctwo-tests, modules/gc-des-tests,
37250         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
37251         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
37252         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
37253         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
37254         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
37255         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
37256         $(EXEEXT) to automake TESTS variable, for mingw32.
37257
37258 2006-01-17  Simon Josefsson  <jas@extundo.com>
37259
37260         * modules/socklen (Include): Need sys/socket.h.
37261
37262 2006-01-17  Bruno Haible  <bruno@clisp.org>
37263
37264         * modules/ssize_t (Include): Add <sys/types.h>.
37265
37266 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
37267
37268         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
37269         it's not portable and it doesn't work with cross-compiles.
37270         Problem reported by Bruno Haible.  Fix missing-$ typo in
37271         'test "gl_cv_ignore_unused_libraries" ...' that prevented
37272         -zignore from being used with Sun's C compiler.
37273
37274 2006-01-12  Simon Josefsson  <jas@extundo.com>
37275
37276         * lib/base64.c: Fix warning, reported by Bruno Haible
37277         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
37278
37279 2006-01-12  Bruno Haible  <bruno@clisp.org>
37280
37281         * modules/ldd: New file.
37282         * build-aux/ldd.sh.in: New file.
37283         * MODULES.html.sh (Support for building libraries and executables): Add
37284         ldd.
37285
37286 2006-01-12  Bruno Haible  <bruno@clisp.org>
37287
37288         * m4/ldd.m4: New file.
37289
37290 2006-01-12  Bruno Haible  <bruno@clisp.org>
37291
37292         * gnulib-tool (func_import, func_create_testdir): Don't go into an
37293         endless loop while replacing $auxdir with build-aux.
37294
37295 2006-01-11  Simon Josefsson  <jas@extundo.com>
37296
37297         * lib/stdint_.h (SIZE_MAX): Add missing (.
37298
37299 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
37300
37301         Sync from coreutils.
37302         * lib/md5.c: Fix commentary typos.
37303         (alignof, UNALIGNED_P): No need for a GCC-specific version.
37304         * lib/md5.h (__attribute__): Remove; unused.
37305         * lib/sha1.c: Fix commentary to match md5 better.
37306         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
37307         so that we don't need to worry about alignment.  All uses changed.
37308         This merges the 2005-10-28 md5 change into sha1.
37309
37310 2006-01-11  Jim Meyering  <jim@meyering.net>
37311
37312         Sync from coreutils.
37313         * lib/md5.c (OP): Fix spacing.
37314
37315 2006-01-11  Bruno Haible  <bruno@clisp.org>
37316
37317         Ensure automatic ordering between gl_LOCK and gl_ARGP.
37318         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
37319         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
37320
37321 2006-01-11  Bruno Haible  <bruno@clisp.org>
37322
37323         Ensure automatic ordering between gl_LOCK and gl_ARGP.
37324         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
37325         the "early" section as well.
37326
37327 2006-01-11  Bruno Haible  <bruno@clisp.org>
37328
37329         Avoid "ar: no archive members specified" error on MacOS X.
37330         * gnulib-tool (func_modules_add_dummy): New function.
37331         (func_import, func_create_testdir): Invoke it.
37332
37333 2006-01-11  Bruno Haible  <bruno@clisp.org>
37334
37335         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
37336         with $auxdir in AC_CONFIG_FILES statements.
37337
37338 2006-01-11  Bruno Haible  <bruno@clisp.org>
37339
37340         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
37341         Initialize also noinst_HEADERS to empty.
37342
37343 2006-01-11  Bruno Haible  <bruno@clisp.org>
37344
37345         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
37346         variables.
37347         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
37348         autoreconf.
37349
37350 2006-01-11  Bruno Haible  <bruno@clisp.org>
37351
37352         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
37353         overridable by the user.
37354         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
37355
37356 2006-01-10  Simon Josefsson  <jas@extundo.com>
37357
37358         * modules/sys_socket: New file.
37359
37360 2006-01-10  Simon Josefsson  <jas@extundo.com>
37361
37362         * m4/sys_socket_h.m4: New file.
37363
37364 2006-01-10  Simon Josefsson  <jas@extundo.com>
37365
37366         * lib/socket_.h: New file.
37367
37368 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
37369
37370         * modules/readutmp (Maintainer): Add myself.
37371
37372 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
37373
37374         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
37375         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
37376         People who are still concerned with buggy memcmp implementations
37377         can invoke gl_FUNC_MEMCMP themselves.
37378
37379 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
37380
37381         * lib/regex_internal.h (BITSET_WORD_BITS):
37382         Work around a bug in 64-bit PGC (before version 6.1-2), where the
37383         preprocessor mishandles large unsigned values as if they were signed.
37384         Problem reported by Claudio Fontana in
37385         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
37386
37387 2006-01-10  Jim Meyering  <jim@meyering.net>
37388
37389         Avoid the double-free (first in fts_read, second in fts_close) that
37390         would occur when an `active' directory is made inaccessible (e.g.,
37391         via chmod a-x) during a traversal.
37392         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
37393         before returning.  Reproduce this failure by
37394         mkdir -p a/b; cd a; chmod a-x . b
37395         Reported by Stavros Passas.
37396
37397         Sync from coreutils.
37398         * lib/sha1.c: Tweak grammar in a comment.
37399
37400 2006-01-10  Jim Meyering  <jim@meyering.net>
37401
37402         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
37403         Patch by Joerg Sonnenberger.
37404
37405 2006-01-10  Bruno Haible  <bruno@clisp.org>
37406
37407         * modules/readutmp: Depend on module free.
37408         * modules/strtok_r: Depend on module restrict.
37409
37410 2006-01-10  Bruno Haible  <bruno@clisp.org>
37411
37412         * modules/gettext (configure.ac): Add an invocation of
37413         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
37414
37415 2006-01-10  Bruno Haible  <bruno@clisp.org>
37416
37417         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
37418         Reported by Werner Lemberg <wl@gnu.org>.
37419
37420 2006-01-10  Bruno Haible  <bruno@clisp.org>
37421
37422         * lib/localcharset.c: Update from GNU gettext.
37423
37424 2006-01-10  Bruno Haible  <bruno@clisp.org>
37425
37426         * lib/argp.h (__const): Remove macro. Use const instead.
37427         * lib/argp-fmtstream.h (__const): Likewise.
37428         * lib/glob_.h (__const): Remove macro.
37429         * lib/glob-libc.h: Use const instead of __const.
37430
37431 2006-01-10  Bruno Haible  <bruno@clisp.org>
37432
37433         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
37434         variable.
37435         Needed to avoid an automake error regarding the 'gettext' module.
37436
37437 2006-01-09  Simon Josefsson  <jas@extundo.com>
37438
37439         * modules/inet_ntop (Depends-on): Add restrict.
37440
37441 2006-01-09  Simon Josefsson  <jas@extundo.com>
37442
37443         * modules/gc-rijndael-tests (License): Put under LGPL.
37444
37445         * modules/gc-des-tests (License): Likewise.
37446
37447         * modules/gc-arcfour-tests (License): Likewise.
37448
37449         * modules/gc-arctwo-tests (License): Likewise.
37450
37451         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
37452
37453         * modules/gc-hmac-sha1-tests (Files): Likewise.
37454
37455         * modules/gc-hmac-md5-tests (License): Likewise.
37456
37457         * modules/gc-sha1-tests (License): Likewise.
37458
37459         * modules/gc-md5-tests (License): Likewise.
37460
37461         * modules/gc-md4-tests (License): Likewise.
37462
37463         * modules/gc-md2-tests (License): Likewise.
37464
37465         * modules/gc-tests (License): Likewise.
37466
37467         * modules/des-tests (License): Likewise.
37468
37469         * modules/md4-tests (License): Likewise.
37470
37471         * modules/md2-tests (License): Likewise.
37472
37473 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37474
37475         Sync from coreutils:
37476
37477         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
37478         * modules/lib-ignore: New file.
37479         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
37480         chdir-safer.m4, lchmod.m4.
37481         * modules/openat: Add mkdirat.c, openat-priv.h.
37482
37483 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37484
37485         Sync from coreutils.
37486         * m4/lib-ignore.m4: New file.
37487         * m4/lchmod.m4: New file.
37488
37489 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37490
37491         Sync from coreutils.
37492         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
37493         for write access: POSIX says that must fail.
37494         * lib/fts.c (diropen): Likewise.
37495         * lib/save-cwd.c (save_cwd): Likewise.
37496         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
37497         well, for minor improvements on hosts that lack O_DIRECTORY.
37498         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
37499         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
37500         Fall back on chown if open failed with EACCES.
37501
37502         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
37503         Report an error at compile-time if only a 1-second nominal clock
37504         resolution is found.
37505
37506         * lib/lchmod.h: New file.
37507         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
37508         (make_dir_parents): Use lchown rather than chown, and
37509         lchmod rather than chmod.
37510
37511         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
37512         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
37513         "proc" reported by n0dalus.
37514
37515         * lib/mountlist.c: Include <limits.h>.
37516         (dev_from_mount_options)
37517         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
37518         New function.  It no longer assumes "dev=" has the System V meaning
37519         on Linux (since it doesn't).  It also parses "dev=" more carefully.
37520         (read_file_system_list)
37521         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
37522         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
37523         dev= in that case.
37524
37525         * lib/posixtm.h (PDS_PRE_2000): New macro.
37526         * lib/posixtm.c (year): Arg is now syntax_bits rather than
37527         allow_century.  All usages changed.  Reject dates outside the range
37528         1969-1999 if PDS_PRE_2000 is used.
37529
37530 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37531
37532         Sync from coreutils.
37533         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
37534         (Time of day items): Mention the possibility of leap seconds.
37535         Problem reported by Dr. David Alan Gilbert.
37536
37537 2006-01-09  Jim Meyering  <jim@meyering.net>
37538
37539         Sync from coreutils.
37540
37541         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
37542
37543         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
37544
37545         * lib/modechange.c (mode_compile): Reject an invalid mode string
37546         that starts with an octal digit.  From Andreas Gruenbacher.
37547
37548         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
37549         and dup to open_safer and dup_safer, respectively.
37550         (openat_permissive): Fix typo in comment.
37551
37552         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
37553         "gettext.h"; either no longer needed or are guaranteed by openat.h.
37554         (_): Remove; no longer needed.
37555         (openat): Renamed from rpl_openat; no need for rpl_openat
37556         since openat.h renames openat for us.
37557         Replace most of the body with a call to openat_permissive,
37558         to avoid duplicate code.
37559         Port to (probably hypothetical) environments were mode_t is
37560         wider than int.
37561         (openat_permissive): Require mode arg, so that we can check
37562         types better.  Put it just after flags.  Change cwd failure
37563         indicator from pointer-to-bool to pointer-to-errno-value.
37564         All callers changed.
37565         Invoke openat_save_fail and/or openat_restore_fail if
37566         cwd_errno is null, so that openat can call us.
37567         (openat_permissive, fdopendir, fstatat, unlinkat):
37568         Simplify errno handling to avoid some duplicate code,
37569         as it's OK to set errno on success.
37570         * lib/openat.h: Revamp code so that function macros depend on
37571         __OPENAT_PREFIX only, not also on AT_FDCWD.
37572         (openat_ro): Remove.  Caller changed to use openat_permissive.
37573         (openat_permissive): Now a macro, if not a function.
37574         (openat_restore_fail, openat_save_fail): Now always functions,
37575         since mkdirat needs them even if __OPENAT_PREFIX is defined.
37576
37577         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
37578         and openat.c.
37579         * lib/mkdirat.c: Include openat-priv.h.
37580         Remove definitions of macros defined therein.
37581         * lib/openat.c: Likewise.
37582
37583         * lib/mkdirat.c (mkdirat): New file and function.
37584         * lib/openat.h (mkdirat): Declare.
37585
37586         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
37587
37588         * lib/openat.h (openat_permissive): Declare.
37589         (openat_ro): Define.
37590
37591         * lib/openat.c (EXPECTED_ERRNO): New macro.
37592         (openat_permissive): New function -- used in remove.c rewrite.
37593         (all functions): Set errno just before returning, only if there
37594         was an actual failure.
37595         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
37596
37597         Emulate openat-family functions using Linux's procfs, if possible.
37598         Idea and some code based on Ulrich Drepper's glibc changes.
37599
37600         * lib/openat.c: (BUILD_PROC_NAME): New macro.
37601         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
37602         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
37603         before falling back on save_cwd and restore_cwd.
37604         (fdopendir, fstatat, unlinkat): Likewise.
37605
37606         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
37607         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
37608
37609         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
37610         as second argument to va_arg.  Otherwise, some versions of gcc
37611         warn that `if this code is reached, the program will abort'.
37612
37613 2006-01-09  Jim Meyering  <jim@meyering.net>
37614
37615         Sync from coreutils.
37616         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
37617         Require openat-priv.h.
37618
37619 2006-01-09  Bruno Haible  <bruno@clisp.org>
37620
37621         * modules/strnlen (Include): Use strnlen.h.
37622
37623 2006-01-09  Bruno Haible  <bruno@clisp.org>
37624
37625         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
37626
37627 2006-01-09  Bruno Haible  <bruno@clisp.org>
37628
37629         * lib/sysexit_.h (EX_OK): New macro.
37630         Suggested by Martin Lambers <marlam@marlam.de>.
37631
37632 2006-01-09  Bruno Haible  <bruno@clisp.org>
37633
37634         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
37635         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
37636
37637 2006-01-09  Bruno Haible  <bruno@clisp.org>
37638
37639         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
37640         numbers.
37641
37642 2006-01-09  Bruno Haible  <bruno@clisp.org>
37643
37644         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
37645         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
37646         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
37647         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
37648
37649 2006-01-09  Bruno Haible  <bruno@clisp.org>
37650
37651         * build-aux/javacomp.sh.in: New file, moved from lib/.
37652         * modules/javacomp-script (Files): Update.
37653         (configure.ac): Add AC_CONFIG_FILES invocation.
37654         (EXTRA_DIST): Remove variable.
37655
37656         * build-aux/javaexec.sh.in: New file, moved from lib/.
37657         * modules/javaexec (Files): Update.
37658         (configure.ac): Add AC_CONFIG_FILES invocation.
37659         (EXTRA_DIST): Remove javaexec.sh.in.
37660
37661         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
37662         * modules/csharpcomp-script (Files): Update.
37663         (configure.ac): Add AC_CONFIG_FILES invocation.
37664         (EXTRA_DIST): Remove variable.
37665
37666         * build-aux/csharpexec.sh.in: New file, moved from lib/.
37667         * modules/csharpexec (Files): Update.
37668         (configure.ac): Add AC_CONFIG_FILES invocation.
37669         (EXTRA_DIST): Remove csharpexec.sh.in.
37670
37671 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
37672
37673         Sync from coreutils.
37674
37675         Add POSIX ACL support
37676         * lib/acl.h (copy_acl, set_acl): Add declarations.
37677         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
37678         systems other than Linux.
37679         (chmod_or_fchmod): New function: use fchmod when possible,
37680         and chmod otherwise.
37681         (file_has_acl): Add a POSIX ACL implementation, with a
37682         Linux-specific subcase.
37683         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
37684         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
37685         acls are unsupported.
37686         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
37687         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
37688         are unsupported.
37689
37690 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
37691
37692         Sync from coreutils.
37693         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
37694
37695 2006-01-07  Bruno Haible  <bruno@clisp.org>
37696
37697         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
37698         gl_EARLY.
37699
37700 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
37701
37702         * lib/strftime.c (tzname): Don't declare if it is already #defined.
37703         Problem reported for Mingw by Mark Junker.
37704
37705 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
37706
37707         * README: Gnulib normally doesn't generate a tarball.
37708
37709 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
37710
37711         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
37712         long int, not int, for nanosecond counts, so that people who are
37713         used to POSIX struct timespec won't be surprised.  Reported by Jim
37714         Meyering.
37715
37716 2005-12-28  Bruno Haible  <bruno@clisp.org>
37717
37718         * build-aux/config.rpath: Update from GNU gettext.
37719
37720 2005-12-16  Jim Meyering  <jim@meyering.net>
37721
37722         * modules/fprintftime: New module.
37723         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
37724
37725 2005-12-16  Jim Meyering  <jim@meyering.net>
37726
37727         * m4/fprintftime.m4: New file.
37728
37729 2005-12-16  Jim Meyering  <jim@meyering.net>
37730
37731         * lib/fprintftime.c, lib/fprintftime.h: New files.
37732
37733 2005-12-15  Simon Josefsson  <jas@extundo.com>
37734
37735         * modules/socklen (configure.ac): Fix M4 macro name, to align with
37736         new m4/socklen.m4.
37737
37738 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
37739
37740         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
37741         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
37742
37743 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
37744
37745         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
37746         * lib/argp-help.c (fill_in_uparams): Check if the constructed
37747         struct uparams is valid. Fall back to the default values if it is
37748         not.
37749
37750 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
37751
37752         * modules/argp (Files): Add argp-pin.c
37753         (Depends-on): dirname
37754         (lib_SOURCES): Add argp-pin.c
37755
37756 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
37757
37758         * m4/argp.m4:  Check if program_invocation_name and
37759         program_invocation_short_name are declared and define appropriate
37760         macros if they are not.
37761
37762 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
37763
37764         * lib/argp-help.c (__argp_base_name): New function
37765         (__argp_short_program_name): Rewrite using __argp_base_name
37766         * lib/argp-namefrob.h: Define program_invocation_name and
37767         program_invocation_short_name if requested
37768         (__argp_base_name): Add prototype
37769         * lib/argp-parse.c (argp_def): Use gettext wrappers
37770         (argp_default_parser): Use __argp_base_name
37771         * lib/argp-pin.c: New file. Defines program_invocation_name and
37772         program_invocation_short_name on systems that lack them.
37773
37774 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
37775
37776         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
37777         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
37778         porting problem reported by Georg Schwarz in
37779         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
37780
37781 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
37782
37783         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
37784         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
37785         porting problem reported by Georg Schwarz in
37786         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
37787
37788 2005-12-05  Bruno Haible  <bruno@clisp.org>
37789
37790         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
37791         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
37792         Reported by Mark Junker <mjscod@gmx.de>.
37793
37794 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
37795
37796         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
37797         Use implementation from Albert Chin, with some
37798         comments/corrections by Stepan Kasal and myself.
37799
37800 2005-12-02  Bruno Haible  <bruno@clisp.org>
37801
37802         * gnulib-tool (func_import): Accept GPLed build tool modules when
37803         --lgpl is given.
37804         * modules/csharpcomp-script: New file.
37805         * modules/csharpcomp: Depend on it.
37806         * modules/javacomp-script: New file.
37807         * modules/javacomp: Depend on it.
37808         Suggested by Simon Josefsson.
37809
37810 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
37811
37812         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
37813         statement, to work around an HP-UX 10.20 compiler bug reported by
37814         Peter O'Gorman.
37815
37816 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
37817
37818         * modules/savedir (Depends-on): Add openat.
37819
37820 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
37821
37822         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
37823         (uintmax_t) [defined uintmax_t]: Do not declare.
37824         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
37825         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
37826         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
37827         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
37828         sake of portability to weird hosts that C allows (though we don't
37829         know of any practical examples).
37830
37831         * lib/savedir.h (fdsavedir): New decl.
37832         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
37833         contains most of the former guts of savedir.
37834         (savedir): Use savedirstream.
37835         Include "openat.h".
37836
37837 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
37838
37839         * modules/obstack (Files): Add m4/ulonglong.m4.
37840         Problem reported by Davide Angelocola.
37841
37842 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
37843
37844         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
37845         coreutils no longer futzes with rounding modes.
37846
37847 2005-11-14  Jim Meyering  <jim@meyering.net>
37848
37849         * lib/mkstemp-safer.c: Include <config.h>, required for possible
37850         replacement of mkstemp.
37851
37852 2005-11-10  Simon Josefsson  <jas@extundo.com>
37853
37854         * lib/readline.c: Remove EOL.
37855
37856 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
37857
37858         * modules/gethrxtime (Depends-on): Add gettime.
37859
37860 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
37861
37862         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
37863         or gettimeofday; no longer needed.
37864
37865 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
37866
37867         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
37868         time business.
37869         (gethrxtime) [! (HAVE_NANOUPTIME
37870         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
37871         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
37872         our own approximation.
37873
37874 2005-11-08  Eric Blake  <ebb9@byu.net>
37875
37876         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
37877
37878 2005-11-08  Eric Blake  <ebb9@byu.net>
37879
37880         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
37881
37882 2005-11-04  Bruno Haible  <bruno@clisp.org>
37883
37884         * gnulib-tool: Implement --update mode.
37885
37886 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
37887
37888         Fix porting problem reported by Theodoros V. Kalamatianos.
37889         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
37890         Don't assume that futimes failing means we must fail.
37891
37892 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
37893
37894         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
37895         variables to suggest the intended function of the PATH_MAX check.
37896
37897 2005-10-30  Kean Johnston  <jkj@sco.com>
37898
37899         Trivial changes to support SCO systems.
37900         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
37901         as PATH_MAX.
37902         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
37903         where __ptr is null when no I/O is pending.
37904
37905 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
37906
37907         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
37908         leave errno alone.  Problem reported by Dmitry V. Levin.
37909
37910 2005-10-28  Simon Josefsson  <jas@extundo.com>
37911
37912         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
37913         Test more.
37914
37915         * tests/test-gc-md2.c, tests/test-md2.c: New files.
37916
37917         * modules/md2, modules/md2-tests: New files.
37918
37919 2005-10-28  Simon Josefsson  <jas@extundo.com>
37920
37921         * m4/inet_ntop.m4: More tests.
37922
37923         * m4/gc-md2.m4, md2.m4: New file.
37924
37925 2005-10-28  Simon Josefsson  <jas@extundo.com>
37926
37927         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
37928         "restrict" keywords, as per POSIX.  Protect the function
37929         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
37930         Don't use K&R prototypes.  Check the sprintf return values.
37931         Re-define EAFNOSUPPORT if not present.  Indent.
37932
37933         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
37934         suggested by Bruno Haible <bruno@clisp.org>.
37935
37936         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
37937
37938         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
37939
37940         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
37941         libgcrypt).
37942
37943         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
37944
37945         * lib/md2.h, lib/md2.c: New files.
37946
37947 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
37948
37949         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
37950         errno alone.  Problem reported by Frederic Jolliton.
37951
37952 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
37953
37954         * modules/verify (License): Change from GPL to LGPL.  This is a
37955         tiny module and there are apparently near-equivalents that are
37956         under the BSD license.
37957
37958 2005-10-24  Simon Josefsson  <jas@extundo.com>
37959
37960         * modules/sha1: Relicense to LGPL.
37961
37962 2005-10-24  Simon Josefsson  <jas@extundo.com>
37963
37964         * lib/md4.h: Shrink buffer size, now that we changed the type.
37965
37966 2005-10-23  Simon Josefsson  <jas@extundo.com>
37967
37968         * gnulib-tool (func_import): Fix --tests-base.
37969
37970 2005-10-22  Simon Josefsson  <jas@extundo.com>
37971
37972         * modules/arcfour (Depends-on): Need stdint.
37973
37974 2005-10-22  Simon Josefsson  <jas@extundo.com>
37975
37976         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
37977         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
37978
37979 2005-10-22  Simon Josefsson  <jas@extundo.com>
37980
37981         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
37982         suggested by Bruno Haible <bruno@clisp.org>.
37983
37984 2005-10-22  Simon Josefsson  <jas@extundo.com>
37985
37986         * lib/crc.h: Include stddef.h, for size_t.
37987
37988 2005-10-22  Simon Josefsson  <jas@extundo.com>
37989
37990         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
37991         arcfour_context struct (simplify test vector testing in GNU
37992         Shishi).
37993
37994 2005-10-21  Simon Josefsson  <jas@extundo.com>
37995
37996         * modules/des, modules/des-tests: New files.
37997
37998         * modules/gc-des, modules/gc-des-tests: New files.
37999
38000         * tests/test-des.c, tests/test-gc-des.c: New file.
38001
38002 2005-10-21  Simon Josefsson  <jas@extundo.com>
38003
38004         * modules/arctwo, modules/arctwo-tests: New files.
38005
38006         * tests/test-arctwo.c: New file.
38007
38008         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
38009
38010         * tests/test-gc-arctwo.c: New file.
38011
38012 2005-10-21  Simon Josefsson  <jas@extundo.com>
38013
38014         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
38015         Bruno Haible <bruno@clisp.org>.
38016
38017         * m4/gc-des.m4: New file.
38018
38019 2005-10-21  Simon Josefsson  <jas@extundo.com>
38020
38021         * m4/arctwo.m4: New file.
38022
38023         * m4/gc-arctwo.m4: New file.
38024
38025 2005-10-21  Simon Josefsson  <jas@extundo.com>
38026
38027         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
38028         block.
38029
38030 2005-10-21  Simon Josefsson  <jas@extundo.com>
38031
38032         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
38033         <bruno@clisp.org>.
38034
38035         * lib/hmac-sha1.c (hmac_sha1): Likewise.
38036
38037         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
38038         Bruno Haible <bruno@clisp.org>.
38039
38040         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
38041         <bruno@clisp.org>.
38042
38043 2005-10-21  Simon Josefsson  <jas@extundo.com>
38044
38045         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
38046
38047 2005-10-21  Simon Josefsson  <jas@extundo.com>
38048
38049         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
38050
38051 2005-10-21  Simon Josefsson  <jas@extundo.com>
38052
38053         * lib/des.h, lib/des.c: New files.
38054
38055         * lib/gc-gnulib.c: Support DES.c
38056
38057 2005-10-21  Simon Josefsson  <jas@extundo.com>
38058
38059         * lib/arctwo.h, lib/arctwo.c: New files.
38060
38061         * lib/gc-gnulib.c: Support ARCTWO.
38062
38063 2005-10-21  Simon Josefsson  <jas@extundo.com>
38064
38065         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
38066         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
38067
38068 2005-10-21  Simon Josefsson  <jas@extundo.com>
38069
38070         * gnulib-tool (func_import, func_create_testdir): Define automake
38071         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
38072         Makefile.am snippet),
38073         suggested by Bruno Haible <bruno@clisp.org>.
38074
38075         * modules/gc (Makefile.am): Use it.
38076
38077 2005-10-21  Bruno Haible  <bruno@clisp.org>
38078
38079         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
38080         patch.
38081
38082 2005-10-19  Simon Josefsson  <jas@extundo.com>
38083
38084         * tests/test-gc-rijndael.c: New file.
38085
38086         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
38087
38088 2005-10-19  Simon Josefsson  <jas@extundo.com>
38089
38090         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
38091         interface too.
38092
38093 2005-10-19  Simon Josefsson  <jas@extundo.com>
38094
38095         * tests/test-gc-arcfour.c: New file.
38096
38097         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
38098
38099 2005-10-19  Simon Josefsson  <jas@extundo.com>
38100
38101         * modules/gc-md4, modules/gc-md4-tests: New file.
38102
38103         * tests/test-gc-md4.c: New file.
38104
38105 2005-10-19  Simon Josefsson  <jas@extundo.com>
38106
38107         * m4/gc-md4.m4: New file.
38108
38109 2005-10-19  Simon Josefsson  <jas@extundo.com>
38110
38111         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
38112         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
38113         <kasal@ucw.cz>.
38114
38115 2005-10-19  Simon Josefsson  <jas@extundo.com>
38116
38117         * m4/gc-arcfour.m4: New file.
38118
38119         * m4/gc-rijndael.m4: New file.
38120
38121 2005-10-19  Simon Josefsson  <jas@extundo.com>
38122
38123         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
38124
38125 2005-10-19  Simon Josefsson  <jas@extundo.com>
38126
38127         * lib/gc-gnulib.c: Support ARCFOUR.
38128
38129 2005-10-19  Simon Josefsson  <jas@extundo.com>
38130
38131         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
38132         support.
38133
38134         * lib/gc.h: Add ECB enum type.
38135
38136         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
38137
38138 2005-10-18  Simon Josefsson  <jas@extundo.com>
38139
38140         * tests/test-md5.c: New file.
38141
38142         * modules/md5-tests: New file.
38143
38144 2005-10-18  Simon Josefsson  <jas@extundo.com>
38145
38146         * tests/test-md4.c: New file.
38147
38148         * modules/md4, modules/md4-tests: New files.
38149
38150 2005-10-18  Simon Josefsson  <jas@extundo.com>
38151
38152         * m4/md4.m4: New file.
38153
38154 2005-10-18  Simon Josefsson  <jas@extundo.com>
38155
38156         * lib/md4.h, lib/md4.c: New files, based on md5.?.
38157
38158 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
38159
38160         * gnulib-tool (func_create_testdir): Omit the second check whether
38161         BUILT_SOURCES in nonempty.
38162
38163 2005-10-17  Simon Josefsson  <jas@extundo.com>
38164
38165         * tests/test-rijndael.c: New file.
38166
38167 2005-10-17  Simon Josefsson  <jas@extundo.com>
38168
38169         * modules/sha1: Depend on stdint instead of md5.
38170
38171         * modules/md5: Depend on stdint, remove uint32_t.
38172
38173 2005-10-17  Simon Josefsson  <jas@extundo.com>
38174
38175         * modules/gc-sha1-tests: New file.
38176
38177         * tests/test-gc-sha1.c: New file.
38178
38179 2005-10-17  Simon Josefsson  <jas@extundo.com>
38180
38181         * m4/md5.m4: Remove call to uint32_t.m4.
38182
38183 2005-10-17  Simon Josefsson  <jas@extundo.com>
38184
38185         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
38186
38187         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
38188         md5.h.
38189
38190         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
38191
38192         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
38193
38194 2005-10-17  Simon Josefsson  <jas@extundo.com>
38195
38196         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
38197
38198 2005-10-17  Simon Josefsson  <jas@extundo.com>
38199
38200         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
38201
38202 2005-10-17  Simon Josefsson  <jas@extundo.com>
38203
38204         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
38205
38206         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
38207
38208 2005-10-17  Bruno Haible  <bruno@clisp.org>
38209
38210         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
38211         that it can also be used in a test.
38212
38213 2005-10-16  Bruno Haible  <bruno@clisp.org>
38214
38215         * gnulib-tool (func_emit_tests_Makefile_am): Also define
38216         TESTS_ENVIRONMENT, so that individual tests can augment it.
38217
38218         * gnulib-tool (func_create_testdir): Use an intermediate target for
38219         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
38220         macros, like $(ALLOCA_H), which cannot be passed through the command
38221         line.
38222
38223 2005-10-15  Simon Josefsson  <jas@extundo.com>
38224
38225         * modules/rijndael-tests: New file.
38226
38227         * modules/rijndael: New file.
38228
38229 2005-10-15  Simon Josefsson  <jas@extundo.com>
38230
38231         * m4/rijndael.m4: New file.
38232
38233 2005-10-15  Simon Josefsson  <jas@extundo.com>
38234
38235         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
38236
38237         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
38238
38239 2005-10-14  Simon Josefsson  <jas@extundo.com>
38240
38241         * tests/test-arcfour.c: New file.
38242
38243         * modules/arcfour, modules/arcfour-tests: New files.
38244
38245 2005-10-14  Simon Josefsson  <jas@extundo.com>
38246
38247         * m4/arcfour.m4: New file.
38248
38249 2005-10-14  Simon Josefsson  <jas@extundo.com>
38250
38251         * lib/arcfour.h, lib/arcfour.c: New files.
38252
38253 2005-10-14  Roland McGrath  <roland@redhat.com>
38254
38255         Import from libc.  [BZ #1331]
38256         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
38257         macro argument.
38258         Reported by Matej Vela <vela@debian.org>.
38259
38260 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
38261
38262         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
38263         include <wchar.h>; no longer needed.
38264
38265 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
38266
38267         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
38268
38269 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
38270         and  Ulrich Drepper  <drepper@redhat.com>
38271
38272         Import from libc.
38273         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
38274         instead of inline stream orientation test and two separate
38275         function calls.  Pay no attention to USE_IN_LIBIO.
38276
38277 2005-10-13  Simon Josefsson  <jas@extundo.com>
38278
38279         * modules/gc-hmac-md5-tests: New file.
38280
38281         * tests/test-gc-hmac-sha1.c: New file.
38282
38283         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
38284
38285         * modules/gc-hmac-md5-tests: New file.
38286
38287         * tests/test-gc-md5.c: New file.
38288
38289         * modules/gc-md5-tests: New file.
38290
38291 2005-10-13  Simon Josefsson  <jas@extundo.com>
38292
38293         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
38294         Move memory allocation outside of loop.
38295
38296 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
38297
38298         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
38299         intermediate directory is in a read-only file system.  Problem
38300         reported by Eric Blake.
38301
38302 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
38303
38304         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
38305
38306 2005-10-12  Simon Josefsson  <jas@extundo.com>
38307
38308         * tests/test-hmac-sha1.c: New file.
38309
38310         * modules/hmac-sha1-tests: New file.
38311
38312         * modules/hmac-sha1: New file.
38313
38314 2005-10-12  Simon Josefsson  <jas@extundo.com>
38315
38316         * modules/gc-sha1: New file.
38317
38318 2005-10-12  Simon Josefsson  <jas@extundo.com>
38319
38320         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
38321
38322         * tests/test-gc-pbkdf2-sha1.c: New file.
38323
38324 2005-10-12  Simon Josefsson  <jas@extundo.com>
38325
38326         * modules/gc-md5, modules/gc-hmac-md5: New files.
38327
38328         * modules/gc (Files): Remove md5, memxor and hmac files.
38329
38330 2005-10-12  Simon Josefsson  <jas@extundo.com>
38331
38332         * m4/gc-pbkdf2-sha1.m4: New file.
38333
38334         * m4/gc-hmac-sha1.m4: New file.
38335
38336         * m4/gc-sha1: New file.
38337
38338         * m4/hmac-sha1.m4: New file.
38339
38340 2005-10-12  Simon Josefsson  <jas@extundo.com>
38341
38342         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
38343
38344         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
38345
38346 2005-10-12  Simon Josefsson  <jas@extundo.com>
38347
38348         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
38349         suggested by Bruno Haible <bruno@clisp.org>.
38350
38351 2005-10-12  Simon Josefsson  <jas@extundo.com>
38352
38353         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
38354
38355 2005-10-12  Simon Josefsson  <jas@extundo.com>
38356
38357         * lib/gc-pbkdf2-sha1.c: New file.
38358
38359         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
38360
38361 2005-10-12  Simon Josefsson  <jas@extundo.com>
38362
38363         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
38364
38365         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
38366
38367 2005-10-12  Simon Josefsson  <jas@extundo.com>
38368
38369         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
38370         GC_USE_HMAC_MD5, respectively.
38371
38372         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
38373         (gc_md5): Fix typo.
38374
38375         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
38376
38377         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
38378
38379         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
38380
38381 2005-10-12  Bruno Haible  <bruno@clisp.org>
38382
38383         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
38384         Reported by Stepan Kasal <kasal@ucw.cz>.
38385
38386 2005-10-11  Simon Josefsson  <jas@extundo.com>
38387
38388         * tests/test-crc.c: New file.
38389
38390         * modules/crc, modules/crc-tests: New files.
38391
38392 2005-10-11  Simon Josefsson  <jas@extundo.com>
38393
38394         * m4/crc.m4: New file.
38395
38396 2005-10-11  Simon Josefsson  <jas@extundo.com>
38397
38398         * lib/gc.h: Add gc_hash and gc_hash_buffer.
38399
38400         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
38401
38402         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
38403
38404 2005-10-11  Simon Josefsson  <jas@extundo.com>
38405
38406         * lib/crc.h, lib/crc.c: New files.
38407
38408         * lib/gc.h (gc_hash_buffer): Add doc.
38409
38410 2005-10-11  Bruno Haible  <bruno@clisp.org>
38411
38412         * modules/c-strcasestr: New file.
38413         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
38414
38415 2005-10-11  Bruno Haible  <bruno@clisp.org>
38416
38417         * modules/c-strcase: New file.
38418         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
38419
38420 2005-10-11  Bruno Haible  <bruno@clisp.org>
38421
38422         * lib/strcasecmp.c: Include limits.h.
38423         (strcasecmp): Avoid integer overflow on exotic platforms.
38424         * lib/strncasecmp.c: Include limits.h.
38425         (strncasecmp): Avoid integer overflow on exotic platforms.
38426         Reported by Paul Eggert.
38427
38428 2005-10-11  Bruno Haible  <bruno@clisp.org>
38429
38430         * lib/c-strcasestr.h: New file, from GNU gettext.
38431         * lib/c-strcasestr.c: New file, from GNU gettext.
38432
38433 2005-10-11  Bruno Haible  <bruno@clisp.org>
38434
38435         * lib/c-strcase.h: New file, from GNU gettext.
38436         * lib/c-strcasecmp.c: New file, from GNU gettext.
38437         * lib/c-strncasecmp.c: New file, from GNU gettext.
38438
38439 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
38440
38441         * modules/mempcpy (License): GPL -> LGPL.
38442         * modules/strchrnul (License): Likewise.
38443         * modules/sysexits (License): Likewise.
38444
38445 2005-10-08  Simon Josefsson  <jas@extundo.com>
38446
38447         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
38448
38449 2005-10-07  Simon Josefsson  <jas@extundo.com>
38450
38451         * m4/memxor.m4: Remove gl_C_RESTRICT call.
38452
38453 2005-10-06  Simon Josefsson  <jas@extundo.com>
38454
38455         * tests/test-hmac-md5.c: New file.
38456
38457         * modules/hmac-md5-tests: New file.
38458
38459         * modules/hmac-md5: New file.
38460
38461 2005-10-06  Simon Josefsson  <jas@extundo.com>
38462
38463         * m4/hmac-md5.m4: New file.
38464
38465         * m4/memxor.m4: Require gl_C_RESTRICT.
38466
38467 2005-10-06  Simon Josefsson  <jas@extundo.com>
38468
38469         * lib/memxor.c (memxor): Avoid casts and warnings.
38470
38471 2005-10-06  Simon Josefsson  <jas@extundo.com>
38472
38473         * lib/hmac-md5.c: New file.
38474
38475         * lib/hmac.h: New file.
38476
38477 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
38478
38479         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
38480         promotes to int, not unsigned int, to catch the AIX 5.3
38481         compiler bug.
38482
38483 2005-10-05  Simon Josefsson  <jas@extundo.com>
38484
38485         * modules/memxor: New file.
38486
38487         * modules/iconv (Files): Move config.rpath to havelib, it is used
38488         there.
38489
38490         * modules/havelib (Files): Add config.rpath.
38491
38492 2005-10-05  Simon Josefsson  <jas@extundo.com>
38493
38494         * m4/memxor.m4: New file.
38495
38496 2005-10-05  Simon Josefsson  <jas@extundo.com>
38497
38498         * lib/memxor.c (memxor): Fix compiler error.
38499
38500         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
38501         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
38502
38503         * lib/memxor.h, lib/memxor.c: New files.
38504
38505         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
38506         we assume all systems have it, suggested by Jim Meyering
38507         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
38508         any systems lack sys/socket.h; mingw32 is known to lack it, but we
38509         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
38510         same reasons.
38511
38512 2005-10-05  Simon Josefsson  <jas@extundo.com>
38513
38514         * config/srclist.txt: Add glibc bug 1423 for md5.h.
38515
38516 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
38517
38518         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
38519         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
38520         needed, since the source code now assumes these .h files.
38521
38522 2005-10-05  Derek Price  <derek@ximbiot.com>
38523
38524         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
38525
38526 2005-10-05  Bruno Haible  <bruno@clisp.org>
38527
38528         * modules/stdint (License): Change to LGPL.
38529
38530 2005-10-04  Simon Josefsson  <jas@extundo.com>
38531
38532         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
38533         D. Baushke" <mdb@gnu.org>.
38534
38535 2005-10-04  Bruno Haible  <bruno@clisp.org>
38536
38537         * lib/verify.h (verify_true): Provide alternative definition for C++.
38538
38539 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
38540
38541         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
38542         (SSIZE_MAX): New macro, if not already defined.
38543         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
38544         than 2 GiB.
38545
38546 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
38547
38548         Sync from coreutils.
38549         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
38550         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
38551         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
38552         ULLONG_MAX doesn't work with 2.7.2.1.
38553
38554 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
38555
38556         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
38557         From Ben Pfaff.
38558
38559         * modules/exclude (Depends-on): Depend on verify.
38560         * modules/strtoimax (Depends-on): Likewise.
38561         * modules/utimecmp (Depends-on): Likewise.
38562
38563 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
38564
38565         * lib/exclude.c: Include verify.h.
38566         (verify): Remove.  All callers changed to use verify.h's version.
38567         * lib/strtoimax.c: Likewise.
38568         * lib/utimecmp.c: Likewis.e
38569
38570         Sync from coreutils.
38571         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
38572         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
38573         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
38574         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
38575         bother returning ENOSYS if settimeofday or stime fails; just let
38576         them return whatever errno they want to return.
38577         * lib/utimens.c: Include unistd.h, for dup2.
38578         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
38579         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
38580
38581 2005-10-02  Jim Meyering  <jim@meyering.net>
38582
38583         Sync from coreutils.
38584         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
38585         from glibc-2.2.5 that fails for read-only files.
38586
38587 2005-10-02  Jim Meyering  <jim@meyering.net>
38588
38589         Sync from coreutils.
38590         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
38591         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
38592         `#if HAVE_CONFIG_H'.
38593         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
38594         Remove AT_FDCWD test.
38595         Do not consume the fd unless successful.
38596         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
38597         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
38598         block, so that we don't even try to compile it if settimeofday is
38599         available.  This works around a compilation failure on OSF1 V5.1,
38600         due to stime requiring a `long int*' while tv_sec is `int'.
38601
38602 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
38603
38604         Sync from coreutils.
38605         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
38606         against `yes', rather than just testing for nonempty.
38607
38608 2005-10-01  Simon Josefsson  <jas@extundo.com>
38609
38610         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
38611         and Darwin.
38612
38613         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
38614         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
38615         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
38616         freeaddrinfo and gai_strerror are declared by the POSIX headers.
38617         Check if struct addrinfo is declared.
38618
38619 2005-10-01  Simon Josefsson  <jas@extundo.com>
38620
38621         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
38622         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
38623         AI_* and EAI_* definitions.  Protect function declarations.
38624
38625 2005-10-01  Jim Meyering  <jim@meyering.net>
38626
38627         Sync from coreutils.
38628
38629         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
38630         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
38631         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
38632         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
38633         in the inet and nsl libraries.  Required on Solaris 5.7.
38634
38635 2005-10-01  Jim Meyering  <jim@meyering.net>
38636
38637         Sync from coreutils.
38638         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
38639         in the inet and nsl libraries.  Required on Solaris 5.7.
38640
38641 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
38642
38643         * lib/getdelim.c (getdelim): Remove unused variables.
38644
38645 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
38646
38647         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
38648         so that the code works even with ancient cpp.  Portability problem
38649         with GCC 2.7.2.1 reported by Thomas M.Ott.
38650
38651 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
38652
38653         * modules/regex (Depends-on): Add strcase.
38654
38655         * modules/gethostname (Licence): Change from GPL to LGPL, since
38656         gethostname.c is a trivial implementation of a standard library
38657         function.
38658         * modules/poll (License): Change from GPL to LGPL, since it's
38659         derived from LGPL code.
38660
38661 2005-09-27  Jim Meyering  <jim@meyering.net>
38662
38663         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
38664         HAVE_CONFIG_H.
38665
38666         * lib/intprops.h (signed_type_or_expr__): Define.
38667         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
38668         for unsigned types.
38669
38670 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
38671
38672         * lib/verify.h (verify_expr): Remove, replacing with:
38673         (verify_true): New macro that returns true instead of void.
38674         (verify_type__): Remove.
38675         (verify): Use verify_true rather than verify_type__.
38676
38677 2005-09-26  Bruno Haible  <bruno@clisp.org>
38678
38679         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
38680         is necessary.
38681         (lib_SOURCES): Remove mbchar.c.
38682         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
38683         (Files): Add m4/mbrtowc.m4.
38684         * modules/mbiter: Likewise.
38685         * modules/mbuiter: Likewise.
38686
38687 2005-09-26  Bruno Haible  <bruno@clisp.org>
38688
38689         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
38690         compile mbchar.c if they are not both present.
38691         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
38692         * m4/mbiter.m4 (gl_MBITER): Likewise.
38693         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
38694         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
38695         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
38696
38697 2005-09-25  Jim Meyering  <jim@meyering.net>
38698
38699         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
38700         also uses socklen_t.
38701
38702 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
38703
38704         * lib/utimens.c (ENOSYS): Define if not already defined.
38705         (futimens): Support having a null PATH if the file descriptor
38706         is nonnegative.
38707
38708         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
38709         Remove.
38710         (__attribute): Define to empty unless GCC 3.1 or later.
38711         This works around a core dump on OpenBSD 3.4, which has GCC
38712         2.95.3, which dumps core when given __attribute__(()).  It also
38713         simplifies other tests, since we really don't want to bother with
38714         worrying about which ancient version of GCC supported what.
38715         Original problem reported by Yoann Vandoorselaere, with part of
38716         the fix suggested by Derek Price.
38717
38718 2005-09-24  Jim Meyering  <jim@meyering.net>
38719
38720         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
38721         so we can once again use a positive bitfield width of 1 -- now we
38722         don't have to explain why we were using a bitfield width of 2.
38723
38724 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
38725
38726         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
38727         and similarly for the other external symbols.  Problem reported
38728         by James Gallager.
38729
38730         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
38731         bug reported by Jim Meyering.
38732
38733         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
38734         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
38735         not needed, since socklen is a prerequisite module.
38736
38737 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
38738
38739         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
38740         Problem reported by Eric Blake.
38741         (getaddrinfo): Initialize se so that it's not garbage.
38742         Redo internal storage allocation so that it doesn't make unportable
38743         assumptions about alignment.
38744         Fix a memory leak.
38745
38746         * lib/utimens.c (futimens): Use futimesat if available.
38747         Prefer it to futimes since it doesn't have the futimes bug.
38748
38749         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
38750         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
38751         Instead, declare a function that returns a pointer to an array,
38752         and use verify_type__ to declare the size of the array.
38753         Problem and germ of a solution reported by Bruno Haible.
38754         (verify_type__): Use 2, not 1, for bitfield size, to avoid
38755         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
38756
38757 2005-09-23  Jim Meyering  <jim@meyering.net>
38758
38759         Sync from coreutils.
38760         Correct build failure (socklen_t not defined) on at least
38761         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
38762         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
38763
38764 2005-09-23  Jim Meyering  <jim@meyering.net>
38765
38766         * modules/getaddrinfo (Depends-on): Add socklen.
38767
38768 2005-09-23  Bruno Haible  <bruno@clisp.org>
38769
38770         * tests/test-verify.c: New file.
38771
38772 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
38773
38774         Sync from coreutils.
38775
38776         * modules/argmatch (Depends-on): Add verify.
38777         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
38778         unistd-safer.
38779         * modules/save-cwd (Depends-on): Likewise.
38780
38781         * modules/openat (Files): Add lib/openat-die.c.
38782         (Depends-on): Remove error, exitfail.
38783         Add dirname.
38784
38785         * modules/verify: New file.
38786         * MODULES.html.sh (Diagnostics <assert.h>): New section,
38787         with "verify" module.
38788
38789 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
38790
38791         Sync from coreutils.
38792
38793         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
38794         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
38795         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
38796         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
38797         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
38798         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
38799         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
38800         Don't bother checking for string.h, stdlib.h, unistd.h.
38801         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
38802         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
38803         module's job.
38804         * m4/jm-macros.m4 (gl_MACROS): Likewise.
38805         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
38806
38807         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
38808         (gl_GETDATE): Use it.
38809
38810         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
38811
38812 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
38813
38814         Sync from coreutils.
38815
38816         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
38817         stat-time.h.
38818         * lib/argmatch.h: Include verify.h
38819         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
38820         (ARGMATCH_ASSERT): Remove; unused.
38821         * lib/canonicalize.c: Assume STDC_HEADERS.
38822         * lib/exclude.c: Include "strcase.h".
38823         * lib/regex_internal.h [!defined _LIBC]: Likewise.
38824         * lib/getusershell.c: Include stdio--.h rather than stdio.h
38825         and stdio-safer.h.
38826         (getusershell): Call fopen, not fopen_safer.
38827         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
38828         Do not include unistd-safer.h.
38829         (save_cwd): Don't call fd_safer; no longer needed
38830         now that we include fcntl--.h.
38831
38832         * lib/getdate.y (relative_time): New type.
38833         (RELATIVE_TIME_0): New constant.
38834         (parser_control): Use relative_time instead of doing it ourselves.
38835         (%union): Add new relative_time rel member.
38836         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
38837         Now typeless.
38838         (relunit, relunit_snumber): Now of type rel.
38839         (zone, rel, relunit, get_date): Adjust to above changes.
38840
38841         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
38842         Do not include unistd-safer.h.
38843         (getloadavg): Don't call fd_safer; no longer needed
38844         now that we include fcntl--.h.
38845
38846         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
38847         (make_dir_parents): Treat ENOSYS like EEXIST.
38848
38849         Improve quality of diagnostics on restore_cwd failure.
38850         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
38851         (make_dir_parents): Last arg is now int * (for errno), not bool *.
38852         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
38853         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
38854         each time through the loop.  Do not diagnose restore_cwd failure;
38855         that is the caller's job (and perhaps the caller does not care).
38856
38857         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
38858         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
38859         If the file already exists but is not a directory, don't bother
38860         to try to make its parents.
38861         Close potential file descriptor leak if we can't chdir("/") (!).
38862         Don't always return true if chdir($PWD) fails; return true only
38863         if the requested action was done successfully (except for the
38864         chdir($PWD)).
38865         Don't log final directory unless we actually made it.
38866         Refactor to avoid duplicate code to fix up permissions.
38867         Don't attempt to fix up parent permissions if chdir($PWD) fails.
38868
38869         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
38870         to make it a bit faster and (I hope) clearer.
38871         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
38872         Fix bug in formats like %2N.
38873
38874         * lib/verify.h: New file.
38875
38876 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
38877
38878         Sync from coreutils.
38879         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
38880
38881 2005-09-22  Jim Meyering  <jim@meyering.net>
38882
38883         Sync from coreutils.
38884
38885         * m4/lstat.m4 (gl_FUNC_LSTAT):
38886         Use AC_LIBSOURCES to require lstat.c and lstat.h.
38887         Remove obsolete comment.
38888         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
38889         * m4/xstrtod.m4: Likewise.
38890
38891         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
38892
38893 2005-09-22  Jim Meyering  <jim@meyering.net>
38894
38895         Sync from coreutils.
38896
38897         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
38898
38899         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
38900         the .tm_year member, since otherwise gcc-4.0 would now warn about
38901         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
38902
38903         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
38904         order to avoid an unsuppressible warning from gcc on 64-bit systems.
38905
38906         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
38907         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
38908         when run in a time zone for which daylight savings time is in effect
38909         for the starting date.
38910
38911         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
38912         stop us from restricting permissions of just-created absolute-named
38913         directories.
38914         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
38915         to restore initial working directory.
38916         * lib/mkdir-p.c (make_dir_parents): New parameter:
38917         different_working_dir, to tell caller if/when we change the working
38918         directory and are unable to return to the initial one.
38919         * lib/mkdir-p.h (make_dir_parents): Update prototype.
38920         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
38921         `return false'.  This fixes a bug introduced on 2004-07-30.
38922
38923         * lib/openat.c (fdopendir): Be sure to close the supplied
38924         file descriptor before returning.  This makes our replacement
38925         implementation a little closer to Solaris's, where fdopendir
38926         ties the file descriptor to the returned DIR* pointer.
38927         * lib/openat.c (unlinkat): New function.
38928         * lib/openat.h (unlinkat): Add prototype.
38929         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
38930         (openat_restore_fail): Rename from openat_restore_die.
38931         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
38932
38933         Provide an alternative to exiting immediately upon save_cwd or
38934         restore_cwd failure.  Now, an application can arrange e.g.,
38935         to perform a longjump in that case.
38936         * lib/openat.c: Include dirname.h.
38937         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
38938         (rpl_openat, fdopendir, fstatat): Call openat_save_die
38939         and openat_restore_die rather than calling error directly.
38940         Don't include "error.h" or "exitfail.h"; they're no longer needed.
38941
38942         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
38943         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
38944         define.
38945
38946         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
38947         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
38948                             int utc, int nanoseconds);
38949         Background:
38950         date should not have to allocate a megabyte of virtual memory to
38951         handle a format argument like +%1048575T.  When implemented with
38952         strftime, it must allocate such a buffer, use strftime to fill it
38953         in, print it, then free it.
38954         With fprintftime, it simply prints everything and exits.
38955         With no need for memory allocation, that's one fewer way to fail.
38956         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
38957         optional field width, not before, so we accept %9:z, not %:9z.
38958         (my_strftime): Be sure to use L_('x') for literals.
38959
38960         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
38961         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
38962         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
38963         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
38964         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
38965         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
38966         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
38967         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
38968         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
38969         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
38970         * lib/xgethostname.c, lib/xreadlink.c:
38971         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
38972
38973         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
38974         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
38975         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
38976         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
38977         and don't include <sys/file.h>).
38978
38979 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
38980
38981         Sync from coreutils.
38982
38983         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
38984         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
38985         [!LDAV_DONE]: Avoid unused variable warning.
38986
38987 2005-09-21  Bruno Haible  <bruno@clisp.org>
38988
38989         * lib/unicodeio.h (unicode_to_mb): New declaration.
38990
38991 2005-09-20  Derek Price  <derek@ximbiot.com>
38992
38993         * lib/getaddrinfo.c: Don't include <netdb.h> included from
38994         getaddrinfo.h.
38995
38996 2005-09-20  Bruno Haible  <bruno@clisp.org>
38997
38998         * gnulib-tool: Remove trailing slashes from the values specified for
38999         --source-base, --m4-base, --tests-base, --aux-dir.
39000         Suggested by Simon Josefsson <jas@extundo.com>.
39001
39002 2005-09-20  Bruno Haible  <bruno@clisp.org>
39003
39004         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
39005         func_modules_to_filelist, func_import, func_create_testdir): Make all
39006         sorting results locale-independent, so that gnulib-cache.m4 doesn't
39007         change when gnulib-tool is invoked in a different locale.
39008
39009 2005-09-19  Simon Josefsson  <jas@extundo.com>
39010
39011         * m4/socklen.m4: Fix typo.
39012
39013 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
39014
39015         Use a consistent style for including <config.h>.
39016         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
39017         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
39018         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
39019         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
39020         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
39021         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
39022         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
39023         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
39024         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
39025         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
39026         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
39027         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
39028         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
39029         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
39030         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
39031         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
39032         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
39033         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
39034         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
39035         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
39036         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
39037         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
39038         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
39039         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
39040         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
39041         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
39042         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
39043         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
39044         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
39045         lib/xstrtoumax.c, lib/yesno.c:
39046         Standardize inclusion of config.h.
39047         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
39048         lib/inttostr.h:  Removed inclusion of config.h from header files.
39049         * lib/inttostr.c:  Adjusted in-tree users.
39050         * lib/timespec.h: Remove superfluous warning to include config.h.
39051         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
39052         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
39053         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
39054         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
39055         config.h with HAVE_CONFIG_H.
39056
39057 2005-09-19  Jim Meyering  <jim@meyering.net>
39058
39059         * modules/pathmax (License): Change to LGPL.
39060
39061 2005-09-19  Derek Price  <derek@ximbiot.com>
39062
39063         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
39064
39065 2005-09-19  Bruno Haible  <bruno@clisp.org>
39066
39067         * gnulib-tool (import): Provide default for --tests-base.
39068
39069 2005-09-19  Bruno Haible  <bruno@clisp.org>
39070
39071         * doc/quote.texi: New file, extracted from gnulib.texi.
39072         * doc/ctime.texi: New file, extracted from gnulib.texi.
39073         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
39074         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
39075         * doc/gnulib.texi: Include them.
39076
39077 2005-09-18  Bruno Haible  <bruno@clisp.org>
39078
39079         Portability fix.
39080         * gnulib-tool (func_readlink): New function.
39081         (func_ln_if_changed): Use it.
39082
39083 2005-09-18  Bruno Haible  <bruno@clisp.org>
39084
39085         * gnulib-tool: Support --with-tests also with --import.
39086         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
39087         (func_import): Use variables $testsbase and $inctests. Emit a
39088         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
39089         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
39090         SUBDIRS += $testsdir.
39091         (func_create_testdir): Update.
39092
39093 2005-09-18  Bruno Haible  <bruno@clisp.org>
39094
39095         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
39096         instead of $dry_run.
39097         (func_cp_if_changed, func_mv_if_changed): Remove functions.
39098         (func_ln_if_changed): Don't handle dry-run here.
39099         (func_import): In dry-run mode, detect more precisely which actions
39100         would be performed, and don't use "...ing" verbs.
39101
39102 2005-09-18  Bruno Haible  <bruno@clisp.org>
39103
39104         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
39105         (func_import): Use join on two temporary files instead of three nested
39106         loops, in order to determine which files are new or old.
39107
39108 2005-09-18  Bruno Haible  <bruno@clisp.org>
39109
39110         * gnulib-tool (func_import): Comment out code that spits out the
39111         new files with --dry-run.
39112
39113 2005-09-18  Bruno Haible  <bruno@clisp.org>
39114
39115         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
39116
39117 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
39118
39119         * lib/stat-time.h: New file.
39120         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
39121         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
39122         in a different way.
39123         (timespec_cmp): New function.
39124         * lib/utimecmp.c: Include stat-time.h.
39125         (SYSCALL_RESOLUTION): Depend on whether various struct stat
39126         members exist, not on the obsolescent ST_MTIM_NSEC.
39127         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
39128
39129 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
39130
39131         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
39132
39133 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
39134
39135         * MODULES.html.sh (File system functions): Add stat-time.
39136         * modules/stat-time: New file.
39137         * modules/timespec (Files): Remove m4/st_mtim.m4; this
39138         is now done in a different way, by the stat-time module.
39139         * modules/utimecmp (Depends-on): Add stat-time.
39140
39141 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
39142
39143         * m4/st_mtim.m4: Remove.  Superseded by...
39144         * m4/stat-time.m4: New file.
39145         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
39146         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
39147
39148 2005-09-15  Derek Price  <derek@ximbiot.com>
39149
39150         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
39151
39152 2005-09-15  Derek Price  <derek@ximbiot.com>
39153
39154         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
39155         * lib/regex_internal.c: Ditto, using this...
39156         (__GNUC_PREREQ): ...new macro.
39157         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
39158         using...
39159         (__GNUC_PREREQ): ...this new macro.
39160
39161         * lib/strstr.h: Include string.h. Define strstr as a macro here.
39162
39163 2005-09-15  Derek Price  <derek@ximbiot.com>
39164             Paul Eggert  <eggert@cs.ucla.edu>
39165
39166         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
39167         changes, consolidating in...
39168         * lib/regex_internal.h: ...this file.
39169
39170 2005-09-13  Jim Meyering  <jim@meyering.net>
39171
39172         * lib/canon-host.c: Filter through gnu indent and reword comments
39173         slightly.
39174         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
39175
39176 2005-09-13  Derek Price  <derek@ximbiot.com>
39177
39178         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
39179         failure.
39180         Reported by Jim Meyering  <jim@meyering.net>.
39181
39182 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
39183
39184         * lib/base64.c: Typo.
39185         (base64_encode): Put b64str in initialized data section.
39186
39187 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
39188
39189         Merge glibc and coreutils changes into gnulib, plus a few
39190         extra fixes.
39191         * lib/md5.c: Use #error rather than a string.
39192         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
39193         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
39194         (__attribute__): Define to empty for non recent-GCC.
39195         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
39196         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
39197         Renamed from their non-__ counterparts, with new macros replacing
39198         them if not _LIBC.  Add __THROW attribute.
39199         (rol): Remove.
39200         (struct md5_ctx): Align buffer if using GCC.
39201         * lib/sha1.h (struct sha1_ctx): Likewise.
39202         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
39203         The old name was backwards.
39204         (NOTSWAP): Remove; not used.
39205         (rol): New macro, moved here from md5.h.
39206         (sha1_process_block): Remove a FIXME that doesn't make sense.
39207
39208 2005-09-12  Derek Price  <derek@ximbiot.com>
39209
39210         Return usable errors from canon-host.
39211         * lib/canon-host.h: New file.
39212         * lib/canon-host.c (canon_host): Wrap...
39213         (canon_host_r): ...this new function, which now relies exclusively on
39214         getaddrinfo.
39215         (ch_strerror): New function.
39216         (last_cherror): New global.
39217         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
39218         interface.
39219         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
39220         void *.
39221         (freeaddrinfo): Free ai->ai_canonname when set.
39222
39223 2005-09-12  Derek Price  <derek@ximbiot.com>
39224
39225         Make canon-host require getaddrinfo.
39226         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
39227         AC_LIBSOURCE canon-host.h.  Call...
39228         (gl_PREREQ_CANON_HOST): ...this new function, which requires
39229         gl_GETADDRINFO.
39230         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
39231
39232 2005-09-12  Derek Price  <derek@ximbiot.com>
39233
39234         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
39235         LGPL.
39236         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
39237
39238 2005-09-12  Derek Price  <derek@ximbiot.com>
39239
39240         * lib/gai_strerror.c: Include config.h when available.  Include
39241         getaddrinfo.h before other headers to test interface.
39242         Reported by Larry Jones <lawrence.jones@ugs.com>.
39243
39244 2005-09-12  Derek Price  <derek@ximbiot.com>
39245             Paul Eggert  <eggert@cs.ucla.edu>
39246
39247         * modules/glob (Files): Add glob-libc.h.
39248
39249 2005-09-12  Derek Price  <derek@ximbiot.com>
39250             Paul Eggert  <eggert@cs.ucla.edu>
39251
39252         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
39253         glob_.h, glob-libc.h.
39254         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
39255
39256 2005-09-12  Derek Price  <derek@ximbiot.com>
39257             Paul Eggert  <eggert@cs.ucla.edu>
39258
39259         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
39260         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
39261         protecting things that should be done only in gnulib contexts.
39262         * lib/glob_.h: New file, containing only the glob things needed for
39263         gnulib.
39264         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
39265         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
39266         (glob, globfree, glob_pattern_p): Now defined simply in terms of
39267         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
39268         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
39269         and to respect the namespace rules better.
39270
39271 2005-09-08  Simon Josefsson  <jas@extundo.com>
39272
39273         * modules/socklen: New file.
39274
39275 2005-09-08  Simon Josefsson  <jas@extundo.com>
39276
39277         * m4/socklen.m4: New file.
39278
39279 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
39280
39281         * modules/utimens (Files): Add m4/utimbuf.m4, since
39282         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
39283         Reported by Sergey Poznyakoff.
39284
39285 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
39286
39287         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
39288         definitions, since that's the preferred style in glibc.
39289         Fix a minor spacing issue, and update copyright notice to match
39290         glibc's.
39291
39292 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
39293
39294         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
39295
39296 2005-09-06  Simon Josefsson  <jas@extundo.com>
39297
39298         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
39299         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
39300
39301 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
39302
39303         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
39304         warning.
39305
39306 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
39307
39308         * config/srclist.txt: Add glibc bug 1302.
39309
39310 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
39311
39312         Change bitset word type from unsigned int to unsigned long int,
39313         as this has better performance on typical 64-bit hosts.
39314         Port bitset code to hosts with unusual word sizes.
39315         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
39316         (build_collating_symbol):
39317         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
39318         argument is a bitset.  This is merely a style issue, but it makes
39319         it clearer that an entire array is expected.
39320         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
39321         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
39322         Port to the case where bitset_word is not the same as unsigned int.
39323         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
39324         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
39325         Likewise.
39326         * lib/regexec.c (check_dst_limits_calc_pos_1,
39327         check_subexp_matching_top):
39328         (build_trtable, group_nodes_into_DFAstates):
39329         Likewise.
39330         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
39331         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
39332         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
39333         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
39334         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
39335         * lib/regcomp.c (optimize_subexps, lower_subexp):
39336         Work even if bitset_word has holes in its bitwise representation.
39337         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
39338         * lib/regexec.c (check_dst_limits_calc_pos_1,
39339         check_subexp_matching_top):
39340         Likewise.
39341         * lib/regex_internal.c (re_string_reconstruct):
39342         Don't assume UCHAR_MAX == 255.
39343         * lib/regex_internal.h (bitset_set_all): Likewise.
39344         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
39345         All uses changed.
39346         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
39347         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
39348         All uses changed.
39349         (BITSET_WORD_MAX): New macro.
39350         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
39351         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
39352         (bitset_empty, bitset_copy):
39353         Prefer sizeof (bitset) to multiplying it out ourselves.
39354         (bitset_not_merge): Remove; unused.
39355         (bitset_contain): Return bool, not unsigned int with one bit on.
39356         All callers changed.
39357         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
39358         alignment than re_node_set; do this by defining a new internal
39359         type struct dests_alloc and using it to allocate memory.
39360
39361 2005-09-05  Bruno Haible  <bruno@clisp.org>
39362
39363         * gnulib-tool (func_import): Fix comparison in handling of symbolic
39364         links.
39365
39366 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
39367
39368         * modules/size_max (Makefile.am): Add size_max.h
39369
39370 2005-09-04  Derek Price  <derek@ximbiot.com>
39371
39372         * gnulib-tool (func_import): Fix reversed $symbolic logic.
39373
39374 2005-09-03  Simon Josefsson  <jas@extundo.com>
39375
39376         * gnulib-tool: Fix typo.
39377
39378 2005-09-03  Simon Josefsson  <jas@extundo.com>
39379
39380         * config/srclist.txt: Add glibc bug 1293.
39381
39382 2005-09-03  Derek Price  <derek@ximbiot.com>
39383
39384         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
39385         From Larry Jones <lawrence.jones@ugs.com>.
39386
39387 2005-09-02  Simon Josefsson  <jas@extundo.com>
39388
39389         * modules/socklen: New file.
39390
39391 2005-09-02  Simon Josefsson  <jas@extundo.com>
39392
39393         * modules/havelib: New module.
39394
39395         * modules/gettext, modules/iconv, modules/lock, modules/readline:
39396         Use havelib.
39397
39398 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
39399
39400         Check for arithmetic overflow when calculating sizes, to prevent
39401         some buffer-overflow issues.  These patches are conservative, in the
39402         sense that when I couldn't determine whether an overflow was possible,
39403         I inserted a run-time check.
39404         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
39405         macros.
39406         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
39407         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
39408         (re_xnrealloc, re_x2nrealloc): New inline functions.
39409         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
39410         parse_bracket_exp):
39411         (build_equiv_class, build_charclass): Check for arithmetic overflow
39412         in size expression calculations.
39413         * lib/regex_internal.c (re_string_realloc_buffers):
39414         (build_wcs_upper_buffer, re_node_set_add_intersect):
39415         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
39416         (re_dfa_add_node, register_state): Likewise.
39417         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
39418         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
39419         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
39420         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
39421
39422 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
39423
39424         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
39425         m4/ulonglong.m4.  Problem reported by Martin Lambers.
39426
39427 2005-09-02  Bruno Haible  <bruno@clisp.org>
39428
39429         Support for lib vs. lib64 distinction on biarch platforms.
39430         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
39431         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
39432         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
39433
39434 2005-09-02  Bruno Haible  <bruno@clisp.org>
39435
39436         * gnulib-tool (import): In the other first-use case, provide defaults
39437         as well.
39438
39439 2005-09-02  Bruno Haible  <bruno@clisp.org>
39440
39441         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
39442         patches not yet found in the latest gettext release.
39443
39444 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
39445
39446         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
39447         to avoid a collision with bits/local_lim.h in glibc.
39448         All uses changed.  Problem reported by Dmitry V. Levin in
39449         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
39450
39451         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
39452         bugs in int versus size_t comparisons.
39453         (re_string_context_at): Fix bug where the code assumed that
39454         Idx is signed.
39455
39456         Use bool where appropriate.
39457         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
39458         All callers changed.
39459         (calc_eclosure_iter): Likewise, for ROOT arg.
39460         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
39461         (build_charclass_op): Likewise, for NON_MATCH arg.
39462         * lib/regex_internal.c (re_string_allocate, re_string_construct):
39463         (re_string_construct_common): Likewise, for ICASE arg.
39464         * lib/regexec.c (re_search_2_stub, re_search_stub):
39465         Likewise, for RET_LEN arg.
39466         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
39467         (set_regs): Likewise, for FL_BACKTRACK arg.
39468         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
39469         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
39470         (calc_eclosure_iter, parse_bracket_exp):
39471         Use bool for internal variables that are booleans.
39472         * lib/regexec.c (re_search_internal, check_matching,
39473         proceed_next_node):
39474         (set_regs, build_sifted_states, sift_states_bkref):
39475         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
39476         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
39477         (find_collation_sequence_value):
39478         Likewise.
39479         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
39480         (re_node_set_compare):
39481         Return bool, not int. All callers changed.
39482         * lib/regexec.c (check_halt_node_context, check_dst_limits):
39483         (build_trtable, check_node_accept): Likewise.
39484         * lib/regex_internal.h: Include stdbool.h.
39485
39486         Fix bugs uncovered when converting to bool.
39487         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
39488         failure instead of charging ahead blindly.
39489         * lib/regex_internal.c (register_state): Likewise.
39490         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
39491         for freeing internal storage.
39492         (group_nodes_into_DFA_states): Use unsigned int, not int, for
39493         bitset pieces used as boolean, to avoid undefined behavior
39494         on hosts that do int overflow checking.
39495
39496 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
39497
39498         * config/srclist.txt: Add glibc bugs 1285-1287.
39499
39500 2005-09-01  Jim Meyering  <jim@meyering.net>
39501
39502         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
39503         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
39504         Require gl_STAT_MACROS, too.
39505
39506 2005-09-01  Bruno Haible  <bruno@clisp.org>
39507
39508         * gnulib-tool (import): In the first-use case, provide defaults.
39509
39510 2005-09-01  Bruno Haible  <bruno@clisp.org>
39511
39512         * gnulib-tool (func_import): Remove the .tmp files.
39513
39514 2005-09-01  Bruno Haible  <bruno@clisp.org>
39515
39516         * gnulib-tool (func_import): Fix handling of symbolic links.
39517
39518 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39519
39520         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
39521         old glibc regex code mishandles strings longer than 2**31 bytes.
39522         This patch fixes this when the regex code is used in gnulib
39523         (i.e., outside glibc).
39524
39525         This patch should not affect the use of the regex code inside
39526         glibc.  No doubt this problem also needs to be handled for glibc
39527         as well, but the result will be an incompatible change to the
39528         glibc ABI, and the old ABI will have to be supported too.  That
39529         can be the the subject for another patch.
39530
39531         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
39532         governing whether the rest of this patch is active.  By default,
39533         the macro is disabled and the patch has no effect.
39534         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
39535         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
39536         (struct re_pattern_buffer, re_search, re_search_2, re_match):
39537         (re_match_2, re_set_registers): Use the new types.
39538         * lib/regex_internal.h (Idx, re_hashval_t): New types.
39539         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
39540         New macros.
39541         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
39542         (re_string_context_at, bin_tree_t, re_dfastate_t):
39543         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
39544         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
39545         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
39546         (re_string_char_size_at, re_string_wchar_at):
39547         (re_string_elem_size_at):
39548         Use the new types and macros to port to 64-bit hosts.
39549         Use unsigned types for internal values, so that the code
39550         mostly works even for arrays larger than SSIZE_MAX.
39551         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
39552         (search_duplicated_node, calc_eclosure_iter, fetch_number):
39553         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
39554         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
39555         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
39556         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
39557         (calc_inveclosure, parse_dup_op, build_range_exp):
39558         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
39559         (fetch_number, create_token_tree, mark_opt_subexp):
39560         Likewise.
39561         * lib/regex_internal.c (re_string_construct_common,
39562         create_ci_newstate):
39563         (create_cd_newstate, re_string_allocate, re_string_construct):
39564         (re_string_realloc_buffers, build_wcs_upper_buffer):
39565         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
39566         (re_string_reconstruct, re_string_peek_byte_case):
39567         (re_string_fetch_byte_case, re_string_context_at):
39568         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
39569         (re_node_set_init_copy, re_node_set_add_intersect):
39570         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
39571         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
39572         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
39573         (re_acquire_state, re_acquire_state_context, register_state):
39574         Likewise.
39575         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
39576         search_cur_bkref_entry):
39577         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
39578         (re_search_internal, re_search_2_stub, re_search_stub)
39579         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
39580         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
39581         (update_cur_sifted_state, check_dst_limits):
39582         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
39583         (check_subexp_limits, sift_states_bkref, merge_state_array):
39584         (check_subexp_matching_top, get_subexp, get_subexp_sub):
39585         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
39586         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
39587         (expand_bkref_cache, check_node_accept_bytes):
39588         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
39589         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
39590         (acquire_init_state_context, check_halt_node_context):
39591         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
39592         (sift_states_backward, clean_state_log_if_needed):
39593         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
39594         (find_recover_state, transit_state_sb, transit_state_mb):
39595         (transit_state_bkref, build_trtable, match_ctx_clean):
39596         Likewise.
39597         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
39598         to work around an assumption that REG_MISSING is negative.
39599
39600         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
39601         (seek_collating_symbol_entry) [defined _LIBC]:
39602         (lookup_collation_sequence_value) [defined _LIBC]:
39603         (build_range_exp, build_collating_symbol) [defined _LIBC]:
39604         Use prototypes rather than old-style function definitions.
39605         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
39606         (transit_state_sb) [0]:
39607         (find_collation_sequence_value) [defined _LIBC]: Likewise.
39608
39609         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
39610         rm_eo.
39611
39612         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
39613         (optimize_subexps, lower_subexp):
39614         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
39615         since the signed shift might overflow.  Use 1u<<31 instead.
39616         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
39617         Likewise.
39618         * lib/regexec.c (check_dst_limits_calc_pos_1,
39619         check_subexp_matching_top): Likewise.
39620
39621         * lib/regcomp.c (optimize_subexps, lower_subexp):
39622         Use CHAR_BIT rather than 8, for clarity.
39623         * lib/regexec.c (check_dst_limits_calc_pos_1):
39624         (check_subexp_matching_top): Likewise.
39625         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
39626         have to worry about portability issues when shifting it left.
39627         Remove no-longer-needed test for table_size > 0.
39628         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
39629         in a word, as the resulting behavior is undefined.
39630         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
39631         in one case, a <= should have been an <, and in another case the
39632         whole test was missing.
39633         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
39634         the standard name CHAR_BIT.
39635         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
39636         this is not true on one's complement and signed-magnitude hosts.
39637
39638         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
39639         next_last_offset.
39640         (struct re_dfa_t): Remove unused member states_alloc.
39641         * lib/regcomp.c (init_dfa): Don't initialize unused members.
39642
39643 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39644
39645         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
39646         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
39647         and large-file glibc and in 32-bit large-file Solaris.
39648
39649 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39650
39651         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
39652         lengths fit in regoff_t; this isn't true if regoff_t is the same
39653         width as size_t.
39654         * lib/regex.c (re_search_internal): 5th arg is LAST_START
39655         (= START + RANGE) instead of RANGE.  This avoids overflow
39656         problems when regoff_t is the same width as size_t.
39657         All callers changed.
39658         (re_search_2_stub): Check for overflow when adding the
39659         sizes of the two strings.
39660         (re_search_stub): Check for overflow when adding START
39661         to RANGE; if it occurs, substitute the extreme value.
39662
39663 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39664
39665         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
39666
39667 2005-08-31  Jim Meyering  <jim@meyering.net>
39668
39669         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
39670         a pointer-to-const.
39671         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
39672         (register_state): Likewise.
39673         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
39674         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
39675         (group_nodes_into_DFAstates): Likewise.
39676
39677 2005-08-31  Jim Meyering  <jim@meyering.net>
39678
39679         * check-module: Add a FIXME comment.
39680
39681 2005-08-31  Eric Blake  <ebb9@byu.net>
39682
39683         * modules/unistd-safer (Files): Add unistd--.h.
39684         * modules/stdio-safer (Files): Add stdio--.h.
39685
39686 2005-08-31  Derek Price  <derek@ximbiot.com>
39687
39688         * lib/getdelim.c (getdelim): Return EOF on EOF.
39689         Reported by Larry Jones <lawrence.jones@ugs.com>.
39690
39691 2005-08-31  Bruno Haible  <bruno@clisp.org>
39692
39693         Avoid unnecessary diffs in the generated lib/Makefile.am.
39694         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
39695         the generated files.
39696         (func_import): Don't set cmd.
39697
39698 2005-08-31  Bruno Haible  <bruno@clisp.org>
39699
39700         * lib/strstr.c: Include <stddef.h>, for NULL.
39701         * lib/strcasestr.c: Likewise.
39702         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
39703
39704 2005-08-31  Bruno Haible  <bruno@clisp.org>
39705
39706         * gnulib-tool: New option --macro-prefix.
39707         (func_import): Use macro_prefix.
39708         (import): Handle option --macro-prefix.
39709
39710 2005-08-31  Bruno Haible  <bruno@clisp.org>
39711
39712         * gnulib-tool (import): Rename most ac_* variables to cached_*.
39713         Also use new variables cached_lgpl, cached_libtool.
39714
39715 2005-08-31  Bruno Haible  <bruno@clisp.org>
39716
39717         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
39718         always instantiating them.
39719
39720 2005-08-31  Bruno Haible  <bruno@clisp.org>
39721
39722         * gnulib-tool (func_import): Read the previous cached settings
39723         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
39724         earlier added by gnulib but are now dropped. Warn when a gnulib file
39725         overwrites a non-gnulib file.
39726
39727 2005-08-31  Bruno Haible  <bruno@clisp.org>
39728
39729         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
39730         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
39731         projects that don't keep autogenerated files in CVS. Put into
39732         actioncmd only the specified modules, not the transitive closure.
39733
39734 2005-08-31  Bruno Haible  <bruno@clisp.org>
39735
39736         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
39737         Create directories that shall be filled.
39738         (import): Don't look for gl_* macros in configure.ac. Recurse across
39739         all directories containing a gnulib-cache.m4 files, if meaningful.
39740
39741 2005-08-31  Bruno Haible  <bruno@clisp.org>
39742
39743         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
39744         (import): Set seen_libtool when we see gl_LIBTOOL.
39745
39746 2005-08-31  Bruno Haible  <bruno@clisp.org>
39747
39748         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
39749         declaration macro definitions from generated gnulib.m4.
39750
39751 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
39752
39753         * lib/iconvme.h: Add prototype for iconv_alloc.
39754
39755 2005-08-29  Simon Josefsson  <jas@extundo.com>
39756
39757         * lib/iconvme.c: Fix errno.
39758
39759 2005-08-29  Bruno Haible  <bruno@clisp.org>
39760
39761         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
39762         that it works when the directory contains spaces.
39763
39764 2005-08-29  Bruno Haible  <bruno@clisp.org>
39765
39766         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
39767
39768 2005-08-29  Bruno Haible  <bruno@clisp.org>
39769
39770         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
39771         Emit more advice.
39772
39773 2005-08-29  Bruno Haible  <bruno@clisp.org>
39774         and Stepan Kasal  <kasal@ucw.cz>
39775
39776         * check-module: If more parameters are given, check each of them
39777         separately; add more exceptions, as noted by Jim Meyering.
39778         (check_module): New procedure.
39779         (%exempt_header): Now contains all exceptions.
39780
39781 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
39782
39783         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
39784
39785 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
39786
39787         * lib/iconvme.c: Split iconv_string into iconv_alloc.
39788
39789 2005-08-28  Bruno Haible  <bruno@clisp.org>
39790
39791         * m4/gnulib-tool.m4: New file.
39792
39793 2005-08-27  Jim Meyering  <jim@meyering.net>
39794
39795         * modules/unistd-safer (Files): Add pipe-safer.c.
39796         * modules/fcntl-safer (Files): Add creat-safer.c.
39797
39798 2005-08-27  Jim Meyering  <jim@meyering.net>
39799
39800         * m4/stdlib-safer.m4: New file.  From coreutils.
39801         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
39802         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
39803         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
39804         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
39805         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
39806
39807 2005-08-27  Jim Meyering  <jim@meyering.net>
39808
39809         * lib/fopen-safer.c: Merge minor changes from coreutils.
39810         * lib/dup-safer.c: Likewise.
39811         * lib/fd-safer.c: Likewise.
39812
39813         Merge from coreutils.
39814         * lib/stdio--.h: New file.
39815         * lib/stdlib--.h: New file.
39816         * lib/mkstemp-safer.c: New file.
39817
39818         GNU tar needs these.
39819         * lib/pipe-safer.c: New file.
39820         * lib/creat-safer.c: New file.
39821         * lib/fcntl--.h (creat): Define to creat_safer.
39822         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
39823         * lib/unistd--.h (pipe): Define to pipe_safer.
39824         * lib/unistd-safer.h: Declare pipe_safer.
39825
39826 2005-08-26  Simon Josefsson  <jas@extundo.com>
39827
39828         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
39829         Haible <bruno@clisp.org>.
39830
39831 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
39832
39833         * lib/regex_internal.h: Remove all references to
39834         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
39835         or better.
39836         (bitset_not, bitset_merge, bitset_not_merge):
39837         (bitset_mask, re_string_allocate, re_string_construct):
39838         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
39839         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
39840         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
39841         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
39842         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
39843         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
39844         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
39845         (re_acquire_state_context):
39846         Remove unnecessary forward decls.
39847         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
39848         Put __attribute at function definition,
39849         now that the function decl has been removed.
39850         * lib/regex_internal.c (re_string_peek_byte_case):
39851         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
39852         Likewise.
39853
39854 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
39855
39856         * m4/regex.m4: Add AC_PREREQ(2.50).
39857         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
39858
39859 2005-08-25  Simon Josefsson  <jas@extundo.com>
39860
39861         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
39862         __fsetlocking.
39863
39864 2005-08-25  Simon Josefsson  <jas@extundo.com>
39865
39866         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
39867         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
39868         GLIBC specific code.
39869
39870 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
39871
39872         Make regex safe for g++.  This fixes one real bug (an "err"
39873         that should have been "*err").  g++ problem reported by
39874         Sam Steingold.
39875         * lib/regex_internal.h (re_calloc): New macro, consistent with
39876         re_malloc etc.  All callers of calloc changed to use re_calloc.
39877         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
39878         not int.  All callers changed.
39879         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
39880         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
39881         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
39882         (find_recover_state): Change "err" to "*err"; this fixes what
39883         appears to be a real bug.
39884         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
39885         versus int.
39886
39887 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
39888
39889         * modules/regex (Depends-on): Add malloc, since the code
39890         assumes that !malloc(0) means failure.
39891
39892 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
39893
39894         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
39895
39896         alloca modernization/simplification for regex.
39897         * lib/regex.c: Remove portability cruft for alloca.  This no longer
39898         needs to be at the start of the file, and can be moved into
39899         regex_internal.h and simplified.
39900         * lib/regex_internal.h: Include <alloca.h>.
39901         (__libc_use_alloca) [!defined _LIBC]: New macro.
39902         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
39903         now works outside glibc.
39904
39905 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
39906
39907         * config/srclist.txt: Add glibc bugs 1241, 1245.
39908
39909 2005-08-25  Jim Meyering  <jim@meyering.net>
39910
39911         * lib/open-safer.c: Include <config.h>.
39912         Otherwise, we'd lose LARGEFILE support in any file using
39913         e.g. "fcntl--.h"
39914
39915 2005-08-25  Bruno Haible  <bruno@clisp.org>
39916
39917         * m4/minmax.m4: Require autoconf 2.52.
39918         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
39919         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
39920         alternatives of translit over the alphabet.
39921         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
39922
39923 2005-08-24  Simon Josefsson  <jas@extundo.com>
39924
39925         * tests/test-getpass.c: New file.
39926
39927 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
39928
39929         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
39930         for GNU regex features.
39931
39932 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
39933
39934         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
39935         * lib/regex.h (regerror): Likewise.
39936
39937         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
39938         requires this.  (The code never needed it.)
39939
39940         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
39941         All uses of recently-renamed identifiers changed to use the new,
39942         POSIX-compliant names.  The code will build and run just fine
39943         without these changes, but it's better to eat our own dog food
39944         and use the standard-conforming names.
39945
39946         * lib/regex.h: Fix a multitude of POSIX name space violations.
39947         These changes have an effect only for programs that define
39948         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
39949         do not change anything for programs compiled in the normal way.
39950         Also, there is no effect on the ABI.
39951
39952         (_REGEX_SOURCE): New macro.
39953         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
39954         defined and _GNU_SOURCE is not; this fixes a name space violation.
39955
39956         Rename the following macros to obey POSIX requirements.
39957         The old names are still visible as macros if _REGEX_SOURCE is defined.
39958         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
39959         RE_BACKSLASH_ESCAPE_IN_LISTS.
39960         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
39961         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
39962         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
39963         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
39964         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
39965         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
39966         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
39967         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
39968         (REG_INTERVALS): renamed from RE_INTERVALS.
39969         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
39970         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
39971         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
39972         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
39973         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
39974         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
39975         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
39976         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
39977         RE_UNMATCHED_RIGHT_PAREN_ORD.
39978         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
39979         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
39980         (REG_DEBUG): renamed from RE_DEBUG.
39981         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
39982         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
39983         unusual, since we can't clash with the POSIX REG_ICASE.
39984         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
39985         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
39986         (REG_NO_SUB): renamed from RE_NO_SUB.
39987         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
39988         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
39989         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
39990         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
39991         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
39992         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
39993         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
39994         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
39995         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
39996         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
39997         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
39998         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
39999         RE_SYNTAX_POSIX_MINIMAL_BASIC.
40000         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
40001         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
40002         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
40003         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
40004         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
40005         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
40006         (REG_FIXED): Renamed from REGS_FIXED.
40007         (REG_NREGS): Renamed from RE_NREGS.
40008
40009         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
40010         of other REG_* macros, since POSIX says the user is allowed to
40011         #undef these macros selectively.
40012
40013         (reg_errcode_t): Update comment stating what other tables need
40014         to be consistent.
40015
40016         Rename the following enum values to obey POSIX requirements.
40017         The old names are still visible as macros.
40018         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
40019         is not defined, since GNU is supposed to be a superset of POSIX as
40020         much as possible, and since we want reg_errcode_t to be a signed
40021         type for implementation consistency.
40022         (_REG_NOERROR): Renamed from REG_NOERROR.
40023         (_REG_NOMATCH): Renamed from REG_NOMATCH.
40024         (_REG_BADPAT): Renamed from REG_BADPAT.
40025         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
40026         (_REG_ECTYPE): Renamed from REG_ECTYPE.
40027         (_REG_EESCAPE): Renamed from REG_EESCAPE.
40028         (_REG_ESUBREG): Renamed from REG_ESUBREG.
40029         (_REG_EBRACK): Renamed from REG_EBRACK.
40030         (_REG_EPAREN): Renamed from REG_EPAREN.
40031         (_REG_EBRACE): Renamed from REG_EBRACE.
40032         (_REG_BADBR): Renamed from REG_BADBR.
40033         (_REG_ERANGE): Renamed from REG_ERANGE.
40034         (_REG_ESPACE): Renamed from REG_ESPACE.
40035         (_REG_BADRPT): Renamed from REG_BADRPT.
40036         (_REG_EEND): Renamed from REG_EEND.
40037         (_REG_ESIZE): Renamed from REG_ESIZE.
40038         (_REG_ERPAREN): Renamed from REG_ERPAREN.
40039         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
40040         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
40041         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
40042         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
40043
40044         (_REG_RE_NAME, _REG_RM_NAME): New macros.
40045         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
40046         changed.  But support the old name if the new one is not defined
40047         and if _REGEX_SOURCE.
40048
40049         Change the following member names in struct re_pattern_buffer.
40050         The old names are still supported if !_REGEX_SOURCE.
40051         The new names are always supported, regardless of _REGEX_SOURCE.
40052         (re_buffer): Renamed from buffer.
40053         (re_allocated): Renamed from allocated.
40054         (re_used): Renamed from used.
40055         (re_syntax): Renamed from syntax.
40056         (re_fastmap): Renamed from fastmap.
40057         (re_translate): Renamed from translate.
40058         (re_can_be_null): Renamed from can_be_null.
40059         (re_regs_allocated): Renamed from regs_allocated.
40060         (re_fastmap_accurate): Renamed from fastmap_accurate.
40061         (re_no_sub): Renamed from no_sub.
40062         (re_not_bol): Renamed from not_bol.
40063         (re_not_eol): Renamed from not_eol.
40064         (re_newline_anchor): Renamed from newline_anchor.
40065
40066         Change the following member names in struct re_registers.
40067         The old names are still supported if !_REGEX_SOURCE.
40068         The new names are always supported, regardless of _REGEX_SOURCE.
40069         (rm_num_regs): Renamed from num_regs.
40070         (rm_start): Renamed from start.
40071         (rm_end): Renamed from end.
40072
40073         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
40074         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
40075         Prepend __ to parameter names.
40076
40077         Undo yesterday's changes.
40078
40079 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
40080
40081         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
40082         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
40083         lib/regex.c.
40084
40085 2005-08-24  Jim Meyering  <jim@meyering.net>
40086
40087         Sync from coreutils.
40088         * m4/fcntl-safer.m4: New file.
40089
40090         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
40091         and object files for this module.
40092
40093 2005-08-24  Jim Meyering  <jim@meyering.net>
40094
40095         Sync from coreutils.
40096         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
40097
40098 2005-08-24  Jim Meyering  <jim@meyering.net>
40099
40100         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
40101         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
40102
40103 2005-08-24  Jim Meyering  <jim@meyering.net>
40104
40105         * modules/fcntl-safer: New module.
40106         * modules/fts (Depends-on): Add fcntl-safer.
40107         * MODULES.html.sh (File descriptor based Input/Output):
40108         Add fcntl-safer.
40109
40110 2005-08-24  Bruno Haible  <bruno@clisp.org>
40111
40112         Support for unit test modules.
40113         * modules/README: Mention tests modules.
40114         * modules/TEMPLATE-TESTS: New file.
40115         * gnulib-tool: New options --extract-tests-module, --with-tests and
40116         --tests-base (unused for the moment).
40117         (testsbase, inctests): New variables.
40118         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
40119         (func_verify_module): Exclude TEMPLATE-TESTS.
40120         (func_verify_nontests_module, func_verify_tests_module): New functions.
40121         (func_get_dependencies): Add implicit dependency for tests modules.
40122         (func_get_tests_module): New function.
40123         (func_modules_transitive_closure): When --with-tests was specified,
40124         include the unit tests as well, unless explicitly avoided.
40125         (func_emit_lib_Makefile_am): Ignore the tests modules here.
40126         (func_emit_tests_Makefile_am): New function.
40127         (func_create_testdir): When --with-tests was specified, emit a
40128         tests/ directory.
40129         * MODULES.html.sh (Future developments): Update.
40130
40131 2005-08-24  Bruno Haible  <bruno@clisp.org>
40132
40133         * modules/tls-tests: New file.
40134         * tests/test-tls.c: New file, from GNU gettext.
40135
40136 2005-08-24  Bruno Haible  <bruno@clisp.org>
40137
40138         * modules/lock-tests: New file.
40139         * tests/test-lock.c: New file, from GNU gettext.
40140
40141 2005-08-24  Bruno Haible  <bruno@clisp.org>
40142
40143         * lib/lock.h: Add multiple inclusion guard.
40144         * lib/tls.h: Add multiple inclusion guard.
40145
40146 2005-08-24  Bruno Haible  <bruno@clisp.org>
40147
40148         * gnulib-tool: Add support for the --aux-dir option to
40149         --create-testdir, --create-megatestdir, --test, --megatest.
40150         (func_create_testdir, func_create_megatestdir): Optionally emit a
40151         AC_CONFIG_AUX_DIR directive.
40152         (create-testdir, create-megatestdir, test, megatest): Provide a
40153         default value for $auxdir.
40154
40155 2005-08-24  Bruno Haible  <bruno@clisp.org>
40156
40157         * gnulib-tool (import): Use compound statement instead of subshell
40158         where possible.
40159
40160 2005-08-24  Bruno Haible  <bruno@clisp.org>
40161
40162         * gnulib-tool (import): Change --aux-dir default to "build-aux".
40163
40164 2005-08-24  Bruno Haible  <bruno@clisp.org>
40165
40166         * gnulib-tool (func_version): Update.
40167
40168 2005-08-24  Bruno Haible  <bruno@clisp.org>
40169
40170         * gnulib-tool (func_import, func_create_testdir,
40171         func_create_megatestdir): Quote all autoconf macro arguments.
40172
40173 2005-08-24  Bruno Haible  <bruno@clisp.org>
40174
40175         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
40176         option --force, because --force causes the aclocal.m4 of each
40177         subdirectory to be newer than the corresponding config.h.in.
40178
40179 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
40180
40181         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
40182         All contents moved to gl_REGEX.
40183         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
40184         assume that it does.
40185
40186 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
40187
40188         * lib/regex.h (REG_NOSYS)
40189         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
40190         Define, since POSIX requires it as of 2001.
40191         (_REG_ENOSYS)
40192         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
40193         New private symbol, used to keep the enum signed in all cases.
40194         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
40195         Youngman in
40196         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
40197
40198         * lib/regex_internal.c (re_string_skip_chars, register_state):
40199         (calc_state_hash):
40200         Remove forward decls; no longer needed now that we use prototypes.
40201         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
40202         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
40203         (clean_state_log_if_needed): Likewise.
40204
40205 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
40206
40207         * config/srclist.txt: Add glibc bugs 1231-1233.
40208
40209 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
40210
40211         Fix problems reported by Sam Steingold in
40212         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
40213         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
40214         assumed that reg_errcode_t is a signed type, which is not
40215         necessarily true if _XOPEN_SOURCE is not defined.
40216         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
40217         since some compilers warn about it otherwise.
40218
40219 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
40220
40221         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
40222         (init_word_char, create_initial_state, duplicate_node_closure):
40223         (fetch_token, peek_token_bracket, build_range_exp):
40224         (build_collating_symbol): Remove forward decls; no longer needed
40225         now that we use prototypes.
40226
40227         * lib/regcomp.c:
40228         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
40229         (re_compile_fastmap_iter, regcomp, regerror, regfree):
40230         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
40231         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
40232         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
40233         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
40234         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
40235         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
40236         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
40237         (build_range_exp, build_collating_symbol, parse_bracket_exp):
40238         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
40239         (build_charclass, build_charclass_op, fetch_number, create_tree):
40240         (create_token_tree, mark_opt_subexp, duplicate_tree):
40241         Use prototypes rather than old-style definitions.
40242
40243         * lib/regex_internal.c:
40244         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
40245         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
40246         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
40247         (re_string_reconstruct, re_string_peek_byte_case):
40248         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
40249         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
40250         (re_node_set_init_copy, re_node_set_add_intersect):
40251         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
40252         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
40253         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
40254         (re_acquire_state, re_acquire_state_context, register_state):
40255         (create_ci_newstate, create_cd_newstate, free_state):
40256         Likewise.
40257         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
40258         re_search_2):
40259         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
40260         (re_search_internal, prune_impossible_nodes):
40261         (acquire_init_state_context, check_matching, static):
40262         (check_halt_node_context, check_halt_state_context, proceed_next_node):
40263         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
40264         (update_regs, sift_states_backward, build_sifted_states):
40265         (clean_state_log_if_needed, merge_state_array):
40266         (update_cur_sifted_state, add_epsilon_src_nodes):
40267         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
40268         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
40269         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
40270         (find_recover_state, check_subexp_matching_top, transit_state_mb):
40271         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
40272         (check_arrival, check_arrival_add_next_nodes):
40273         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
40274         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
40275         (check_node_accept_bytes, check_node_accept, extend_buffers):
40276         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
40277         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
40278         (sift_ctx_init):
40279         Likewise.
40280
40281         * lib/regex_internal.h:
40282         (re_string_allocate, re_string_construct, re_string_reconstruct):
40283         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
40284         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
40285         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
40286         (re_string_context_at, re_string_peek_byte_case):
40287         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
40288         is defined, since we now use prototypes always.
40289
40290         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
40291         C89 or better.  All uses removed.
40292
40293 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
40294
40295         * config/srclist.txt: Add glibc bugs 1220-1227.
40296
40297 2005-08-20  Jim Meyering  <jim@meyering.net>
40298
40299         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
40300         of unused local, dfa.
40301
40302 2005-08-20  Bruno Haible  <bruno@clisp.org>
40303
40304         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
40305
40306 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
40307
40308         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
40309         (re_node_set_insert_last, re_dfa_add_node):
40310         Rename local variables to avoid GCC shadowing warnings.
40311
40312 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
40313
40314         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
40315         [defined lint]: Suppress bogus uninitialized-variable warnings.
40316
40317         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
40318         and let the caller return REG_ESPACE if out of space.  This
40319         removes an uninitialied-variable warning with GCC 4.0.1, and also
40320         avoids taking the address of a local variable.  All callers
40321         changed.
40322
40323 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
40324
40325         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
40326         $LIBCSRC/posix/regexec.c.
40327         Add glibc bug 1217 for regcomp.c.
40328
40329 2005-08-19  Jim Meyering  <jim@meyering.net>
40330
40331         * lib/regexec.c (proceed_next_node): Redo local variables to
40332         avoid GCC shadowing warnings.
40333
40334 2005-08-18  Bruno Haible  <bruno@clisp.org>
40335
40336         * lib/strstr.c (strstr): Fix return value in multibyte case.
40337         * lib/strcasestr.c (strcasestr): Likewise.
40338
40339 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
40340
40341         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
40342
40343 2005-08-17  Jim Meyering  <jim@meyering.net>
40344
40345         Make the %s format (seconds since the epoch) work for a negative
40346         number and when used with a zero-padded field width, e.g. %015s.
40347
40348         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
40349         label so that it precedes the code to set `digits'.  Otherwise,
40350         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
40351         print `00-22'.  Now, it prints `-0022', as it should.
40352
40353 2005-08-17  Bruno Haible  <bruno@clisp.org>
40354
40355         * modules/strstr (Files): Add m4/mbrtowc.m4.
40356         (Depends-on): Add mbuiter.
40357
40358 2005-08-17  Bruno Haible  <bruno@clisp.org>
40359
40360         * modules/strcasestr: New file.
40361         * MODULES.html.sh (String handling, based on ANSI C 89): Add
40362         strcasestr.
40363
40364 2005-08-17  Bruno Haible  <bruno@clisp.org>
40365
40366         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
40367
40368 2005-08-17  Bruno Haible  <bruno@clisp.org>
40369
40370         * modules/mbuiter: New file.
40371         * MODULES.html.sh (Extended multibyte and wide character utilities):
40372         Add mbuiter.
40373
40374 2005-08-17  Bruno Haible  <bruno@clisp.org>
40375
40376         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
40377         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
40378
40379 2005-08-17  Bruno Haible  <bruno@clisp.org>
40380
40381         * m4/strcasestr.m4: New file.
40382
40383 2005-08-17  Bruno Haible  <bruno@clisp.org>
40384
40385         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
40386         * lib/strstr.c: Completely rewritten, with multibyte locale support.
40387
40388 2005-08-17  Bruno Haible  <bruno@clisp.org>
40389
40390         * lib/strcasestr.h: New file.
40391         * lib/strcasestr.c: New file.
40392
40393 2005-08-17  Bruno Haible  <bruno@clisp.org>
40394
40395         * lib/strcasecmp.c: Use mbuiter.h.
40396
40397 2005-08-17  Bruno Haible  <bruno@clisp.org>
40398
40399         * lib/mbuiter.h: New file.
40400
40401 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
40402
40403         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
40404         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
40405         and gl_GETOPT are both invoked via different paths (as happens
40406         with GNU tar CVS because it uses both argp and getopt), the former
40407         wins.
40408
40409 2005-08-16  Bruno Haible  <bruno@clisp.org>
40410
40411         * modules/tls: New file.
40412         * MODULES.html.sh (Multithreading): Add tls.
40413
40414 2005-08-16  Bruno Haible  <bruno@clisp.org>
40415
40416         * modules/strnlen1: New file.
40417         * MODULES.html.sh (String handling): Add strnlen1.
40418
40419 2005-08-16  Bruno Haible  <bruno@clisp.org>
40420
40421         * modules/strcase (Files): Add m4/mbrtowc.m4.
40422         (Depends-on): Add strnlen1, mbchar.
40423
40424 2005-08-16  Bruno Haible  <bruno@clisp.org>
40425
40426         * modules/mbiter: New file.
40427         * MODULES.html.sh (Extended multibyte and wide character utilities):
40428         Add mbiter.
40429
40430 2005-08-16  Bruno Haible  <bruno@clisp.org>
40431
40432         * modules/mbfile: New file.
40433         * MODULES.html.sh (Extended multibyte and wide character utilities):
40434         Add mbfile.
40435
40436 2005-08-16  Bruno Haible  <bruno@clisp.org>
40437
40438         * modules/mbchar: New file.
40439         * MODULES.html.sh (Extended multibyte and wide character utilities):
40440         New section.
40441
40442 2005-08-16  Bruno Haible  <bruno@clisp.org>
40443
40444         * m4/tls.m4: New file, from GNU gettext.
40445
40446 2005-08-16  Bruno Haible  <bruno@clisp.org>
40447
40448         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
40449         always.
40450         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
40451
40452 2005-08-16  Bruno Haible  <bruno@clisp.org>
40453
40454         * m4/mbiter.m4: New file.
40455
40456 2005-08-16  Bruno Haible  <bruno@clisp.org>
40457
40458         * m4/mbfile.m4: New file.
40459
40460 2005-08-16  Bruno Haible  <bruno@clisp.org>
40461
40462         * m4/mbchar.m4: New file.
40463
40464 2005-08-16  Bruno Haible  <bruno@clisp.org>
40465
40466         * lib/tls.h: New file, from GNU gettext.
40467         * lib/tls.c: New file, from GNU gettext.
40468
40469 2005-08-16  Bruno Haible  <bruno@clisp.org>
40470
40471         * lib/strnlen1.h: New file.
40472         * lib/strnlen1.c: New file.
40473
40474 2005-08-16  Bruno Haible  <bruno@clisp.org>
40475
40476         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
40477         (mbi_init): Update.
40478         (mbi_avail, mbi_advance): Let the iteration end before the terminating
40479         NUL byte, not after it.
40480
40481 2005-08-16  Bruno Haible  <bruno@clisp.org>
40482
40483         * lib/strcase.h (strcasecmp): Add note in comments.
40484         * lib/strncasecmp.c: Use code from strcasecmp.c.
40485         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
40486         (strcasecmp): Work correctly in multibyte locales.
40487
40488 2005-08-16  Bruno Haible  <bruno@clisp.org>
40489
40490         * lib/mbiter.h: New file.
40491
40492 2005-08-16  Bruno Haible  <bruno@clisp.org>
40493
40494         * lib/mbfile.h: New file.
40495
40496 2005-08-16  Bruno Haible  <bruno@clisp.org>
40497
40498         * lib/mbchar.h: New file.
40499         * lib/mbchar.c: New file.
40500
40501 2005-08-16  Bruno Haible  <bruno@clisp.org>
40502
40503         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
40504         the valid ones. Makes the comparison operations transitive:
40505         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
40506         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
40507
40508 2005-08-15  Simon Josefsson  <jas@extundo.com>
40509
40510         * modules/ssize_t (License): Change to 'unlimited'.
40511
40512         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
40513
40514 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
40515
40516         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
40517         Add comments for each pending glibc patch.
40518
40519 2005-08-15  Bruno Haible  <bruno@clisp.org>
40520
40521         * lib/regex.h (__restrict_arr): Don't define to __restrict if
40522         __cplusplus is defined.
40523
40524 2005-08-14  Jim Meyering  <jim@meyering.net>
40525
40526         Sync from coreutils.
40527
40528         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
40529         Use the hash-table-based cycle-detection code not just when
40530         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
40531         Reported by James Youngman in
40532         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
40533         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
40534         FTS_TIGHT_CYCLE_CHECK.
40535         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
40536         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
40537         once again.
40538         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
40539         * lib/fts.c (fd_safer): Remove decl.
40540         Include fcntl--.h rather than unistd-safer.h
40541         (fts_safe_changedir): Don't call fd_safer; no longer needed
40542         now that we include fcntl--.h.
40543
40544 2005-08-12  Simon Josefsson  <jas@extundo.com>
40545
40546         * modules/getndelim2: Use ssize_t module.
40547         * modules/getnline: Likewise.
40548         * modules/safe-read: Likewise.
40549         * modules/xreadlink: Likewise.
40550
40551         * modules/ssize_t: New file.
40552
40553 2005-08-12  Simon Josefsson  <jas@extundo.com>
40554
40555         * m4/readline.m4: Look for termcap, curses or ncurses if required.
40556
40557 2005-08-12  Simon Josefsson  <jas@extundo.com>
40558
40559         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
40560         ssize_t.
40561
40562 2005-08-12  Simon Josefsson  <jas@extundo.com>
40563
40564         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
40565         readline, getdelim and check_version.
40566         (Support for systems lacking ISO C 99: Sizes of integer types):
40567         Add size_max.
40568
40569 2005-08-12  Bruno Haible  <bruno@clisp.org>
40570
40571         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
40572
40573 2005-08-11  Simon Josefsson  <jas@extundo.com>
40574
40575         * modules/readline: New file.
40576
40577         * modules/strnlen (Files): Add strnlen.h.
40578
40579 2005-08-11  Simon Josefsson  <jas@extundo.com>
40580
40581         * m4/readline.m4: New file.
40582
40583 2005-08-11  Simon Josefsson  <jas@extundo.com>
40584
40585         * lib/readline.h, readline.c: New file.
40586
40587 2005-08-11  Simon Josefsson  <jas@extundo.com>
40588
40589         * doc/gnulib.texi (Initial import, Finishing touches): Mention
40590         gl_AVOID.
40591
40592 2005-08-11  Bruno Haible  <bruno@clisp.org>
40593
40594         * lib/strnlen.h (strnlen): Change parameter name to match comment.
40595
40596 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
40597
40598         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
40599
40600 2005-08-10  Simon Josefsson  <jas@extundo.com>
40601
40602         * tests/test-iconvme.c: New file.
40603
40604 2005-08-10  Simon Josefsson  <jas@extundo.com>
40605
40606         * m4/strnlen.m4: New file.
40607
40608         * m4/strndup.m4: Don't check for strnlen declaration, done in
40609         strnlen.m4.
40610
40611 2005-08-10  Simon Josefsson  <jas@extundo.com>
40612
40613         * lib/strndup.c: Use strnlen.h.
40614
40615         * lib/strnlen.h: New file.
40616
40617 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
40618
40619         * README: Typos.
40620
40621 2005-08-02  Simon Josefsson  <jas@extundo.com>
40622
40623         * modules/readline: New file.
40624
40625 2005-08-02  Simon Josefsson  <jas@extundo.com>
40626
40627         * modules/getdelim: New file.
40628
40629         * modules/getline: Rewrite, don't use getndelim2.
40630
40631 2005-08-02  Simon Josefsson  <jas@extundo.com>
40632
40633         * m4/getline.m4: Separate out getdelim stuff into separate module.
40634
40635         * m4/getdelim.m4: New file.
40636
40637 2005-08-02  Simon Josefsson  <jas@extundo.com>
40638
40639         * lib/getline.h, getline.c: Rewrite.
40640
40641         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
40642
40643 2005-07-31  Bruno Haible  <bruno@clisp.org>
40644
40645         * lib/lock.h (gl_lock_initializer): New macro.
40646         (gl_lock_define_initialized): Use it.
40647         (gl_rwlock_initializer): New macro.
40648         (gl_rwlock_define_initialized): Use it.
40649         (gl_recursive_lock_initializer): New macro.
40650         (gl_recursive_lock_define_initialized): Use it.
40651
40652 2005-07-30  Karl Berry  <karl@gnu.org>
40653
40654         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
40655         Report from Ben Pfaff, regarding getopt.
40656
40657 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
40658
40659         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
40660         normal way.
40661         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
40662         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
40663         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
40664         (gl_GETOPT): Use the new macros.  Most of the implementation
40665         is moved to the new macros.  This is for programs like Emacs
40666         that don't want all the functionality of gl_GETOPT.
40667
40668 2005-07-26  Bruno Haible  <bruno@clisp.org>
40669
40670         * m4/lock.m4: Update from GNU gettext.
40671
40672 2005-07-26  Bruno Haible  <bruno@clisp.org>
40673
40674         * lib/lock.h: Update from GNU gettext.
40675         * lib/lock.c: Update from GNU gettext.
40676
40677 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
40678
40679         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
40680         obsolescent AC_TRY_RUN.  Include the default includes files, for
40681         'exit'.
40682
40683 2005-07-24  Bruno Haible  <bruno@clisp.org>
40684
40685         * modules/visibility: New file.
40686         * MODULES.html.sh (Misc): Add visibility.
40687
40688 2005-07-24  Bruno Haible  <bruno@clisp.org>
40689
40690         * m4/visibility.m4: New file.
40691
40692 2005-07-24  Bruno Haible  <bruno@clisp.org>
40693
40694         * doc/visibility.texi: New file.
40695
40696 2005-07-22  Bruno Haible  <bruno@clisp.org>
40697
40698         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
40699         $(ALLOCA_H), redundant through BUILT_SOURCES.
40700         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
40701         redundant through BUILT_SOURCES.
40702         * modules/byteswap (Makefile.am): Remove explicit dependency on
40703         $(BYTESWAP_H), redundant through BUILT_SOURCES.
40704         * modules/fnmatch (Makefile.am): Remove explicit dependency on
40705         $(FNMATCH_H), redundant through BUILT_SOURCES.
40706         * modules/getopt (Makefile.am): Remove explicit dependency on
40707         $(GETOPT_H), redundant through BUILT_SOURCES.
40708         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
40709         redundant through BUILT_SOURCES.
40710         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
40711         redundant through BUILT_SOURCES.
40712         * modules/stdbool (Makefile.am): Remove explicit dependency on
40713         $(STDBOOL_H), redundant through BUILT_SOURCES.
40714         * modules/stdint (Makefile.am): Remove explicit dependency on
40715         $(STDINT_H), redundant through BUILT_SOURCES.
40716         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
40717         Remove explicit dependency on $(SYSEXITS_H).
40718         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
40719
40720 2005-07-18  Simon Josefsson  <jas@extundo.com>
40721
40722         * lib/check-version.c (check_version): Accept identical versions too.
40723
40724 2005-07-18  Bruno Haible  <bruno@clisp.org>
40725
40726         * modules/lock: New file.
40727         * MODULES.html.sh (Multithreading): New section.
40728
40729 2005-07-18  Bruno Haible  <bruno@clisp.org>
40730
40731         * m4/lock.m4: New file, from GNU gettext.
40732
40733 2005-07-18  Bruno Haible  <bruno@clisp.org>
40734
40735         * lib/lock.h: New file, from GNU gettext.
40736         * lib/lock.c: New file, from GNU gettext.
40737
40738 2005-07-18  Bruno Haible  <bruno@clisp.org>
40739
40740         * lib/lock.h (gl_once_t): New type.
40741         (gl_once_define, gl_once): New macros.
40742         * lib/lock.c (fresh_once): New variable.
40743         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
40744         functions.
40745
40746 2005-07-16  Simon Josefsson  <jas@extundo.com>
40747
40748         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
40749         workaround, suggested by Bruno.
40750
40751 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
40752
40753         * modules/xalloc (Depends-on): Add xalloc-die.
40754         * modules/xvasprintf (Depends-on): Add xalloc-die.
40755
40756 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
40757
40758         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
40759         with a minor change.
40760
40761 2005-07-15  Bruno Haible  <bruno@clisp.org>
40762
40763         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
40764         When using lib/poll.c, define poll as rpl_poll.
40765
40766 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
40767
40768         * modules/argp (Depends-on): Remove unlocked-io.
40769
40770 2005-07-14  Derek Price  <derek@ximbiot.com>
40771
40772         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
40773         for glob symlink bug.
40774
40775 2005-07-14  Bruno Haible  <bruno@clisp.org>
40776
40777         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
40778         Instead, test for *_unlocked function declarations directly.
40779
40780 2005-07-11  Simon Josefsson  <jas@extundo.com>
40781
40782         * modules/size_max: New file.
40783
40784         * modules/xsize: Depend on size_max module for size_max.m4.
40785
40786 2005-07-11  Simon Josefsson  <jas@extundo.com>
40787
40788         * lib/size_max.h: New file.
40789
40790 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
40791
40792         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
40793         copyright symbol and the year.
40794         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
40795         (version_etc_va): Use parameterized copyright notice.
40796         Reword to conform to the current GNU coding standards.
40797
40798 2005-07-11  Karl Berry  <karl@gnu.org>
40799
40800         * doc/gnulib.texi (Quoting): new node.
40801         (Initial import): more info, from Patrice.
40802
40803 2005-07-11  Bruno Haible  <bruno@clisp.org>
40804
40805         * gnulib-tool (func_usage): Document option --avoid.
40806         (Command line options): Handle --avoid.
40807         (func_acceptable): New function.
40808         (func_modules_transitive_closure): Use it.
40809
40810 2005-07-11  Bruno Haible  <bruno@clisp.org>
40811
40812         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
40813         Reported by Jim Meyering.
40814
40815 2005-07-10  Bruno Haible  <bruno@clisp.org>
40816
40817         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
40818         Needed when size_t is smaller than 'unsigned int'.
40819         Reported by Paul Eggert.
40820
40821 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
40822
40823         * modules/argp (Depends-on): Add unlocked-io
40824
40825 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
40826
40827         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
40828         block of defines.
40829
40830 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
40831
40832         * config/srclist.txt: Comment out regcomp.c, since we have a porting
40833         fix now.
40834
40835 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
40836         and Paul Eggert  <eggert@cs.ucla.edu>
40837
40838         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
40839         in wint_t, not wchar_t.  Remove now-unnecessary cast.
40840
40841 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
40842
40843         * modules/regex (Files): Add lib/regex_internal.c,
40844         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
40845         (Depends-on): Add extensions.
40846         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
40847
40848 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
40849
40850         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
40851         pathconf.
40852         * m4/same.m4 (gl_SAME): Likewise.
40853         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
40854
40855         * m4/regex.m4: Adjust to new libc regex implementation.
40856         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
40857         all the .c and .h parts of (the new) regex.
40858         Quote the m4 stuff better.
40859         Check for RE_ICASE bug of old gnulib.
40860         Check for REG_STARTEND of recent libc.
40861         Rename local variables from jm_* to gl_*.
40862         Quote operand of "test -f".
40863         Say "recent enough" version of libc, not "version 2".
40864         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
40865         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
40866         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
40867         Remove check for btowc, isascii.
40868         Require AM_LANGINFO_CODESET.
40869
40870 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
40871
40872         * lib/regex.c, regex.h: Sync from libc.
40873         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
40874         * lib/regexec.c:
40875         New files, synced from libc, except that regex_internal.h
40876         currently has a small porting fix.
40877
40878 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
40879
40880         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
40881         regex_internal.c, regexec.c.
40882         Add regex_internal.h too, but as a comment, since the libc version
40883         is currently broken in gnulib mode.
40884
40885 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
40886
40887         Support programs like Emacs that use gnulib but not gettext.
40888         * MODULES.html.sh (Internationalization functions): Add gettext-h.
40889         * modules/gettext-h: New file.
40890         * modules/gettext (Files): Remove lib/gettext.h.
40891         (Depends-on): Add gettext-h.
40892         (Makefile.am): Remove lib_SOURCES.
40893         * modules/argmatch, modules/c-stack, modules/closeout:
40894         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
40895         * modules/execute, modules/file-type, modules/getaddrinfo:
40896         * modules/getopt, modules/human, modules/javacomp:
40897         * modules/javaexec, modules/mkdir-p, modules/obstack:
40898         * modules/openat, modules/pagealign_alloc, modules/pipe:
40899         * modules/quotearg, modules/regex, modules/rpmatch:
40900         * modules/unicodeio, modules/userspec, modules/version-etc:
40901         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
40902         * modules/xsetenv:
40903         Depend on gettext-h, not gettext.
40904
40905 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
40906
40907         * gnulib-tool (func_import): Add support for 'public domain' license.
40908         * modules/alloca, modules/atexit, modules/memmove:
40909         Now public domain, not GPL.
40910         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
40911         * modules/realloc, modules/strerror, modules/strtod:
40912         Now LGPL, not GPL.
40913
40914 2005-07-05  Bruno Haible  <bruno@clisp.org>
40915
40916         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
40917         autoconf CVS. Needed for mingw.
40918
40919 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
40920
40921         Remove the dependency of the strftime module on the tzset module.
40922         * modules/strftime (Depends-on): Remove dependency on tzset.
40923
40924 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
40925
40926         Remove the dependency of the strftime module on the tzset module.
40927         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
40928         gl_FUNC_TZSET_CLOBBER.
40929
40930 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
40931
40932         Remove the dependency of the strftime module on the tzset module.
40933         * lib/strftime.c (my_strftime)
40934         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
40935         Copy the input structure, to work around some of the bug with
40936         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
40937         Solaris releases, you should also use the tzset module, but we won't
40938         require it as a dependency any more since we don't want LGPLed code
40939         to depend on GPLed code.
40940
40941 2005-07-02  Jim Meyering  <jim@meyering.net>
40942
40943         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
40944         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
40945         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
40946         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
40947
40948 2005-07-02  Jim Meyering  <jim@meyering.net>
40949
40950         * lib/backupfile.c (backup_args): Change a `0' to NULL.
40951
40952 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
40953
40954         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
40955         declares only 'struct timespec;' (!).
40956
40957 2005-07-01  Jim Meyering  <jim@meyering.net>
40958
40959         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
40960         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
40961         * lib/save-cwd.c, tempname.c:
40962         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
40963         and don't include <sys/file.h>).
40964
40965 2005-06-29  Jim Meyering  <jim@meyering.net>
40966
40967         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
40968         type name.  Use the variable name instead.
40969         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
40970         Likewise.
40971
40972 2005-06-28  Simon Josefsson  <jas@extundo.com>
40973
40974         * modules/check-version (Files): Add check-version.m4.
40975
40976 2005-06-28  Simon Josefsson  <jas@extundo.com>
40977
40978         * m4/check-version.m4: New file, suggested by Jim Meyering
40979         <jim@meyering.net>.
40980
40981 2005-06-28  Simon Josefsson  <jas@extundo.com>
40982
40983         * lib/check-version.h, lib/check-version.c: New files.
40984
40985 2005-06-28  Simon Josefsson  <jas@extundo.com>
40986
40987         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
40988         collision with global variable.  Better indentation.  Don't
40989         increment buffer pointer beyond buffer end.  Based on comments
40990         from Paul Eggert <eggert@cs.ucla.edu>.
40991
40992         * lib/base64.h: Indent.
40993
40994 2005-06-28  Simon Josefsson  <jas@extundo.com>
40995
40996         * doc/gnulib.texi (Library version handling): New section.
40997
40998 2005-06-28  Jim Meyering  <jim@meyering.net>
40999
41000         * check-module (find_included_lib_files): Hard-code another
41001         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
41002         but modules/fts-lgpl (correctly) does not list those files.
41003
41004         * modules/canonicalize (Files): Add lib/pathmax.h.
41005
41006 2005-06-25  Simon Josefsson  <jas@extundo.com>
41007
41008         * modules/check-version: New file.
41009
41010 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
41011
41012         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
41013         initializer of struct addrinfo, as an indication that we don't
41014         care how many members the structure has.
41015
41016 2005-06-24  Derek Price  <derek@ximbiot.com>
41017         and Bruno Haible  <bruno@clisp.org>
41018
41019         Remove stat module & update lstat.
41020         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
41021         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
41022         * m4/stat.m4: Remove this file.
41023
41024 2005-06-24  Derek Price  <derek@ximbiot.com>
41025         and Bruno Haible  <bruno@clisp.org>
41026
41027         Remove stat module & update lstat.
41028         * lib/stat.c: Remove this file...
41029         (slash_aware_lstat): ...moving this content and its support...
41030         * lib/lstat.c (rpl_lstat): ...into here.
41031         * lib/lstat.h: New file.
41032
41033 2005-06-24  Derek Price  <derek@ximbiot.com>
41034         and Bruno Haible  <bruno@clisp.org>
41035
41036         Remove stat module & update lstat.
41037         * config/srclist.txt (libc sources): Remove stat.
41038
41039 2005-06-24  Derek Price  <derek@ximbiot.com>
41040         and Bruno Haible  <bruno@clisp.org>
41041
41042         Remove stat module & update lstat.
41043         * MODULES.html.sh (stat): Remove.
41044         * MODULES.html: Regenerated.
41045         * modules/lstat (Description): Correct function name.
41046         (Files): Add "lstat.h".
41047         (Depends-on): Remove stat, add xalloc, stat-macros.
41048         * modules/stat: Remove this file.
41049         (Include): Add "lstat.h", remove <sys/stat.h>.
41050
41051 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
41052
41053         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
41054         (ranged_convert): Don't save conversion in a temporary struct.
41055         This causes a warning with GCC 4.0.0, and anyway in the typical
41056         case it's not worth the extra 100 bytes or so of code.
41057         (ranged_convert, __mktime_internal): When calling a function via a
41058         pointer P, use P () rather than (*P) (), as we now assume C89 or
41059         better.
41060
41061 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
41062
41063         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
41064         "who -r" failed to give output.  Problem reported by Tim Waugh.
41065
41066         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
41067         (xcalloc): Use it to avoid needless tests.
41068         Problem reported by Jim Meyering.
41069
41070 2005-06-20  Derek Price  <derek@ximbiot.com>
41071
41072         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
41073         unnecessary for Autoconfs > 2.59c.
41074
41075 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
41076
41077         * lib/argp.h (__option_is_short): Check upper limit of
41078         __key. Isprint() requires its argument to have the value
41079         of an unsigned char or EOF.
41080
41081 2005-06-16  Jim Meyering  <jim@meyering.net>
41082
41083         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
41084         when either N or S is zero.
41085
41086 2005-06-16  Derek Price  <derek@ximbiot.com>
41087
41088         * m4/bison.m4: Declare YACC & YFLAGS precious.
41089
41090 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
41091
41092         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
41093         multibyte string or pattern, fall back on unibyte matching.
41094         Problem reported by James Youngman.
41095
41096 2005-06-08  Bruno Haible  <bruno@clisp.org>
41097
41098         * modules/csharpcomp: New file.
41099         * MODULES.html.sh (C#): Add csharpcomp.
41100
41101 2005-06-08  Bruno Haible  <bruno@clisp.org>
41102
41103         * m4/csharpcomp.m4: New file, from GNU gettext.
41104
41105 2005-06-08  Bruno Haible  <bruno@clisp.org>
41106
41107         * lib/csharpcomp.h: New file, from GNU gettext.
41108         * lib/csharpcomp.c: New file, from GNU gettext.
41109         * lib/csharpcomp.sh.in: New file, from GNU gettext.
41110
41111 2005-06-08  Bruno Haible  <bruno@clisp.org>
41112
41113         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
41114         warning on mingw.
41115
41116 2005-06-07  Derek Price  <derek@ximbiot.com>
41117
41118         Sync from CVS.
41119         * lib/glob_.h: Indent nested #ifdef.
41120
41121 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
41122
41123         Sync from coreutils.
41124         Use "file name" when talking about file names, instead of "filename"
41125         or "path", as per the GNU coding standards.
41126         * lib/mkdir-p.c: Renamed from makepath.c.
41127         (make_dir_parents): Renamed from make_path.  All callers changed.
41128         * lib/mkdir-p.h: Likewise.  All includers changed.
41129         * lib/filenamecat.c: Renamed from path-concat.c.
41130         (file_name_concat): Renamed from path_concat.  All callers changed.
41131         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
41132         * lib/filenamecat.h: Likewise.  All includers changed.
41133         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
41134         in comments or local variable names.
41135         * lib/basename.c: Likewise.
41136         * lib/canonicalize.c, canonicalize.h: Likewise.
41137         * lib/dirname.c, dirname.h: Likewise.
41138         * lib/euidaccess.c: Likewise.
41139         * lib/exclude.c: Likewise
41140         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
41141         * lib/fsusage.c, fsuage.h: Likewise.
41142         * lib/fts.c, fts_.h: Likewise.
41143         * lib/getcwd.c: Likewise.
41144         * lib/getloadavg.c: Likewise.
41145         * lib/mkstemp.c: Likewise.
41146         * lib/mountlist.c, mountlist.h: Likewise.
41147         * lib/openat.c, openat.h: Likewise.
41148         * lib/readlink-stub.c: Likewise.
41149         * lib/readutmp.c, readutmp.h: Likewise.
41150         * lib/rename.c: Likewise.
41151         * lib/rmdir.c: Likewise.
41152         * lib/same.c: Likewise.
41153         * lib/savedir.c: Likewise.
41154         * lib/stripslash.c: Likewise.
41155         * lib/tempname.c: Likewise.
41156         * lib/xreadlink.c: Likewise.
41157         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
41158         All uses changed.
41159         * lib/exclude.h: Likewise.
41160
41161         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
41162         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
41163         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
41164         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
41165         * lib/pathmax.h: Include <limits.h> unconditionally, since other
41166         files have been getting away with it for years (MORE/BSD 4.3
41167         is extinct now).
41168         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
41169         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
41170
41171         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
41172         Define to 256, not 255, as per modern POSIX.
41173
41174 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
41175
41176         Sync from coreutils.
41177         Use "file name" when talking about file names, instead of "filename"
41178         or "path", as per the GNU coding standards.
41179         * MODULES.html.sh: mkdir-p renamed from makepath.
41180         filenamecat renamed from path-concat.
41181         * modules/filenamecat: Renamed from modules/path-concat.
41182         (Files): filenamecat.h and filenamecat.c renamed from
41183         path-concat.h and path-concat.c.
41184         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
41185         (Include): filenamecat.h, not path-concat.h.
41186         * modules/mkdir-p: Renamed from modules/makepath.
41187         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
41188         makepath.c.
41189         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
41190         (Include): mkdir-p.h, not makepath.h.
41191
41192 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
41193
41194         Sync from coreutils.
41195         * m4/mkdir-p.m4: Renamed from makepath.m4.
41196         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
41197         Rename files from makepath.c to mkdir-p.c, and from
41198         makepath.h to mkdir-p.h.
41199         * m4/filenamecat.m4: Renamed from path-concat.m4.
41200         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
41201         Rename files from path-concat.c to filenamecat.c,
41202         and from path-concat.h to filenamecat.h.
41203         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
41204         "file name" in local variables or comments.
41205         * m4/rename.m4: Likewise.
41206
41207 2005-06-01  Bruno Haible  <bruno@clisp.org>
41208
41209         * modules/csharpexec: New file.
41210         * MODULES.html.sh (C#): New section.
41211
41212 2005-06-01  Bruno Haible  <bruno@clisp.org>
41213
41214         * m4/csharp.m4: New file, from GNU gettext.
41215         * m4/csharpexec.m4: New file, from GNU gettext.
41216
41217 2005-06-01  Bruno Haible  <bruno@clisp.org>
41218
41219         * lib/csharpexec.h: New file, from GNU gettext.
41220         * lib/csharpexec.c: New file, from GNU gettext.
41221         * lib/csharpexec.sh.in: New file, from GNU gettext.
41222
41223 2005-05-31  Derek Price  <derek@ximbiot.com>
41224             Paul Eggert  <eggert@cs.ucla.edu>
41225
41226         Sync from cvs.
41227         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
41228
41229 2005-05-31  Derek Price  <derek@ximbiot.com>
41230             Paul Eggert  <eggert@cs.ucla.edu>
41231
41232         Sync from cvs.
41233         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
41234
41235 2005-05-29  Derek Price  <derek@ximbiot.com>
41236
41237         * config/srclist.txt (glob_.h, glob.c): Add these files.
41238
41239 2005-05-29  Derek Price  <derek@ximbiot.com>
41240
41241         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
41242         * modules/glob: New file.
41243         * modules/getlogin_r: Add link to POSIX spec in description.
41244
41245 2005-05-29  Derek Price  <derek@ximbiot.com>
41246             Paul Eggert  <eggert@cs.ucla.edu>
41247
41248         * m4/glob.m4: New file.
41249
41250 2005-05-29  Derek Price  <derek@ximbiot.com>
41251             Paul Eggert  <eggert@cs.ucla.edu>
41252
41253         * lib/glob_.h, lib/glob.c: New files.
41254
41255 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
41256
41257         * modules/fts (Files): Remove m4/inttypes-pri.m4.
41258         * modules/fts-lgpl (Depends-on): Remove gettext.
41259
41260 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
41261
41262         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
41263         and don't require gt_INTTYPES_PRI.
41264
41265 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
41266
41267         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
41268
41269         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
41270         the configuration hassle isn't worth it.
41271         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
41272         (LONGEST_MODIFIER, PRIuMAX): Remove.
41273
41274 2005-05-27  Bruno Haible  <bruno@clisp.org>
41275
41276         * lib/getlogin_r.h: Remove second include of <stddef.h>.
41277
41278 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
41279
41280         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
41281         _POSIX_PTHREAD_SEMANTICS for Solaris.
41282
41283 2005-05-25  Derek Price  <derek@ximbiot.com>
41284
41285         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
41286
41287 2005-05-25  Derek Price  <derek@ximbiot.com>
41288             Paul Eggert  <eggert@cs.ucla.edu>
41289
41290         * modules/getlogin_r, m4/getlogin_r.m4: New files.
41291         * lib/getlogin_r.c, getlogin_r.h: New files.
41292
41293 2005-05-25  Bruno Haible  <bruno@clisp.org>
41294             Derek Price  <derek@ximbiot.com>
41295
41296         * lib/getlogin_r.h: Simplify API documentation.
41297
41298 2005-05-23  Derek Price  <derek@ximbiot.com>
41299
41300         * modules/minmax (Files): Add m4/minmax.m4.
41301         (configure.ac): Add gl_MINMAX.
41302
41303 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
41304
41305         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
41306         so that unistd-safer.h (GPL'ed code) need not be included.
41307
41308 2005-05-22  Bruno Haible  <bruno@clisp.org>
41309
41310         * m4/minmax.m4: New file.
41311         Based on a patch by Derek Price <derek@ximbiot.com>.
41312
41313 2005-05-22  Bruno Haible  <bruno@clisp.org>
41314
41315         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
41316         (INT64_MIN): Fix definition.
41317         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
41318
41319         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
41320         NEED_SIGNED_INT_TYPES.
41321
41322         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
41323         HAVE_SYSTEM_INTTYPES.
41324
41325 2005-05-22  Bruno Haible  <bruno@clisp.org>
41326
41327         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
41328         Also include <sys/param.h> if it defines MIN, MAX.
41329         Based on a patch by Derek Price <derek@ximbiot.com>.
41330
41331 2005-05-21  Jim Meyering  <jim@meyering.net>
41332
41333         * modules/fts (Files): Add m4/inttypes-pri.m4.
41334         (Depends-on): Add lstat and remove gettext.  Alphabetize.
41335
41336 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
41337
41338         New fts module.
41339         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
41340         (setup_dir, free_dir): New functions.
41341         (enter_dir, leave_dir): Define trivial
41342         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
41343         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
41344         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
41345         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
41346         Move to fts-cycle.c.
41347         (fts_open): Use setup_dir.
41348         (fts_close): Use free_dir.
41349         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
41350         This adds a label and some gotos, but the alternatives were messier.
41351         Check for memory allocation failure when entering a dir.
41352         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
41353         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
41354         (FTS): New member fts_cycle, that is a union that contains the
41355         old active_dir_ht and cycle_state.  All uses changed to mention
41356         fts_cycle.ht and fts_cycle.state.
41357         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
41358         fts.c, with the following changes:
41359         (setup_dir, free_dir): New functions.
41360         (enter_dir): Now returns bool.  Return true if successful, false
41361         if memory exhausted.  All callers changed.
41362         Do not bother partly cleaning up on
41363         memory allocation failure; that is free_dir's job.
41364         However, free ad if hash_insert fails, to avoid memory leak.
41365         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
41366         fts->fts_options to see which union member to use.
41367
41368 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
41369
41370         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
41371         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
41372
41373 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
41374
41375         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
41376
41377 2005-05-20  Jim Meyering  <jim@meyering.net>
41378
41379         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
41380         Now a macro, to pacify GCC.
41381
41382 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
41383
41384         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
41385         of -1.
41386
41387 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
41388
41389         * lib/chown.c (rpl_chown): Return -1 on failure.
41390
41391 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
41392
41393         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
41394         Don't check for stddef.h.
41395         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
41396         don't use its results.
41397         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
41398         since we include them unconditionally.  Don't require
41399         AM_STDBOOL_H, since stdbool is a prerequisite.
41400         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
41401         since we assume C89 or better.
41402         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
41403         as we don't use their results.
41404         Don't check for fchdir, memmove, memset, strrchr, as we use
41405         them unconditionally.
41406         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
41407         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
41408
41409 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
41410
41411         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
41412         Include <stddef.h> unconditionally, since we assume C89 now.
41413         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
41414         * lib/fts.c: Include fts_.h first, to check interface.
41415         Do not include intprops.h; no longer needed.
41416         Include cycle-check.h and hash.h, since fts_.h no longer does.
41417         Remove unnecessary casts of closedir to void.
41418         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
41419         decide whether to decrement nlinks.
41420         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
41421         (FTS): Use struct hash_table * instead of Hash_table, so that
41422         we no longer need to include hash.h here.
41423
41424 2005-05-18  Jim Meyering  <jim@meyering.net>
41425
41426         * modules/dirfd (License): Change to LGPL.  Most of the code
41427         is already in the public domain.
41428
41429 2005-05-18  Jim Meyering  <jim@meyering.net>
41430
41431         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
41432         Reported by Yoann Vandoorselaere.
41433
41434 2005-05-17  Jim Meyering  <jim@meyering.net>
41435
41436         * m4/fts.m4: New file, from coreutils.
41437
41438 2005-05-17  Jim Meyering  <jim@meyering.net>
41439
41440         * lib/fts.c, lib/fts_.h: New files, from coreutils.
41441
41442 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
41443
41444         Sync from coreutils.
41445         * m4/unlinkdir.m4: New file.
41446
41447 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
41448
41449         Sync from coreutils.
41450         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
41451         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
41452         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
41453         White space changes only.
41454         * lib/makepath.c (make_path): Port to hosts where leading "//" is
41455         special.
41456         * lib/yesno.c: Include getline.h, not ctype.h.
41457         (yesno): Don't remove leading white space; POSIX doesn't allow it.
41458         Use getline to remove arbitrary restriction on response length.
41459
41460 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
41461
41462         * config/srclist-update: Spell out "Street" in FSF postal
41463         mail address; this is the style the FSF seems to prefer.
41464
41465         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
41466         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
41467         this updates FSF postal mail address.
41468
41469         Sync from coreutils.
41470         * modules/unlinkdir: New file.
41471         * modules/yesno (Depends-on): Add getline.
41472         * MODULES.html.sh (File system functions): Add unlinkdir.
41473
41474 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
41475
41476         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
41477         lib/strsep.h:
41478         Change the initial comment to refer to GPL, not LGPL.
41479         gnulib-tool will change it to LGPL as needed.
41480
41481         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
41482         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
41483         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
41484         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
41485         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
41486         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
41487         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
41488         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
41489         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
41490         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
41491         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
41492         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
41493         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
41494         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
41495         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
41496         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
41497         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
41498         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
41499         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
41500         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
41501         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
41502         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
41503         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
41504         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
41505         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
41506         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
41507         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
41508         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
41509         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
41510         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
41511         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
41512         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
41513         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
41514         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
41515         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
41516         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
41517         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
41518         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
41519         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
41520         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
41521         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
41522         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
41523         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
41524         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
41525         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
41526         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
41527         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
41528         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
41529         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
41530         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
41531         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
41532         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
41533         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
41534         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
41535         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
41536         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
41537         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
41538         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
41539         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
41540         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
41541         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
41542         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
41543         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
41544         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
41545         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
41546         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
41547         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
41548         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
41549         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
41550         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
41551         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
41552         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
41553         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
41554         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
41555         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
41556         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
41557         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
41558         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
41559         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
41560         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
41561         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
41562         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
41563         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
41564         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
41565         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
41566         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
41567         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
41568         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
41569         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
41570         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
41571         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
41572         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
41573         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
41574         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
41575         lib/yesno.c, lib/yesno.h:
41576         Update FSF postal mail address.
41577
41578 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
41579
41580         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
41581         tests/test-memmem.c, tests/test-stpncpy.c:
41582         Update FSF postal mail address.
41583
41584 2005-05-13  Bruno Haible  <bruno@clisp.org>
41585
41586         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
41587         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
41588         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
41589         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
41590         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
41591         Add support for 64-bit integers in the MSVC compiler.
41592
41593 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
41594
41595         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
41596
41597 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
41598
41599         * gnulib-tool (func_import): Sort and uniquify recommended includes.
41600
41601 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
41602
41603         * doc/getdate.texi (General date syntax): Don't say that date
41604         date --iso-8601=ns generates acceptable dates; it doesn't yet.
41605         Problem reported by Nic Ferrier.
41606
41607 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41608
41609         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
41610         specified in ai_socktype. Fix invalid ai_protocol
41611         check. ai_protocol is usually set to 0 or depending on
41612         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
41613         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
41614         ai_socktype / ai_protocol in the returned addrinfo structure.
41615
41616 2005-05-10  Simon Josefsson  <jas@extundo.com>
41617
41618         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
41619         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
41620
41621 2005-05-10  Karl Berry  <karl@gnu.org>
41622
41623         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
41624         (from http://www.gnu.org/licenses).
41625         * doc/COPYING.LIB: also rename to COPYING.LESSER.
41626         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
41627         fdl.texi suffices.
41628
41629 2005-05-10  Karl Berry  <karl@gnu.org>
41630
41631         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
41632         (COPYING.DOC): remove.
41633
41634         * config/srclist-update: new FSF address.
41635
41636 2005-05-10  Derek Price  <derek@ximbiot.com>
41637
41638         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
41639         possible.
41640
41641 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41642             Bruno Haible  <bruno@clisp.org>
41643
41644         * modules/inet_ntop: New file.
41645         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
41646         inet_ntop.
41647
41648 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41649             Bruno Haible  <bruno@clisp.org>
41650
41651         * m4/inet_ntop.m4: New file.
41652
41653 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41654             Bruno Haible  <bruno@clisp.org>
41655
41656         * lib/inet_ntop.h: New file.
41657         * lib/inet_ntop.c: New file, from glibc with modifications.
41658
41659 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
41660
41661         * modules/time_r (License): Change to LGPL.
41662         * modules/extensions (License): Change to LGPL.  Actually,
41663         the license is more permissive than that, but currently gnulib-tool
41664         doesn't know how to handle more-permissive licenses.
41665
41666         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
41667         Problem reported by Dave Love.
41668
41669 2005-05-08  Jim Meyering  <jim@meyering.net>
41670
41671         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
41672         blank.
41673
41674 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
41675
41676         * modules/argmatch (Depends-on): Add stdbool.
41677         * modules/backupfile (Depends-on): Likewise.
41678         * modules/chdir-long (Depends-on): Likewise.
41679         * modules/closeout (Depends-on): Likewise.
41680         * modules/cycle-check (Depends-on): Likewise.
41681         * modules/dirname (Depends-on): Likewise.
41682         * modules/fnmatch (Depends-on): Likewise.
41683         * modules/fsusage (Depends-on): Likewise.
41684         * modules/fwriteerror (Depends-on): Likewise.
41685         * modules/getcwd (Depends-on): Likewise.
41686         * modules/getloadavg (Depends-on): Likewise.
41687         * modules/hard-locale (Depends-on): Likewise.
41688         * modules/makepath (Depends-on): Likewise.
41689         * modules/mountlist (Depends-on): Likewise.
41690         * modules/nanosleep (Depends-on): Likewise.
41691         * modules/posixtm (Depends-on): Likewise.
41692         * modules/quotearg (Depends-on): Likewise.
41693         * modules/readtokens (Depends-on): Likewise.
41694         * modules/readtokens0 (Depends-on): Likewise.
41695         * modules/readutmp (Depends-on): Likewise.
41696         * modules/save-cwd (Depends-on): Likewise.
41697         * modules/strftime (Depends-on): Likewise.
41698         * modules/userspec (Depends-on): Likewise.
41699         * modules/utimecmp (Depends-on): Likewise.
41700         * modules/xgetcwd (Depends-on): Likewise.
41701         * modules/xnanosleep (Depends-on): Likewise.
41702         * modules/xstrtod (Depends-on): Likewise.
41703         * modules/yesno (Depends-on): Likewise.
41704
41705 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
41706
41707         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
41708         needless checks.
41709
41710 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
41711
41712         Merge from coreutils.  Among other things,
41713         add bulletproofing for cases where stdin, stdout, or stderr are closed.
41714         * lib/fd-safer.c: New file.
41715         * lib/fcntl-safer.h, open-safer.c: Remove.
41716         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
41717         * lib/dup-safer.c: Include unistd-safer.h first.
41718         Don't include errno.h.
41719         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
41720         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
41721         * lib/file-type.c: Rely on file-type.h change.
41722         * lib/getloadavg.c: Include unistd-safer.h.
41723         (getloadavg): Use safer open.
41724         * lib/getusershell.c: Include "stdio-safer.h".
41725         (getusershell): Use safer fopen.
41726         * lib/long-options.c (long_options): Use NULL rather than 0.
41727         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
41728         'free'.
41729         * lib/modechange.c: Likewise.
41730         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
41731         (MODE_DONE): New constant.
41732         (struct mode_change): Remove 'next' member.
41733         (make_node_op_equals): New function; like the old one of the
41734         same name, except it allocates an array.
41735         (mode_compile, mode_create_from_ref): Use it.
41736         (mode_compile): Allocate result as an array, not a linked list.
41737         Parse octal string ourself, so that we catch mistakes like "+0".
41738         (mode_adjust): Arg is an array, not a linked list.
41739         * lib/modechange.c: Include stat-macros.h, xalloc.h.
41740         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
41741         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
41742         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
41743         Remove.  This is now stat-macros.h's job.
41744         (talloc): Remove.  All callers replaced by xalloc, so that
41745         our invokers don't have to worry about reporting memory failures.
41746         (make_node_op_equals): Remove.
41747         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
41748         New constants.
41749         (struct mode_change): Moved here from modechange.h.
41750         (mode_append_entry): Remove.
41751         (mode_compile): Remove MASKED_OPS arg, since it encouraged
41752         apps to have incorrect behavior.  Use simpler algorithm for head
41753         and tail.  Don't futz with umask; that's now the job of mode_adjust.
41754         Detect more invalid usages rather than having somewhat-random behavior.
41755         Don't insert an "a=" action, as that leads to incorrect behavior.
41756         (mode_compile, mode_create_from_ref): Return NULL on error instead
41757         of an enum, since now there's only one way to have an error.  All
41758         callers changed.
41759         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
41760         at the correct time.  Simplify calculation of "+u" and its ilk.
41761         Don't mishandle "+X".
41762         (mode_free): Remove "register" and localize decls.
41763         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
41764         (struct mode_change): Move to modechange.c; callers don't
41765         need to see this stuff.
41766         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
41767         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
41768         (mode_change, mode_adjust): Reflect the new signatures noted above.
41769         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
41770         that might redefine system include files.
41771         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
41772         (my_usleep): Use NULL rather than (void *) 0.
41773         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
41774         Use siginterrupt to specify that system calls should be interrupted.
41775         (rpl_nanosleep): Move initialization of suspended closer to call of
41776         my_usleep.
41777         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
41778         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
41779         (desirable_utmp_entry): New function.
41780         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
41781         using x2nrealloc, to simplify logic.
41782         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
41783         size calculation.  Do not assume utmp file is a regular file.
41784         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
41785         (READ_UTMP_CHECK_PIDS): New constant.
41786         * lib/save-cwd.c: Include unistd-safer.h.
41787         (save_cwd): Use fd_safer.
41788         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
41789         [!_LIBC] Include "stat-macros.h" instead.
41790         * lib/unistd-safer.h (fd_safer): New decl.
41791
41792 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
41793
41794         * modules/getloadavg (Depends-on): Add unistd-safer.
41795         * modules/getusershell (Depends-on): Add stdio-safer.
41796         * modules/lstat (Depends-on): Remove xalloc.
41797         * modules/mkstemp (Depends-on): Add stat-macros.
41798         * modules/modechange (Depends-on): Remove xstrtol.
41799         Add stat-macros, xalloc.
41800         * modules/save-cwd (Depends-on): Add unistd-safer.
41801         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
41802         * modules/unistd-safer (Files): Add lib/fd-safer.c
41803         (Makefile.am): Remove lib_SOURCES.
41804
41805         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
41806         Remove fcntl-safer; unistd-safer supersedes it.
41807
41808 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
41809
41810         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
41811         AC_HEADER_STAT.
41812         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
41813         (gl_PREREQ_CHOWN): Remove.
41814         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
41815         it.  Don't require AC_HEADER_STAT.
41816         (gl_PREREQ_LSTAT): Remove.
41817         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
41818         Don't require AC_HEADER_STAT.
41819         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
41820         (gl_PREREQ_RMDIR): Remove.
41821         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
41822         mention stat-macros.h or AC_HEADER_STAT, since we'll make
41823         the stat-macros module a prerequisite.
41824         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
41825         * m4/filemode.m4 (gl_FILEMODE): Likewise.
41826         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
41827         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
41828         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
41829         variable names.
41830         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
41831         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
41832         variable prefixes.
41833         * m4/fcntl-safer.m4: Remove.
41834         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
41835         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
41836         Invoke gl_PREREQ_FD_SAFER.
41837         (gl_PREREQ_FD_SAFER): New macro.
41838         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
41839         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
41840         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
41841         Remove duplicate call to AC_LIBOBJ(readutmp).
41842         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
41843
41844         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
41845         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
41846
41847 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
41848
41849         * MODULES.html.sh (Misc): Add byteswap.
41850
41851 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
41852
41853         * modules/getcwd (Depends-on): Add extensions.
41854         * modules/openat (Depends-on): Likewise.
41855
41856 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
41857
41858         * modules/byteswap: New file.
41859
41860 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
41861
41862         * m4/byteswap.m4: New file.
41863
41864 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
41865
41866         * lib/byteswap_.h: New file.
41867
41868 2005-04-25  Karl Berry  <karl@gnu.org>
41869
41870         * m4/gettext.m4: Update from GNU gettext 0.14.4.
41871
41872 2005-04-25  Albert Chin  <china@thewrittenword.com>
41873
41874         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
41875         Toolkit C bug.
41876
41877 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
41878
41879         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
41880         (func_ln_if_changed) Remove forcibly for no error message
41881         in case file does not exist.
41882
41883 2005-04-19  Simon Josefsson  <jas@extundo.com>
41884
41885         * gnulib-tool (Options): Make --symlink mean --symbolic.
41886
41887 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
41888
41889         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
41890
41891 2005-04-16  Simon Josefsson  <jas@extundo.com>
41892
41893         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
41894
41895 2005-04-15  Simon Josefsson  <jas@extundo.com>
41896
41897         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
41898
41899 2005-04-15  Simon Josefsson  <jas@extundo.com>
41900
41901         * gnulib-tool: Rename --symlink to --symbolic.
41902
41903 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
41904
41905         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
41906         symbolic links to files instead of copying/moving.  Add --aux-dir,
41907         specifying directory relative --dir where auxiliary build tools
41908         are placed.
41909
41910 2005-04-14  Bruno Haible  <bruno@clisp.org>
41911
41912         * modules/allocsa (License): Change to LGPL.
41913         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
41914
41915 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
41916
41917         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
41918         that "UTC +1 second" continues to work.  Problem reported
41919         by Dmitry V. Levin.
41920         (relunit_snumber): New rule.
41921         (relunit): Use it.
41922
41923 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
41924
41925         * lib/getdate.y (universal_time_zone_table): New constant.
41926         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
41927         universal_time_zone_table.
41928         (lookup_zone): Prefer universal_time_zone_table to
41929         local_time_zone_table, so that "GMT" time stamps are allowed in
41930         London during the summer.  Problem reported by Ian Abbott.
41931
41932 2005-04-12  Jim Meyering  <jim@meyering.net>
41933
41934         * lib/human.c (humblock): Set *options even when returning due to
41935         xstrtoumax conversion failure.  Thanks to a used-uninitialized
41936         warning from gcc-4.
41937
41938 2005-04-09  Jim Meyering  <jim@meyering.net>
41939
41940         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
41941         -Wuninitialized: initialize tm0.tm_year.
41942
41943 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
41944
41945         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
41946         count, since there's no maximum.  All uses changed.
41947         Add member dsts_seen.
41948         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
41949         not being INT_MAX.
41950         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
41951         Use pc_rels_seen to decide whther a date is absolute.
41952
41953         * lib/getdate.y (number): Don't overwrite year.
41954         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
41955         check.
41956
41957 2005-04-02  Simon Josefsson  <jas@extundo.com>
41958
41959         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
41960         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
41961
41962 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
41963
41964         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
41965         where no absolute path name can be longer than PATH_MAX.
41966
41967 2005-03-27  Jim Meyering  <jim@meyering.net>
41968
41969         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
41970
41971 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
41972
41973         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
41974         "one's complement" -> "ones' complement" in comment, as per Knuth.
41975         "value of type" -> "type or expression" in comment.
41976         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
41977
41978 2005-03-26  Jim Meyering  <jim@meyering.net>
41979
41980         Comment nits.
41981         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
41982         Correct typos: s/or/of/.
41983
41984 2005-03-26  Jim Meyering  <jim@meyering.net>
41985
41986         * modules/check-include-files: Move to ../ and rename to...
41987         * check-module: ...this.
41988
41989 2005-03-25  Jim Meyering  <jim@meyering.net>
41990
41991         * modules/xvasprintf (Files): Add xalloc.h.
41992
41993 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
41994
41995         * modules/gettext (Files): config/config.rpath ->
41996         build-aux/config.rpath
41997         * modules/iconv (Files): Likewise.
41998         Problem reported by Oskar Liljeblad.
41999
42000 2005-03-23  Jim Meyering  <jim@meyering.net>
42001
42002         * modules/check-include-files: New script to check for
42003         missing dependencies, multiple includes, etc.
42004
42005         * modules/c-strtold (Depends-on): Add xalloc.
42006         * modules/c-strtod (Depends-on): Add xalloc.
42007         * modules/hash (Depends-on): Add xalloc.
42008         (Files): Remove lib/xalloc.h.
42009
42010         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
42011         * modules/userspec (Files): Add lib/inttostr.h.
42012
42013 2005-03-23  Jim Meyering  <jim@meyering.net>
42014
42015         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
42016
42017 2005-03-22  Jim Meyering  <jim@meyering.net>
42018
42019         * modules/stat-macros: New module.
42020         * modules/canonicalize, modules/euidaccess, modules/file-type,
42021         * modules/filemode, modules/lchown, modules/makepath,
42022         * modules/rmdir, modules/stat: Depend on new stat-macros module
42023         rather than listing lib/stat-macros.h manually.
42024         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
42025
42026 2005-03-22  Jim Meyering  <jim@meyering.net>
42027
42028         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
42029
42030 2005-03-22  Bruno Haible  <bruno@clisp.org>
42031
42032         * config/srclist.txt: Replace target directory 'config' with
42033         'build-aux'.
42034         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
42035         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
42036         ../build-aux/.
42037
42038 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
42039
42040         * modules/chdir-long (Depends-on): Add mempcpy.
42041
42042         * modules/acl, modules/backupfile, modules/c-strtod,
42043         modules/c-strtold, modules/canon-host, modules/canonicalize,
42044         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
42045         modules/exclude, modules/exitfail, modules/file-type,
42046         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
42047         modules/getdate, modules/getline, modules/getpagesize,
42048         modules/getpass, modules/getugroups, modules/group-member,
42049         modules/hard-locale, modules/hash, modules/human, modules/idcache,
42050         modules/inttostr, modules/long-options, modules/makepath,
42051         modules/md5, modules/memcasecmp, modules/memcoll,
42052         modules/modechange, modules/mountlist, modules/path-concat,
42053         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
42054         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
42055         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
42056         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
42057         modules/strftime, modules/strndup, modules/strverscmp,
42058         modules/timespec, modules/unlocked-io, modules/userspec,
42059         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
42060         modules/yesno:
42061         Remove lib_SOURCES line from Makefile.am section, as this is now
42062         done automatically by the corresponding Autoconf macro.
42063
42064 2005-03-21  Jim Meyering  <jim@meyering.net>
42065
42066         Changes imported from coreutils.
42067
42068         * lib/cycle-check.c: Don't include xalloc.h.
42069
42070         * lib/path-concat.c: Don't include assert.h.
42071         (path_concat): Remove assertion that would have triggered
42072         for ABASE starting with more than one slash.
42073         Reported by Andreas Schwab.
42074
42075         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
42076         properly when ABASE is an absolute file name.
42077         Correct the description of this function.
42078         Include <assert.h>.
42079         Add an assertion and a test driver.
42080         This fixes a bug introduced on 2004-07-02.
42081         Andreas Schwab reported the resulting failure of cp --parents:
42082         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
42083
42084 2005-03-21  Jim Meyering  <jim@meyering.net>
42085
42086         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
42087         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
42088
42089 2005-03-21  Jim Meyering  <jim@meyering.net>
42090         and  Paul Eggert  <eggert@cs.ucla.edu>
42091
42092         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
42093         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
42094         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
42095         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
42096         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
42097         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
42098         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
42099         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
42100         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
42101         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
42102         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
42103         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
42104         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
42105         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
42106         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
42107         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
42108         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
42109         for these modules.
42110
42111 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
42112
42113         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
42114         (which shouldn't happen), generate nothing instead of returning 0
42115         immediately, so that nstrftime (NULL, ...) doesn't return 0.
42116
42117 2005-03-16  Bruno Haible  <bruno@clisp.org>
42118
42119         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
42120         HAVE_LONGLONG_64BIT.
42121
42122 2005-03-16  Bruno Haible  <bruno@clisp.org>
42123
42124         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
42125         HAVE_LONGLONG_64BIT.
42126
42127 2005-03-16  Bruno Haible  <bruno@clisp.org>
42128
42129         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
42130         HAVE_LONGLONG_64BIT.
42131
42132 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
42133
42134         * lib/strftime.c (my_strftime): Prepend space to format so that we can
42135         reliably distinguish strftime failure from empty output on POSIX
42136         hosts.
42137
42138 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
42139
42140         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
42141         (iconv_string): Don't guess a size-zero buffer, as that might cause
42142         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
42143         result would be 'too large', where 'too large' is (heuristically)
42144         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
42145         overflow concerns.  This will prevent some unwanted malloc failures
42146         when the inputs are very large.
42147
42148 2005-03-15  Karl Berry  <karl@gnu.org>
42149
42150         * config/srclist.txt (config.rpath): from gettext.
42151         * config/config.rpath: update.
42152
42153 2005-03-15  Bruno Haible  <bruno@clisp.org>
42154
42155         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
42156         to 'negate'.
42157
42158         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
42159         variable.
42160
42161         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
42162         results.
42163
42164 2005-03-14  Simon Josefsson  <jas@extundo.com>
42165
42166         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
42167         <fx@gnu.org>.
42168
42169 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
42170
42171         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
42172         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
42173         intprops.h.
42174         * lib/strtol.c: Likewise.
42175
42176 2005-03-14  Jim Meyering  <jim@meyering.net>
42177
42178         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
42179         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
42180         to be nonzero so that we (and caller) can detect the difference
42181         between a valid zero-length expansion and an error return, even
42182         when the underlying strftime fails before writing anything into
42183         that location.
42184
42185 2005-03-14  Bruno Haible  <bruno@clisp.org>
42186
42187         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
42188         Update from GNU gettext 0.14.3.
42189
42190 2005-03-10  Jim Meyering  <jim@meyering.net>
42191
42192         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
42193
42194 2005-03-10  Jim Meyering  <jim@meyering.net>
42195
42196         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
42197         so that this module works on systems without fchdir.
42198
42199 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
42200
42201         Factor int-properties macros into a single file, except for
42202         glibc-related files.
42203         * lib/intprops.h: New file.
42204         * lib/getloadavg.c: Include it instead of limits.h.
42205         (INT_STRLEN_BOUND): Remove.
42206         * lib/human.c: Include intprops.h.
42207         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
42208         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
42209         302/1000.
42210         * lib/inttostr.h: Include intprops.h instead of limits.h.
42211         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
42212         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
42213         for consistency with intprops.h.
42214         (time_t_is_integer, twos_complement_arithmetic): Use them.
42215         * lib/sig2str.h: Include <signal.h>, intprops.h.
42216         (INT_STRLEN_BOUND): Remove.
42217         * lib/strftime.c (TYPE_SIGNED): Remove.
42218         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
42219         * lib/strtol.c: Adjust comments to match intprops.h.
42220         * lib/userspec.c: Include intprops.h.
42221         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
42222         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
42223         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
42224         instead of rolling our own expressions.
42225         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
42226
42227         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
42228         instead of int.
42229         (my_strftime): Do not mishandle years close to INT_MAX, by doing
42230         the right thing even if adding 1900 would overflow.  Similarly
42231         for tm_mon + 1 and tm_yday + 1.
42232         Make %Y always equivalent to %C%y, and similarly for %G and %g.
42233         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
42234         (DO_SIGNED_NUMBER): New macro.
42235         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
42236
42237 2005-03-07  Bruno Haible  <bruno@clisp.org>
42238
42239         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
42240
42241 2005-03-07  Bruno Haible  <bruno@clisp.org>
42242
42243         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
42244
42245 2005-03-04  Derek R. Price  <derek@ximbiot.com>
42246
42247         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
42248         (func_import): Only replace files via --import when they have actually
42249         changed.
42250
42251 2005-03-03  Derek R. Price  <derek@ximbiot.com>
42252
42253         * m4/mmap-anon.m4: New file.
42254         * m4/pagealign_alloc.m4: New file.
42255
42256 2005-03-03  Derek R. Price  <derek@ximbiot.com>
42257             Bruno Haible  <bruno@clisp.org>
42258
42259         * modules/pagealign_alloc: New file.
42260         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
42261
42262 2005-03-03  Derek R. Price  <derek@ximbiot.com>
42263             Bruno Haible  <bruno@clisp.org>
42264
42265         * lib/pagealign_alloc.h: New file.
42266         * lib/pagealign_alloc.c: New file.
42267
42268 2005-03-03  Bruno Haible  <bruno@clisp.org>
42269
42270         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
42271         Use an all-permissive copyright notice, recommended by RMS.
42272
42273 2005-03-02  Bruno Haible  <bruno@clisp.org>
42274
42275         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
42276         of AIX, the replacement has to be done only after <string.h> is
42277         included, therefore not in config.h. stpncpy.h does the replacement,
42278         and stpncpy.c uses it.
42279
42280 2005-03-02  Bruno Haible  <bruno@clisp.org>
42281
42282         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
42283         stpncpy.c uses it.
42284
42285 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
42286
42287         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
42288         The workaround isn't strictly needed for POSIX conformance, and
42289         it's too much of a pain to configure and maintain.  We'll ask
42290         people to fix their kernels instead.
42291         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
42292         (NANOSLEEP_BUG_WORKAROUND): Remove.
42293         (xnanosleep): Remove the workaround.
42294
42295 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
42296
42297         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
42298         Reported by Derek Price.
42299         (Include): Add "timespec.h".
42300
42301         * modules/xnanosleep (Depends-on): Remove gethrxtime.
42302
42303 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
42304
42305         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
42306         to detect nanosleep bug.
42307
42308 2005-03-01  Bruno Haible  <bruno@clisp.org>
42309
42310         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
42311
42312 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
42313
42314         * modules/gethrxtime: New file.
42315         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
42316         (Depends-on): Add gethrxtime.
42317         (configure.ac): Add gl_XNANOSLEEP.
42318         (Makefile.am): Remove lib_SOURCES line.
42319
42320 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
42321
42322         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
42323         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
42324
42325 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
42326
42327         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
42328         * lib/timespec.h (gettime): Return void, since it always
42329         succeeds now.  All uses changed.
42330         * lib/gettime.c (gettime) Likewise.
42331         [HAVE_NANOTIME]: Prefer nanotime.
42332         Assume gettimeofday succeeds, as POSIX requires.
42333         Assime time () succeeds, since other code already does.
42334         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
42335         (timespec_subtract): Remove.
42336         (NANOSLEEP_BUG_WORKAROUND): New constant.
42337         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
42338         things considerably.  Use it only on GNU/Linux hosts, since the
42339         workaround shouldn't be needed elsewhere.
42340
42341 2005-02-24  Bruno Haible  <bruno@clisp.org>
42342
42343         * modules/gettext (Files): Add m4/glibc2.m4.
42344
42345 2005-02-24  Bruno Haible  <bruno@clisp.org>
42346
42347         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
42348         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
42349         * m4/progtest.m4:
42350         Update from GNU gettext 0.14.2.
42351         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
42352
42353 2005-02-24  Bruno Haible  <bruno@clisp.org>
42354
42355         * lib/localcharset.c: Update from GNU gettext 0.14.2.
42356         * lib/config.charset: Update from GNU gettext 0.14.2.
42357
42358 2005-02-24  Bruno Haible  <bruno@clisp.org>
42359
42360         * lib/gettext.h: Update from GNU gettext 0.14.2.
42361
42362 2005-02-23  Simon Josefsson  <jas@extundo.com>
42363
42364         * m4/iconvme.m4: New file.
42365
42366 2005-02-23  Jim Meyering  <jim@meyering.net>
42367
42368         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
42369         change.
42370         Thanks to Bruno Haible for catching it.
42371
42372 2005-02-22  Simon Josefsson  <jas@extundo.com>
42373
42374         * modules/iconvme: New file.
42375
42376         * MODULES.html.sh: Add iconvme.
42377
42378 2005-02-22  Simon Josefsson  <jas@extundo.com>
42379
42380         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
42381
42382 2005-02-22  Simon Josefsson  <jas@extundo.com>
42383
42384         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
42385
42386 2005-02-22  Jim Meyering  <jim@meyering.net>
42387
42388         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
42389         s/ifndef/ifdef/.
42390
42391 2005-02-20  Neil Conway  <neilc@samurai.com>
42392
42393         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
42394         returned by OSX/Darwin if the specified buffer is not large
42395         enough for the hostname.
42396
42397 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42398
42399         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
42400         pass it to _help, otherwise the latter coredumps trying to
42401         dereference state.root_argp.
42402
42403 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
42404
42405         * modules/chdir-long (Depends-on): Add memrchr.
42406         * modules/memrchr (Files): Add lib/memrchr.h.
42407         (Include): "memrchr.h".
42408
42409 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
42410
42411         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
42412
42413 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
42414
42415         * lib/memrchr.h: New file.
42416         * lib/chdir-long.c: Include it.
42417         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
42418         Don't bother including stddef.h.
42419
42420 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
42421
42422         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
42423         inclusion.
42424         Include <sys/types.h>, for dev_t.
42425         (ME_DUMMY, ME_REMOTE): Move from here....
42426         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
42427         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
42428         Dmitry V. Levin.
42429         Include mountlist.h first, to test the interface.
42430
42431 2005-01-29  Bruno Haible  <bruno@clisp.org>
42432
42433         * lib/progname.c (program_name): Initialize.
42434         Needed when linking statically on MacOS X.
42435
42436 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
42437
42438         Sync from coreutils.
42439         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
42440         (Depends-on): Add c-strtod.
42441         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
42442
42443 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
42444
42445         Sync from coreutils.
42446         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
42447
42448         Remove files that are specific to coreutils.
42449         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
42450
42451 2005-01-28  Bruno Haible  <bruno@clisp.org>
42452
42453         * modules/javacomp: New file.
42454         * MODULES.html.sh (Java): Add javacomp.
42455
42456 2005-01-28  Bruno Haible  <bruno@clisp.org>
42457
42458         * m4/javacomp.m4: New file, from GNU gettext.
42459
42460 2005-01-28  Bruno Haible  <bruno@clisp.org>
42461
42462         * lib/javacomp.sh.in: New file, from GNU gettext.
42463         * lib/javacomp.h: New file, from GNU gettext.
42464         * lib/javacomp.c: New file, from GNU gettext.
42465
42466 2005-01-26  Simon Josefsson  <jas@extundo.com>
42467
42468         * lib/gai_strerror.c: Use GPL in header.
42469
42470 2005-01-26  Bruno Haible  <bruno@clisp.org>
42471
42472         * modules/javaexec: New file.
42473         * MODULES.html.sh (Java): Add javaexec.
42474
42475 2005-01-26  Bruno Haible  <bruno@clisp.org>
42476
42477         * m4/javaexec.m4: New file, from GNU gettext.
42478
42479 2005-01-26  Bruno Haible  <bruno@clisp.org>
42480
42481         * lib/javaexec.sh.in: New file, from GNU gettext.
42482         * lib/javaexec.h: New file, from GNU gettext.
42483         * lib/javaexec.c: New file, from GNU gettext.
42484
42485 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42486
42487         * modules/lchown (Depends-on): Remove lchown.h
42488
42489 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42490
42491         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
42492         must be defined if the header file was not found, in order
42493         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
42494
42495 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42496
42497         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
42498         initializers for struct pentry_state.
42499         (__argp_error): Check return value of __asprintf
42500         (__argp_failure): Translate error message
42501
42502         * lib/argp-parse.c: Removed braces around the expansion of N_()
42503
42504 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
42505
42506         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
42507         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
42508         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
42509         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
42510         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
42511         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
42512         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
42513         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
42514         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
42515         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
42516         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
42517         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
42518         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
42519         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
42520         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
42521         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
42522         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
42523         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
42524         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
42525         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
42526         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
42527         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
42528         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
42529         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
42530         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
42531         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
42532         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
42533         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
42534         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
42535         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
42536         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
42537         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
42538         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
42539         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
42540         xstrtol.m4, xstrtoumax.m4, yesno.m4:
42541         Use an all-permissive copyright notice, recommended by RMS.
42542
42543 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
42544
42545         * modules/chdir-long (Depends-on): Remove mempcpy.
42546
42547 2005-01-21  Jim Meyering  <jim@meyering.net>
42548
42549         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
42550         same value as for Solaris 9.
42551
42552         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
42553         component length.  This included changing the parameter to be
42554         of type `char *' rather than `char const *'.
42555         * lib/chdir-long.h (chdir_long): Update prototype.
42556
42557         * lib/openat.c (fdopendir, fstatat): New functions.
42558         * lib/openat.h: Include headers required for use of DIR and struct
42559         stat.
42560         [AT_SYMLINK_NOFOLLOW]: Define.
42561         (fdopendir, fstatat): Add prototypes.
42562
42563 2005-01-21  Bruno Haible  <bruno@clisp.org>
42564
42565         * modules/classpath: New file.
42566         * MODULES.html.sh (Java): Add classpath.
42567
42568 2005-01-21  Bruno Haible  <bruno@clisp.org>
42569
42570         * lib/classpath.h: New file, from GNU gettext.
42571         * lib/classpath.c: New file, from GNU gettext.
42572
42573 2005-01-20  Simon Josefsson  <jas@extundo.com>
42574
42575         * modules/version-etc-fsf: New file.
42576
42577 2005-01-20  Simon Josefsson  <jas@extundo.com>
42578
42579         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
42580         * lib/version-etc.c: Remove version_etc_copyright.
42581         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
42582         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
42583
42584 2005-01-20  Simon Josefsson  <jas@extundo.com>
42585
42586         * lib/base64.h (isbase64): Add.
42587
42588         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
42589         using a unsigned prototype, don't inline.
42590         (base64_decode): Use it.
42591
42592 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
42593
42594         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
42595         it.
42596
42597 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
42598
42599         * lib/save-cwd.c (save_cwd): Remove code to support the case
42600         where fchdir is missing or flaky.
42601
42602 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
42603
42604         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
42605
42606 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
42607
42608         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
42609         AC_LIBSOURCES now does this.
42610         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
42611         with new ullong_max module.
42612
42613 2005-01-19  Bruno Haible  <bruno@clisp.org>
42614
42615         * modules/sh-quote: New file.
42616         * MODULES.html.sh (Executing programs): Add sh-quote.
42617
42618 2005-01-19  Bruno Haible  <bruno@clisp.org>
42619
42620         * lib/sh-quote.h: New file, from GNU gettext.
42621         * lib/sh-quote.c: New file, from GNU gettext.
42622
42623 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
42624
42625         Merge from coreutils.
42626         * m4/ullong_max.m4: New file.
42627         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
42628         (gl_MACROS): Assume localeconv exists.
42629
42630 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
42631
42632         Merge changes from coreutils, as described below in several
42633         changelogs dated today.
42634
42635         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
42636         (O_DIRECTORY): Remove; not needed here, since "." must be
42637         a directory.  All uses removed.
42638         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
42639         universal on Suns, and we also need to test for IRIX.
42640         Revamp code to use 'if' rather than '#if'.
42641         Avoid unnecessary comparison of cwd->desc to 0.
42642
42643         * lib/utimens.c (futimens): Robustify the previous patch, by checking
42644         for known valid error numbers rather than observed invalid ones.
42645
42646 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
42647
42648         * modules/ullong_max: New file.
42649
42650         * modules/chdir-long, modules/openat: New files.
42651         * modules/save-cwd (Depends-on): Depend on chdir-long.
42652         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
42653
42654 2005-01-18  Jim Meyering  <jim@meyering.net>
42655
42656         Merge from coreutils.
42657         * m4/chdir-long.m4, m4/openat.m4: New files.
42658         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
42659         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
42660         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
42661         is sane and DOES follow symlinks.  Besides, testing 20 different
42662         systems found no broken chown implementations.
42663         Prompted by a change in rsync's copy of this macro.
42664         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
42665
42666         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
42667
42668         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
42669         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
42670         NULL-means-set-to-current-time semantics.
42671         Remove temporary file immediately, rather than waiting
42672         for configure's at-exit trap code to do it.
42673
42674 2005-01-18  Jim Meyering  <jim@meyering.net>
42675
42676         * lib/version-etc.c (version_etc_copyright): Update copyright date.
42677
42678         * lib/utimens.c (futimens): Account for the fact that futimes
42679         can also fail with errno == ENOSYS or errno == ENOENT.
42680         Patch from Dmitry V. Levin.
42681
42682         Change the name of the robust chdir function from chdir to chdir_long.
42683         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
42684         (restore_cwd): Use chdir_long, not chdir.
42685         * lib/chdir-long.c: Renamed from chdir.c.
42686         * lib/chdir-long.h: Renamed from chdir.h.
42687         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
42688         Hurd.
42689
42690 2005-01-18  Bruno Haible  <bruno@clisp.org>
42691
42692         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
42693         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
42694         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
42695         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
42696         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
42697         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
42698         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
42699         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
42700         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
42701         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
42702         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
42703         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
42704         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
42705         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
42706         Use an all-permissive copyright notice, recommended by RMS.
42707
42708 2005-01-18  Bob Proulx  <bob@proulx.com>
42709
42710         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
42711         simplify offsetof() macro construct to avoid compile failure with
42712         native HP-UX 11.0 ANSI C compiler.
42713
42714 2005-01-17  Bruno Haible  <bruno@clisp.org>
42715
42716         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
42717         redundant because stpncpy.m4 takes care of it.
42718
42719 2005-01-17  Bruno Haible  <bruno@clisp.org>
42720
42721         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
42722
42723 2005-01-17  Bruno Haible  <bruno@clisp.org>
42724
42725         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
42726         used.
42727
42728 2005-01-17  Bruno Haible  <bruno@clisp.org>
42729
42730         * lib/fwriteerror.h (fwriteerror): Change specification to include
42731         fclose.
42732         * lib/fwriteerror.c: Include <stdbool.h>.
42733         (fwriteerror): At the end, close the file stream. Record whether
42734         stdout was already closed.
42735
42736 2005-01-17  Bruno Haible  <bruno@clisp.org>
42737
42738         * lib/execute.c (environ): Declare if needed.
42739         * lib/pipe.c (environ): Likewise.
42740         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
42741
42742 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42743
42744         * modules/argp: Depend on vsnprintf
42745
42746 2005-01-10  Jim Meyering  <jim@meyering.net>
42747
42748         * modules/closeout (Depends-on): Add atexit.
42749
42750 2005-01-06  Bruno Haible  <bruno@clisp.org>
42751
42752         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
42753
42754 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
42755
42756         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
42757         definitions to be after all include files, to avoid collisions.
42758         Problem reported by Bob Proulx.
42759
42760 2005-01-04  Jim Meyering  <jim@meyering.net>
42761
42762         Changes imported from coreutils.
42763         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
42764         as the mkstemp template, use a temporary directory and an
42765         8.3-friendly template to avoid trouble on systems like DJGPP.
42766         Reported by Juan M. Guerrero via Stepan Kasal.
42767         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
42768         close. Remove the temporary directory right away, rather than waiting
42769         for configure's at-exit trap code to do it.
42770         Suggestion from Stepan Kasal.
42771
42772 2005-01-01  Simon Josefsson  <jas@extundo.com>
42773
42774         * gnulib-tool: Print #include directives when --import'ing.
42775
42776 2004-12-28  Simon Josefsson  <jas@extundo.com>
42777
42778         * tests/test-base64.c: Include required header files.  Remove
42779         unused variables.
42780
42781 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
42782
42783         * modules/error (Depends-on): Remove gettext.
42784
42785 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
42786
42787         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
42788         not needed.  This removes a dependency on the gettext module.
42789         [defined _LIBC]: Do not include <libintl.h>; not needed.
42790
42791 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
42792
42793         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
42794         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
42795
42796 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
42797
42798         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
42799         HAVE_DECL_STRTOLD.
42800
42801 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
42802
42803         * modules/getdate (Depends-on): Remove alloca-opt.
42804
42805 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
42806
42807         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
42808
42809 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
42810
42811         * lib/argp-parse.c: Include <stddef.h>.
42812         (alignof, alignto): New macros.
42813         (parser_init): Don't assume that void * is aligned sufficiently
42814         for struct option.
42815
42816         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
42817         need to extend the stack.
42818         (YYINITDEPTH): New macro, so that the initial stack isn't overly
42819         large.
42820
42821 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42822
42823         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
42824
42825 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
42826
42827         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
42828         (2004-10-24) change.  Apparently this was a false alarm.
42829
42830         * modules/getdate: Depend on alloca-opt, not alloca.
42831
42832 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
42833
42834         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
42835         Remove now-obsolete comment about AIX.
42836         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
42837         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
42838         (YYMAXDEPTH): New macro.
42839
42840 2004-12-18  Simon Josefsson  <jas@extundo.com>
42841
42842         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
42843
42844 2004-12-18  Bruno Haible  <bruno@clisp.org>
42845
42846         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
42847
42848 2004-12-18  Bruno Haible  <bruno@clisp.org>
42849
42850         * lib/fatal-signal.c (fatal_signals): Make non-const.
42851         (init_fatal_signals): New function.
42852         (uninstall_handlers, install_handlers): Ignore signals that were set to
42853         SIG_IGN.
42854         (at_fatal_signal): Call init_fatal_signals.
42855         (init_fatal_signal_set): Likewise. Ignore signals that were set to
42856         SIG_IGN.
42857         Reported by Paul Eggert.
42858
42859 2004-12-18  Bruno Haible  <bruno@clisp.org>
42860
42861         * doc/alloca.texi: New file.
42862         * doc/alloca-opt.texi: New file.
42863
42864 2004-12-17  Jim Meyering  <jim@meyering.net>
42865
42866         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
42867         Otherwise, install-sh could exit with improper exit status when
42868         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
42869
42870 2004-12-16  Simon Josefsson  <jas@extundo.com>
42871
42872         * tests/test-base64.c: Add license.
42873
42874 2004-12-15  Stepan Kasal  <address@hidden>
42875
42876         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
42877
42878 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
42879
42880         * modules/getcwd (Files): Add m4/d-ino.m4.
42881         Suggested by Mark D. Baushke.
42882
42883 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
42884
42885         * lib/getdate.y (textint): New member "negative".
42886         (time_zone_hhmm): New function.
42887         Expect 14 shift-reduce conflicts, not 13.
42888         (o_colon_minutes): New rule.
42889         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
42890         (yylex): Set the "negative" member of signed numbers.
42891
42892 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
42893
42894         * doc/getdate.texi (Time of day items, Time zone items):
42895         Describe new formats +00:00, UTC+00:00.
42896
42897 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
42898
42899         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
42900         spurious "-l"s.  Problem reported by Stepan Kasal.
42901
42902 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
42903
42904         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
42905         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
42906
42907 2004-12-04  Simon Josefsson  <jas@extundo.com>
42908
42909         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
42910         Vandoorselaere <yoann@prelude-ids.org>.
42911
42912 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
42913
42914         Changes imported from coreutils.
42915         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
42916         exist.
42917         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
42918
42919 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
42920
42921         Changes imported from coreutils.
42922         * lib/hard-locale.c: Assume <locale.h> exists.
42923         Include "strdup.h".
42924         (GLIBC_VERSION): New macro.
42925         (hard_locale): Assume setlocale exists.
42926         Rewrite to avoid #ifdef.
42927         Use strdup rather than malloc + strcpy.
42928         * lib/human.c: Assume <locale.h> exists.
42929         (human_readable): Assume localeconv exists.
42930
42931 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
42932
42933         * modules/hard-locale (Depends-on): Add strdup.
42934
42935 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
42936
42937         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
42938         convert T2, not T.  (Imported from libc.)
42939
42940 2004-11-30  Simon Josefsson  <jas@extundo.com>
42941
42942         * modules/restrict (License): Change to LGPL.
42943
42944 2004-11-30  Simon Josefsson  <jas@extundo.com>
42945
42946         * m4/restrict.m4: Add copyright and copying conditions.
42947
42948 2004-11-30  Simon Josefsson  <jas@extundo.com>
42949
42950         * m4/base64.m4: New file.
42951
42952 2004-11-30  Simon Josefsson  <jas@extundo.com>
42953
42954         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
42955         base64.
42956
42957         * tests/test-base64.c: New file.
42958
42959         * modules/base64: New file.
42960
42961 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
42962
42963         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
42964         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
42965
42966         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
42967
42968 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
42969
42970         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
42971         (__getcwd.c): Don't restore errno; glibc doesn't.
42972         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
42973         first, falling back to our code only if its results look suspicious.
42974         Ensure that the resulting buffer is only as large as necessary.
42975
42976         * lib/readutmp.c: Include readutmp.h first.
42977         Include <errno.h>, since readutmp.h no longer does that.
42978         * lib/readutmp.h: Don't include <errno.h>,
42979         <sys/param.h>, <time.h>; not needed to establish interface.
42980         (errno): Remove decl.
42981         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
42982         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
42983         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
42984
42985 2004-11-28  Simon Josefsson  <jas@extundo.com>
42986
42987         * lib/base64.h, base64.c: New file.
42988
42989 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
42990
42991         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
42992
42993 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
42994
42995         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
42996         (Depends-on): Remove pathmax, same.  Add mempcpy.
42997         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
42998         (Makefile.am): Append getcwd.h to lib_SOURCES.
42999         (Include): Add getcwd.h.
43000         (Maintainer): Change from Jim Meyering to "all, glibc",
43001         since getdate now uses intended-for-glibc code.
43002         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
43003         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
43004
43005 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
43006
43007         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
43008         HP's ANSI C compiler.
43009         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
43010         Declaring int functions causes warnings on some modern systems and
43011         shouldn't be needed to compile on ancient ones.
43012         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
43013         defined.
43014
43015         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
43016         with the following changes.
43017         (__set_errno): Parenthesize properly.
43018         Include <stdbool.h>.
43019         (MIN, MAX, MATCHING_INO): New macros.
43020         (__getcwd): Define with prototype, not K&R form.
43021         Use heuristics to allocate default buffer on stack if possible.
43022         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
43023         behavior, and to avoid the PATH_MAX limit when computing
43024         ../../../../...
43025         Use MATCHING_INO to compare inode number to file.
43026         Check for arithmetic overflow in size calculations.
43027         Fix bug in reallocation of dot array that caused getcwd to fail
43028         on directories nested deeper than 75.
43029         Be more careful about saving errno on error.
43030         Do not use realloc; use only free+malloc, as this is a bit
43031         more flexible and avoids a needless copy operation.
43032         Do not inspect st_dev and st_ino for symbolic links; POSIX
43033         doesn't specify the latter.
43034         Check for closedir errors.
43035         Avoid needless casts.
43036         Use "#ifdef weak_alias" around weak_alias, to be like other
43037         glibc code.
43038         The following changes to getcwd.c have effect only when used in
43039         gnulib; they have no effect inside glibc proper.
43040         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
43041         as alloca isn't used.
43042         (alloca, __alloca): Likewise.
43043         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
43044         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
43045         unconditionally, as gnulib assumes C89 or better.
43046         Do not include <sys/param.h>.
43047         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
43048         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
43049         better.
43050         (NULL) [!defined NULL]: Remove; we assume C89 or better.
43051         Include <dirent.h> in a way that is compatible with modern Autoconf.
43052         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
43053         New macros, if not already defined.
43054         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
43055         Use "_LIBC", not "defined _LIBC", for consistency.
43056         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
43057         a mempcpy module.
43058         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
43059         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
43060         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
43061         credit only to Jim Meyering and adjust the copyright dates.
43062         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
43063         <stdlib.h>, <unistd.h>, "pathmax.h".
43064         Instead, include "xgetcwd.h" (first) and "getcwd.h".
43065         (INITIAL_BUFFER_SIZE): Remove.
43066         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
43067
43068 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
43069
43070         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
43071         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
43072         Use the _ONCE methods, for efficiency.
43073         Check for fcntl.h.  In test program, include <errno.h>
43074         and <fcntl.h> if available.  Remove old K&R cruft from
43075         test program.  Check for common errors in GNU/Linux,
43076         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
43077         don't do AC_LIBOBJ, as that's getcwd.m4's job.
43078         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
43079         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
43080         name accordingly.
43081         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
43082         accommodate new getcwd.c.
43083         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
43084         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
43085         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
43086         that's all we need now.
43087
43088 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
43089
43090         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
43091         argp-parse.c depends on getopt internals, that means we should
43092         always use our getopt, to be on the safe side.
43093         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
43094         order not to spoil the result of an eventual previous invocation
43095         of gl_GETOPT_SUBSTITUTE.
43096
43097 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
43098
43099         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
43100         redefinition warnings. To avoid them, include the defines
43101         in `#if !defined __need_getopt ... #endif'. The only place
43102         where __getopt_argv_const is used is in definitions
43103         of getopt_long and getopt_long_only below, which are as well
43104         protected by `#ifndef __need_getopt'.
43105         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
43106         __need_getopt after including <stdio.h> and <unistd.h> These
43107         headers might have defined it.
43108
43109 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
43110
43111         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
43112
43113 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
43114
43115         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
43116         (futimens): New function, which uses futimes if available.
43117         (futimens, utimens): Support timespec==NULL, with same semantics
43118         as utime and utimens.
43119         * lib/utimens.h (futimens): New decl.
43120
43121 2004-11-23  Jim Meyering  <jim@meyering.net>
43122
43123         * lib/getopt_.h: Remove trailing blanks.
43124
43125 2004-11-23  Jim Meyering  <jim@meyering.net>
43126
43127         * lib/__fpending.c: Add comment.
43128
43129 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
43130
43131         * modules/canonicalize (Depends-on): Add xreadlink.
43132         Problem reported by James Youngman.
43133
43134 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
43135
43136         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
43137         New macros.
43138         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
43139         optopt): Use them instead of invoking ## directly; otherwise, the
43140         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
43141
43142 2004-11-19  Bruno Haible  <bruno@clisp.org>
43143
43144         * lib/strtok_r.c: Move comments from here...
43145         * lib/strtok_r.h: ... to here.
43146
43147 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
43148
43149         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
43150         implementations that mishandle size_t overflow.
43151
43152 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
43153
43154         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
43155         might fail.  Problem reported by Yoann Vandoorselaere.
43156         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
43157         implementations that mishandle size_t overflow.
43158
43159 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
43160
43161         * modules/canon-host (Depends-on): Add strdup.
43162
43163 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
43164
43165         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
43166
43167 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
43168
43169         * lib/canon-host.c: Include "strdup.h".
43170         (canon_host): Use getaddrinfo if available, so that IPv6 works.
43171         Use strdup instead of malloc/strcpy to duplicate strings.
43172
43173         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
43174         (human_space_before_unit): New constant.
43175         * lib/human.c (human_readable): Support it.
43176
43177         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
43178         (xgetcwd): Set errno correctly when failing.
43179         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
43180         the failure is actually due to a PATH_MAX problem.
43181
43182         Further getopt changes to make it more likely that glibc will
43183         buy the changes back.
43184         * lib/getopt.c (POSIXLY_CORRECT): New constant.
43185         (getopt): Use it, so to preserve glibc semantic
43186         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
43187         when compiling for libc.
43188         * lib/getopt_.h (__getopt_argv_const): Bring it back.
43189         (getopt_long, getopt_long_only): Use it.
43190
43191         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
43192         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
43193         (getopt): Argv is now char * const *, as per standard.
43194         (_getopt_internal_r, _getopt_internal): Argv is now char **,
43195         not char *__getopt_argv_const *.
43196         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
43197         _getopt_long_only_r): Likewise.
43198         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
43199         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
43200         _getopt_long_r, _getopt_long_only_r): Likewise.
43201         * lib/getopt_.h (__getopt_argv_const): Remove.
43202         (getopt): Argv is now char * const *, as per standard.
43203
43204         * lib/getdate.y (tORDINAL): New token.
43205         (day, relunit): Allow it for relative times.
43206         (relative_time_table): Use tORDINAL for ordinals.
43207
43208 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
43209
43210         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
43211         Document that "second" isn't allowed as an ordinal number.
43212
43213 2004-11-16  Jim Meyering  <jim@meyering.net>
43214
43215         * modules/closeout (Depends-on): Add fpending.
43216
43217 2004-11-15  Jim Meyering  <jim@meyering.net>
43218
43219         * lib/closeout.c: Include "__fpending.h" once again.
43220         Include <stdbool.h>.
43221         (close_stdout): Don't fail just because stdout was closed initially,
43222         since some programs don't write to stdout in the normal course of
43223         operation (other than --version and --help), and we don't want this
43224         function to make e.g. `touch file >&-' fail.
43225         But do fail if it was closed and someone has tried to write to it.
43226         E.g., `printf foo >&-' must fail.
43227
43228 2004-11-13  Jim Meyering  <jim@meyering.net>
43229
43230         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
43231
43232 2004-11-12  Simon Josefsson  <jas@extundo.com>
43233
43234         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
43235         small doc fix is still pending.
43236
43237 2004-11-11  Simon Josefsson  <jas@extundo.com>
43238
43239         * modules/strtok_r: New file.
43240
43241         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
43242         strtok_r.
43243
43244 2004-11-11  Simon Josefsson  <jas@extundo.com>
43245
43246         * m4/strtok_r.m4: New file.
43247
43248         * m4/getopt.m4: Replace opterr.
43249
43250 2004-11-11  Simon Josefsson  <jas@extundo.com>
43251
43252         * lib/strtok_r.h, strtok_r.c: New file.
43253
43254 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
43255
43256         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
43257         of replacing opterr, getopt, etc.  This should handle the
43258         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
43259
43260 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
43261
43262         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
43263         we can stop lying to compilers about the constness of argv when we
43264         are compiled outside glibc.
43265         (getopt, getopt_long, getopt_long_only): Use it.
43266         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
43267         _getopt_internal, getopt): Likewise.
43268         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
43269         _getopt_long_only_r): Likewise.
43270         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
43271         _getopt_long_r, _getopt_long_only_r): Likewise.
43272
43273         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
43274         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
43275         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
43276         the other external symbols.
43277         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
43278         declaration, since the above renaming now works around collisions.
43279
43280 2004-11-11  Jim Meyering  <jim@meyering.net>
43281
43282         * lib/linebreak.c: Remove trailing blanks.
43283         * lib/alloca_.h: Likewise.
43284         * lib/acosl.c: Likewise.
43285         * lib/euidaccess.c: Likewise.
43286         * lib/allocsa.h: Likewise.
43287
43288 2004-11-10  Simon Josefsson  <jas@extundo.com>
43289
43290         * m4/getaddrinfo.m4: New file.
43291
43292 2004-11-10  Simon Josefsson  <jas@extundo.com>
43293
43294         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
43295
43296 2004-11-10  Simon Josefsson  <jas@extundo.com>
43297
43298         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
43299         getaddrinfo.
43300
43301         * modules/getaddrinfo: New file.
43302
43303 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
43304
43305         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
43306
43307 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
43308
43309         * lib/mktime.c (SHR): New macro, which is a portable
43310         substitute for >> that should work even on Crays.
43311         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
43312         Problem reported by Mark D. Baushke in
43313         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
43314         * lib/getdate.y (SHR): Likewise.
43315         (tm_diff): Use it.
43316         * lib/strftime.c (SHR): Likewise.
43317         (tm_diff): Use it.
43318         * lib/quotearg.c (struct quoting_options): Use unsigned int for
43319         quote_these_too, so that right shifts are well defined.  All uses
43320         changed.
43321
43322 2004-11-10  Jim Meyering  <jim@meyering.net>
43323
43324         Ensure that no close failure goes unreported.
43325         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
43326         return early when it seems there's nothing to flush.
43327         Don't include __fpending.h.
43328
43329 2004-11-10  Jim Meyering  <jim@meyering.net>
43330
43331         * modules/closeout (Depends-on): Remove fpending.
43332
43333 2004-11-10  Jim Meyering  <jim@meyering.net>
43334
43335         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
43336
43337 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
43338
43339         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
43340         gl_FUNC_STRFTIME.
43341         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
43342         and AC_REQUIRE when possible, to avoid duplicate checks.
43343         Check for <wchar.h>.
43344
43345 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
43346
43347         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
43348
43349 2004-11-09  Bruno Haible  <bruno@clisp.org>
43350
43351         * m4/sockpfaf.m4: New file.
43352
43353 2004-11-05  Bruno Haible  <bruno@clisp.org>
43354
43355         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
43356         Reported by Mark D. Baushke <mdb@cvshome.org>.
43357
43358 2004-11-04  Bruno Haible  <bruno@clisp.org>
43359
43360         2004-09-11  Bruno Haible  <bruno@clisp.org>
43361                 * allocsa.valgrind: New file.
43362         2004-02-06  Bruno Haible  <bruno@clisp.org>
43363                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
43364                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
43365                 Reported by Christopher Seip <chris.seip@hp.com>.
43366
43367 2004-11-04  Bruno Haible  <bruno@clisp.org>
43368
43369         * modules/allocsa (Files): Add lib/allocsa.valgrind.
43370         (Makefile.am): Distribute it.
43371
43372 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
43373
43374         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
43375         with errno == ERANGE if the buffer is too small.
43376         Problem reported by Mark D. Baushke.
43377
43378 2004-11-03  Albert Chin  <china@thewrittenword.com>
43379             Paul Eggert  <eggert@cs.ucla.edu>
43380
43381         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
43382         equivalent, substitute $ac_type for equivalent type rather than
43383         blindly using uint32_t *always* which won't work if uint32_t is not
43384         available.  Define _UINT32_T to work around typedef of uint32_t if
43385         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
43386         2.5.1.
43387
43388 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
43389
43390         * m4/jm-macros.m4: Sync from coreutils.
43391         (gl_MACROS): Check for mbrlen, for pathchk.
43392         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
43393
43394 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
43395
43396         * lib/xreadlink.c (MAXSIZE): New macro.
43397         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
43398         size does not exceed MAXSIZE.  Avoid cast.
43399         As suggested by Mark D. Baushke in
43400         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
43401         if readlink fails with buffer size just under MAXSIZE, try again
43402         with MAXSIZE.
43403
43404 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
43405
43406         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
43407
43408 2004-11-02  Derek R. Price  <derek@ximbiot.com>
43409         and  Paul Eggert  <eggert@cs.ucla.edu>
43410
43411         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
43412         (get_date): Overparenthesize to avoid GCC warning.
43413
43414 2004-11-02  Bruno Haible  <bruno@clisp.org>
43415
43416         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
43417         returns void.
43418
43419 2004-11-02  Bruno Haible  <bruno@clisp.org>
43420
43421         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
43422         function returns void.
43423
43424 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
43425
43426         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
43427         fflush_unlocked, flockfile, funlockfile, funlockfile,
43428         fputs_unlocked, putc_unlocked.
43429
43430 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
43431
43432         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
43433         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
43434         already declared.
43435
43436 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
43437
43438         * modules/getdate (Files): Add doc/getdate.texi.
43439         (Depends-on): Add setenv, xalloc.
43440
43441 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
43442
43443         * lib/getdate.y: Add support for TZ="foo" within a date string.
43444         Fix some bugs near time_t boundaries.  Reject dates with
43445         out-of-range components, e.g., "Sept 31".
43446         Include <stdlib.h>, "setenv.h", "xalloc.h".
43447         (ISDIGIT_LOCALE): Remove; unused.
43448         Note that the TZ and time functions used here are not reentrant.
43449         (mktime_ok, get_tz): New functions.
43450         (TZBUFSIZE): New constant.
43451         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
43452         This requires that we sometimes generate our own TZ="XXX..." setting.
43453
43454 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
43455
43456         * doc/getdate.texi: New file, from coreutils with modifications for
43457         the new TZ parsing.
43458
43459 2004-10-27  Derek R. Price  <derek@ximbiot.com>
43460
43461         * lib/mktime.c (not_equal_tm): Remove redundant check.
43462
43463 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
43464
43465         * modules/regex (lib_SOURCES): Add regex.c.
43466         Reported by James Youngman in
43467         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
43468
43469 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
43470
43471         * lib/getdate.y: Use Bison 1.875 features, and some minor
43472         code cleanups.  This change does not affect semantics.
43473         Don't include <stdlib.h>; no longer needed.
43474         Don't include unlocked-io.h; only the "#if TEST" code uses
43475         stdio, and performance isn't crucial there.
43476         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
43477         Bison 1.875 features as described below.
43478         All uses of "PC." replaced by "pc->".
43479         (YYSTYPE): Add a forward declaration.
43480         (yylex, yyerror): Use full prototypes in forward decls.
43481         Use "%pure-parser" rather than obsolescent "%pure_parser".
43482         Use %parse-param and %lex-param instead of obsolescent
43483         YYPARSE_PARAM and YYLEX_PARAM.
43484         (meridian_table, month_and_day_table, time_units_table,
43485         relative_time_table, time_zone_table, military_table,
43486         lookup_zone, lookup_word, get_date):
43487         Use NULL instead of 0 where appropriate.
43488         (to_hour): Avoid abort (), to avoid a dependency on
43489         stdlib.h.
43490         (yyerror, yylex): Now accepts parser_control * arg.
43491         (main) [TEST]: Use '\0' rather than 0 for char.
43492
43493 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
43494
43495         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
43496
43497 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
43498
43499         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
43500         It's now the caller's responsibility to handle the case where
43501         !HAVE_GETPAGESIZE && !defined getpagesize.
43502
43503         * lib/mktime.c (leapyear): Arg is long int, not int.
43504
43505 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
43506
43507         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
43508
43509 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
43510
43511         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
43512         missing.  Problem reported by James Youngman.
43513
43514 2004-10-16  Simon Josefsson  <jas@extundo.com>
43515
43516         * gnulib-tool: Fix comments.  Fix parse problem.
43517         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
43518
43519 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
43520
43521         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
43522         implementation of getopt_long.  Problem reported by Alexander Taler in:
43523         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
43524
43525 2004-10-15  Bruno Haible  <bruno@clisp.org>
43526
43527         * gnulib-tool: Untabify. Initialize supplied_libname.
43528         (func_usage): More homogenous output.
43529         (func_modules_transitive_closure, func_modules_to_filelist,
43530         func_emit_lib_Makefile_am): New functions.
43531         (func_import): New function, extracted from big case statement. Use
43532         func_get_license, func_modules_transitive_closure,
43533         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
43534         opt_lgpl. Don't use test -a, as it's not portable.
43535         (func_create_testdir): Use func_modules_transitive_closure,
43536         func_modules_to_filelist, func_emit_lib_Makefile_am.
43537
43538 2004-10-15  Bruno Haible  <bruno@clisp.org>
43539
43540         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
43541
43542 2004-10-15  Bruno Haible  <bruno@clisp.org>
43543
43544         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
43545         the portions belonging to each module.
43546         Suggested by Derek Robert Price <derek@ximbiot.com>.
43547
43548 2004-10-12  Simon Josefsson  <jas@extundo.com>
43549
43550         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
43551         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
43552         to real functions.
43553
43554 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43555
43556         * modules/vsnprintf: New file.
43557
43558 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43559
43560         * m4/vsnprintf.m4: New file.
43561
43562 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43563
43564         * lib/vsnprintf.h: New file.
43565         * lib/vsnprintf.c: New file.
43566
43567 2004-10-11  Bruno Haible  <bruno@clisp.org>
43568
43569         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
43570         vsnprintf.
43571
43572 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
43573
43574         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
43575
43576 2004-10-07  Bruno Haible  <bruno@clisp.org>
43577
43578         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
43579         fits into the provided buffer.
43580
43581 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
43582
43583         * lib/diacrit.c, diacrit.h: Add GPL notice.
43584
43585         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
43586         notice.
43587         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
43588         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
43589         This avoids a potential constant-folding bug.
43590
43591 2004-10-05  Bruno Haible  <bruno@clisp.org>
43592
43593         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
43594         for the declaration of strsep.
43595
43596 2004-10-05  Bruno Haible  <bruno@clisp.org>
43597
43598         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
43599
43600 2004-10-04  Simon Josefsson  <jas@extundo.com>
43601
43602         * modules/memmem: New file.
43603         * tests/test-memmem.c: New file.
43604         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
43605
43606 2004-10-04  Simon Josefsson  <jas@extundo.com>
43607
43608         * m4/memmem.m4: New file.
43609
43610 2004-10-04  Simon Josefsson  <jas@extundo.com>
43611
43612         * lib/memmem.h: New file.
43613         * lib/memmem.c: New file, taken from glibc.
43614
43615 2004-10-04  Simon Josefsson  <jas@extundo.com>
43616
43617         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
43618         '#ifdef USE_UNLOCKED_IO'.
43619
43620 2004-10-04  Simon Josefsson  <jas@extundo.com>
43621
43622         * config/srclist.txt: Add memmem from glibc.
43623
43624 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43625
43626         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
43627
43628         * modules/argmatch, modules/argp, modules/closeout, modules/error,
43629         modules/exclude, modules/getdate, modules/getline,
43630         modules/getndelim2, modules/getpass, modules/getpass-gnu,
43631         modules/getusershell, modules/linebuffer, modules/md5,
43632         modules/mountlist, modules/posixtm, modules/readtokens,
43633         modules/readutmp, modules/regex, modules/sha1,
43634         modules/version-etc, modules/yesno:
43635         Remove dependency on unlocked-io.
43636
43637 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43638
43639         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
43640
43641         * m4/unlocked-io.m4: Add copyright notice.
43642         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
43643
43644 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43645
43646         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
43647         * lib/xmalloc.c (xmemdup): Likewise.
43648         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
43649         XFREE): Remove these long-obsolescent macros.
43650         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
43651         * lib/xstrdup.c: Remove.
43652
43653         * lib/regex.c (re_comp): Cast gettext return value to char *,
43654         Problem reported by Martin Neitzel via Mark D. Baushke.
43655
43656 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43657
43658         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
43659         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
43660         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
43661         regex.c, sha1.c, version-etc.c, yesno.c:
43662         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
43663         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
43664         the includer's responsibility.
43665
43666         Sync from coreutils.
43667
43668         * lib/modechange.c (mode_compile): Don't decrement a pointer that
43669         points to the start of a string, as the C Standard says the
43670         resulting behavior is undefined.
43671
43672         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
43673         simple -> simple_backups, numbered_existing ->
43674         numbered_existing_backups, numbered -> numbered_backups
43675         to avoid shadowing problems.  All uses changed.
43676         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
43677         * lib/backupfile.c (check_extension, numbered_backup):
43678         Rename locals to avoid shadowing 'basename'.
43679         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
43680         once.
43681
43682         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
43683         * lib/.cvsignore: Add getopt.h.
43684
43685 2004-10-04  Bruno Haible  <bruno@clisp.org>
43686
43687         * modules/README: New file.
43688         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
43689         not a module.
43690
43691 2004-10-02  Jim Meyering  <jim@meyering.net>
43692
43693         * lib/dirfd.h, getpagesize.h: Add copyright notice.
43694
43695 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43696
43697         * modules/strsep: New file.
43698
43699 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43700
43701         * m4/strsep.m4: New file.
43702
43703 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43704
43705         * lib/strsep.h: New file.
43706         * lib/strsep.c: New file.
43707
43708 2004-10-01  Simon Josefsson  <jas@extundo.com>
43709
43710         * lib/snprintf.c (snprintf): Handle size==0.
43711
43712 2004-10-01  Simon Josefsson  <jas@extundo.com>
43713             Bruno Haible  <bruno@clisp.org>
43714
43715         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
43716         (snprintf): Declare 'args'.
43717
43718 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
43719
43720         * lib/snprintf.c: Remove comments as to why each header is needed.
43721
43722 2004-10-01  Bruno Haible  <bruno@clisp.org>
43723
43724         * MODULES.html.sh: Add strsep.
43725
43726 2004-09-30  Simon Josefsson  <jas@extundo.com>
43727
43728         * modules/snprintf: New file.
43729
43730 2004-09-30  Simon Josefsson  <jas@extundo.com>
43731
43732         * m4/snprintf.m4: New file.
43733
43734 2004-09-30  Simon Josefsson  <jas@extundo.com>
43735
43736         * lib/snprintf.h, lib/snprintf.c: New files.
43737
43738 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
43739
43740         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
43741         (hol_entry_help): Never translate an empty string.
43742         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
43743         * lib/argp.h (OPTION_NO_TRANS): New option.
43744
43745 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
43746
43747         * modules/argp (Maintainer): Replace Simon Josefsson
43748         by Sergey Poznyakoff.
43749
43750 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
43751
43752         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
43753         changes merged back into glibc.
43754
43755 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
43756
43757         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
43758
43759 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
43760
43761         * lib/xvasprintf.c: Include xalloc.h.
43762         (xvasprintf): Use xalloc_die, not xmalloc_die.
43763
43764 2004-09-29  Bruno Haible  <bruno@clisp.org>
43765
43766         * modules/alloca-opt: New file, derived from modules/alloca.
43767         * modules/allocsa: Depend on alloca-opt instead of alloca.
43768         * modules/setenv: Likewise.
43769         * modules/vasnprintf: Likewise.
43770         * MODULES.html.sh: Add alloca-opt.
43771
43772 2004-09-28  Simon Josefsson  <jas@extundo.com>
43773
43774         * gnulib-tool: New parameter --lgpl, to asseert that modules are
43775         LGPL, and to replace license template from GPL to LGPL.
43776
43777 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
43778
43779         * modules/dummy: Change license to LGPL.
43780
43781 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
43782
43783         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
43784
43785 2004-09-24  Simon Josefsson  <jas@extundo.com>
43786
43787         * modules/minmax (License): Change from GPL to LGPL.
43788
43789 2004-09-23  Simon Josefsson  <jas@extundo.com>
43790
43791         * gnulib-tool (--import): Typo.
43792
43793 2004-09-23  Simon Josefsson  <jas@extundo.com>
43794
43795         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
43796
43797 2004-09-22  Bruno Haible  <bruno@clisp.org>
43798
43799         * modules/*: Add 'License' field.
43800         * gnulib-tool: Accept --extract-license option.
43801         (func_get_license): New function.
43802
43803 2004-09-21  Bruno Haible  <bruno@clisp.org>
43804
43805         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
43806         Reported by Simon Josefsson.
43807
43808 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
43809
43810         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
43811         gl_AC_TYPE_LONG_LONG.
43812
43813 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
43814
43815         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
43816
43817 2004-09-18  Simon Josefsson  <jas@extundo.com>
43818         and  Paul Eggert  <eggert@cs.ucla.edu>
43819
43820         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
43821         calls with autoreconf.  Define GL_LIB.
43822
43823 2004-09-14  Karl Berry  <karl@gnu.org>
43824
43825         * config/srclist.txt: unsync setenv.c, sigh.
43826
43827 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
43828
43829         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
43830         Problem reported by Bruno Haible in:
43831         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
43832
43833 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
43834
43835         * config/srclist.txt: Comment out argp-pvh.c.
43836
43837 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
43838
43839         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
43840         in case some system header has #define'd it.  Problem reported by
43841         Soeren D. Schulze in
43842         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
43843
43844 2004-09-09  Karl Berry  <karl@gnu.org>
43845
43846         * regex.[ch]: delete from the root.  These were supposed to be
43847                 synced with emacs cvs, but this has not happened for about
43848                 a year, and anyway nothing else uses emacs regex.[ch].
43849                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
43850                 lib/regex[.ch] is untouched.
43851
43852 2004-09-09  Bruno Haible  <bruno@clisp.org>
43853
43854         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
43855
43856 2004-09-09  Bruno Haible  <bruno@clisp.org>
43857
43858         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
43859         modifications.
43860         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
43861
43862 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
43863
43864         * modules/xvasprintf: New file.
43865         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
43866
43867 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
43868
43869         * lib/xvasprintf.h: New file.
43870         * lib/xvasprintf.c: New file.
43871         * lib/xasprintf.c: New file.
43872
43873 2004-09-08  Bruno Haible  <bruno@clisp.org>
43874
43875         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
43876
43877 2004-09-08  Bruno Haible  <bruno@clisp.org>
43878
43879         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
43880         length is > INT_MAX.
43881         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
43882         more.
43883
43884 2004-09-08  Bruno Haible  <bruno@clisp.org>
43885
43886         * lib/stdint_.h: New file, taken from GNU clisp.
43887
43888 2004-09-08  Bruno Haible  <bruno@clisp.org>
43889             Oskar Liljeblad  <oskar@osk.mine.nu>
43890
43891         * modules/stdint: New file.
43892         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
43893
43894 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
43895
43896         Import from coreutils.
43897         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
43898         strings on unbounded length.  alloca's performance benefits aren't
43899         that important here.
43900         (V_STRDUP): Remove.
43901         (parse_with_separator): New function, with most of the internals
43902         of the old parse_user_spec.  Allow user to omit both user and group,
43903         for compatibility with FreeBSD.
43904         Clone only the user name, not the entire spec.
43905         Do not set *uid, *gid unless entirely successful.
43906         Avoid memory leak in some failing cases.
43907         Fix regression for USER.GROUP reported by Dmitry V. Levin in
43908         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
43909         (parse_user_spec): Rewrite to use parse_with_separator.
43910
43911 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
43912
43913         * modules/userspec: Don't depend on alloca.
43914
43915 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
43916
43917         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
43918
43919 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
43920
43921         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
43922         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
43923         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
43924
43925 2004-08-16  Simon Josefsson  <jas@extundo.com>
43926
43927         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
43928         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
43929         Add --dry-run for --import.
43930         Let user provided command line parameters override configure.ac
43931         settings.
43932
43933 2004-08-12  Simon Josefsson  <jas@extundo.com>
43934
43935         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
43936         as discussed with Paul Eggert in threads rooted at
43937         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
43938         and
43939         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
43940         Before, the test was empty, and relied on ELIDE_CODE in source
43941         code.)
43942         (gl_PREREQ_GETOPT): New macro.
43943         (gl_GETOPT): Use them.
43944
43945 2004-08-12  Simon Josefsson  <jas@extundo.com>
43946
43947         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
43948         * lib/getopt_.h: Renamed from getopt.h.
43949
43950 2004-08-12  Simon Josefsson  <jas@extundo.com>
43951
43952         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
43953         Change default library name from libfoo to libgnu.
43954         Now, if you have a configure.ac that says:
43955                 gl_SOURCE_BASE(gl)
43956                 gl_M4_BASE(gl/m4)
43957                 gl_MODULES(error getopt etcetera)
43958                 gl_INIT
43959         you can import all you need by running:
43960                 ../gnulib/gnulib-tool --import
43961
43962         * modules/getopt (Files): Rename getopt.h to getopt_.h.
43963         (Makefile.am): Rewrite, use logic from argz.
43964         (Include): Use <getopt.h> instead of "getopt.h".
43965
43966 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
43967
43968         * modules/argp (Files): Add m4/unlocked-io.m4.
43969         (Depends-on): Add extensions.
43970
43971 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
43972
43973         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
43974         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
43975         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
43976         Check for program_invocation_name, program_invocation_short_name,
43977         flockfile, funlockfile, features.h, _getopt_long_only_r.
43978
43979 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
43980
43981         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
43982         its complicated substitute.
43983         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
43984         and program_invocation_name.
43985         (__argp_basename) [!_LIBC]: Remove; the only use was
43986         replaced by its body.
43987         (__argp_short_program_name): Change condition from
43988         !defined __argp_short_program_name to
43989         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
43990         to match argp-namefrob.h.
43991         (__argp_failure): Don't assume strerror_r returns char *.
43992         * lib/argp-parse.c (N_): Define unconditionally.
43993         (argp_default_options): Fill out initializers with 0 to avoid
43994         gcc warnings.
43995
43996 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
43997
43998         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
43999         getopt1.c.
44000
44001 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
44002
44003         Merge from coreutils.
44004
44005         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
44006
44007         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
44008         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
44009
44010 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
44011
44012         Merge from coreutils.
44013
44014         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
44015         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
44016         for Reliant Unix 5.43.
44017
44018         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
44019         (union fooround): Use uintmax_t, not long int.
44020         The rest is a merge from libc:
44021         [defined _LIBC]: Include <shlib-compat.h>.
44022         (_obstack) [defined _LIBC]: Remove after 2.3.4.
44023
44024         * lib/settime.c (settime): Recode to avoid warning with
44025         Sun Forte C 6U2.
44026
44027         * lib/strverscmp.c: Convert to UTF-8.
44028
44029 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
44030
44031         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
44032         m4/uintmax_t.m4.
44033
44034 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
44035
44036         * modules/xalloc-die: New file.
44037         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
44038
44039         * modules/md5 (Files): Add m4/uint32_t.m4.
44040         * modules/sha1: Renamed from modules/sha.
44041         (Files):
44042         Rename lib/sha.h to lib/sha1.h.
44043         Rename lib/sha.c to lib/sha1.c.
44044         Rename m4/sha.m4 to m4/sha1.m4.
44045         (lib_SOURCES): Likewise.
44046         (configure.ac): Rename gl_SHA to gl_SHA1.
44047         (Include): sha.h -> sha1.h.
44048
44049 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
44050
44051         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
44052         * m4/sha1.m4: Renamed from sha.m4.
44053         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
44054
44055 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
44056
44057         * lib/obstack.h (obstack_empty_p):
44058         Don't assume that chunk->contents is suitably aligned.
44059         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
44060         Likewise. Problem reported by Benno in
44061         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
44062
44063         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
44064         readable.  This could be improved further but it'd take some work.
44065
44066 2004-08-08  Simon Josefsson  <jas@extundo.com>
44067
44068         * modules/xgethostname (Depends-on): Remove exit and error (not
44069         used).
44070
44071         * modules/getpass-gnu: Add getpass.h.
44072         (Depends-on): Add stdbool.
44073         * modules/getpass: Add getpass.h.
44074
44075 2004-08-08  Simon Josefsson  <jas@extundo.com>
44076
44077         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
44078         Check getpass declaration.
44079
44080 2004-08-08  Simon Josefsson  <jas@extundo.com>
44081
44082         * lib/xgethostname.c: Don't include error.h (not used).
44083
44084         * lib/getpass.h: Add.
44085         * lib/getpass.c: Include getpass.h first.
44086
44087 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
44088
44089         * lib/xalloc-die.c: New file.
44090         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
44091         All uses removed.
44092         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
44093         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
44094         xalloc-die.c.
44095         (_, N_, xalloc_die): Move to xalloc-die.c.
44096         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
44097         so that we needn't mess with xalloc_msg_memory_exhausted.
44098
44099         * lib/sha1.h: Renamed from sha.h.
44100         (SHA1_H): Renamed from _SHA_H.
44101         (sha1_ctx): Renamed from sha_ctx.
44102         (sha1_init_ctx): Renamed from sha_init_ctx.
44103         (sha1_process_block): Renamed from sha_process_block.
44104         (sha1_process_bytes): Renamed from sha_process_bytes.
44105         (sha1_finish_ctx): Renamed from sha_finish_ctx.
44106         (sha1_read_ctx): Renamed from sha_read_ctx.
44107         (sha1_stream): Renamed from sha_stream.
44108         (sha1_buffer): Renamed from sha_buffer.
44109         * lib/sha1.c: Likewise; renamed from sha.c.
44110         Do not include <sys/types.h>.
44111         Include <stddef.h> rather than <stdlib.h>.
44112
44113 2004-08-08  Bruno Haible  <bruno@clisp.org>
44114
44115         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
44116         FILESYSTEM_PREFIX_LEN.
44117         * lib/progreloc.c: Likewise.
44118         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
44119
44120 2004-08-06  Simon Josefsson  <jas@extundo.com>
44121
44122         * modules/progname (Depends-on): Don't depend on stdbool.
44123
44124 2004-08-06  Simon Josefsson  <jas@extundo.com>
44125
44126         * modules/getsubopt: New file.
44127         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
44128         getsubopt.
44129
44130 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
44131
44132         More merge from coreutils.
44133
44134         * m4/utimens.m4, m4/utimecmp.m4: New files.
44135         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
44136         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
44137         prereq.m4, sha.m4: Import changes from coreutils.
44138
44139 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
44140
44141         More merge from coreutils.
44142         * modules/raise, modules/readtokens0, modules/utimens:
44143         * modules/utimecmp, module/xnanosleep: New files.
44144         * modules/strftime: Add lib/strftime.h.
44145         Change include from <time.h> to "strftime.h".
44146         * modules/yesno: Add lib/yesno.h.
44147         * modules/backupfile: Remove lib/addext.c.
44148         * modules/euidaccess: Add stat-macros.h.
44149         * modules/canonicalize, modules/euidaccess,
44150         modules/filemode, modules/lchown, modules/makepath,
44151         modules/rmdir, modules/stat: Likewise.
44152
44153 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
44154
44155         Merge from tar.
44156         * lib/argp-help.c (make_hol, hol_append): Don't assume that
44157         SIZE_MAX is a valid preprocessor constant.
44158         (__argp_basename): Change from "#ifndef _LIBC"
44159         to "#ifndef __argp_short_program_name", so that
44160         we don't compile these functions for tar.
44161
44162         More merges from coreutils.
44163         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
44164         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
44165         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
44166         * lib/addext.c: Remove; no longer needed.
44167         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
44168         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
44169         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
44170         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
44171         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
44172         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
44173         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
44174         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
44175         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
44176         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
44177         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
44178         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
44179         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
44180         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
44181         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
44182         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
44183         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
44184         Import changes from coreutils.
44185
44186 2004-08-05  Simon Josefsson  <jas@extundo.com>
44187
44188         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
44189
44190 2004-08-05  Simon Josefsson  <jas@extundo.com>
44191
44192         * m4/getsubopt.m4: New file.
44193
44194 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
44195
44196         Merge from coreutils.
44197
44198         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
44199         * m4/getcwd-path-max.m4: New files.
44200
44201         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
44202         FILESYSTEM_PREFIX_LEN ->
44203         FILE_SYSTEM_PREFIX_LEN.
44204         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
44205         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
44206         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
44207         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
44208
44209         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
44210         prerequisite modules now handle the DOS stuff.
44211         Don't check for unistd.h.
44212
44213 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
44214
44215         Merge from coreutils.
44216
44217         * lib/.gdb-history: Remove; this doesn't belong here.
44218
44219         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
44220         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
44221         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
44222         * lib/getcwd.c: New files.
44223
44224         * lib/dirname.h: Include <stdbool.h>.
44225         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
44226         for consistency with POSIX terminology.  All uses changed.
44227         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
44228         (strip_trailing_slashes): Use bool for booleans.
44229         * lib/stripslash.c (strip_trailing_slashes): Likewise.
44230
44231         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
44232         sometimes returns a positive errno value even when it succeeds.
44233         (print_errno_message) [!LIBC]: Fall back on strerror if
44234         __strerror_r fails.
44235
44236         * lib/path-concat.c (mempcpy): Don't define if a system header defines
44237         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
44238         (longest_relative_suffix): New function.
44239         (path_concat): Use it.  Assume first argument is not NULL.
44240         Port to DOS.  Omit redundant separators.
44241         Report an error instead of returning NULL.
44242         Use mempcpy instead of memcpy.
44243         (xpath_concat): Remove: not declared or used.
44244
44245         * lib/same.h: Include <stdbool.h>
44246         (same_name): Return bool, not int.
44247         * lib/same.c (same_name): Likewise.
44248         (errno): Don't declare; we assume C89 or better now.
44249
44250         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
44251         if not already defined.
44252
44253         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
44254         * lib/dup-safer.c (errno): Likewise.
44255
44256 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
44257
44258         Merge from coreutils.
44259         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
44260         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
44261         * modules/path-concat: Don't depend on strdup.
44262
44263 2004-08-03  Simon Josefsson  <jas@extundo.com>
44264
44265         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
44266         * lib/progname.h: Don't include stdbool.h.
44267
44268 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
44269
44270         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
44271         * MODULES.html.sh (func_all_modules): Remove fatal.
44272
44273 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
44274
44275         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
44276
44277 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
44278
44279         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
44280         working.
44281
44282 2004-08-02  Simon Josefsson  <jas@extundo.com>
44283
44284         * lib/getsubopt.h: New file, with comments from Bruno Haible.
44285         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
44286         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
44287
44288 2004-08-01  Simon Josefsson  <jas@extundo.com>
44289
44290         * lib/xgetdomainname.c: Include stdlib.h, for free().
44291
44292 2004-07-19  Bruno Haible  <bruno@clisp.org>
44293
44294         * MODULES.html.sh (func_all_modules): Add dummy.
44295
44296 2004-07-16  Simon Josefsson  <jas@extundo.com>
44297
44298         * modules/dummy: New file.
44299
44300 2004-07-16  Simon Josefsson  <jas@extundo.com>
44301
44302         * lib/dummy.c: New file.
44303
44304 2004-07-16  Bruno Haible  <bruno@clisp.org>
44305
44306         * lib/backupfile.h: Add extern "C" for C++.
44307         * lib/closeout.h: Likewise.
44308         * lib/copy-file.h: Likewise.
44309         * lib/findprog.h: Likewise.
44310         * lib/full-write.h: Likewise.
44311         * lib/pathname.h: Likewise.
44312         * lib/progname.h: Likewise.
44313         * lib/stpcpy.h: Likewise.
44314         * lib/stpncpy.h: Likewise.
44315         * lib/strcase.h: Likewise.
44316         * lib/strstr.h: Likewise.
44317         * lib/xalloc.h: Likewise.
44318
44319         * lib/mbswidth.h: Add extern "C" for C++.
44320         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
44321
44322 2004-07-13  Robert Millan  <robertmh@gnu.org>
44323
44324         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
44325
44326 2004-07-09  Simon Josefsson  <jas@extundo.com>
44327
44328         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
44329         failed without this.)
44330
44331 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
44332
44333         * modules/chown (Files): Add lib/fchown-stub.c, since
44334         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
44335
44336 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
44337
44338         * lib/fchown-stub.c: New file.
44339
44340 2004-06-24  Jim Meyering  <jim@meyering.net>
44341
44342         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
44343
44344 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
44345
44346         * modules/argz: Omit "#include".
44347
44348         * MODULES.html.sh (func_all_modules): Add calloc, to match
44349         2004-06-01 addition of calloc module.
44350
44351 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
44352
44353         * m4/argz.m4: New file, which is autoupdated from libtool.
44354
44355 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
44356
44357         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
44358         libtool.
44359
44360 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
44361
44362         * config/srclist-update: Don't insist on "USA." before the
44363         close-comment, as libtool omits the period and puts the */ on a
44364         separate line.
44365         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
44366         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
44367
44368 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
44369
44370         * modules/argz: New file.
44371         * MODULES.html.sh (func_all_modules): Add argz.
44372
44373 2004-06-12  Jim Meyering  <jim@meyering.net>
44374         and  Paul Eggert  <eggert@cs.ucla.edu>
44375
44376         * modules/hash (Files): Add lib/xalloc.h.
44377         * modules/pipe (Depends-on): Add wait-process.
44378         * modules/stat (Depends-on): Add xalloc.
44379         * modules/userspec (Files): Add lib/userspec.h.
44380         * modules/xstrto
44381
44382         Upgrade from gettext-0.13.
44383         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
44384         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
44385         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
44386
44387 2004-06-10  Jim Meyering  <jim@meyering.net>
44388
44389         * lib/calloc.c: New file.
44390
44391 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
44392
44393         * lib/getdate.y (yylex): Allow space between sign and number.
44394         Problem reported by Dan Jacobson.
44395
44396 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
44397
44398         Merge from coreutils CVS.
44399
44400         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
44401         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
44402         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
44403         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
44404         xstrtol.m4: Fix copyright date and/or serial number.
44405
44406         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
44407         See if we need an fchown replacement.
44408         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
44409         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
44410         and use the replacement function if we detect either defect.
44411
44412         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
44413         gl_UTIMECMP.
44414
44415 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
44416         and  Jim Meyering  <jim@meyering.net>
44417
44418         Merge from coreutils CVS.
44419
44420         * lib/stat-macros.h: New file, with contents from file-type.h
44421         and coreutils' system.h.
44422         * lib/file-type.c: Include "stat-macros.h".
44423         * lib/file-type.h (file_type): Move all macro definitions to new file,
44424         stat-macros.h.
44425
44426         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
44427         Wrap old code with this conditional.
44428         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
44429         function that does not dereference symlinks.
44430         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
44431
44432         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
44433         dependency problems.
44434         (xreadlink): Accept new arg SIZE, for efficiency.
44435         All decls and uses changed.
44436         * lib/xreadlink.h: Include <stddef.h>, for size_t.
44437
44438         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
44439         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
44440
44441         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
44442         sysexits.h.
44443
44444 2004-06-01  Jim Meyering  <jim@meyering.net>
44445
44446         * m4/calloc.m4: New file.
44447
44448 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
44449
44450         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
44451         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
44452         Also, fix a typo in a diagnostic.
44453
44454 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
44455
44456         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
44457         or AC_FUNC_REALLOC.
44458
44459 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
44460
44461         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
44462         macros to be defined.
44463         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
44464         the allocator returns NULL because the requested size is zero.
44465
44466 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
44467
44468         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
44469         var.  Add comment explaining why libc still defines it.  This
44470         merges the following patch from glibc:
44471         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
44472
44473 2004-05-20  Andreas Schwab  <schwab@suse.de>
44474
44475         * m4/free.m4: Replace free if it not known to work, not the other
44476         way round.
44477
44478 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
44479
44480         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
44481         present in glibc since revision 1.1 of this file.
44482         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
44483         obstack_alignment_mask, obstack_alloc, obstack_base,
44484         obstack_blank, obstack_blank_fast, obstack_chunk_size,
44485         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
44486         obstack_grow0, obstack_init, obstack_int_grow,
44487         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
44488         obstack_next_free, obstack_object_size, obstack_ptr_grow,
44489         obstack_ptr_grow_fast, obstack_room): Remove declarations of
44490         nonexistent functions.
44491
44492 2004-05-18  Karl Berry  <karl@gnu.org>
44493
44494         * config/srclist.txt: break link for vasnprintf.c.
44495
44496 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
44497
44498         Port obstack to the AS/400, where pointers are 16 bytes wide and
44499         you cannot cast an integer to a valid pointer.  This patch is
44500         currently waiting to be integrated into glibc; see
44501         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
44502
44503         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
44504         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
44505         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
44506         (struct obstack): temp member is now a union of a pointer and
44507         an integer, instead of an integer.  All integer uses changed.
44508         This does not affect the physical layout of struct obstack,
44509         except on hosts (like the AS/400) where the size or alignment of
44510         void * is greater than that of ptrdiff_t.
44511         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
44512         __STDC__)]: Store temporary in pointer member of union, not
44513         integer member.
44514         * lib/obstack.c: Include <stddef.h>, for offsetof.
44515         (struct fooalign): Remove; it doesn't need a name.
44516         (union fooround): Change double to long double, and add void *.
44517         (DEFAULT_ALIGNMENT): Use offsetof to compute.
44518         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
44519         not a macro.  Hence the values are always int; so remove all
44520         casts-to-int in uses.
44521
44522 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
44523
44524         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
44525         we can get this patch merged into glibc.
44526
44527 2004-05-17  Derek R. Price  <derek@ximbiot.com>
44528             Paul Eggert  <eggert@cs.ucla.edu>
44529
44530         * m4/argp: Depend on alloca.
44531
44532 2004-05-17  Derek R. Price  <derek@ximbiot.com>
44533             Paul Eggert  <eggert@cs.ucla.edu>
44534
44535         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
44536         freecoding.
44537
44538 2004-05-17  Bruno Haible  <bruno@clisp.org>
44539
44540         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
44541         precision that consists of a '.' followed by an empty digit string.
44542         Patch by Tor Lillqvist <tml@iki.fi>.
44543
44544 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
44545
44546         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
44547         for backward compatibility with older code.  We need our own
44548         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
44549         it under some other name, and our alloca.h will define it.
44550
44551 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
44552             Derek Price  <derek@ximbiot.com>
44553
44554         * lib/alloca.c: Include <alloca.h>, to get our interface.
44555         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
44556         include <alloca.h> first.  Use C89 prototype for alloca; this
44557         requires including <stddef.h> for size_t.  Use extern "C" if C++.
44558         Use #elif for simplicity, since we can assume C89 now.
44559         Don't try to source the system alloca.h since it will not be found
44560         and to prevent recursively including its replacement.
44561         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
44562         * lib/regex.c: Likewise.
44563
44564 2004-05-16  Derek Price  <derek@ximbiot.com>
44565             Paul Eggert  <eggert@cs.ucla.edu>
44566
44567         getline cleanup.  This changes the getndelim2 API: both order of
44568         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
44569         no delimiter).
44570
44571         * lib/getline.c: Don't include stddef.h or stdio.h, since our
44572         interface does that.
44573         (getline): Always use getdelim, so that we don't have two
44574         copies of this code.
44575         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
44576         if available.
44577         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
44578         (GETNDELIM2_MAXIMUM): New macro.
44579         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
44580         instead of the old practice of delim2==0.  All callers changed.
44581         Return -1 on overflow, instead of returning junk.
44582         Do not set *linesize unless allocation succeeds.
44583         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
44584         that we include sys/types.h.
44585         * lib/getnline.h: Likewise.
44586         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
44587         (getndelim2): Reorder arguments.
44588         * lib/getnline.c (getnline, getndelim):
44589         Don't discard the NMAX argument.
44590         (getnline): Invoke getndelim, to avoid code duplication.
44591         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
44592         of (size_t) -1 by callers of the getnline family.
44593
44594 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
44595
44596         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
44597         Check for gettimeofday.
44598         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
44599         Check for settimeofday, stime.
44600
44601 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
44602
44603         * lib/nanosleep.c (suspended): Change its type from int to
44604         sig_atomic_t volatile.
44605         (first_call): Make it private to rpl_nanosleep, and have it
44606         be zero initially as that's a bit faster.
44607         (my_usleep): Round up fractional times instead of truncating them,
44608         as this is the usual meaning for 'sleep'.
44609
44610         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
44611         doesn't work.
44612         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
44613         (ENOSYS): Define if not defined.
44614         (settime): Fall back on stime if it exists and settimeofday fails.
44615         But don't bother with fallbacks if a method fails with errno == EPERM.
44616
44617 2004-05-11  Jim Meyering  <jim@meyering.net>
44618
44619         Prior to this change, the save_cwd caller required read access to the
44620         current directory on most systems (ones with the fchdir function).
44621
44622         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
44623         fails, try write-only, and finally, resort to using xgetcwd.
44624
44625 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
44626
44627         * lib/obstack.c, obstack.h: Import changes from libc.
44628
44629 2004-04-28  Bruno Haible  <bruno@clisp.org>
44630
44631         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
44632         also implicitly appends .exe to executables.
44633         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
44634         accepts Windows pathnames.
44635         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
44636         Treat Cygwin like Windows, since it now accepts Windows pathnames.
44637         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
44638         Treat Cygwin like Windows, since it now accepts Windows pathnames.
44639         Reported by Derek Robert Price <derek@ximbiot.com>.
44640
44641 2004-04-21  Karl Berry  <karl@gnu.org>
44642
44643         * config/srclist.txt (localcharset.c): break sync.
44644
44645 2004-04-20  Paul Eggert  <eggert@twinsun.com>
44646
44647         * m4/host-os.m4: Add a copyright notice.
44648
44649 2004-04-20  Jim Meyering  <jim@meyering.net>
44650
44651         Change UTILS_ to gl_ in AC_DEFINE'd names.
44652         Change utils_- and jm_-prefixed variables, too.
44653         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
44654         UTILS_FUNC_MKDIR_TRAILING_SLASH.
44655         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
44656
44657         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
44658         Don't emit trailing blanks.
44659         Also rename jm_-prefixed variables to have gl_ prefix.
44660
44661         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
44662         Also rename jm_-prefixed variables to have gl_ prefix.
44663
44664         * m4/jm-macros.m4: Reflect the renamings.
44665         * m4/prereq.m4: Likewise.
44666
44667 2004-04-20  Jim Meyering  <jim@meyering.net>
44668
44669         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
44670         memory.
44671
44672 2004-04-20  Jim Meyering  <jim@meyering.net>
44673             Bruno Haible  <bruno@clisp.org>
44674
44675         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
44676         memory when realloc fails.
44677
44678 2004-04-19  Jim Meyering  <jim@meyering.net>
44679
44680         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
44681         now that readutmp.c may call `free (0)'.
44682
44683 2004-04-19  Bruno Haible  <bruno@clisp.org>
44684
44685         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
44686         * m4/inttypes_h.m4: Likewise.
44687         * m4/stdint_h.m4: Likewise.
44688         * m4/intmax_t.m4: Likewise.
44689         * m4/uintmax_t.m4: Likewise.
44690
44691 2004-04-18  Jim Meyering  <jim@meyering.net>
44692
44693         * m4/prereq.m4: Don't forbid jm_ prefix.
44694
44695         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
44696         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
44697         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
44698         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
44699         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
44700         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
44701         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
44702         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
44703         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
44704         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
44705         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
44706         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
44707         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
44708         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
44709         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
44710         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
44711         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
44712         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
44713         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
44714
44715 2004-04-18  Jim Meyering  <jim@meyering.net>
44716
44717         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
44718         failure, don't leak memory and do call END_UTMP_ENT.
44719
44720 2004-04-16  Jim Meyering  <jim@meyering.net>
44721
44722         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
44723         coreutils' stat program.
44724         (gl_PREREQ): Don't require jm_PREREQ_STAT.
44725
44726 2004-04-11  Paul Eggert  <eggert@twinsun.com>
44727
44728         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
44729         C89.
44730         (CHAR_BIT): Remove, since we assume C89.
44731         Include <stdint.h> if available, as per current Autoconf CVS advice.
44732
44733 2004-03-31  Jim Meyering  <jim@meyering.net>
44734
44735         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
44736         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
44737         * m4/xalloc.m4: Likewise.
44738
44739 2004-03-30  Paul Eggert  <eggert@twinsun.com>
44740
44741         Merge from coreutils.
44742
44743         * m4/inttostr.m4: New file.
44744         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
44745         Require AM_STDBOOL_H and gl_TIMESPEC instead.
44746         Require gl_CLOCK_TIME.
44747         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
44748
44749 2004-03-30  Paul Eggert  <eggert@twinsun.com>
44750
44751         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
44752         not bool, to be more consistent with Unix conventions.
44753         Suggested by Bruno Haible.
44754
44755         Merge from coreutils.
44756
44757         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
44758         * lib/umaxtostr.c: New files.
44759
44760         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
44761         the usual <time.h> dance.
44762         (get_date): Change signature to support fractional time stamps.
44763         All callers changed.
44764         * lib/getdate.y: Include "getdate.h" first, as we can now
44765         assume C89 and don't need to worry about 'const'.
44766         Similarly, include "unlocked-io.h" near start, not in middle.
44767         Include <limits.h>.
44768         (textint.value): Use long int rather than int.
44769         (textint.digits): Use size_t rather than int.
44770         (BILLION, LOG10_BILLION): New constants.
44771         (parser_control): New member rel_ns.  Members day_ordinal,
44772         time_zone, month, day, hour, minutes, rel_year, rel_month,
44773         rel_day, rel_hour, rel_minutes, rel_seconds
44774         are now long int, not int.  Member seconds is now struct timespec,
44775         not int.  New member timespec_seen.  Members dates_seen, days_seen,
44776         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
44777         not int.
44778         (%union.intval): Now long int, not int.
44779         New member timespec.
44780         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
44781         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
44782         (spec): Now is a timespec or an item list.
44783         (timespec, items): New nonterminals.
44784         (time, rel, relunit, number, get_date):
44785         Add support for fractional seconds.
44786         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
44787         (gmtime, localtime, mktime): Remove decls; not needed with C89.
44788         (to_hour): First arg is now long int, not int.
44789         (to_year): Returns long int, not int.
44790         Don't treat year -70 like 70.
44791         (tm_diff): Returns long int, not int.
44792         (lookup_word): Use bool instead of int when appropriate.
44793         (yylex): Use size_t for count, not int.
44794         Detect overflow when parsing large integer constants.
44795         Add support for fractions.
44796         (get_date): Make pointers 'const' if possible.
44797         Use more-portable code to detect integer overflow.
44798         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
44799         Don't use ctime; it's not reliable if the year has >4 digits.
44800
44801         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
44802         This is for compatibility with BSD.
44803
44804         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
44805         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
44806         From coreutils' system.h.
44807
44808         * lib/userspec.c: Don't include "posixver.h".
44809         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
44810         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
44811         compatible extension.  Simplify code by removing a boolean int
44812         that was always nonzero if a string was nonnull.
44813
44814 2004-03-30  Jim Meyering  <jim@meyering.net>
44815
44816         Merge from coreutils.
44817
44818         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
44819         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
44820         on some systems one must include <grp.h> before it.
44821         Reported by Christian Krackowizer.
44822
44823 2004-03-30  Jim Meyering  <jim@meyering.net>
44824
44825         Merge from coreutils.
44826
44827         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
44828
44829         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
44830         an empty input stream.
44831
44832         * lib/readtokens.c: Include <stdbool.h>.
44833         (readtoken): Use `size_t' rather than int/long.
44834         All callers adjusted.
44835         Use `bool' rather than `int' where appropriate.
44836         Use memset rather than an explicit loop.
44837         Use x2nrealloc rather than xrealloc.
44838         Allow the use of `\0' as a delimiter.
44839         (readtokens): Likewise.
44840         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
44841
44842 2004-03-30  Jim Meyering  <jim@meyering.net>
44843
44844         * m4/realloc.m4: Remove file, since now it does no more than
44845         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
44846         the `configure.ac' section of module/realloc.
44847         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
44848
44849 2004-03-30  Bruno Haible  <bruno@clisp.org>
44850
44851         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
44852         nonnull.
44853
44854 2004-03-29  Paul Eggert  <eggert@twinsun.com>
44855
44856         Merge changes to getloadavg.c from coreutils and Emacs.
44857
44858         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
44859         Define to an expression, not to the empty string.
44860         Include cloexec.h and xalloc.h.
44861         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
44862         Use set_cloexec_flag rather than rolling our own.
44863         * lib/cloexec.c, lib/cloexec.h: New files.
44864
44865 2004-03-29  Paul Eggert  <eggert@twinsun.com>
44866
44867         * m4/cloexec.m4: New file.
44868
44869 2004-03-18  Paul Eggert  <eggert@twinsun.com>
44870
44871         * lib/getopt.h: Sync with libc CVS.
44872
44873 2004-03-18  Paul Eggert  <eggert@twinsun.com>
44874             Bruno Haible  <bruno@clisp.org>
44875
44876         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
44877         mbswidth.
44878
44879 2004-03-18  Paul Eggert  <eggert@twinsun.com>
44880             Bruno Haible  <bruno@clisp.org>
44881
44882         * lib/mbswidth.h: Include <wchar.h> only if
44883         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
44884         <wchar.h>.
44885         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
44886
44887 2004-03-09  Paul Eggert  <eggert@twinsun.com>
44888
44889         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
44890         Sync with libc CVS.
44891         * lib/getopt_int.h: New file, also synced from libc.
44892
44893 2004-03-09  Paul Eggert  <eggert@twinsun.com>
44894
44895         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
44896         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
44897         Bring back getopt.c, getopt.h, getopt1.c.
44898
44899 2004-03-07  Paul Eggert  <eggert@twinsun.com>
44900
44901         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
44902         All uses changed.  Check for sa_sigaction member; this fixes
44903         a bug first reported by Jason Andrade in
44904         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
44905
44906 2004-03-07  Paul Eggert  <eggert@twinsun.com>
44907
44908         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
44909         '#if' expressions.  Unlike the code it replaces, it does not
44910         depend on (defined _SC_PAGESIZE).  However, it does depend on
44911         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
44912         first reported by Jason Andrade in
44913         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
44914
44915 2004-02-25  Simon Josefsson  <jas@extundo.com>
44916
44917         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
44918
44919 2004-02-25  Simon Josefsson  <jas@extundo.com>
44920
44921         * lib/strdup.h: New file.
44922         * lib/strdup.c: Include it.
44923         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
44924         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
44925
44926 2004-02-23  Karl Berry  <karl@gnu.org>
44927
44928         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
44929         (from fencepost.gnu.org:/gd/gnuorg).
44930
44931 2004-02-23  Karl Berry  <karl@gnu.org>
44932
44933         * config/srclistvars.sh (GNUORG) [karl]: redefine.
44934         * config/srclist.txt: add maintain/standards documents.
44935
44936 2004-02-18  Bruno Haible  <bruno@clisp.org>
44937
44938         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
44939         Reported by Derek Robert Price <derek@ximbiot.com>.
44940
44941 2004-02-16  Karl Berry  <karl@gnu.org>
44942
44943         * config/mkinstalldirs, install-sh: update from automake.
44944
44945 2004-02-06  Karl Berry  <karl@gnu.org>
44946
44947         * m4/po.m4: update from gettext 0.14.1.
44948
44949 2004-02-06  Karl Berry  <karl@gnu.org>
44950
44951         * lib/config.charset: update from gettext 0.14.1.
44952
44953 2004-02-05  Paul Eggert  <eggert@twinsun.com>
44954
44955         Add comments and code, prompted by suggestions from Bruno Haible
44956         for sh-quote.
44957         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
44958         describing the enum quoting_style values.
44959         * lib/quotearg.c (quotearg_alloc): New function.
44960         (quotearg_buffer_restyled): Treat lone { and } as special.
44961         Treat = as special.  Work around bug with older shells
44962         that "see" a '\' that is really the 2nd byte of a multibyte char.
44963         Quote empty string with shell_quoting_style.
44964
44965 2004-02-03  Bruno Haible  <bruno@clisp.org>
44966
44967         * m4/pipe.m4: New file, from GNU gettext.
44968
44969 2004-02-03  Bruno Haible  <bruno@clisp.org>
44970
44971         * lib/pipe.h: New file, from GNU gettext.
44972         * lib/pipe.c: New file, from GNU gettext.
44973
44974 2004-01-27  Bruno Haible  <bruno@clisp.org>
44975
44976         * m4/execute.m4: New file, from GNU gettext.
44977
44978 2004-01-27  Bruno Haible  <bruno@clisp.org>
44979
44980         * lib/execute.h: New file, from GNU gettext.
44981         * lib/execute.c: New file, from GNU gettext.
44982         * lib/w32spawn.h: New file, from GNU gettext.
44983
44984 2004-01-24  Paul Eggert  <eggert@twinsun.com>
44985
44986         Merge from diffutils.
44987
44988         * lib/file-type.c (file_type): Add typed memory objects.
44989         * lib/file-type.h (S_TYPEISTMO): New macro.
44990
44991         * lib/c-stack.h (c_stack_action): Remove argv argument.
44992         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
44993         (die): Don't calculate message unless segv_action returns.
44994         (get_stack_location, min_address_from_argv, max_address_from_argv,
44995         volatile stack_base, volatile_stack_size): Remove.
44996         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
44997         that every segmentation violation is a stack overflow.  (Ouch!)
44998         See Debian bug 136249 (still outstanding) for more info about why
44999         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
45000
45001 2004-01-24  Paul Eggert  <eggert@twinsun.com>
45002
45003         Exit-status fix from coreutils.
45004
45005         Use exit_failure consistently in place of EXIT_FAILURE,
45006         so that program exit statuses are consistent on failure.
45007
45008         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
45009         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
45010         * lib/argmatch.h: Comment fix to match the above.
45011         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
45012         Now a macro referring to exit_failure, instead of a separate
45013         variable.  Include "exitfail.h" to get it.
45014         * lib/xstrtol.h: Include "exitfail.h".
45015         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
45016
45017         * lib/long-options.c (parse_long_options): Use prototype
45018         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
45019         for clarity.
45020
45021 2004-01-21  Jim Meyering  <jim@meyering.net>
45022
45023         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
45024         so as not to conflict with a different-sized __mktime_internal
45025         function in GNU libc.
45026         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
45027         Problem building statically-linked `ls' reported by Michael Brunnbauer.
45028
45029 2004-01-20  Karl Berry  <karl@gnu.org>
45030
45031         * config/config.guess: update from config.
45032
45033         * config/srclistvars.sh: GNUWWWLICENSES for karl.
45034
45035 2004-01-20  Bruno Haible  <bruno@clisp.org>
45036
45037         Safer stack allocation.
45038         * lib/setenv.c: Include allocsa.h.
45039         (alloca): Remove fallback definition.
45040         (freea): Remove macro.
45041         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
45042         instead of freea.
45043
45044 2004-01-20  Bruno Haible  <bruno@clisp.org>
45045
45046         * m4/eealloc.m4: New file, from GNU gettext.
45047
45048 2004-01-20  Bruno Haible  <bruno@clisp.org>
45049
45050         * m4/allocsa.m4: New file, from GNU gettext.
45051
45052 2004-01-20  Bruno Haible  <bruno@clisp.org>
45053
45054         * lib/xallocsa.h: New file, from GNU gettext.
45055         * lib/xallocsa.c: New file, from GNU gettext.
45056
45057 2004-01-20  Bruno Haible  <bruno@clisp.org>
45058
45059         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
45060
45061 2004-01-20  Bruno Haible  <bruno@clisp.org>
45062
45063         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
45064         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
45065         specially.
45066
45067 2004-01-20  Bruno Haible  <bruno@clisp.org>
45068
45069         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
45070         patch.
45071
45072 2004-01-20  Bruno Haible  <bruno@clisp.org>
45073
45074         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
45075
45076 2004-01-20  Bruno Haible  <bruno@clisp.org>
45077
45078         * lib/eealloc.h: New file.
45079
45080 2004-01-20  Bruno Haible  <bruno@clisp.org>
45081
45082         * lib/binary-io.h: Avoid warnings on Cygwin.
45083
45084 2004-01-20  Bruno Haible  <bruno@clisp.org>
45085
45086         * lib/allocsa.h: New file, from GNU gettext.
45087         * lib/allocsa.c: New file, from GNU gettext.
45088
45089 2004-01-18  Karl Berry  <karl@gnu.org>
45090
45091         * doc/gpl.texi, doc/lgpl.texi: new files.
45092
45093 2004-01-18  Karl Berry  <karl@gnu.org>
45094
45095         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
45096         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
45097
45098 2004-01-15  Paul Eggert  <eggert@twinsun.com>
45099
45100         Merge from coreutils.
45101
45102         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
45103         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
45104         (gl_DEFAULT_POSIX2_VERSION): Move
45105         the documentation from 'configure' into 'config.hin',
45106         so that 'configure --help' isn't burdened by it and
45107         we don't have to worry about its formatting there.
45108         Reword the documentation so that it's more succinct
45109         and can be run together into a single paragraph.
45110         * m4/same.m4 (gl_SAME): Check for pathconf.
45111
45112 2004-01-15  Paul Eggert  <eggert@twinsun.com>
45113
45114         Merge from coreutils.
45115
45116         * lib/posixver.c: Include posixver.h.
45117
45118         * lib/same.c: Include <stdbool.h>, <limits.h>.
45119         (_POSIX_NAME_MAX): Define if not defined.
45120         (MIN): New macro.
45121         (same_name): If file names are silently truncated, report
45122         that the file names are the same if they are the same after
45123         the silent truncation.
45124
45125         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
45126         conversion function.
45127         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
45128         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
45129         longer needed.
45130
45131 2004-01-15  Jim Meyering  <jim@meyering.net>
45132
45133         Merge from coreutils.
45134
45135         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
45136         if no library is required.
45137         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
45138         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
45139         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
45140         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
45141         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
45142         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
45143         value, $ac_cv_search_crypt, if it's "none required".
45144         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
45145         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
45146         not gl_FUNC_GETLOADAVG.
45147         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
45148         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
45149
45150 2004-01-15  Jim Meyering  <jim@meyering.net>
45151
45152         Merge from coreutils.
45153
45154         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
45155         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
45156         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
45157
45158         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
45159         optional configure-time default.
45160
45161         * lib/version-etc.c (version_etc_copyright): Update copyright date.
45162
45163         * lib/xreadlink.c (xreadlink): Correct outdated comment.
45164
45165 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
45166
45167         Merge from coreutils.
45168
45169         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
45170         value, $ac_cv_search_nanosleep, if it's "none required".
45171
45172 2004-01-14  Paul Eggert  <eggert@twinsun.com>
45173
45174         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
45175         with like-named macro in fnmatch.c.
45176         (EXT): Use an internal constant instead.
45177
45178         Merge fnmatch patches from glibc.
45179         * lib/fnmatch.c (mbsinit): Remove define.
45180         Add libc_hidden_ver (__fnmatch, fnmatch).
45181         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
45182         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
45183
45184 2004-01-14  Karl Berry  <karl@gnu.org>
45185
45186         * config/install-sh: update from automake.
45187
45188 2004-01-13  Karl Berry  <karl@gnu.org>
45189
45190         * config/install-sh: update from automake.
45191
45192 2004-01-09  Karl Berry  <karl@gnu.org>
45193
45194         * config/install-sh: update from automake.
45195
45196 2004-01-05  Karl Berry  <karl@gnu.org>
45197
45198         * config/config.{sub,guess}: update from config.
45199
45200 2003-12-31  Karl Berry  <karl@gnu.org>
45201
45202         * config/depcomp: update from automake.
45203
45204 2003-12-14  Karl Berry  <karl@gnu.org>
45205
45206         * lib/config.charset: update from gettext-runtime.
45207
45208 2003-12-03  Paul Eggert  <eggert@twinsun.com>
45209
45210         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
45211         Bug reported by Alfred M. Szmidt.
45212
45213 2003-12-03  Bruno Haible  <bruno@clisp.org>
45214
45215         * m4/gettext.m4: Upgrade from gettext-0.13.
45216         * m4/po.m4: Upgrade from gettext-0.13.
45217         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
45218         * m4/intmax.m4: New file, from gettext-0.13.
45219         * m4/printf-posix.m4: New file, from gettext-0.13.
45220
45221 2003-11-29  Karl Berry  <karl@gnu.org>
45222
45223         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
45224
45225 2003-11-25  Paul Eggert  <eggert@twinsun.com>
45226             Bruno Haible  <bruno@clisp.org>
45227
45228         * lib/printf-parse.h: Don't include sys/types.h.
45229         (ARG_NONE): New macro.
45230         (char_directive): Change type of *arg_index fields to size_t.
45231         * lib/printf-parse.c: Don't include sys/types.h.
45232         (SSIZE_MAX): Remove macro.
45233         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
45234         Remove unnecessary overflow check.
45235         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
45236         fields.
45237
45238 2003-11-25  Bruno Haible  <bruno@clisp.org>
45239
45240         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
45241
45242 2003-11-25  Bruno Haible  <bruno@clisp.org>
45243
45244         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
45245         gt_TYPE_SSIZE_T.
45246
45247 2003-11-24  Paul Eggert  <eggert@twinsun.com>
45248
45249         * modules/alloca: Remove dependency on xalloc.
45250
45251 2003-11-24  Paul Eggert  <eggert@twinsun.com>
45252
45253         * lib/alloca.c: Remove dependency on xalloc module.
45254         (xalloc_die): Remove.
45255         (memory_full) [!defined emacs]: New macro.
45256         [!defined emacs]: Don't include xalloc.h.
45257         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
45258         address arithmetic overflows.  Change datatypes a bit to avoid
45259         unnecessary casts.
45260
45261 2003-11-22  Jim Meyering  <jim@meyering.net>
45262
45263         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
45264         s/size/size_t/.
45265
45266 2003-11-21  Karl Berry  <karl@gnu.org>
45267
45268         * config/config.{sub,guess}: update from config.
45269
45270 2003-11-18  Karl Berry  <karl@gnu.org>
45271
45272         * config/config.{sub,guess}: update from config.
45273
45274         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
45275
45276 2003-11-17  Paul Eggert  <eggert@twinsun.com>
45277
45278         * README: Mention that S+T cannot overflow if S is the size of
45279         an existing object and T is sufficiently small.
45280
45281 2003-11-17  Jim Meyering  <jim@meyering.net>
45282
45283         On systems without utime and without a utimes function capable of
45284         dealing with a NULL struct utimbuf* argument, this utime replacement
45285         could -- in unusual circumstances -- leak a file descriptor.
45286         * lib/utime.c: Include <unistd.h> and <errno.h>.
45287         (utime_null): Be sure to close `fd' and to preserve errno.
45288         Reported by Geoff Collyer via Arnold Robbins.
45289
45290 2003-11-17  Bruno Haible  <bruno@clisp.org>
45291
45292         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
45293         (Depends-on): Add xsize.
45294
45295 2003-11-17  Bruno Haible  <bruno@clisp.org>
45296
45297         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
45298
45299 2003-11-17  Bruno Haible  <bruno@clisp.org>
45300
45301         * lib/vasnprintf.c (alloca): Remove fallback definition.
45302         (freea): Remove definition.
45303         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
45304         Reported by Paul Eggert.
45305
45306 2003-11-16  Paul Eggert  <eggert@twinsun.com>
45307             Bruno Haible  <bruno@clisp.org>
45308
45309         Protect against address arithmetic overflow.
45310         * lib/printf-args.h: Include stddef.h.
45311         (arguments): Change type of field 'count' to size_t.
45312         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
45313         'unsigned int' where appropriate.
45314         * lib/printf-parse.h: Include sys/types.h.
45315         (char_directive): Change type of *arg_index fields to ssize_t.
45316         (char_directives): Change type of fields 'count', max_*_length to
45317         size_t.
45318         * lib/printf-parse.c: Include sys/types.h and xsize.h.
45319         (SSIZE_MAX): Define fallback value.
45320         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
45321         instead of 'int' where appropriate. Check a_allocated, d_allocated
45322         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
45323         * lib/vasnprintf.c: Include xsize.h.
45324         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
45325         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
45326         overflow. Avoid wraparound when converting a width or precision from
45327         decimal to binary.
45328
45329 2003-11-16  Bruno Haible  <bruno@clisp.org>
45330
45331         Update from GNU gettext.
45332         * lib/printf-parse.c: Generalize to it can be compiled for wide
45333         strings.
45334         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
45335         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
45336         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
45337         SNPRINTF): New macros.
45338         Don't include <alloca.h> if the file is used inside libintl.
45339         (local_wcslen): New function, for Solaris 2.5.1.
45340         (VASNPRINTF): Use it instead of wcslen.
45341
45342 2003-11-16  Bruno Haible  <bruno@clisp.org>
45343
45344         * lib/xsize.h (xmax): New function.
45345         (xsum, xsum3, xsum4): Declare as "pure" functions.
45346
45347 2003-11-12  Paul Eggert  <eggert@twinsun.com>
45348
45349         * modules/xalloc (Files): Undo latest change, since xalloc.h
45350         no longer needs SIZE_MAX or PTRDIFF_MAX.
45351
45352 2003-11-12  Paul Eggert  <eggert@twinsun.com>
45353
45354         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
45355         gl_PTRDIFF_MAX.
45356
45357 2003-11-12  Paul Eggert  <eggert@twinsun.com>
45358
45359         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
45360         "return", to pacify some unknown compiler.  Problem reported
45361         by Joerg Schilling.
45362
45363 2003-11-12  Paul Eggert  <eggert@twinsun.com>
45364
45365         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
45366         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
45367         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
45368         heuristic is just as accurate as far as we know, and it removes a
45369         dependency on size_max.m4 and ptrdiff_max.m4.
45370
45371 2003-11-11  Bruno Haible  <bruno@clisp.org>
45372
45373         * modules/xsize (Files): Add m4/size_max.m4.
45374         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
45375
45376 2003-11-11  Bruno Haible  <bruno@clisp.org>
45377
45378         * m4/size_max.m4: New file.
45379         * m4/ptrdiff_max.m4: New file.
45380         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
45381         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
45382         (gl_XALLOC): Invoke it.
45383
45384 2003-11-11  Bruno Haible  <bruno@clisp.org>
45385
45386         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
45387         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
45388         defined.
45389
45390 2003-11-10  Paul Eggert  <eggert@twinsun.com>
45391
45392         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
45393         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
45394         rejected some allocations of exactly SIZE_MAX - 2 bytes.
45395         From Bruno Haible.
45396         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
45397         not (size_t) -1, since it's defined here.
45398
45399 2003-11-09  Karl Berry  <karl@gnu.org>
45400
45401         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
45402
45403 2003-11-06  Paul Eggert  <eggert@twinsun.com>
45404
45405         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
45406         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
45407         Reject sizes of exactly SIZE_MAX bytes.
45408         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
45409         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
45410
45411 2003-11-05  Bruno Haible  <bruno@clisp.org>
45412
45413         * lib/xsize.h: Include limits.h, to avoid a possible collision with
45414         SIZE_MAX defined in <limits.h> on Solaris.
45415
45416 2003-11-04  Jim Meyering  <jim@meyering.net>
45417
45418         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
45419         variable names, rather than @VAR@.
45420         * modules/poll: Likewise.
45421
45422 2003-11-04  Bruno Haible  <bruno@clisp.org>
45423
45424         * modules/xsize: New file.
45425         * modules/linebreak: Depend on xsize.
45426         * MODULES.html.sh (func_all_modules): Add xsize.
45427
45428 2003-11-04  Bruno Haible  <bruno@clisp.org>
45429
45430         * m4/xsize.m4: New file.
45431
45432 2003-11-04  Bruno Haible  <bruno@clisp.org>
45433
45434         * lib/xsize.h: New file.
45435         * lib/linebreak.c: Include xsize.h.
45436         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
45437         argument for overflow.
45438         Suggested by Paul Eggert.
45439
45440 2003-11-03  Karl Berry  <karl@gnu.org>
45441
45442         * config/config.{guess,sub}: update from config.
45443
45444 2003-11-03  Jim Meyering  <jim@meyering.net>
45445
45446         * modules/userspec (lib_SOURCES): Add userspec.h.
45447         (Include): Add "userspec.h".
45448         Improve description.
45449
45450 2003-11-03  Jim Meyering  <jim@meyering.net>
45451
45452         * lib/userspec.c: Include "userspec.h".
45453         * lib/userspec.h: New file.
45454
45455 2003-11-03  Bruno Haible  <bruno@clisp.org>
45456
45457         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
45458
45459 2003-11-03  Bruno Haible  <bruno@clisp.org>
45460
45461         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
45462         available, to avoid (extremely rare) race condition.
45463         Suggested by Paul Eggert.
45464
45465 2003-11-02  Karl Berry  <karl@gnu.org>
45466
45467         * config/srclist.txt (vasprintf.c): sync broken, sigh.
45468
45469 2003-10-31  Paul Eggert  <eggert@twinsun.com>
45470
45471         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
45472         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
45473         (read_filesystem_list): Set and use me_type_malloced.
45474         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
45475         whatever the type happens to be), for brevity and consistency.
45476         Check for size calculation overflow on Alphas running OSF/1.
45477
45478 2003-10-31  Jim Meyering  <jim@meyering.net>
45479
45480         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
45481
45482         * lib/linebuffer.c: Include <string.h> for declaration of memset.
45483
45484 2003-10-30  Paul Eggert  <eggert@twinsun.com>
45485             Bruno Haible  <bruno@clisp.org>
45486
45487         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
45488         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
45489
45490 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
45491
45492         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
45493         netbsd*-gnu*.  Suggested by Robert Millan.
45494
45495 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45496
45497         * modules/group-member: Depend on stdbool.
45498
45499 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45500
45501         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
45502
45503 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45504
45505         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
45506         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
45507         after the 'gnu' in these cases.  This fixes some bugs in the
45508         previous change, and is based on suggestions by Robert Millan.
45509
45510 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45511
45512         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
45513         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
45514         no longer needed.
45515         * lib/quotearg.c (quotearg_n_options): Use it.
45516         * lib/group-member.c: Include <stdbool.h>.
45517         (free_group_info): Arg is now const *; don't free arg.
45518         (get_group_info): Now returns bool and accepts struct group_info *,
45519         rather than returning a malloc'ed struct group_info *.
45520         All uses changed.  Check for overflow in internal size calculation.
45521
45522         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
45523         rather than xmalloc/xrealloc.
45524         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
45525         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
45526         conformance bug: the old code used a pointer after freeing the
45527         storage that it addressed.
45528         * lib/hash.c (hash_initialize): Simplify the code by using
45529         xalloc_oversized rather than doing it by hand.
45530         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
45531         the buffer preserved.  Use free and xmalloc instead.
45532         * lib/quotearg.c (quotearg_n_options): Likewise.
45533         Use a simpler test for size overflow.  Don't use xalloc_oversized
45534         because unsigned int might be wider than size_t (!); this suggests
45535         that we should switch from unsigned int to size_t for slot numbers.
45536
45537 2003-10-28  Paul Eggert  <eggert@twinsun.com>
45538
45539         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
45540         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
45541         NetBSD kernels.  Requested by Richard Stallman.
45542
45543 2003-10-27  Paul Eggert  <eggert@twinsun.com>
45544
45545         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
45546         to allocate the returned structure.  Do not allocate a subarray,
45547         as x2nrealloc will do that.
45548         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
45549         instead of xnrealloc.
45550         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
45551
45552 2003-10-27  Bruno Haible  <bruno@clisp.org>
45553
45554         * lib/stdbool_.h: Better support for BeOS.
45555
45556 2003-10-26  Paul Eggert  <eggert@twinsun.com>
45557
45558         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
45559         now uses inline.
45560
45561 2003-10-26  Paul Eggert  <eggert@twinsun.com>
45562
45563         * lib/xalloc.h (xalloc_oversized): New static inline function, for
45564         callers that want to do their own size-overflow checking.  Include
45565         <stdbool.h>, since xalloc_oversized returns bool.
45566         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
45567         to use xalloc_oversized.
45568
45569         Add two functions x2realloc, x2nrealloc, for programs that grow
45570         arrays dynamically by doubling their sizes.
45571         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
45572         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
45573         New functions.
45574
45575         Port to C99 semantics for 'inline' of external functions.
45576         Bug reported by Bruno Haible.
45577         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
45578         with the old contents of xnmalloc.
45579         (xnmalloc, xmalloc): Use it.
45580         (xnrealloc_inline): New static inline function,
45581         with the old contents of xnrealloc.
45582         (xnrealloc, xrealloc): Use it.
45583
45584         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
45585         that.
45586
45587 2003-10-26  Karl Berry  <karl@gnu.org>
45588
45589         * config/srclist.txt (COPYING.DOC): no longer available from
45590         /gd/gnuorg; don't know where the ultimate source is.
45591
45592 2003-10-25  Paul Eggert  <eggert@twinsun.com>
45593
45594         Fix several address-calculation bugs in the hash modules,
45595         plus some minor code cleanup.
45596
45597         * lib/hash.h: Include <stdbool.h>, for bool.
45598         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
45599         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
45600         hash_get_n_entries, hash_get_max_bucket_length,
45601         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
45602         hash_rehash): Use size_t rather than unsigned.
45603         * lib/hash.c (struct hash_table, hash_get_n_buckets,
45604         hash_get_n_buckets_used, hash_get_n_entries,
45605         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
45606         hash_get_entries, hash_do_for_each, hash_string, is_prime,
45607         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
45608         Likewise.
45609         (SIZE_MAX): Define if not defined.
45610         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
45611         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
45612         hash_print):
45613         Use const * when possible.
45614         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
45615         (check_tuning): Fix bug: if tuning parameters were very close to
45616         0 or 1, rounding errors could have caused subscript violations.
45617         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
45618         (hash_initialize): Add 'fail:' label
45619         to free table and return NULL, and use it to simplify code.
45620         Use calloc rather than clearing the storage ourself.
45621         (hash_initialize, hash_rehash): Check for arithmetic overflow in
45622         buffer size calculations.
45623         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
45624         Include <stddef.h>, for size_t.
45625         * lib/hash-pjw.c (hash_pjw): Likewise.
45626         Switch to method described by Bruno Haible.
45627         Include <limits.h>, for CHAR_BIT.
45628         (SIZE_BITS): New macro.
45629
45630 2003-10-23  Paul Eggert  <eggert@twinsun.com>
45631
45632         * m4/getline.m4 (AM_FUNC_GETLINE):
45633         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
45634         hosts.  Problem reported by Derek Robert Price in
45635         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
45636         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
45637         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
45638
45639 2003-10-21  Paul Eggert  <eggert@twinsun.com>
45640
45641         * lib/getndelim2.c (getndelim2): When size calculation overflows,
45642         ceiling the allocation at NMAX bytes rather than silently
45643         discarding input bytes before NMAX is reached.  This makes
45644         a difference only if NMAX exceeds SIZE_MAX / 2.
45645
45646         * lib/obstack.c: Merge from glibc.
45647         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
45648         Add libc_hidden_def (_obstack_newchunk).
45649         (_obstack_free) [! defined _LIBC]: Remove.
45650         [defined _LIBC]: Make a strong alias from obstack_free, rather than
45651         a clone of the function body.
45652         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
45653         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
45654
45655         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
45656         glibc.
45657         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
45658         arg to memcpy.
45659
45660         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
45661         (obstack_ptr_grow_fast, obstack_int_grow_fast):
45662         Don't use lvalue casts, as GCC plans to remove support for them
45663         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
45664         was also present in the non-GCC version, indicating that this
45665         code had always been buggy and had never been widely used.
45666         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
45667         Use the fast variant of each macro, rather than copying the
45668         definiens of the fast variant; that way, we'll be more likely to
45669         catch future bugs in the fast variants.
45670
45671 2003-10-20  Bruno Haible  <bruno@clisp.org>
45672
45673         * modules/wait-process: New file.
45674         * MODULES.html.sh (func_all_modules): Add wait-process.
45675
45676 2003-10-20  Bruno Haible  <bruno@clisp.org>
45677
45678         * m4/wait-process.m4: New file.
45679
45680 2003-10-20  Bruno Haible  <bruno@clisp.org>
45681
45682         * lib/wait-process.h: New file, from GNU gettext.
45683         * lib/wait-process.c: New file, from GNU gettext.
45684
45685 2003-10-19  Jim Meyering  <jim@meyering.net>
45686
45687         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
45688         HPUX 10.20.
45689
45690 2003-10-18  Karl Berry  <karl@gnu.org>
45691
45692         * config/config.guess: update from config.
45693
45694 2003-10-16  Paul Eggert  <eggert@twinsun.com>
45695
45696         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
45697         (getgroups): First arg is int, not size_t.
45698         Don't let 'free' mangle errno.
45699
45700 2003-10-16  Paul Eggert  <eggert@twinsun.com>
45701
45702         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
45703
45704 2003-10-16  Karl Berry  <karl@gnu.org>
45705
45706         * config/config.{guess,sub}: update from config.
45707
45708 2003-10-16  Jim Meyering  <jim@meyering.net>
45709
45710         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
45711         memcpy.
45712
45713 2003-10-15  Paul Eggert  <eggert@twinsun.com>
45714
45715         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
45716         (SIZE_MAX): Remove.
45717         (new_exclude, add_exclude_file): Initial size no longer needs to
45718         be a power of 2.
45719         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
45720         our own address arithmetic overflow checking.
45721
45722         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
45723         (fnmatch): Do not alloca more than 2000 wide characters;
45724         instead, use malloc for large buffers.
45725         Check for address arithmetic overflow, and return -1
45726         with errno set to ENOMEM in that case.
45727         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
45728         (NEW_PATTERN): Do not alloca more than 8000 bytes;
45729         instead, return -1.  Check for address arithmetic overflow.
45730
45731 2003-10-14  Paul Eggert  <eggert@twinsun.com>
45732
45733         Handle invalid suffixes and overflow independently, so that
45734         callers can treat them independently as needed.  Fix some bugs in
45735         suffix handling, e.g., "100k@" was not diagnosed as an invalid
45736         suffix for a human-readable blocksize.  The major caller-visible
45737         change is the addition of a new
45738         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
45739         that both overflow and suffix chars were found.
45740
45741         * lib/human.c (humblock): Don't check separately for invalid suffix
45742         char; that is xstrtoumax's job (now that its bug is fixed).
45743         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
45744         INTMAX_MAX]: New macros.
45745         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
45746         TYPE_MAXIMUM): New macros.
45747         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
45748         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
45749         if overflow occurs, as it's what __strtol does and it's more useful
45750         in practice.
45751         (__xstrtol): If __strtol reports some error other than ERANGE,
45752         reflect it to the caller as LONGINT_INVALID.  If it reports
45753         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
45754         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
45755         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
45756         value.
45757         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
45758         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
45759         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
45760         [defined UINTMAX_MAX]: New macros.
45761
45762 2003-10-14  Bruno Haible  <bruno@clisp.org>
45763
45764         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
45765
45766 2003-10-14  Bruno Haible  <bruno@clisp.org>
45767
45768         * m4/sig_atomic_t: New file, from GNU gettext.
45769         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
45770
45771 2003-10-14  Bruno Haible  <bruno@clisp.org>
45772
45773         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
45774         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
45775         Also use volatile where needed.
45776
45777 2003-10-12  Paul Eggert  <eggert@twinsun.com>
45778
45779         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
45780         Change maintainer from Bruno Haible to 'all'.
45781
45782 2003-10-12  Paul Eggert  <eggert@twinsun.com>
45783
45784         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
45785
45786 2003-10-12  Paul Eggert  <eggert@twinsun.com>
45787
45788         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
45789         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
45790         and define in terms of the other primitives.
45791         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
45792         (SIZE_MAX): Define if not already defined.
45793         (array_size_overflow): New function.
45794         (xalloc_die): Abort instead of exiting if 'error' returns.
45795         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
45796         (xmalloc, xrealloc): Use them.
45797         (xcalloc): Check for address arithmetic overflow.
45798         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
45799         a bit faster than strcpy.
45800
45801 2003-10-10  Simon Josefsson  <jas@extundo.com>
45802
45803         * modules/argp (Depends-on): Add restrict and strcase.
45804
45805 2003-10-10  Simon Josefsson  <jas@extundo.com>
45806
45807         * m4/argp.m4: Add AC_C_INLINE.
45808
45809 2003-10-08  Paul Eggert  <eggert@twinsun.com>
45810
45811         Merge getpass from libc, plus a few fixes.
45812
45813         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
45814         Include <stdbool.h>.
45815         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
45816         __fsetlocking to empty.
45817         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
45818         do include <bits/libc-lock.h>.
45819         Do not include <fcntl.h>; not needed.
45820         [_LIBC]: Include <wchar.h>.
45821         (NOTCANCEL_MODE): New macro.
45822         (flockfile, funlockfile) [_LIBC]: New macros.
45823         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
45824         [!_LIBC]: New macros.
45825         (call_fclose): New function.
45826         (getpass): Use it.  Save tty stream separately; this simplifies the
45827         code and makes it more reliable if stdin happens to equal stdout.
45828         Invoke __fsetlocking on tty.
45829         Handle thread cancellation if needed.
45830         Namespace cleanup (use __tcgetattr, __getline).
45831         Use bool for Booleans.
45832         [USE_IN_LIBIO]: Handle wide streams.
45833         [!_LIBC]: Unconditionally do the fseek, since we don't know what
45834         stream might go where.
45835
45836         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
45837         doesn't have to include <stdio.h> before us.
45838         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
45839         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
45840         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
45841         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
45842         if not declared, so that we can use getpass.c code from libc without
45843         rewriting it.
45844         (flockfile, ftrylockfile, funlockfile): New macros.
45845
45846 2003-10-08  Paul Eggert  <eggert@twinsun.com>
45847
45848         * modules/getpass: Depend on stdbool.
45849
45850 2003-10-08  Paul Eggert  <eggert@twinsun.com>
45851
45852         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
45853
45854 2003-10-07  Karl Berry  <karl@gnu.org>
45855
45856         * config/config.{guess,sub}: update from config.
45857
45858 2003-10-06  Jim Meyering  <jim@meyering.net>
45859             Bruno Haible  <bruno@clisp.org>
45860
45861         This lets translators provide better translations for the
45862         "Written by ..." part of --version output.
45863         * lib/version-etc.h: Include stdarg.h.
45864         (version_etc_copyright): Declare as readonly.
45865         (version_etc): Make this function variadic with a NULL-terminated list
45866         of author name strings.
45867         (version_etc_va): New declaration.
45868         * lib/version-etc.c: Include stdarg.h, stdlib.h.
45869         (version_etc_copyright): Declare as readonly.
45870         (version_etc_va): New function. Provide a different translatable string
45871         for each possible number of authors < 10. Abbreviate when there are 10
45872         authors or more.
45873         (version_etc): Make this function variadic. Call version_etc_va.
45874         Suggestion from Gary V. Vaughan.
45875
45876         * lib/long-options.h (parse_long_options): Change prototype: the
45877         authors string is moved to the end and becomes variadic.
45878         * lib/long-options.c: Include stdarg.h.
45879         (parse_long_options): Make this function variadic, too.
45880         Call version_etc_va, not version_etc.
45881
45882 2003-10-06  Bruno Haible  <bruno@clisp.org>
45883
45884         * modules/version-etc-2: Remove file.
45885         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
45886
45887 2003-10-06  Bruno Haible  <bruno@clisp.org>
45888
45889         * modules/fatal-signal: New file.
45890         * MODULES.html.sh (func_all_modules): Add fatal-signal.
45891
45892 2003-10-06  Bruno Haible  <bruno@clisp.org>
45893
45894         * m4/fatal-signal.m4: New file.
45895         * m4/signalblocking.m4: New file, from GNU gettext.
45896
45897 2003-10-06  Bruno Haible  <bruno@clisp.org>
45898
45899         * lib/version-etc-2.h: Remove file.
45900         * lib/version-etc-2.c: Remove file.
45901
45902 2003-10-06  Bruno Haible  <bruno@clisp.org>
45903
45904         * lib/fatal-signal.h: New file, from GNU gettext.
45905         * lib/fatal-signal.c: New file, from GNU gettext.
45906
45907 2003-10-05  Paul Eggert  <eggert@twinsun.com>
45908
45909         * README: Rework advice for preventing empty .o files.
45910         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
45911         not <sys/types.h>.
45912
45913 2003-10-04  Karl Berry  <karl@gnu.org>
45914
45915         * lib/argp*: update from libc.
45916
45917 2003-10-04  Karl Berry  <karl@gnu.org>
45918
45919         * config/config.{guess,sub}: update from config.
45920
45921 2003-10-02  Bruno Haible  <bruno@clisp.org>
45922
45923         * modules/lchown (Include): Add lchown.h.
45924         * modules/time_r (Include): Use "..." syntax.
45925         * modules/xgetdomainname (Include): Add xgetdomainname.h.
45926
45927 2003-10-01  Simon Josefsson  <jas@extundo.com>
45928
45929         * MODULES.html.sh (func_all_modules): Move gethostname from section
45930         'based on' to section 'lacking' POSIX:2001.
45931
45932 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
45933
45934         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
45935         to output mode on the same stream.
45936
45937 2003-09-29  Paul Eggert  <eggert@twinsun.com>
45938
45939         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
45940         Fix arg typo in previous patch.
45941
45942 2003-09-28  Jim Meyering  <jim@meyering.net>
45943
45944         * lib/error.c: Correct cpp indentation.
45945
45946 2003-09-27  Paul Eggert  <eggert@twinsun.com>
45947
45948         * modules/free: New file.
45949
45950 2003-09-27  Paul Eggert  <eggert@twinsun.com>
45951
45952         * m4/free.m4: New file.
45953
45954 2003-09-27  Paul Eggert  <eggert@twinsun.com>
45955
45956         * lib/minmax.h (MIN, MAX)
45957         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
45958         Omit the special code that used __typeof__, since we worry that
45959         it could be more trouble than it's worth.  See:
45960         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
45961         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
45962
45963         * lib/free.c: New file.
45964
45965 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
45966
45967         Trivial fixes to Makefile.am parts of module listings.
45968         * modules/strstr: Append strstr.h to lib_SOURCES.
45969         * modules/strcase: Likewise, for strcase.h.
45970
45971 2003-09-27  Karl Berry  <karl@gnu.org>
45972
45973         * config/mkinstalldirs: update from automake.
45974
45975 2003-09-26  Paul Eggert  <eggert@twinsun.com>
45976
45977         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
45978         (error_tail): Do not loop, reallocating temporary buffer, since
45979         the output cannot contain more wide characters than the input
45980         contains bytes, the size must be big enough already.  This avoids
45981         one potential size overflow calculation.  Check for size overflow
45982         when calculating temporary buffer size.  Free temporary buffer
45983         when done, if it was allocated with malloc; this plugs a memory
45984         leak.  Remove casts from void * to pointers, that are no longer
45985         needed now that we're assuming C89 or better.
45986
45987         Merge error changes from glibc.
45988
45989         * lib/error.c, error.h: Update copyright notice header to match glibc.
45990         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
45991         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
45992         Disable cancellation while printing error.
45993         * lib/error.h: Prepend __ to parameter names.
45994
45995 2003-09-26  Jim Meyering  <jim@meyering.net>
45996
45997         * lib/error.c (error_tail): Move some declarations
45998         into inner scope where the local variables are used.
45999
46000 2003-09-26  Bruno Haible  <bruno@clisp.org>
46001
46002         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
46003         stpncpy().
46004         Don't define stpncpy through config.h; it's now done through stpncpy.h.
46005
46006 2003-09-26  Bruno Haible  <bruno@clisp.org>
46007
46008         * lib/stpncpy.h (gnu_stpncpy): New declaration.
46009         (stpncpy): Define as alias for gnu_stpncpy.
46010         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
46011
46012 2003-09-25  Simon Josefsson  <jas@extundo.com>
46013
46014         * lib/xgetdomainname.h: New file.
46015         * lib/xgetdomainname.c: New file.
46016
46017 2003-09-25  Simon Josefsson  <jas@extundo.com>
46018             Bruno Haible  <bruno@clisp.org>
46019
46020         * modules/getdomainname: New file.
46021         * modules/xgetdomainname: New file.
46022         * MODULES.html.sh (func_all_modules): Add getdomainname,
46023         xgetdomainname.
46024
46025 2003-09-25  Simon Josefsson  <jas@extundo.com>
46026             Bruno Haible  <bruno@clisp.org>
46027
46028         * m4/getdomainname.m4: New file.
46029
46030 2003-09-25  Simon Josefsson  <jas@extundo.com>
46031             Bruno Haible  <bruno@clisp.org>
46032
46033         * lib/getdomainname.h: New file.
46034         * lib/getdomainname.c: New file.
46035
46036 2003-09-25  Karl Berry  <karl@gnu.org>
46037
46038         * lib/argp-fmtstream.c, argp-help.c: update from libc.
46039
46040 2003-09-25  Karl Berry  <karl@gnu.org>
46041
46042         * config/install-sh: update from automake.
46043
46044 2003-09-25  Bruno Haible  <bruno@clisp.org>
46045
46046         * modules/version-etc-2: New file, from modules/version-etc with
46047         modifications.
46048         * MODULES.html.sh (func_all_modules): Add version-etc-2.
46049
46050 2003-09-25  Bruno Haible  <bruno@clisp.org>
46051
46052         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
46053         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
46054
46055 2003-09-24  Simon Josefsson  <jas@extundo.com>
46056
46057         * modules/xgethostname: Add xgethostname.h.
46058
46059 2003-09-24  Paul Eggert  <eggert@twinsun.com>
46060
46061         * lib/linebuffer.c (freebuffer): Don't free the argument, just
46062         the buffer associated with the argument.  Bug reported by
46063         Simon Josefsson.
46064
46065 2003-09-24  Paul Eggert  <eggert@twinsun.com>
46066
46067         * README: Document assumptions that 'int' is at least 32 bits
46068         wide, that integer arithmetic is 2's complement without overflow,
46069         that there are no holes in integer values, that adding sizes of
46070         two nonoverlapping objects can't overflow, and that all-bits-zero
46071         yields scalar zero.  Fix spelling and capitalization typos.
46072
46073 2003-09-19  Karl Berry  <karl@gnu.org>
46074
46075         * lib/argp.h: update from libc.
46076
46077 2003-09-17  Paul Eggert  <eggert@twinsun.com>
46078
46079         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
46080         to avoid spurious warnings like "AC_RUN_IFELSE was called before
46081         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
46082
46083 2003-09-17  Paul Eggert  <eggert@twinsun.com>
46084
46085         * gnulib-tool: Use "test -h", not "test -L", for portability
46086         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
46087         (tags_regexp): Remove, since \| doesn't conform to POSIX.
46088         (sed_extract_prog): Issue s commands one-by-one, rather than
46089         using \| in one s command.
46090
46091 2003-09-16  Paul Eggert  <eggert@twinsun.com>
46092
46093         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
46094         input error, instead of returning NULL the next time we are called
46095         (and therefore losing track of errno).
46096
46097 2003-09-16  Bruno Haible  <bruno@clisp.org>
46098
46099         * gnulib-tool (func_create_testdir): Warn about duplicated
46100         dependencies.
46101
46102 2003-09-15  Paul Eggert  <eggert@twinsun.com>
46103
46104         * modules/argmatch, modules/fatal, modules/obstack,
46105         modules/xalloc, modules/xgethostname: Sort dependencies by
46106         importance, not alphabetically.
46107
46108 2003-09-15  Paul Eggert  <eggert@twinsun.com>
46109
46110         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
46111         fails, so that the caller gets the proper errno.
46112
46113         * lib/readutmp.c (read_utmp): Likewise.
46114         Check for fstat error.  Close stream and free storage
46115         when failing.
46116
46117 2003-09-14  Karl Berry  <karl@gnu.org>
46118
46119         * config/srclist.txt (strdup.c): disable for c89 changes.
46120
46121 2003-09-14  Jim Meyering  <jim@meyering.net>
46122
46123         * lib/getloadavg.c: Correct cpp indentation.
46124         * lib/strdup.c: Likewise.
46125         * lib/vasnprintf.c: Likewise.
46126
46127 2003-09-14  Bruno Haible  <bruno@clisp.org>
46128
46129         * modules/fwriteerror: New file.
46130         * MODULES.html.sh (func_all_modules): Add fwriteerror.
46131
46132 2003-09-14  Bruno Haible  <bruno@clisp.org>
46133
46134         * lib/fwriteerror.h: New file.
46135         * lib/fwriteerror.c: New file.
46136
46137 2003-09-12  Paul Eggert  <eggert@twinsun.com>
46138
46139         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
46140         modules/xgethostname, modules/xalloc: Depend on exit.
46141
46142 2003-09-12  Paul Eggert  <eggert@twinsun.com>
46143
46144         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
46145
46146         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
46147         and AC_MINIX, too, so that their extensions are available.
46148
46149         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
46150         This macro has been superseded by gl_BACKUPFILE.
46151
46152         More patches to assume C89 or better.
46153
46154         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
46155
46156         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
46157         unconditionally.
46158         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
46159         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
46160         Include <string.h>, <stdlib.h> unconditionally.
46161         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
46162         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
46163         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
46164         headers or for string.h.
46165         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
46166         or strtoul.
46167
46168         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
46169         headers.
46170         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
46171         * m4/userspec.m4 (gl_USERSPEC): Likewise.
46172         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
46173         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
46174         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
46175         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
46176         memcpy, memset.
46177         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
46178         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
46179         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
46180         strtol.
46181         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
46182         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
46183         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
46184         strtoul.
46185
46186 2003-09-12  Paul Eggert  <eggert@twinsun.com>
46187
46188         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
46189         * lib/obstack.c [!defined _LIBC]: Likewise.
46190         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
46191         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
46192         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
46193
46194         More changes to assume C89 or better.
46195
46196         * lib/error.c (error_tail): Assume vprintf.
46197
46198         * lib/argmatch.c (getenv): Remove decl.
46199         * lib/progreloc.c (get_full_program_name): Define via prototype.
46200         * lib/setenv.c (clearenv): Likewise.
46201         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
46202         needed.
46203         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
46204         (malloc, memcpy): Remove decls.
46205         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
46206         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
46207         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
46208         (memcpy): Remove macro.
46209         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
46210         (__P): Remove.  All uses removed.
46211         (PTR): Remove.  All uses changed to void *.
46212         (CHAR_BIT, NULL): Remove.
46213         (spaces, zeros, memset_space, memset_zero)
46214         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
46215         Remove.
46216         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
46217         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
46218         Define with prototype.
46219         Remove now-unnecessary prototype decl.
46220         (extra_args_spec): Assume ANSI C.  All uses changed.
46221         (extra_args_spec_iso): Remove.
46222         (my_strftime, emacs_strftimeu): Define via prototype.
46223         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
46224         unconditionally.
46225         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
46226         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
46227         (strtoul, strtol): Remove decls.
46228         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
46229         LONG_MAX): Remove.
46230         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
46231         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
46232         (LOCALE_PARAM_PROTO): New macro.
46233         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
46234         (INTERNAL (strtol), strtol): Define with a prototype.
46235         (PARAMS): Remove.  All uses removed.
46236         * lib/tempname.c: Include <string.h> unconditionally.
46237         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
46238         * lib/xgethostname.c (main): Define with a prototype.
46239         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
46240         Include <stdlib.h> unconditionally.
46241         (calloc, malloc, realloc, free): Remove decls.
46242         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
46243         Include <stdlib.h> unconditionally.  Sort include file names.
46244         (strtod): Remove.
46245         (xstrtod): Define with a prototype.
46246         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
46247         (strtol, strtoul): Remove decls.
46248
46249 2003-09-11  Paul Eggert  <eggert@twinsun.com>
46250
46251         More patches to assume C89 or better.
46252         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
46253         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
46254         string.h, memchr, STDC_HEADERS.
46255
46256 2003-09-11  Paul Eggert  <eggert@twinsun.com>
46257
46258         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
46259         Include <stdlib.h>, <string.h> unconditionally.
46260         Remove now-unnecessary cast to char *.
46261         * lib/strnlen.c: Include <string.h> unconditionally.
46262         * lib/yesno.c (yesno): Define with a prototype.
46263
46264 2003-09-11  Bruno Haible  <bruno@clisp.org>
46265
46266         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
46267
46268 2003-09-10  Jim Meyering  <jim@meyering.net>
46269
46270         * lib/error.c: Correct indentation of cpp directives.
46271
46272 2003-09-10  Bruno Haible  <bruno@clisp.org>
46273
46274         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
46275         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
46276         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
46277         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
46278         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
46279         <stdlib.h> and <string.h> checks.
46280         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
46281         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
46282
46283 2003-09-10  Bruno Haible  <bruno@clisp.org>
46284
46285         * lib/strcspn.c: Include <string.h> unconditionally.
46286         * lib/strpbrk.c: Include <string.h> unconditionally.
46287         * lib/strstr.c: Include <string.h> unconditionally.
46288         * lib/unicodeio.c: Include <string.h> unconditionally.
46289         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
46290         * lib/unsetenv.c: Likewise.
46291         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
46292         * lib/yesno.c: Include <stdlib.h> unconditionally.
46293         (rpmatch): Add prototype.
46294
46295 2003-09-09  Paul Eggert  <eggert@twinsun.com>
46296
46297         More patches to assume C89 or better.
46298         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
46299         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
46300         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
46301         or for string.h.
46302         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
46303         stdlib.h.
46304         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
46305         C headers.
46306         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
46307         string.h.
46308         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
46309         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
46310         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
46311         or for string.h.
46312         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
46313         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
46314         C headers.
46315         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
46316         memcpy.
46317         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
46318         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
46319         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
46320         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
46321         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
46322         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
46323         string.h, free.
46324         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
46325         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
46326         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
46327         C headers, or for string.h.
46328         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
46329         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
46330         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
46331         headers, memory.h, stdlib.h, string.h, strings.h.
46332         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
46333         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
46334         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
46335         strchr.
46336         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
46337         headers, memory.h, string.h.
46338         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
46339         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
46340         free.
46341         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
46342         headers.
46343         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
46344         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
46345         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
46346         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
46347         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
46348
46349 2003-09-09  Paul Eggert  <eggert@twinsun.com>
46350
46351         More K&R removal.
46352
46353         * lib/acosl.c (main): Use a prototype.
46354         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
46355         tanl.c: Likewise.
46356
46357         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
46358
46359         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
46360         (getopt, etopt_long, getopt_long_only, _getopt_internal)
46361         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
46362         with a prototype.
46363         * lib/getopt.c (const): Remove macro.
46364         Include <string.h> unconditionally.
46365         (my_index): Remove; all uses changed to strchr.
46366         (strlen): Remove decl.
46367         (exchange): Remove forward decl; no longer needed.
46368         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
46369         Define with prototype.
46370         * lib/getopt1.c (const): Remove macro.
46371         (getopt_long, getopt_long_only, main): Define with prototype.
46372
46373         * lib/getugroups.c: Include <string.h> unconditionally.
46374
46375         * lib/getusershell.c: Include <stdlib.h> unconditionally.
46376         (getusershell, setusershell, endusershell, readname, main):
46377         Define with prototypes.
46378
46379         * lib/group-member.c: Include group-member.h first.
46380         Include <stdlib.h> unconditionally.
46381
46382         * lib/hard-locale.c: Include hard-locale.h first.
46383         Include <stdlib.h>, <string.h> unconditionally.
46384
46385         * lib/hash.c (free, malloc): Remove decls.
46386         Include <stdlib.h> unconditionally.
46387
46388         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
46389         (getenv): Do not declare.
46390
46391         * lib/idcache.c: Include <string.h> unconditionally.
46392
46393         * lib/long-options.c: Include long-options.h first, to test interface.
46394         Include <stdlib.h> unconditionally.
46395
46396         * lib/makepath.c: Include makepath.h first, to test interface.
46397         Include <stdlib.h> and <string.h> unconditionally.
46398
46399         * lib/linebuffer.c: Include <stdlib.h>.
46400         (free): Remove decl.
46401
46402         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
46403         stddef.h. rpl_malloc returns void *, not char *.
46404         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
46405         prototype.
46406
46407         * lib/md5.h: Include <limits.h> unconditionally.
46408         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
46409         (__P): Remove; all uses removed.
46410         * lib/md5.c: Include "md5.h" first.
46411         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
46412         md5_buffer, md5_process_bytes, md5_process_block):
46413         Define with prototypes.
46414         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
46415         * lib/sha.c: Include "sha.h" first.
46416         Include <stdlib.h>, <string.h> unconditionally.
46417
46418         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
46419         * lib/memcmp.c (__ptr_t): Likewise.
46420         * lib/memrchr.c (__ptr_t): Likewise.
46421         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
46422         Include <string.h> unconditionally.
46423         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
46424         * lib/memchr.c: Include <stdlib.h> unconditionally.
46425         * lib/memchr.c (LONG_MAX): Remove.
46426         * lib/memrchr.c (LONG_MAX): Likewise.
46427         * lib/memchr.c (__memchr): Define via a prototype.
46428         * lib/memrchr.c (__memrchr): Likewise.
46429         * lib/memcmp.c (__P): Remove, and remove all uses.
46430         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
46431         Remove forward decls; no longer needed.
46432         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
46433         Use types required by C89 in prototype.
46434
46435         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
46436         * lib/savedir.c: Likewise.
46437         * lib/mkdir.c (free): Remove decl.
46438         * lib/rmdir.c (rmdir): Define with a prototype.
46439         * lib/savedir.c: Include savedir.h first, to test interface.
46440
46441         * lib/mktime.c (STDC_HEADERS): Remove.
46442         Include <stdlib.h>, <string.h> unconditionally.
46443
46444         * lib/modechange.c: Include <stdlib.h> unconditionally.
46445         (malloc): Remove decl.
46446
46447         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
46448         (free): Remove decl.
46449
46450         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
46451         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
46452         (This type really should be intptr_t, but that's a C99ism.)
46453         (_obstack_memcpy): Remove: all uses changed to memcpy.
46454         Include <string.h> unconditionally.
46455         (struct obstack): Assume __STDC__ for types of members
46456         chunkfun, freefun, extra_arg.
46457         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
46458         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
46459         obstack_begin, obstack_specify_allocation,
46460         obstack_specify_allocation_with_arg, obstack_chunkfun,
46461         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
46462         Remove unprototyped decls and the macros that use them.
46463         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
46464         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
46465         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
46466         (defined __STDC__ && __STDC__)]:
46467         Remove nonprototyped code.
46468         Include <stdlib.h> unconditionally.
46469         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
46470         _obstack_allocated_p, _obstack_free, obstack_free,
46471         _obstack_memory_used, print_and_abort):
46472         Define using prototypes.
46473         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
46474         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
46475         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
46476         obstack_next_free, obstack_object_size, obstack_room) [0]:
46477         Remove unused, unprototyped code.
46478
46479         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
46480
46481         * lib/physmem.c (physmem_total, physmem_available, main): Define
46482         with prototypes.
46483
46484         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
46485         (main): Define with a prototype.
46486
46487         * lib/posixver.c (getenv): Remove decl.
46488
46489         * lib/putenv.c (malloc): Returns void *, not char *.
46490         Include <string.h> unconditionally.
46491         (strchr, memcpy, NULL): Do not define.
46492
46493         * lib/readtokens.c: Include readtokens.h first, to test interface.
46494         Include <stdlib.h>, <string.h> unconditionally.
46495         (init_tokenbuffer): Define with a prototype.
46496
46497         * lib/regex.c (PARAMS): Remove.  All uses removed.
46498         All uses of _RE_ARGS removed, too.
46499         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
46500         unconditionally.
46501         (bzero): Assume memset exists.
46502         (memcmp, memcpy, NULL): Remove.
46503         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
46504         char, or assignments to local vars of type signed char.
46505         (init_syntax_once, PREFIX(extract_number_and_incr),
46506         PREFIX(print_partial_compiled_pattern),
46507         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
46508         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
46509         PREFIX(regex_grow_registers), PREFIX(regex_compile),
46510         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
46511         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
46512         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
46513         wcs_compile_range, byte_compile_range, truncate_wchar,
46514         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
46515         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
46516         count_mbs_length, wcs_re_match_2_internal,
46517         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
46518         PREFIX(alt_match_null_string_p),
46519         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
46520         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
46521         regfree, PREFIX(extract_number)): Define with prototype.  Remove
46522         now-unnecessary declaration, if any.
46523         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
46524         regcomp, regexec):
46525         Remove now-unnecessary casts among pointer types.
46526         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
46527
46528         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
46529         (free): Remove decl.
46530
46531         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
46532
46533         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
46534         (free): Remove decl.
46535
46536         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
46537         * lib/xgetcwd.c: Likewise.
46538
46539         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
46540         (free): Remove decl.
46541
46542         * lib/strchrnul.c (strchrnul): Define with a prototype.
46543         Fix bug: c_in was not converted to char before searching.
46544
46545         The following changes are not K&R related:
46546
46547         * lib/group-member.h: Include <sys/types.h>, so that this file is
46548         self-contained.
46549         * lib/makepath.h: Likewise.
46550
46551         * lib/getusershell.c (readname, default_index, line_size, readname):
46552         Use size_t, not int, for sizes.
46553         (readname): If the size overflows, report an error instead of
46554         looping forever.
46555
46556 2003-09-09  Paul Eggert  <eggert@twinsun.com>
46557
46558         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
46559         libc.
46560
46561 2003-09-09  Paul Eggert  <eggert@twinsun.com>
46562
46563         * README: New section: portability guidelines.
46564
46565 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
46566
46567         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
46568         C89 spec.
46569
46570 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
46571
46572         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
46573
46574 2003-09-08  Paul Eggert  <eggert@twinsun.com>
46575
46576         Assume C89 or better; remove K&R cruft.
46577         A few of these changes were first proposed by Derek Robert Price
46578         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
46579
46580         * lib/addext.c: Include <string.h> unconditionally.
46581         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
46582         Don't declare getenv or malloc.
46583
46584         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
46585         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
46586         (NULL): Remove.
46587         (find_stack_direction, alloca): Use prototypes.
46588
46589         * lib/atexit.c (atexit): Define using a prototype.
46590
46591         * lib/basename.c, dirname.c, stripslash.c:
46592         Include <string.h> unconditionally.
46593
46594         * lib/bcopy.c: Include <stddef.h>.
46595         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
46596
46597         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
46598
46599         * lib/error.h (error, error_at_line, error_print_progname)
46600         [! (defined (__STDC__) && __STDC__)]: Remove decls.
46601         * lib/error.c: Include error.h first, to check interface.
46602         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
46603         (VA_START): Remove; all uses changeed to va_start.
46604         (exit, strerror): Remove decls.
46605         (error_print_progname): Prototype uncondionally.
46606         Don't include <errno.h>; no longer needed.
46607         (private_strerror): Remove.
46608         (error_tail): Always define.
46609         (error, error_at_line): Assume C89 or better; always use prototypes.
46610         * lib/fatal.c: Include "fatal.h" first, to test interface.
46611         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
46612         (VA_START): Remove; all uses changed to va_start.
46613         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
46614         this case.
46615         (exit): Remove decl.
46616         (fatal): Prototype unconditionally.  Assume va_start works.
46617         Abort at end, to pacify gcc.
46618
46619         * lib/euidaccess.c (main): Define with a prototype.
46620
46621         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
46622
46623         * lib/exitfail.c: Include <stdlib.h> unconditionally.
46624
46625         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
46626         prototypes.
46627         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
46628         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
46629         (getenv): Remove decl.
46630         (fnmatch): Define using a prototype.
46631         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
46632         (FCT): Define using a prototype.
46633
46634         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
46635
46636         * lib/gethostname.c: Include <stddef.h>.
46637         (gethostname): Define with prototype.  Length is size_t, not int.
46638
46639 2003-09-08  Paul Eggert  <eggert@twinsun.com>
46640
46641         Assume C89 or better; remove K&R cruft.
46642         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
46643         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
46644         string.h, getenv, malloc.
46645         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
46646         headers.
46647         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
46648         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
46649         do not check for strerror.
46650         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
46651         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
46652         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
46653         do not check for doprnt or vprintf.
46654         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
46655         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
46656
46657 2003-09-08  Paul Eggert  <eggert@twinsun.com>
46658
46659         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
46660         getversion.c should have been removed then, but was accidentally
46661         preserved.
46662
46663         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
46664         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
46665
46666 2003-09-08  Karl Berry  <karl@gnu.org>
46667
46668         * config/config.sub, config.guess, srclistvars.sh: update from savannah
46669                 config, forget about prep.
46670
46671         * config/depcomp, missing: update from automake.
46672
46673 2003-09-07  Paul Eggert  <eggert@twinsun.com>
46674
46675         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
46676         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
46677
46678 2003-09-07  Paul Eggert  <eggert@twinsun.com>
46679
46680         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
46681         copy_tm_result.  Bug reported by Simon Josefsson in
46682         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
46683
46684 2003-09-06  Paul Eggert  <eggert@twinsun.com>
46685
46686         * m4/time_r.m4: New file.
46687         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
46688         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
46689         is. Check for timegm declaration.
46690         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
46691         Do not check for gmtime_r.
46692         Replace mktime if __mktime_internal does not exist and if mktime
46693         hasn't been replaced already.
46694
46695 2003-09-06  Paul Eggert  <eggert@twinsun.com>
46696
46697         * lib/time_r.c, lib/time_r.h: New files.
46698
46699         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
46700         __localtime_r.
46701         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
46702         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
46703
46704         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
46705         __gmtime_r.
46706         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
46707         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
46708         Include <time_r.h>.
46709
46710         * lib/timegm.c: Switch to glibc implementation, with the following
46711         changes:
46712         [defined HAVE_CONFIG_H]: Include <config.h>.
46713         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
46714         (__mktime_internal) [!defined _LIBC]: New decl.
46715         (__gmtime_r) [!defined _LIBC]: New macro and function.
46716         (timegm): Use a prototype, since gnulib assumes C89.
46717         Do not bother declaring tmp to be const, as it's not really usefu.
46718         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
46719         (timegm): Declare only if HAVE_DECL_TIMEGM.
46720
46721 2003-09-06  Paul Eggert  <eggert@twinsun.com>
46722
46723         * MODULES.html.sh (func_all_modules): Add time_r.
46724         * modules/time_r: New file.
46725         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
46726         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
46727
46728 2003-09-03  Paul Eggert  <eggert@twinsun.com>
46729
46730         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
46731         Bug reported by Lute Kamstra in
46732         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
46733
46734         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
46735         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
46736         course with correspondingly smaller numbers for tomorrow and
46737         yesterday.  From Tadayoshi Funaba.  Originally installed into
46738         sh-utils on 1999-08-07, but the patch got lost (I guess during the
46739         coreutils merge?).
46740
46741 2003-08-31  Simon Josefsson  <jas@extundo.com>
46742
46743         * modules/timegm: New file.
46744         * MODULES.html.sh (func_all_modules): Add timegm.
46745
46746 2003-08-31  Simon Josefsson  <jas@extundo.com>
46747
46748         * m4/timegm.m4: New file.
46749
46750 2003-08-31  Simon Josefsson  <jas@extundo.com>
46751
46752         * lib/timegm.h: New file.
46753         * lib/timegm.c: New file.  Based on
46754         wget-1.8.2/src/http.c:mktime_from_utc.
46755
46756 2003-08-31  Karl Berry  <karl@gnu.org>
46757
46758         * lib/argp.h: update from libc.
46759
46760 2003-08-28  Bruno Haible  <bruno@clisp.org>
46761
46762         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
46763         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
46764         followed by '#define fnmatch fnmatch_posix' gives an error.
46765
46766 2003-08-28  Bruno Haible  <bruno@clisp.org>
46767
46768         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
46769         warning on QNX, which defines O_BINARY to 000000.
46770
46771 2003-08-27  Jim Meyering  <jim@meyering.net>
46772
46773         * m4/mkstemp.m4: Require that the system mkstemp be able to create
46774         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
46775         would fail after 32.  Reported by Danny Levinson.  Details here:
46776         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
46777
46778 2003-08-24  Bruno Haible  <bruno@clisp.org>
46779
46780         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
46781         MSVC7 <stdio.h> is included later.
46782
46783 2003-08-22  Simon Josefsson  <jas@extundo.com>
46784
46785         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
46786
46787 2003-08-20  Karl Berry  <karl@gnu.org>
46788
46789         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
46790
46791 2003-08-20  Bruno Haible  <bruno@clisp.org>
46792
46793         * modules/progname: New file.
46794         * MODULES.html.sh (func_all_modules): Add progname.
46795
46796 2003-08-20  Bruno Haible  <bruno@clisp.org>
46797
46798         * lib/progname.h: New file, from GNU gettext.
46799         * lib/progname.c: New file, from GNU gettext.
46800         * lib/progreloc.c: New file, from GNU gettext.
46801
46802 2003-08-19  Jim Meyering  <jim@meyering.net>
46803
46804         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
46805         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
46806
46807 2003-08-19  Bruno Haible  <bruno@clisp.org>
46808
46809         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
46810         more.
46811
46812 2003-08-19  Bruno Haible  <bruno@clisp.org>
46813
46814         * lib/xstrdup.c: Assume <string.h> exists.
46815
46816 2003-08-18  Paul Eggert  <eggert@twinsun.com>
46817
46818         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
46819         in makefile rules.
46820
46821 2003-08-18  Jim Meyering  <jim@meyering.net>
46822
46823         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
46824         * m4/lib-ld.m4: Likewise.
46825
46826 2003-08-18  Jim Meyering  <jim@meyering.net>
46827
46828         * lib/setenv.h: Indent nested cpp directive.
46829         * lib/vasnprintf.c: Remove trailing blanks.
46830
46831 2003-08-17  Simon Josefsson  <jas@extundo.com>
46832
46833         * modules/xstrndup: New file.
46834         * MODULES.html.sh (func_all_modules): Add xstrndup.
46835
46836 2003-08-17  Simon Josefsson  <jas@extundo.com>
46837
46838         * modules/argp: Fix autoconf macro name. Add more dependencies.
46839
46840 2003-08-17  Simon Josefsson  <jas@extundo.com>
46841
46842         * m4/xstrndup.m4: New file.
46843
46844 2003-08-17  Simon Josefsson  <jas@extundo.com>
46845
46846         * m4/argp.m4: New file.
46847
46848 2003-08-17  Simon Josefsson  <jas@extundo.com>
46849             Bruno Haible  <bruno@clisp.org>
46850
46851         * lib/xstrndup.h: New file.
46852         * lib/xstrndup.c: New file.
46853
46854 2003-08-17  Bruno Haible  <bruno@clisp.org>
46855
46856         * modules/strndup (Files, Include): Add lib/strndup.h.
46857
46858 2003-08-17  Bruno Haible  <bruno@clisp.org>
46859
46860         * modules/euidaccess (Files): Add lib/euidaccess.h.
46861
46862 2003-08-17  Bruno Haible  <bruno@clisp.org>
46863
46864         * lib/strndup.h: New file.
46865
46866 2003-08-17  Bruno Haible  <bruno@clisp.org>
46867
46868         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
46869         like AC_GNU_SOURCE.
46870         * modules/extensions (configure.ac): Comment out the invocation of
46871         gl_USE_SYSTEM_EXTENSIONS.
46872
46873 2003-08-16  Paul Eggert  <eggert@twinsun.com>
46874
46875         Merges from coreutils, etc.
46876         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
46877         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
46878         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
46879         fixing a typo.
46880         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
46881         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
46882
46883 2003-08-16  Paul Eggert  <eggert@twinsun.com>
46884
46885         Document merge from coreutils.
46886         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
46887         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
46888         * modules/utime: Add m4/utimes-null.m4.
46889
46890 2003-08-16  Paul Eggert  <eggert@twinsun.com>
46891
46892         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
46893         space, undoing this 2003-08-12 change:
46894         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
46895
46896 2003-08-16  Paul Eggert  <eggert@twinsun.com>
46897
46898         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
46899         strtoul.c from libc, undoing this 2003-08-12 change:
46900         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
46901
46902 2003-08-16  Jim Meyering  <jim@meyering.net>
46903
46904         Merges from coreutils.
46905         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
46906         prefix.  Adjust cache variables similarly.  Create 500 rather than
46907         just 300 files, to exercise bug on Darwin6.5, too.
46908         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
46909         $missing_dir.
46910         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
46911         AM_SYS_POSIX_TERMIOS.
46912         Reported by mkc@mathdogs.com.
46913         Also change use of $am_cv_sys_posix_termios
46914         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
46915         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
46916         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
46917         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
46918         in /proc/mounts until it finds one with matching device number.  This
46919         is unnecessary when the FILE argument *is* a mount point.  No stat call
46920         is necessary in that case.  So, disable the statvfs-testing code on
46921         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
46922         as RedHat bug# 84846.
46923         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
46924         to 1MB, so as not to render systems with no stack size limit (e.g.,
46925         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
46926         Include <unistd.h>.  On some systems,
46927         it is required for the definition of _SC_PAGESIZE.
46928
46929 2003-08-16  Jim Meyering  <jim@meyering.net>
46930
46931         Merge from coreutils.
46932         * lib/xstrtoimax.c: #else #if -> #elif.
46933         * lib/xstrtoumax.c: Likewise.
46934
46935 2003-08-16  Jim Meyering  <jim@meyering.net>
46936
46937         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
46938         * m4/utimes.m4: Removed.
46939         * m4/utimes-null.m4: Renamed from utimes.m4.
46940
46941         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
46942         to 1MB, so as not to render systems with no stack size limit (e.g.,
46943         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
46944         Include <unistd.h>.  On some systems,
46945         it is required for the definition of _SC_PAGESIZE.
46946
46947 2003-08-16  Jim Meyering  <jim@meyering.net>
46948         and Paul Eggert  <eggert@cs.ucla.edu>
46949
46950         Merges from coreutils, etc.
46951
46952         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
46953         using the latest version from cvs.  This avoids problems with #line
46954         directives using a vendor (Sun) compiler.
46955         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
46956         Don't set GETGROUPS_LIB here; now it's
46957         done via getgroups.m4's wrapper function.
46958         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
46959         rather than just in sh-util/configure.in, so that the
46960         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
46961         same.
46962         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
46963         AC_FUNC_GETLOADAVG where to find getloadavg.c.
46964         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
46965         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
46966         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
46967         Remove code that is now done by the newly-required macros.
46968         Append $(EXEEXT) to DF_PROG.
46969         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
46970         Do not invoke or require the following here,
46971         since prereq.m4 or some gnulib .m4 now does this for us:
46972         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
46973         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
46974         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
46975         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
46976         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
46977         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
46978         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
46979         AC_FUNC_OBSTACK.
46980         Do not replace the following functions, as this is now the job
46981         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
46982         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
46983         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
46984         atexit getpass, strdup, getpagesize.
46985         Replace 'raise'.
46986         Do not check for the following functions, as this is now the job
46987         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
46988         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
46989         setregid.
46990         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
46991         Check for sys/sysctl.h.
46992         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
46993         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
46994         of checking for ssize_t ourselves.
46995
46996         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
46997         Require every macro that gnulib/modules/* suggests for us.
46998         (jm_PREREQ_ADDEXT): New macro.
46999         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
47000         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
47001
47002         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
47003         (gl_PHYSMEM): Use it.
47004         Also check for `table' function.
47005         Check for new headers and functions.
47006         Add check for sys/sysmp.h.
47007         With suggestions from Kaveh Ghazi.
47008         Ignore headers that are present but cannot be compiled.  This
47009         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
47010         C 5.4.
47011
47012 2003-08-15  Paul Eggert  <eggert@twinsun.com>
47013
47014         Document merge from coreutils.
47015         * modules/userspec: Depend on posixver.
47016         * modules/strftime: Depend on tzset.
47017
47018 2003-08-15  Paul Eggert  <eggert@twinsun.com>
47019
47020         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
47021         rather than tab, after '#' in shell-script copyright notices.
47022         Suggested by Bruno Haible.
47023
47024 2003-08-15  Paul Eggert  <eggert@twinsun.com>
47025
47026         * config/srclist-update: Use three spaces, rather than tab, after '#'
47027         in shell-script copyright notices.  Suggested by Bruno Haible.
47028         Remove unnecessary parenthesization in regular expression.
47029
47030 2003-08-15  Jim Meyering  <jim@meyering.net>
47031
47032         Merge from coreutils.
47033         * lib/xgethostname.c: Include <stdlib.h>.
47034         (xghostname): Don't exit for anything other than memory-related
47035         failure; just return NULL.
47036         * lib/userspec.c: Include "posixver.h".
47037         (parse_user_spec): Accept `.' as a separator only
47038         in pre-POSIX-200112 mode.
47039         * lib/strtoimax.c: Use #elif rather than #else #if.
47040         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
47041         Remove function, now that we can rely on a working tzset function.
47042         [!_LIBC]: Ensure that the required autoconf test has been run.
47043         [!defined _NL_CURRENT && HAVE_STRFTIME]:
47044         Use underlying_strftime for %r.
47045         * lib/sha.c: Merge in some clean-up and optimization changes from
47046         glibc.
47047         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
47048         Ensure that it is a multiple of 64.
47049         Rearrange loop exit tests so as to avoid performing an
47050         additional fread after encountering an error or EOF.
47051         * lib/realloc.c: Update copyright date.
47052
47053 2003-08-15  Jim Meyering  <jim@meyering.net>
47054         and Paul Eggert  <eggert@twinsun.com>
47055
47056         Merge from coreutils.
47057         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
47058         member but strut utmpx does not.  Needed for AIX 4.3.3.
47059         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
47060
47061 2003-08-15  Jim Meyering  <jim@meyering.net>
47062         and Paul Eggert  <eggert@cs.ucla.edu>
47063
47064         Merges from coreutils, etc.
47065         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
47066         Require gl_FUNC_TZSET_CLOBBER.
47067         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
47068         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
47069         members.
47070
47071 2003-08-14  Paul Eggert  <eggert@twinsun.com>
47072
47073         Help the merge from coreutils.
47074         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
47075         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
47076         * m4/tzset.m4: Use it too.
47077
47078 2003-08-14  Paul Eggert  <eggert@twinsun.com>
47079
47080         * modules/tzset: New file.
47081
47082 2003-08-14  Jim Meyering  <jim@meyering.net>
47083
47084         Merges from coreutils.
47085         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
47086         variable names, rather than @FNMATCH_H@.
47087         * modules/alloca: Likewise for $(ALLOCA_H).
47088
47089         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
47090         the three copies of the literal target, `fnmatch.h'.
47091         * modules/alloca (alloca.h): Likewise.
47092
47093 2003-08-14  Jim Meyering  <jim@meyering.net>
47094
47095         Merge from coreutils.
47096         * m4/tzset.m4: New file.
47097         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
47098         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
47099         otherwise, AIX 5.1 systems would end up using the latter.
47100         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
47101         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
47102         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
47103         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
47104
47105 2003-08-14  Jim Meyering  <jim@meyering.net>
47106
47107         Merge from coreutils.
47108         * lib/obstack.h: Whitespace changes.
47109         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
47110         and xcalloc return values.
47111         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
47112         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
47113         hang on OSF/1 5.1 for DIR on both local and remote file systems.
47114         Reported by (and fix confirmed by) Nelson H. F. Beebe.
47115         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
47116         error from mntctl.
47117         Use mntctl's return value to drive the entry-processing loop, since
47118         we can't rely on the value of the vmt_length member in the last
47119         entry.  On some systems doing so could result in exhausting
47120         virtual memory.  Based in part on a patch from Mike Jetzer.
47121
47122 2003-08-14  Jim Meyering  <jim@meyering.net>
47123         and Paul Eggert  <eggert@twinsun.com>
47124
47125         Merges from coreutils, plus other fixes.
47126         * lib/physmem.c: Merge in portability changes from gcc/libiberty
47127         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
47128         for credits and details.  Thanks to Kaveh Ghazi for helping
47129         to keep these files in sync.
47130         (ARRAY_SIZE): Define it.
47131         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
47132         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
47133         (memcasecmp): Don't assume size_t fits in unsigned int.
47134         Remove casts and duplicate code.
47135         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
47136         (memcpy): Remove definition.
47137         Merge in some clean-up and optimization changes from glibc.
47138         [BLOCKSIZE]: Move definition to top of file.
47139         Ensure that it is a multiple of 64.
47140         Rearrange loop exit tests so as to avoid performing an
47141         additional fread after encountering an error or EOF.
47142         * lib/md5.h (md5_uintptr): Define.
47143         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
47144         return to the initial working directory.  Preserve errno
47145         for caller.
47146         * lib/idcache.c: Include "xalloc.h".
47147         (xmalloc, xrealloc): Remove decls.
47148         (getuser): Remove casts no longer required in C89.
47149         * lib/human.c: Include stdio.h, for sprintf.
47150         * lib/group-member.c: Include "xalloc.h".
47151         (xmalloc, xrealloc): Remove decls.
47152         (get_group_info): Remove casts no longer required in C89.
47153         * lib/getusershell.c (readname): Remove casts no longer required in
47154         C89.
47155         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
47156         * lib/getline.c: Whitespace fix, from coreutils.
47157
47158 2003-08-13  Paul Eggert  <eggert@twinsun.com>
47159
47160         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
47161         Check for isascii.
47162
47163         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
47164         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
47165         Undo previous (whitespace-only) change.
47166
47167 2003-08-13  Paul Eggert  <eggert@twinsun.com>
47168
47169         * lib/exclude.c: Include <ctype.h>
47170         (IN_CTYPE_DOMAIN): New macro.
47171         (is_space): New fn.
47172         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
47173         and empty lines.
47174
47175         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
47176         Undo previous (whitespace-only) change.
47177
47178 2003-08-13  Paul Eggert  <eggert@twinsun.com>
47179
47180         * config/srclist-update: Change update back to the old behavior,
47181         leaving whitespace alone.  Use one 'sed' command rather than a
47182         pipeline.
47183         (fixlicense): Now a variable, not a function.
47184         (remove_trailing_blanks): Remove.
47185         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
47186         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
47187         Undo previous (whitespace-only) change.
47188
47189 2003-08-12  Paul Eggert  <eggert@twinsun.com>
47190
47191         Merge from coreutils.
47192         * modules/euidaccess: Add lib_SOURCES, include for new
47193         file euidaccess.h
47194
47195 2003-08-12  Paul Eggert  <eggert@twinsun.com>
47196
47197         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
47198         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
47199         Normalize leading white space and remove trailing white space.
47200
47201         Merge from coreutils
47202         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
47203
47204         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
47205         0.12.1.  These files are now being upgraded automatically by
47206         ../config/srclist-update.
47207
47208 2003-08-12  Paul Eggert  <eggert@twinsun.com>
47209
47210         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
47211         Normalize leading white space and remove trailing white space.
47212         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
47213         notice, as per ../config/srclist-update.
47214
47215         Merge from coreutils.
47216         * lib/euidaccess.h: New file.
47217         * lib/euidaccess.c: Include it.
47218         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
47219         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
47220         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
47221
47222 2003-08-12  Paul Eggert  <eggert@twinsun.com>
47223
47224         * config/srclist-update: Add copyright notice.
47225         (remove_id_lines, remove_trailing_blanks): New constants.
47226         (fixfile): Use them to normalize spacing a bit in copied files.
47227         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
47228         Normalize leading white space and remove trailing white space.
47229
47230         * config/texinfo.tex: Sync with texinfo.
47231
47232         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
47233         strtoul.c from libc, to merge coreutils whitespace changes.
47234
47235         * config/srclist.txt: Get the following m4 files from gettext:
47236         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
47237         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
47238         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
47239         wint_t.m4.
47240
47241 2003-08-12  Karl Berry  <karl@gnu.org>
47242
47243         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
47244         been made.
47245
47246 2003-08-11  Paul Eggert  <eggert@twinsun.com>
47247
47248         * modules/gnu-source, m4/gnu-source.m4:
47249         Remove; we're assuming Autoconf 2.54 or later now.
47250         Suggested by Bruno Haible.
47251         * MODULES.html.sh (func_all_modules): Remove gnu-source.
47252
47253 2003-08-11  Bruno Haible  <bruno@clisp.org>
47254
47255         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
47256
47257 2003-08-11  Bruno Haible  <bruno@clisp.org>
47258
47259         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
47260         (vasnprintf): Use it instead of wcslen.
47261
47262 2003-08-11  Bruno Haible  <bruno@clisp.org>
47263
47264         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
47265         value to ensure that _Bool promotes to int. Use #define for _Bool when
47266         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
47267
47268 2003-08-10  Karl Berry  <karl@gnu.org>
47269
47270         * lib/regex.h: update from libc (whitespace fix).
47271
47272 2003-08-09  Paul Eggert  <eggert@twinsun.com>
47273
47274         Merge some files from coreutils.  These changes were
47275         originally made by Jim Meyering.
47276         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
47277         many older Unixes require this.
47278         * lib/alloca.c (alloca): Remove cast to argument of free;
47279         no longer needed in C89.
47280         * lib/alloca_.h, regex.h: Fix white space to match
47281         what GNU indent does.
47282
47283 2003-08-09  Paul Eggert  <eggert@twinsun.com>
47284
47285         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
47286         apparently Emacs's Unicode mode got confused before my 2003-08-05
47287         checkin.
47288
47289 2003-08-08  Paul Eggert  <eggert@twinsun.com>
47290
47291         * m4/extensions.m4: New file.
47292         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
47293         Require gl_USE_SYSTEM_EXTENSIONS.
47294         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
47295         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
47296
47297 2003-08-08  Paul Eggert  <eggert@twinsun.com>
47298
47299         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
47300         * modules/extensions, modules/gnu-source: New files.
47301         * modules/timespec, modules/unlocked-io: Depend on extensions.
47302
47303 2003-08-07  Paul Eggert  <eggert@twinsun.com>
47304
47305         * modules/restrict: New file.
47306         * MODULES.html.sh (func_all_modules): Add restrict.
47307         * modules/regex: Depend on restrict.
47308
47309 2003-08-07  Paul Eggert  <eggert@twinsun.com>
47310
47311         * m4/restrict.m4: New file.
47312         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
47313
47314 2003-08-07  Bruno Haible  <bruno@clisp.org>
47315
47316         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
47317         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
47318
47319 2003-08-07  Bruno Haible  <bruno@clisp.org>
47320
47321         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
47322         makes the module 'getndelim2' compatible with the module 'getline'.
47323
47324 2003-08-05  Paul Eggert  <eggert@twinsun.com>
47325
47326         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
47327         byte with "\201" to avoid glitches when editing that source file
47328         with multi-gnome-terminal.
47329
47330 2003-08-05  Paul Eggert  <eggert@twinsun.com>
47331
47332         * lib/bumpalloc.h: Remove.
47333
47334 2003-08-05  Paul Eggert  <eggert@twinsun.com>
47335
47336         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
47337         * modules/bumpalloc: Remove.
47338
47339 2003-08-04  Paul Eggert  <eggert@twinsun.com>
47340
47341         * lib/getloadavg.c: Change copyright notice and spacing to conform to
47342         GNU coding style.
47343
47344         Merge from coreutils.
47345         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
47346         1. From glibc.
47347         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
47348         from Karl Berry, implemented by Jim Meyering.
47349         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
47350         from Dmitry V. Levin.
47351         Remove anachronistic cast of xrealloc.
47352         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
47353         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
47354         type. Otherwise, it wouldn't compile with at least /bin/cc on
47355         ymp-cray-unicos9.0.2.X.
47356         Combine two mostly-identical uses of alloca into one.
47357         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
47358
47359 2003-08-04  Dave Love  <d.love@dl.ac.uk>
47360
47361         [From Emacs.]
47362
47363         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
47364         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
47365         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
47366         obsolete NLIST_NAME_UNION.
47367         [__GNU__]: Undef BSD and FSCALE.
47368         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
47369
47370 2003-08-03  Paul Eggert  <eggert@twinsun.com>
47371
47372         * lib/stdbool_.h (_Bool): Make it signed char, instead of
47373         an enum type, so that it's guaranteed to promote to int.  See:
47374         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
47375
47376 2003-08-03  Karl Berry  <karl@gnu.org>
47377
47378         * config/depcomp: update from automake.
47379
47380 2003-07-31  Paul Eggert  <eggert@twinsun.com>
47381
47382         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
47383         (strerror): Don't assume that a printable int fits in 14 bytes.
47384
47385 2003-07-31  Bruno Haible  <bruno@clisp.org>
47386
47387         * modules/getpass-gnu: New file.
47388         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
47389
47390 2003-07-31  Bruno Haible  <bruno@clisp.org>
47391
47392         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
47393
47394 2003-07-24  Karl Berry  <karl@gnu.org>
47395
47396         * config/missing: update from automake.
47397
47398 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
47399             Bruno Haible  <bruno@clisp.org>
47400
47401         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
47402         * lib/getline.c (getline, getdelim): Likewise.
47403         Remove _GNU_SOURCE define; now it's defined in config.h through
47404         m4/getline.m4.
47405
47406 2003-07-23  Karl Berry  <karl@gnu.org>
47407
47408         * config/config.sub: update from prep.
47409
47410 2003-07-22  Paul Eggert  <eggert@twinsun.com>
47411
47412         * modules/xalloc (Depends-on): Add exitfail.
47413         * modules/xmemcoll: Likewise.
47414
47415 2003-07-22  Paul Eggert  <eggert@twinsun.com>
47416
47417         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
47418         over-parenthesization in macros.
47419
47420         Sync with coreutils.
47421
47422         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
47423         required by C99.
47424
47425         Use `exit_failure' for xalloc and xmemcoll instead of their own
47426         private exit-failure variables.
47427         * lib/xalloc.h (xalloc_exit_failure): Remove.
47428         * lib/xmalloc.c: Likewise.  Include exitfail.h.
47429         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
47430         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
47431         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
47432         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
47433
47434 2003-07-20  Jim Meyering  <jim@meyering.net>
47435
47436         * modules/closeout (Depends-on): Add exitfail.
47437         Suggestion from Bruno Haible.
47438
47439 2003-07-19  Karl Berry  <karl@gnu.org>
47440
47441         * config/config.sub: update from prep.
47442
47443 2003-07-18  Paul Eggert  <eggert@twinsun.com>
47444
47445         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
47446         Remove.
47447         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
47448         to test that it can stand by itself.  Include "exitfail.h".
47449         Clients should set exit_failure instead.
47450         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
47451
47452 2003-07-18  Bruno Haible  <bruno@clisp.org>
47453
47454         * modules/getndelim2: New file.
47455         * modules/getline: Share files with module getndelim2.
47456         * modules/getnline: Depend on getndelim2 instead of sharing files with
47457         it. Add getnline.c to lib_SOURCES.
47458         * MODULES.html.sh (func_all_modules): Add getndelim2.
47459
47460 2003-07-18  Bruno Haible  <bruno@clisp.org>
47461
47462         * m4/getndelim2.m4: New file.
47463         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
47464         invoke gl_PREREQ_GETNDELIM2.
47465         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
47466         gl_PREREQ_GETNDELIM2.
47467         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
47468         gl_GETNDELIM2.
47469
47470 2003-07-18  Bruno Haible  <bruno@clisp.org>
47471
47472         * lib/getndelim2.h: New file.
47473         * lib/getndelim2.c: Make into a module of its own. Include config.h,
47474         getndelim2.h.
47475         (getndelim2): Make non-static. Change return type to ssize_t.
47476         * lib/getline.h: Change argument names.
47477         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
47478         * lib/getnline.c: Include getndelim2.h.
47479
47480 2003-07-18  Andreas Schwab  <schwab@suse.de>
47481
47482         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
47483
47484 2003-07-17  Karl Berry  <karl@gnu.org>
47485
47486         * config/config.sub: update from prep.
47487
47488 2003-07-17  Bruno Haible  <bruno@clisp.org>
47489
47490         * modules/getnline: New file.
47491         * modules/getline: Add lib/getndelim2.c to source file list.
47492         * MODULES.html.sh (func_all_modules): Add getnline.
47493
47494 2003-07-17  Bruno Haible  <bruno@clisp.org>
47495
47496         * m4/getnline.m4: New file.
47497
47498 2003-07-17  Bruno Haible  <bruno@clisp.org>
47499
47500         * m4/Makefile.am.in: Remove file.
47501         * m4/Makefile.am: Remove file.
47502         * m4/Makefile.in: Remove file.
47503
47504 2003-07-17  Bruno Haible  <bruno@clisp.org>
47505
47506         * lib/getnline.h: New file.
47507         * lib/getnline.c: New file.
47508         * lib/getndelim2.c: New file, extracted from getline.c.
47509         (getndelim2): Renamed from getdelim2, with added nmax argument.
47510         * lib/getline.c: Include getndelim2.c.
47511         (getdelim2): Moved out to getndelim2.c.
47512         (getline, getdelim): Update.
47513
47514 2003-07-17  Bruno Haible  <bruno@clisp.org>
47515
47516         * lib/Makefile.am: Remove file.
47517         * lib/Makefile.in: Remove file.
47518
47519 2003-07-17  Bruno Haible  <bruno@clisp.org>
47520
47521         * configure.in: Remove file.
47522         * Makefile.in: Remove file.
47523
47524 2003-07-17  Bruno Haible  <bruno@clisp.org>
47525
47526         * MODULES.html.sh: Put the </BODY> right before </HTML>.
47527
47528 2003-07-16  Karl Berry  <karl@gnu.org>
47529
47530         * config/srclist-update: was running fixlicense twice, which caused
47531                 texinfo.tex to be nullified for some reason.  Simplify,
47532                 $gplsrc is no longer needed as far as I can see?
47533
47534 2003-07-16  Jim Meyering  <jim@meyering.net>
47535
47536         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
47537
47538 2003-07-15  Paul Eggert  <eggert@twinsun.com>
47539
47540         * config/srclist.txt: Get the following files from gettext-runtime/intl
47541         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
47542         ref-del.sin.  From Bruno Haible.
47543         * config/srclist-update (fixfile): Change grep pattern again, since the
47544         previous fix didn't work (there was another trailing $).  Use
47545         '[$]' to escape the $s.
47546
47547 2003-07-15  Karl Berry  <karl@gnu.org>
47548
47549         * lib/vasnprintf.c: update from gettext.
47550
47551 2003-07-15  Karl Berry  <karl@gnu.org>
47552
47553         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
47554         gets expanded when surrounded by '$'.
47555
47556 2003-07-15  Jim Meyering  <jim@meyering.net>
47557
47558         * modules/save-cwd: Don't depend on error.  From Derek Price.
47559
47560 2003-07-15  Jim Meyering  <jim@meyering.net>
47561
47562         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
47563
47564 2003-07-14  Simon Josefsson  <jas@extundo.com>
47565
47566         * modules/mempcpy: New file.
47567         * MODULES.html.sh (func_all_modules): Add mempcpy.
47568
47569 2003-07-14  Simon Josefsson  <jas@extundo.com>
47570
47571         * m4/mempcpy.m4: New file.
47572
47573 2003-07-14  Simon Josefsson  <jas@extundo.com>
47574
47575         * lib/mempcpy.h: New file.
47576         * lib/mempcpy.c: New file.
47577
47578 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47579
47580         * modules/getdate, modules/posixtm: Depend on mktime.
47581
47582 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47583
47584         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
47585         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
47586         unicodeio.c, unicodeio.h, unlocked-io.h:
47587         Switch from LGPL to GPL.
47588
47589 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47590
47591         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
47592         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
47593         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
47594         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
47595         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
47596         updated automatically by ../config/srclist-update.  This changes
47597         their license from LPGL to GPL.
47598
47599 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47600
47601         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
47602         assumed to refer to the root of the most recent stable gettext version.
47603         * config/srclistvars.sh: Add defaults for eggert.
47604         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
47605         Match "This program" as well as "The program".  This is needed
47606         for gettext.
47607
47608 2003-07-14  Jim Meyering  <jim@meyering.net>
47609
47610         Don't emit diagnostics.  Let callers do that.
47611         * lib/save-cwd.c: Don't include "error.h".
47612         (save_cwd): Don't call error.  Ensure that errno is valid
47613         when returning nonzero.
47614
47615         * lib/save-cwd.h (restore_cwd): Update prototype.
47616         * lib/save-cwd.c (restore_cwd): Remove two parameters.
47617         Simplify.  Don't call error upon failure.  Let callers do that.
47618         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
47619         when auditing is enabled.  But don't bother updating the #if.
47620
47621 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
47622
47623         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
47624         it breaks C++ compilation.
47625         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
47626
47627 2003-07-10  Simon Josefsson  <jas@extundo.com>
47628
47629         * modules/strchrnul (Makefile.am): Add strchrnul.h.
47630
47631 2003-07-10  Jim Meyering  <jim@meyering.net>
47632
47633         * m4/clock_time.m4: Remove trailing blank.
47634         * m4/intmax_t.m4: Likewise.
47635
47636 2003-07-10  Jim Meyering  <jim@meyering.net>
47637
47638         * lib/vasnprintf.c: Remove trailing blanks.
47639         Make cpp indentation consistent.
47640
47641 2003-07-09  Paul Eggert  <eggert@twinsun.com>
47642
47643         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
47644         posixver.c, strftime.c, strnlen.c, strverscmp.c:
47645         Switch from LGPL to GPL.
47646
47647 2003-07-09  Paul Eggert  <eggert@twinsun.com>
47648
47649         * config/srclist.txt: Sort sublists.  Add
47650         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
47651         that differ from gnulib for one reason or another; we'd like this list
47652         to be smaller but for now let's document what we have.
47653
47654 2003-07-08  Paul Eggert  <eggert@twinsun.com>
47655
47656         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
47657         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
47658         and sweeter "eval x=$x".
47659         * config/srclist.txt: Get lib/argp* from glibc.
47660
47661 2003-07-07  Paul Eggert  <eggert@twinsun.com>
47662
47663         * lib/mktime.c: Fix some boundary cases and remove need for floating
47664         point.
47665
47666         Issue a compile-time diagnostic if time_t is floating point, or if
47667         two's complement arithmetic is not in effect, or if arithmetic
47668         right shift does not propagate the sign.  These assumptions were
47669         all in the original code but they weren't checked.
47670
47671         (TIME_T_MIDPOINT, verify): New macros.
47672         (__isleap): Remove; it has integer overflow problems.
47673         (leapyear): New function, without those problems.
47674         (ydhms_tm_diff): Remove; splitting into two parts.
47675         (ydhms_diff): New function, containing the arithmetic part of
47676         the old ydhms_tm_diff function.  Issue a compile-time
47677         diagnostic if we are not using C99 integer division.
47678         Avoid casts when possible.
47679         (guess_time_tm): New function, containing the checking part of
47680         the old ydhms_tm_diff function.  Return the new value, rather than
47681         the difference between it and the old.  Accept a new argument T
47682         so that *T specifies the old value.  Check for overflow in the result.
47683
47684         (__mktime_internal): Use a time_t offset, not a long int offset.
47685         This undoes the 2003-06-04 change, which is no longer needed now
47686         that we have better overflow checking.
47687         (localtime_offset): Likewise.
47688
47689         (__mktime_internal): Avoid harmful overflow on hosts where time_t
47690         and long are 64-bit but int is only 32-bit.
47691         (ydhms_diff): Use long int to store year1 and yday1.
47692         Issue a compile-time diagnostic if long int is not wide enough.
47693
47694         (__mktime_internal): Use long int to store adjusted year and yday.
47695         Use plain C rather than preprocessor commands, if that doesn't
47696         affect efficiency.
47697         Check for overflow (and try to repair) after each probe
47698         rather than checking only at the very end.  This avoids some bugs
47699         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
47700         does not equal GMT offset at maximum time).
47701         Use integer to check for overflow rather than floating point; this
47702         is more portable to non-IEEE hosts, and is a tad faster.
47703         When we detect that we are oscillating between two values,
47704         don't check whether tm_isdst has the requested value, since
47705         we already know the answer.  When tm_isdst has the wrong value,
47706         use a different heuristic to find the right one, based on the
47707         extreme values actually observed in practice in tz2003a,
47708         rather than the (overly optimistic) "previous 3 calendar quarters".
47709
47710         (not_equal_tm, print_tm, check_result): Use "const T" rather than
47711         "T const" to accommodate glibc style.
47712         (check_result): Use less-confusing report format.  "long" -> "long int.
47713         (main): Likewise.
47714         Don't loop if the iteration overflows time_t.
47715         Allow a negative step in the iteration.
47716
47717 2003-07-06  Karl Berry  <karl@gnu.org>
47718
47719         * config/depcomp: update from automake.
47720         * config/config.sub: update from prep.
47721
47722 2003-07-03  Karl Berry  <karl@gnu.org>
47723
47724         * config/config.guess: update from prep.
47725
47726 2003-07-01  Paul Eggert  <eggert@twinsun.com>
47727
47728         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
47729         xreadlink.c now includes it unconditionally.
47730
47731 2003-07-01  Paul Eggert  <eggert@twinsun.com>
47732
47733         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
47734         having it depend on HAVE_SYS_TYPES_H.
47735
47736 2003-07-01  Bruno Haible  <bruno@clisp.org>
47737
47738         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
47739         <sys/types.h> should be sufficient.
47740         Reported by Paul Eggert.
47741
47742 2003-06-26  Karl Berry  <karl@gnu.org>
47743
47744         * config/depcomp: update from automake.
47745
47746 2003-06-26  Bruno Haible  <bruno@clisp.org>
47747
47748         * modules/human: Depend on module stdbool.
47749
47750 2003-06-25  Bruno Haible  <bruno@clisp.org>
47751
47752         * modules/readlink: New file.
47753         * modules/xreadlink: Depend on it.
47754         * MODULES.html.sh (func_all_modules): Add readlink.
47755
47756 2003-06-25  Bruno Haible  <bruno@clisp.org>
47757
47758         * m4/readlink.m4: New file.
47759
47760 2003-06-25  Bruno Haible  <bruno@clisp.org>
47761
47762         * lib/readlink.c: New file.
47763
47764 2003-06-22  Karl Berry  <karl@gnu.org>
47765
47766         * config/srclist.txt: update mkinstalldirs from automake.
47767         * config/mkinstalldirs: update.
47768
47769 2003-06-22  Bruno Haible  <bruno@clisp.org>
47770
47771         Portability to mingw32.
47772         * m4/ssize_t.m4: New file, from GNU gettext.
47773         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
47774         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
47775
47776 2003-06-22  Bruno Haible  <bruno@clisp.org>
47777
47778         * modules/safe-read: Add m4/ssize_t.m4.
47779         * modules/xreadlink: Add m4/ssize_t.m4.
47780
47781 2003-06-20  Bruno Haible  <bruno@clisp.org>
47782
47783         Assume C89, so PARAMS isn't needed.
47784         * lib/unicodeio.h (PARAMS): Remove.
47785         * lib/unicodeio.c: Don't use PARAMS.
47786
47787 2003-06-18  Karl Berry  <karl@gnu.org>
47788
47789         * config/config.{guess,sub}: update from prep.
47790
47791 2003-06-18  Jim Meyering  <jim@meyering.net>
47792
47793         Merge changes from coreutils.
47794         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
47795         Remove explicit declarations of xmalloc and realloc.
47796         Include xalloc.h.
47797         (read_utmp): Remove anachronistic cast of xmalloc.
47798
47799 2003-06-17  Paul Eggert  <eggert@twinsun.com>
47800
47801         Assume C89, so PARAMS isn't needed.
47802         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
47803         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
47804         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
47805         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
47806         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
47807         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
47808         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
47809         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
47810         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
47811         lib/xstrtod.h, lib/xstrtol.h: Likewise.
47812         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
47813         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
47814         no longer needed. Anyway, config.h should always be included before any
47815         other file.
47816
47817 2003-06-11  Simon Josefsson  <jas@extundo.com>
47818
47819         * modules/sysexits: New file.
47820         * MODULES.html.sh (func_all_modules): Add sysexits.
47821
47822 2003-06-11  Simon Josefsson  <jas@extundo.com>
47823
47824         * lib/sysexit_.h: New file.
47825
47826 2003-06-11  Derek Price  <derek@ximbiot.com>
47827
47828         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
47829         necessary.
47830
47831 2003-06-11  Bruno Haible  <bruno@clisp.org>
47832
47833         * m4/sysexits.m4: New file.
47834
47835 2003-06-10  Simon Josefsson  <jas@extundo.com>
47836
47837         * lib/argp.h: New file, from glibc.
47838         * lib/argp-ba.c: New file, from glibc.
47839         * lib/argp-eexst.c: New file, from glibc.
47840         * lib/argp-fmtstream.c: New file, from glibc.
47841         * lib/argp-fmtstream.h: New file, from glibc.
47842         * lib/argp-fs-xinl.c: New file, from glibc.
47843         * lib/argp-help.c: New file, from glibc.
47844         * lib/argp-namefrob.h: New file, from glibc.
47845         * lib/argp-parse.c: New file, from glibc.
47846         * lib/argp-pv.c: New file, from glibc.
47847         * lib/argp-pvh.c: New file, from glibc.
47848         * lib/argp-xinl.c: New file, from glibc.
47849
47850 2003-06-10  Simon Josefsson  <jas@extundo.com>
47851
47852         * modules/strchrnul: New file.
47853
47854 2003-06-10  Simon Josefsson  <jas@extundo.com>
47855
47856         * modules/argp: New file.
47857
47858 2003-06-10  Simon Josefsson  <jas@extundo.com>
47859
47860         * m4/strchrnul.m4: New file.
47861
47862 2003-06-10  Simon Josefsson  <jas@extundo.com>
47863
47864         * lib/strchrnul.h: New file.
47865         * lib/strchrnul.c: New file.
47866
47867 2003-06-10  Bruno Haible  <bruno@clisp.org>
47868
47869         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
47870
47871 2003-06-07  Karl Berry  <karl@gnu.org>
47872
47873         * config/config.{guess,sub}: update from prep.
47874
47875 2003-06-07  Jim Meyering  <jim@meyering.net>
47876
47877         * modules/strtod: Use $(...) notation, not @...@ for
47878         AC_REPLACE'd variables.
47879         * modules/localcharset: Likewise.
47880
47881 2003-06-07  Jim Meyering  <jim@meyering.net>
47882
47883         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
47884         in place of my name in the copyright comment.
47885         Remove definition and uses of __P.
47886
47887         From coreutils.
47888         * lib/stat.c: Don't declare xmalloc explicitly.
47889         Instead, include "xalloc.h".
47890         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
47891         xrealloc, and xcalloc return values.
47892         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
47893         Improve comment.
47894         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
47895
47896 2003-06-07  Bruno Haible  <bruno@clisp.org>
47897
47898         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
47899         avoid AC_CONFIG_LINKS.
47900         * modules/fnmatch (Makefile.am): Use explicit creation rule for
47901         fnmatch.h, to avoid AC_CONFIG_LINKS.
47902         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
47903
47904 2003-06-07  Bruno Haible  <bruno@clisp.org>
47905
47906         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
47907         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
47908         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
47909         directory.
47910         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
47911         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
47912         directory.
47913
47914 2003-06-06  Jim Meyering  <jim@meyering.net>
47915
47916         Merge from coreutils.
47917         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
47918         Consolidate declarations and initializations of *_base* locals.
47919
47920         Merge from coreutils.
47921         This avoids a core dump on systems without GNU putenv,
47922         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
47923         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
47924         (unsetenv): New static function, from GNU libc.
47925         (rpl_putenv): Use it.
47926
47927         * lib/modechange.c: Remove trailing blanks.
47928
47929         Merge from coreutils.
47930         * lib/fsusage.c: Remove declaration of statfs.
47931         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
47932
47933         * lib/posixtm.c: Include <stdbool.h> unconditionally.
47934
47935 2003-06-06  Jim Meyering  <jim@meyering.net>
47936
47937         * lib/stdbool_.h: Renamed from stdbool.h.in.
47938
47939 2003-06-06  Jim Meyering  <jim@meyering.net>
47940             Bruno Haible  <bruno@clisp.org>
47941
47942         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
47943         Adjust Makefile.am snippet not to redirect directly to target.
47944         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
47945
47946 2003-06-05  Paul Eggert  <eggert@twinsun.com>
47947
47948         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
47949         mismatch, look in future quarters as well as past.  This fixes a
47950         bug when processing fall-backwards gaps immediately after a long
47951         period of daylight-saving time.
47952
47953         * lib/mktime.c: Assume freestanding C89 or better.
47954         (HAVE_LIMITS_H): Remove.  Assume it's 1.
47955         (__P): Remove; not used.
47956         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
47957         (mktime, not_equal_tm, print_tm, check_result,
47958         main): Use prototypes.  Use const * where appropriate.
47959         (main): Fix typo in testing code that uncovered by above changes.
47960         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
47961
47962 2003-06-04  Paul Eggert  <eggert@twinsun.com>
47963
47964         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
47965         locale.h, localeconv.  This merges changes from coreutils.
47966
47967         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
47968         It can be removed after the next Autoconf is released.
47969         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
47970         needed.
47971
47972 2003-06-04  Paul Eggert  <eggert@twinsun.com>
47973
47974         * lib/mktime.c: Fix Debian bug 177940
47975         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
47976         (localtime_offset): Now long int, not time_t, because we want it
47977         to be guaranteed to be signed.  All uses changed.
47978         (__mktime_internal): If overflow would occur when adding offset,
47979         don't add it.
47980
47981         Merge 'human' changes from coreutils.  Rewrite to support
47982         locale-specific notations like thousands separators.
47983         * lib/human.c: Simplify authorship notice.
47984         Include human.h immediately after config.h.
47985         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
47986         <limits.h>: Do not include, since human.h does.
47987         (SIZE_MAX, UINTMAX_MAX): New macros.
47988         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
47989         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
47990         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
47991         (power_letter): Renamed from suffixes.
47992         (generate_suffix_backwards): Remove.
47993         (adjust_value): Now takes int style (because of human.h changes)
47994         and long double value (for greater precision on some platforms).
47995         (group_number): New function.
47996         (human_readable): Use it.  Use integer options, not enum.
47997         Put the options before the sizes in the arg list.
47998         Support all the new options.
47999         The old human_readable function has been removed;
48000         use inttostr.h instead.
48001         (human_readable, default_block_size, humblock):
48002         Use uintmax_t, not int, for block sizes.
48003         (human_readable_inexact, block_size_types): Remove.
48004         (block_size_opts): New constant.
48005         (human_options): Renamed from human_block_size, with new signature
48006         that allows block sizes up to UINTMAX_MAX.  All callers changed.
48007         * lib/human.h: Add copyright and authorship notice.
48008         Include <limits.h> and <stdbool.h> unconditionally.
48009         (PARAMS): Remove.  All uses removed.
48010         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
48011         (enum human_inexact_style): Remove tag; now a nameless enum.
48012         (human_floor, human_ceiling, human_round_to_even): Now have
48013         values 2, 0, 1 rather than -1, 1, 0.
48014         (human_group_digits, human_suppress_point_zero, human_autoscale,
48015         human_base_1024, human_SI, human_B): New constants.
48016         (human_readable_inexact, human_block_size): Remove.
48017         (human_readable): Size args are now uintmax_t, not int.
48018         (human_options): New decl.
48019
48020         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
48021         unnecessary now that we assume C89 or better.  This change
48022         imported from coreutils.
48023
48024         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
48025         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
48026         in the 2003-05-30 sync from glibc.
48027
48028         .h files should stand alone, but we shouldn't include <sys/types.h>
48029         if we can get away with just <stddef.h>.
48030
48031         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
48032         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
48033         rather than <sys/types.h>, as we merely need size_t.
48034         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
48035         to get size_t.
48036         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
48037         Include <stdio.h>, to get FILE.
48038         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
48039         memcasecmp.h has included <stddef.h> and all we need is size_t.
48040         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
48041         our interface, instead of including <sys/types.h>
48042
48043 2003-06-04  Paul Eggert  <eggert@twinsun.com>
48044
48045         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
48046         now, as glibc mktime is buggy on non-glibc systems.
48047
48048 2003-06-03  Karl Berry  <karl@gnu.org>
48049
48050         * config/config.sub: update from prep.
48051
48052 2003-06-02  Paul Eggert  <eggert@twinsun.com>
48053
48054         [from coreutils]
48055         Fix some minor time-related bugs with POSIX time arguments.
48056         Some valid time stamps were being rejected (notably -1, and
48057         time stamps before 1900 on 64-bit hosts).  And some invalid
48058         time stamps were being accepted, e.g. September 31.
48059
48060         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
48061         that we can return (time_t) -1 successfully.
48062         * lib/posixtm.c: Likewise.
48063         [HAVE_STDBOOL_H]: Include <stdbool.h>.
48064         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
48065         (t): Remove static var.
48066         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
48067         of static var.  All uses changed.
48068         (year): Do not reject years before 1900; they can occur with
48069         64-bit time_t.
48070         (posix_time_parse): Do not check for out-of-range components;
48071         that is now the caller's responsibility, since our checks were
48072         only approximations.
48073         (posixtime): Use mktime to check for out-of-range components,
48074         since it knows them exactly.
48075         If mktime returns (time_t) -1, check whether an error actually occurred
48076         by invoking localtime on -1.
48077         (main) [TEST_POSIXTIME]: Check for input data errors, and report
48078         posixtime failures better.
48079         Improve the test data (in comments only).
48080
48081 2003-06-02  Karl Berry  <karl@gnu.org>
48082
48083         * config/mkinstalldirs (version): new variable.
48084         (--version): new option.
48085         (usage): improve message.
48086
48087 2003-05-30  Karl Berry  <karl@gnu.org>
48088
48089         * lib/mktime.c: update from libc.
48090
48091 2003-05-30  Bruno Haible  <bruno@clisp.org>
48092
48093         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
48094         * config/config.rpath: Upgrade to gettext-0.12.1.
48095
48096 2003-05-30  Bruno Haible  <bruno@clisp.org>
48097
48098         * m4/gettext.m4: Upgrade to gettext-0.12.1.
48099         * m4/nls.m4: New file, from gettext-0.12.1.
48100         * m4/po.m4: New file, from gettext-0.12.1.
48101         * m4/progtest.m4: Upgrade to gettext-0.12.1.
48102
48103 2003-05-30  Bruno Haible  <bruno@clisp.org>
48104
48105         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
48106         * lib/localcharset.h: Likewise.
48107         * lib/localcharset.c: Likewise.
48108
48109 2003-05-29  Karl Berry  <karl@gnu.org>
48110
48111         * config/config.rpath: update from gettext.
48112
48113 2003-05-28  Paul Eggert  <eggert@twinsun.com>
48114
48115         Assume the headers required for C89 freestanding compilers.
48116         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
48117         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
48118         * m4/human.m4 (gl_HUMAN): Likewise.
48119         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
48120         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
48121         * m4/userspec.m4 (gl_USERSPEC): Likewise.
48122         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
48123         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
48124         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
48125
48126 2003-05-28  Paul Eggert  <eggert@twinsun.com>
48127
48128         Assume the headers required for C89 freestanding compilers.
48129         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
48130         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
48131         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
48132         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
48133         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
48134         define, since <limits.h> is guaranteed to do that.
48135         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
48136         * lib/exclude.c: Include <stdbool.h> unconditionally.
48137         * lib/tempname.c: Include <stddef.h> unconditionally.
48138         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
48139         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
48140         <stddef.h> does that.
48141         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
48142         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
48143         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
48144         needed.
48145         * lib/xstrtol.c: Likewise.
48146         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
48147         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
48148
48149         * lib/addext.c (addext): Use assignment rather than cast, to avoid
48150         warnings on some platforms.
48151
48152         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
48153         arbitrarily.
48154
48155 2003-05-26  Jim Meyering  <jim@meyering.net>
48156
48157         Merge in a change from coreutils:
48158         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
48159         that is guaranteed to be `no'.  Use `no_such_member' to indicate
48160         that condition, rather than `-1' which is slightly misleading.
48161         Change the name of the cache variable to have the gl_ prefix.
48162         Prompted by a patch from Richard Dawe for DJGPP.
48163
48164 2003-05-24  Karl Berry  <karl@gnu.org>
48165
48166         * config/config.guess: update from prep.
48167
48168 2003-05-22  Karl Berry  <karl@gnu.org>
48169
48170         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
48171
48172 2003-05-20  Karl Berry  <karl@gnu.org>
48173
48174         * config/config.guess: update from prep.
48175
48176 2003-05-18  Karl Berry  <karl@gnu.org>
48177
48178         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
48179         might actually be set by the user.
48180
48181         * config/depcomp, install-sh, mdate-sh: update from automake.
48182
48183 2003-05-17  Bruno Haible  <bruno@clisp.org>
48184
48185         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
48186         invalid expansion for AC_EGREP_CPP.
48187         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
48188         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
48189         Suggested by Akim Demaille <akim@epita.fr> in
48190         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
48191
48192 2003-05-12  Jim Meyering  <jim@meyering.net>
48193
48194         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
48195         the space-padded-by-default conversion specifiers, %e, %k, %l.
48196
48197 2003-05-12  Bruno Haible  <bruno@clisp.org>
48198
48199         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
48200         the string is longer than 4 KB.
48201
48202 2003-05-11  Karl Berry  <karl@gnu.org>
48203
48204         * config/config.{guess,sub}: update from prep.
48205
48206 2003-05-09  Bruno Haible  <bruno@clisp.org>
48207
48208         * modules/error: Add m4/strerror_r.m4 to file list.
48209
48210 2003-05-03  Bruno Haible  <bruno@clisp.org>
48211
48212         Upgrade to Unicode-4.0.
48213         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
48214         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
48215         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
48216         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
48217         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
48218         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
48219         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
48220         Change width of U+E0100..U+E01EF from 1 to 0.
48221
48222 2003-04-25  Jim Meyering  <jim@meyering.net>
48223
48224         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
48225         of type size_t, not int.
48226
48227 2003-04-25  Bruno Haible  <bruno@clisp.org>
48228
48229         * lib/copy-file.c: Include <stddef.h>, for size_t.
48230
48231 2003-04-21  Paul Eggert  <eggert@twinsun.com>
48232
48233         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
48234         code which expansion is under static control.  Patch imported from
48235         Akim Demaille's patch to Bison; see
48236         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
48237
48238 2003-04-14  Bruno Haible  <bruno@clisp.org>
48239
48240         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
48241
48242 2003-04-11  Jim Meyering  <jim@meyering.net>
48243
48244         Merge changes from Coreutils.
48245
48246         2003-03-22  Jim Meyering  <jim@meyering.net>
48247
48248         * lib/strftime.c (widen): Cast alloca return value to proper type.
48249
48250         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
48251
48252         From GNU libc.
48253         * lib/strftime.c (my_strftime): Handle very large width
48254         specifications for numeric values correctly.  Improve checks for
48255         overflow.
48256
48257         2003-01-19  Jim Meyering  <jim@meyering.net>
48258
48259         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
48260         definitions.
48261         (nl_get_alt_digit) [! defined my_strftime]: Define.
48262         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
48263         _nl_get_alt_digit and _nl_get_walt_digit.
48264
48265         * lib/strftime.c (my_strftime): Merge in locale-related changes from
48266         libc. These changes have no effect outside of _LIBC.
48267
48268 2003-04-10  Bruno Haible  <bruno@clisp.org>
48269
48270         * modules/findprog: New file.
48271         * MODULES.html.sh (func_all_modules): Add it.
48272
48273 2003-04-10  Bruno Haible  <bruno@clisp.org>
48274
48275         * m4/findprog.m4: New file.
48276         * m4/eaccess.m4: New file.
48277
48278 2003-04-10  Bruno Haible  <bruno@clisp.org>
48279
48280         * lib/findprog.h: New file, from GNU gettext.
48281         * lib/findprog.c: New file, from GNU gettext.
48282
48283 2003-04-05  Jim Meyering  <jim@meyering.net>
48284
48285         Merge changes from Coreutils.
48286
48287         * lib/exclude.h (PARAMS): Remove definition and uses.
48288         * lib/exclude.c: Remove uses of `PARAMS'.
48289
48290         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
48291         Add test-cases for DOS filenames. Declare program_name.
48292         (main): Set up program_name.  Patch by Rich Dawe.
48293
48294         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
48295         error from mntctl.
48296         Use mntctl's return value to drive the entry-processing loop, since
48297         we can't rely on the value of the vmt_length member in the last
48298         entry.  On some systems doing so could result in exhausting
48299         virtual memory.  Based in part on a patch from Mike Jetzer.
48300
48301 2003-04-04  Bruno Haible  <bruno@clisp.org>
48302
48303         * modules/linebreak: New file.
48304         * MODULES.html.sh (func_all_modules): Add it.
48305
48306 2003-04-04  Bruno Haible  <bruno@clisp.org>
48307
48308         * m4/linebreak.m4: New file.
48309
48310 2003-04-04  Bruno Haible  <bruno@clisp.org>
48311
48312         * lib/linebreak.h: New file, from GNU gettext.
48313         * lib/linebreak.c: New file, from GNU gettext with slight
48314         modifications.
48315         * lib/lbrkprop.h: New file, from GNU gettext.
48316
48317 2003-04-03  Bruno Haible  <bruno@clisp.org>
48318
48319         * modules/utf8-ucs4: New file.
48320         * modules/utf16-ucs4: New file.
48321         * modules/ucs4-utf8: New file.
48322         * modules/ucs4-utf16: New file.
48323         * MODULES.html.sh (func_all_modules): Add them.
48324
48325 2003-04-03  Bruno Haible  <bruno@clisp.org>
48326
48327         * m4/utf-ucs4.m4: New file.
48328         * m4/ucs4-utf.m4: New file.
48329
48330 2003-04-03  Bruno Haible  <bruno@clisp.org>
48331
48332         * lib/utf8-ucs4.h: New file, from GNU gettext.
48333         * lib/utf16-ucs4.h: New file, from GNU gettext.
48334         * lib/ucs4-utf8.h: New file, from GNU gettext.
48335         * lib/ucs4-utf16.h: New file, from GNU gettext.
48336
48337 2003-04-02  Bruno Haible  <bruno@clisp.org>
48338
48339         * modules/binary-io: New file.
48340         * MODULES.html.sh (func_all_modules): Add it.
48341
48342 2003-04-02  Bruno Haible  <bruno@clisp.org>
48343
48344         * lib/binary-io.h: New file, from GNU gettext.
48345
48346 2003-04-01  Bruno Haible  <bruno@clisp.org>
48347
48348         * modules/pathname: New file.
48349         * MODULES.html.sh (func_all_modules): Add it.
48350
48351 2003-04-01  Bruno Haible  <bruno@clisp.org>
48352
48353         * lib/pathname.h: New file, from GNU gettext.
48354         * lib/concatpath.c: New file, from GNU gettext.
48355
48356 2003-03-30  Bruno Haible  <bruno@clisp.org>
48357
48358         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
48359
48360 2003-03-30  Bruno Haible  <bruno@clisp.org>
48361
48362         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
48363         function chown() doesn't exist.
48364
48365 2003-03-28  Bruno Haible  <bruno@clisp.org>
48366
48367         * modules/copy-file: New file.
48368         * MODULES.html.sh (func_all_modules): Add it.
48369
48370 2003-03-28  Bruno Haible  <bruno@clisp.org>
48371
48372         * m4/copy-file.m4: New file.
48373
48374 2003-03-28  Bruno Haible  <bruno@clisp.org>
48375
48376         * lib/copy-file.h: New file, from GNU gettext.
48377         * lib/copy-file.c: New file, from GNU gettext.
48378
48379 2003-03-18  Jim Meyering  <jim@meyering.net>
48380
48381         * lib/quote.c (quote_n): Fix typo in comment.
48382
48383 2003-03-18  Bruno Haible  <bruno@clisp.org>
48384
48385         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
48386         checking.
48387         * m4/onceonly_2_57.m4: Likewise.
48388
48389 2003-03-17  Bruno Haible  <bruno@clisp.org>
48390
48391         * m4/onceonly.m4: Require autoconf 2.54 or newer.
48392         (m4_quote): Remove macro.
48393         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
48394
48395 2003-03-14  Jim Meyering  <jim@meyering.net>
48396
48397         Merge changes from Coreutils.
48398         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
48399         to be const, in order to avoid warnings.
48400         (obstack_room): Likewise.
48401         (obstack_empty_p): Likewise.
48402
48403 2003-03-14  Bruno Haible  <bruno@clisp.org>
48404
48405         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
48406         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
48407
48408 2003-03-13  Paul Eggert  <eggert@twinsun.com>
48409
48410         Merge changes from Bison.
48411         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
48412         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
48413         when compiling Bison 1.875's `bitset bset = obstack_alloc
48414         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
48415         * lib/hash.c: Include <stdbool.h> unconditionally.
48416
48417 2003-03-13  Paul Eggert  <eggert@twinsun.com>
48418
48419         * m4/onceonly.m4 (m4_quote): New macro.
48420         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
48421         Quote AC_FOREACH variable-expansions properly.
48422
48423 2003-03-13  Paul Eggert  <eggert@twinsun.com>
48424
48425         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
48426
48427 2003-03-09  Paul Eggert  <eggert@twinsun.com>
48428
48429         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
48430         Reported by Bruce Becker; see:
48431         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
48432
48433 2003-03-03  Paul Eggert  <eggert@twinsun.com>
48434             Bruno Haible  <bruno@clisp.org>
48435
48436         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
48437         Reported by John Hughes, see
48438         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
48439
48440 2003-02-20  Bruno Haible  <bruno@clisp.org>
48441
48442         * MODULES.html.sh (func_all_modules): Add poll.
48443
48444 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
48445
48446         * modules/poll: New file.
48447
48448 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
48449
48450         * lib/poll_.h: New file.
48451         * lib/poll.c: New file.
48452
48453 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
48454
48455         * m4/poll.m4: New file.
48456
48457 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
48458
48459         * modules/mathl: New file.
48460
48461 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
48462
48463         * lib/mathl.h: New file.
48464         * lib/acosl.c: New file.
48465         * lib/asinl.c: New file.
48466         * lib/atanl.c: New file.
48467         * lib/ceill.c: New file.
48468         * lib/cosl.c: New file.
48469         * lib/expl.c: New file.
48470         * lib/floorl.c: New file.
48471         * lib/frexpl.c: New file.
48472         * lib/ldexpl.c: New file.
48473         * lib/logl.c: New file.
48474         * lib/sincosl.c: New file.
48475         * lib/sinl.c: New file.
48476         * lib/sqrtl.c: New file.
48477         * lib/tanl.c: New file.
48478         * lib/trigl.c: New file.
48479         * lib/trigl.h: New file.
48480
48481 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
48482
48483         * m4/mathl.m4: New file.
48484
48485 2003-02-18  Bruno Haible  <bruno@clisp.org>
48486
48487         * MODULES.html.sh (func_all_modules): Add mathl.
48488
48489 2003-02-17  Bruno Haible  <bruno@clisp.org>
48490
48491         * modules/mkdtemp: New module.
48492         * MODULES.html.sh (func_all_modules): Add it.
48493
48494 2003-02-17  Bruno Haible  <bruno@clisp.org>
48495
48496         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
48497
48498 2003-02-17  Bruno Haible  <bruno@clisp.org>
48499
48500         * lib/mkdtemp.h: New file, from GNU gettext.
48501         * lib/mkdtemp.c: New file, from GNU gettext.
48502
48503 2003-02-02  Jim Meyering  <jim@meyering.net>
48504
48505         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
48506         e.g. glibc-2.2.93.
48507
48508 2003-01-31  Bruno Haible  <bruno@clisp.org>
48509
48510         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
48511         'rpl_rename'.
48512         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
48513         'rpl_strnlen'.
48514         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
48515         'rpl_strtod'.
48516         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
48517         'rpl_utime'.
48518
48519 2003-01-31  Bruno Haible  <bruno@clisp.org>
48520
48521         * lib/rename.c: #undef rename before defining rpl_rename.
48522         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
48523
48524 2003-01-30  Bruno Haible  <bruno@clisp.org>
48525
48526         * modules/vasnprintf, modules/vasprintf: New modules.
48527         * MODULES.html.sh (func_all_modules): Add them.
48528
48529 2003-01-30  Bruno Haible  <bruno@clisp.org>
48530
48531         * m4/signed.m4: New file, from GNU gettext.
48532         * m4/longdouble.m4: New file, from GNU gettext.
48533         * m4/wchar_t.m4: New file, from GNU gettext.
48534         * m4/wint_t.m4: New file, from GNU gettext.
48535         * m4/vasnprintf.m4: New file.
48536         * m4/vasprintf.m4: New file.
48537
48538 2003-01-30  Bruno Haible  <bruno@clisp.org>
48539
48540         * lib/printf-args.h: New file, from GNU gettext.
48541         * lib/printf-args.c: New file, from GNU gettext.
48542         * lib/printf-parse.h: New file, from GNU gettext.
48543         * lib/printf-parse.c: New file, from GNU gettext.
48544         * lib/vasnprintf.h: New file, from GNU gettext.
48545         * lib/vasnprintf.c: New file, from GNU gettext.
48546         * lib/asnprintf.c: New file, from GNU gettext.
48547         * lib/vasprintf.h: New file, from GNU gettext with modifications.
48548         * lib/vasprintf.c: New file, from GNU gettext.
48549         * lib/asprintf.c: New file, from GNU gettext.
48550
48551 2003-01-29  Bruno Haible  <bruno@clisp.org>
48552
48553         * modules/stpncpy: New module.
48554         * MODULES.html.sh (func_all_modules): Add it.
48555
48556 2003-01-29  Bruno Haible  <bruno@clisp.org>
48557
48558         * m4/stpncpy.m4: New file.
48559
48560 2003-01-29  Bruno Haible  <bruno@clisp.org>
48561
48562         * lib/stpncpy.h: New file, from GNU gettext with modifications.
48563         * lib/stpncpy.c: New file, from GNU gettext with modifications.
48564
48565 2003-01-28  Bruno Haible  <bruno@clisp.org>
48566
48567         * modules/c-ctype: New module.
48568         * MODULES.html.sh (func_all_modules): Add it.
48569
48570 2003-01-28  Bruno Haible  <bruno@clisp.org>
48571
48572         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
48573         Paul Eggert.
48574         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
48575         Paul Eggert.
48576
48577 2003-01-27  Bruno Haible  <bruno@clisp.org>
48578
48579         * modules/xsetenv: New module.
48580         * MODULES.html.sh (func_all_modules): Add it.
48581
48582 2003-01-27  Bruno Haible  <bruno@clisp.org>
48583
48584         * lib/xsetenv.h: New file, from GNU gettext.
48585         * lib/xsetenv.c: New file, from GNU gettext.
48586
48587 2003-01-23  Jim Meyering  <jim@meyering.net>
48588
48589         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
48590         from working on systems without dirfd (at least Irix and OSF1/Tru64).
48591
48592 2003-01-23  Bruno Haible  <bruno@clisp.org>
48593
48594         * modules/minmax: New module.
48595         * MODULES.html.sh (func_all_modules): Add it.
48596
48597 2003-01-23  Bruno Haible  <bruno@clisp.org>
48598
48599         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
48600         Eggert.
48601
48602 2003-01-22  Bruno Haible  <bruno@clisp.org>
48603
48604         * modules/exit: New module.
48605         * MODULES.html.sh (func_all_modules): Add it.
48606
48607 2003-01-22  Bruno Haible  <bruno@clisp.org>
48608
48609         * lib/exit.h: New file, from GNU gettext.
48610
48611 2003-01-19  Bruno Haible  <bruno@clisp.org>
48612
48613         * gnulib-tool: Recognize option --extract-maintainer.
48614         (func_get_maintainer): New function.
48615         * modules/*: Add Maintainer entry.
48616
48617 2003-01-16  Jim Meyering  <jim@meyering.net>
48618
48619         * m4/regex.m4: The `regex' struct is both input and output.
48620         Initialize it before each use.  Patch by Tim Waugh.
48621
48622 2003-01-16  Bruno Haible  <bruno@clisp.org>
48623
48624         * MODULES.html.sh: Add a table of contents. Add the module name as
48625         leftmost column. Add hyperlinks.
48626
48627 2003-01-15  Bruno Haible  <bruno@clisp.org>
48628
48629         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
48630
48631 2003-01-15  Bruno Haible  <bruno@clisp.org>
48632
48633         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
48634         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
48635         suffix.
48636
48637 2003-01-15  Bruno Haible  <bruno@clisp.org>
48638
48639         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
48640
48641 2003-01-15  Bruno Haible  <bruno@clisp.org>
48642
48643         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
48644         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
48645
48646 2003-01-14  Jim Meyering  <jim@meyering.net>
48647
48648         * lib/same.c (same_name): Tweak a comment.
48649
48650 2003-01-14  Bruno Haible  <bruno@clisp.org>
48651
48652         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
48653         when a string comparison is sufficient.
48654
48655 2003-01-14  Bruno Haible  <bruno@clisp.org>
48656
48657         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
48658         'unsigned int'.
48659
48660 2003-01-14  Bruno Haible  <bruno@clisp.org>
48661
48662         * lib/hash-pjw.c: Add comment about low quality of this function.
48663
48664 2003-01-13  Bruno Haible  <bruno@clisp.org>
48665
48666         * modules/stpcpy: Distribute lib/stpcpy.h.
48667         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
48668
48669 2003-01-13  Bruno Haible  <bruno@clisp.org>
48670
48671         * modules/*: Add a description.
48672         * modules/strpbrk: Fix Makefile.am snippet.
48673         * modules/strtoimax: Fix dependencies.
48674         * modules/strtoumax: Likewise.
48675
48676 2003-01-13  Bruno Haible  <bruno@clisp.org>
48677
48678         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
48679         * modules/alloca (Makefile.am): All object files depend on alloca.h.
48680         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
48681
48682 2003-01-13  Bruno Haible  <bruno@clisp.org>
48683
48684         * gnulib-tool (func_create_testdir): Store config/* files in the main
48685         directory.
48686         * config.rpath: Move to ...
48687         * config/config.rpath: ... here.
48688         * modules/gettext: Contains config/config.rpath, not config.rpath.
48689         * modules/iconv: Likewise.
48690
48691 2003-01-12  Paul Eggert  <eggert@twinsun.com>
48692
48693         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
48694         to avoid collisions with libcurses and libreadline.
48695
48696         * m4/getstr.m4: Remove.
48697         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
48698
48699 2003-01-12  Paul Eggert  <eggert@twinsun.com>
48700
48701         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
48702         to avoid collisions with libcurses and libreadline.
48703
48704         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
48705         * lib/getstr.h, getstr.c: Remove.
48706         * lib/getline.c: Include "getline.h", to check interface.
48707         Move body of old getstr.c here: this defines MIN_CHUNK and
48708         declares getdelim2, which is renamed from getstr.
48709         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
48710
48711         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
48712         All uses changed.
48713         * lib/linebuffer.h: Likewise.
48714         (readline): Remove backward-compatibility macro.
48715
48716 2003-01-12  Paul Eggert  <eggert@twinsun.com>
48717
48718         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
48719         to avoid collisions with libcurses and libreadline.
48720         * getstr: Remove.
48721         * MODULES.html.sh: Remove getstr.
48722         * modules/getline: Depend on unlocked-io, not getstr.
48723
48724 2003-01-12  Jim Meyering  <jim@meyering.net>
48725
48726         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
48727
48728 2003-01-10  Bruno Haible  <bruno@clisp.org>
48729
48730         * modules/alloca: Change Makefile.am requirements. Simplify Include
48731         requirements. Add lib/alloca_.h to file list.
48732
48733 2003-01-10  Bruno Haible  <bruno@clisp.org>
48734
48735         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
48736
48737 2003-01-10  Bruno Haible  <bruno@clisp.org>
48738
48739         * lib/alloca_.h: New file.
48740         * lib/getdate.y: Unconditionally include alloca.h.
48741         * lib/makepath.c: Likewise.
48742         * lib/setenv.c: Likewise.
48743         * lib/userspec.c: Likewise.
48744
48745 2003-01-09  Karl Berry  <karl@gnu.org>
48746
48747         * MODULES.html.sh: include `dirname $0` in PATH, to find
48748         gnulib-tool.
48749
48750 2003-01-09  Bruno Haible  <bruno@clisp.org>
48751
48752         * modules/stdbool: Change configure.ac, Makefile.am requirements.
48753         Simplify Include requirements. Add lib/stdbool.h.in to file list.
48754
48755 2003-01-09  Bruno Haible  <bruno@clisp.org>
48756
48757         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
48758
48759 2003-01-09  Bruno Haible  <bruno@clisp.org>
48760
48761         * lib/stdbool.h.in: New file.
48762
48763 2003-01-09  Bruno Haible  <bruno@clisp.org>
48764
48765         * gnulib-tool (func_all_modules): Ignore files ending in ~.
48766         * MODULES.html.sh: Likewise.
48767
48768 2003-01-08  Jim Meyering  <jim@meyering.net>
48769
48770         * lib/full-write.c: Undefine and define-away `const' after inclusion
48771         of errno.h, not before.  Suggestion from Bruno Haible.
48772
48773 2003-01-08  Bruno Haible  <bruno@clisp.org>
48774
48775         * modules/full-read: Depend on full-write.
48776
48777 2003-01-08  Bruno Haible  <bruno@clisp.org>
48778
48779         * lib/safe-read.c: Include specification header first, to ensure its
48780         selfcontainedness.
48781         * lib/full-write.c: Likewise.
48782
48783 2003-01-07  Jim Meyering  <jim@meyering.net>
48784
48785         * lib/full-write.c: Rework so that it may serve to define full_read,
48786         too.
48787         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
48788
48789 2003-01-07  Bruno Haible  <bruno@clisp.org>
48790
48791         * lib/strtoimax.c: Include <stdint.h> as an alternative to
48792         <inttypes.h>.
48793         * lib/xstrtol.h: Likewise.
48794         * lib/xstrtoimax.c: Likewise.
48795         * lib/xstrtoumax.c: Likewise.
48796         * lib/human.h: Likewise.
48797
48798         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
48799         on systems that have <inttypes.h> but not <stdint.h>.
48800
48801 2003-01-07  Bruno Haible  <bruno@clisp.org>
48802
48803         * MODULES.html.sh: Add copyright notice.
48804         (missed_files): Omit CVS directory entries.
48805         (func_module): Make it work with sed-3.02.
48806         * MODULES.txt: Remove file.
48807
48808 2003-01-06  Jim Meyering  <jim@meyering.net>
48809
48810         * lib/version-etc.c: Update year in translatable copyright string.
48811
48812 2003-01-03  Karl Berry  <karl@gnu.org>
48813
48814         * config/config.{guess,sub}: update from prep.
48815
48816 2003-01-02  Karl Berry  <karl@gnu.org>
48817
48818         * doc/COPYING.DOC: belatedly updated to 1.2.
48819
48820 2003-01-01  Karl Berry  <karl@gnu.org>
48821
48822         * gnulib-tool (func_verify_module): report module name $module in
48823         error message, not $1.
48824         * gnulib-tool (create-testdir): don't complain if destdir couldn't
48825         be created, only if it doesn't exist.
48826         * gnulib-tool (last_checkin_date): don't expand the $Date here.
48827
48828 2002-12-31  Paul Eggert  <eggert@twinsun.com>
48829
48830         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
48831
48832 2002-12-31  Paul Eggert  <eggert@twinsun.com>
48833
48834         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
48835         memcmp if strcoll doesn't work.
48836
48837 2002-12-31  Bruno Haible  <bruno@clisp.org>
48838
48839         * lib/utime.c (utime_null): No need to call ftruncate if the file was
48840         nonempty.
48841
48842 2002-12-31  Bruno Haible  <bruno@clisp.org>
48843
48844         * lib/memcoll.c (STRCOLL): New macro.
48845         (memcoll): Use it.
48846
48847 2002-12-31  Bruno Haible  <bruno@clisp.org>
48848
48849         * lib/localcharset.h: New file.
48850         * lib/localcharset.c: Include it.
48851         * lib/unicodeio.c: Likewise.
48852
48853 2002-12-31  Bruno Haible  <bruno@clisp.org>
48854
48855         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
48856         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
48857
48858 2002-12-31  Bruno Haible  <bruno@clisp.org>
48859
48860         * lib/getline.h: Include <stddef.h>, for size_t.
48861
48862         * lib/unicodeio.h: Include <stddef.h>, for size_t.
48863         * lib/unicodeio.c: Don't include <stddef.h>.
48864
48865 2002-12-31  Bruno Haible  <bruno@clisp.org>
48866
48867         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
48868         HAVE_TM_ZONE.
48869
48870 2002-12-24  Karl Berry  <karl@gnu.org>
48871
48872         * config/config.guess: update from prep.
48873
48874 2002-12-24  Bruno Haible  <bruno@clisp.org>
48875
48876         General infrasructure.
48877         * m4/README: Rewritten.
48878         * m4/onceonly.m4: New file.
48879         * m4/onceonly_2_57.m4: New file.
48880
48881         Module atexit.
48882         * m4/atexit.m4: New file.
48883
48884         Module strtod.
48885         * m4/strtod.m4: New file.
48886
48887         Module strtol.
48888         * m4/strtol.m4: New file.
48889
48890         Module strtoul.
48891         * m4/strtoul.m4: New file.
48892
48893         Module memchr.
48894         * m4/memchr.m4: New file.
48895
48896         Module memcmp.
48897         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
48898         (jm_FUNC_MEMCMP): Invoke it.
48899
48900         Module memcpy.
48901         * m4/memcpy.m4: New file.
48902
48903         Module memmove.
48904         * m4/memmove.m4: New file.
48905
48906         Module memset.
48907         * m4/memset.m4: New file.
48908
48909         Module strcspn.
48910         * m4/strcspn.m4: New file.
48911
48912         Module strpbrk.
48913         * m4/strpbrk.m4: New file.
48914
48915         Module strstr.
48916         * m4/strstr.m4: New file.
48917
48918         Module strerror.
48919         * m4/strerror.m4: New file.
48920
48921         Module mktime.
48922         * m4/mktime.m4: Renamed from jm-mktime.m4.
48923         (gl_PREREQ_MKTIME): New macro.
48924         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
48925
48926         Module malloc.
48927         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
48928         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
48929         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
48930
48931         Module realloc.
48932         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
48933         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
48934         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
48935
48936         Module strftime.
48937         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
48938         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
48939         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
48940         gl_TM_GMTOFF.
48941         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
48942
48943         Module xalloc.
48944         * m4/xalloc.m4: New file.
48945
48946         Module alloca.
48947         * m4/alloca.m4: New file.
48948
48949         Module putenv.
48950         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
48951         (jm_FUNC_PUTENV): Invoke it.
48952
48953         Module setenv.
48954         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
48955         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
48956         when invoked twice.
48957         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
48958         gt_FUNC_SETENV.
48959
48960         Module memrchr.
48961         * m4/memrchr.m4: New file.
48962
48963         Module stpcpy.
48964         * m4/stpcpy.m4: New file.
48965
48966         Module strcase.
48967         * m4/strcase.m4: New file.
48968
48969         Module strdup.
48970         * m4/strdup.m4: New file.
48971
48972         Module strnlen.
48973         * m4/strnlen.m4: New file.
48974
48975         Module strndup.
48976         * m4/strndup.m4: New file.
48977
48978         Module xstrtod.
48979         * m4/xstrtod.m4: New file.
48980
48981         Module xstrtol.
48982         * m4/xstrtol.m4: New file.
48983
48984         Module getdate.
48985         * m4/getdate.m4: New file.
48986
48987         Module unlocked-io.
48988         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
48989         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
48990         * m4/jm-glibc-io.m4n: Remove file.
48991
48992         Module long-options.
48993         * m4/long-options.m4: New file.
48994
48995         Module md5.
48996         * m4/md5.m4: New file.
48997
48998         Module sha.
48999         * m4/sha.m4: New file.
49000
49001         Module getstr.
49002         * m4/getstr.m4: New file.
49003
49004         Module getline.
49005         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
49006         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
49007         <sys/types.h>, for size_t. Use the function name gnu_getline, not
49008         simply getline. Infoke gl_PREREQ_GETLINE.
49009
49010         Module obstack.
49011         * m4/obstack.m4: New file.
49012
49013         Module hash.
49014         * m4/hash.m4: New file.
49015
49016         Module readtokens.
49017         * m4/readtokens.m4: New file.
49018
49019         Module strverscmp.
49020         * m4/strverscmp.m4: New file.
49021
49022         Module stdbool.
49023         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
49024         OSF/1.
49025
49026         Module strtoll.
49027         * m4/strtoll.m4: New file.
49028
49029         Module strtoull.
49030         * m4/strtoull.m4: New file.
49031
49032         Module strtoimax.
49033         * m4/strtoimax.m4: New file.
49034
49035         Module strtoumax.
49036         * m4/strtoumax.m4: New file.
49037
49038         Module xstrtoimax.
49039         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
49040         jm_AC_PREREQ_XSTRTOIMAX.
49041         Moved the strtol prerequisites to strtol.m4.
49042         Moved the strtoll prerequisites to strtoll.m4.
49043         Moved the strtoimax prerequisites to strtoimax.m4.
49044
49045         Module xstrtoumax.
49046         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
49047         jm_AC_PREREQ_XSTRTOUMAX.
49048         Moved the strtoul prerequisites to strtoul.m4.
49049         Moved the strtoull prerequisites to strtoull.m4.
49050         Moved the strtoumax prerequisites to strtoumax.m4.
49051
49052         Module chown.
49053         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
49054         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
49055
49056         Module dup2.
49057         * m4/dup2.m4: New file.
49058
49059         Module ftruncate.
49060         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
49061         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
49062
49063         Module getgroups.
49064         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
49065         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
49066
49067         Module gettimeofday.
49068         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
49069         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
49070         gl_PREREQ_GETTIMEOFDAY.
49071
49072         Module mkdir.
49073         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
49074         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
49075
49076         Module mkstemp.
49077         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
49078         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
49079         jm_AC_TYPE_UINTMAX_T.
49080         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
49081
49082         Module stat.
49083         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
49084         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
49085
49086         Module lstat.
49087         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
49088         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
49089
49090         Module timespec.
49091         * m4/timespec.m4 (gl_TIMESPEC): New macro.
49092         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
49093         * m4/st_mtim.m4: Indentation.
49094
49095         Module nanosleep.
49096         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
49097         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
49098         gl_PREREQ_NANOSLEEP.
49099
49100         Module regex.
49101         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
49102         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
49103         (gl_REGEX): New macro.
49104
49105         Module rename.
49106         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
49107         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
49108
49109         Module rmdir.
49110         * m4/rmdir.m4: New file.
49111
49112         Module utime.
49113         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
49114         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
49115         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
49116
49117         Module dirname.
49118         * m4/dirname.m4: New file.
49119
49120         Module getopt.
49121         * m4/getopt.m4: New file.
49122
49123         Module unistd-safer.
49124         * m4/unistd-safer.m4: New file.
49125
49126         Module fnmatch.
49127         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
49128         declaration.
49129         (gl_PREREQ_FNMATCH_EXTRA): New macro.
49130         (gl_FUNC_FNMATCH_POSIX): New macro.
49131         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
49132         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
49133         simply fnmatch.
49134
49135         Module exclude.
49136         * m4/exclude.m4: New file.
49137
49138         Module human.
49139         * m4/human.m4: New file.
49140
49141         Module acl.
49142         * m4/acl.m4: Nop.
49143
49144         Module backupfile.
49145         * m4/backupfile.m4: New file.
49146         * m4/d-ino.m4: Indentation.
49147
49148         Module fsusage.
49149         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
49150         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
49151         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
49152
49153         Module dirfd.
49154         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
49155         requirements.
49156
49157         Module euidaccess.
49158         * m4/euidaccess.m4: New file.
49159
49160         Module file-type.
49161         * m4/file-type.m4: New file.
49162
49163         Module fileblocks.
49164         * m4/fileblocks.m4: New file.
49165
49166         Module filemode.
49167         * m4/filemode.m4: New file.
49168
49169         Module isdir.
49170         * m4/isdir.m4: New file.
49171
49172         Module lchown.
49173         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
49174         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
49175
49176         Module makepath.
49177         * m4/makepath.m4: New file.
49178
49179         Module modechange.
49180         * m4/modechange.m4: New file.
49181
49182         Module mountlist.
49183         * m4/mountlist.m4: New file.
49184         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
49185         Indentation.
49186
49187         Module path-concat.
49188         * m4/path-concat.m4: New file.
49189
49190         Module pathmax.
49191         * m4/pathmax.m4: New file.
49192
49193         Module same.
49194         * m4/same.m4: New file.
49195
49196         Module save-cwd.
49197         * m4/save-cwd.m4: New file.
49198
49199         Module savedir.
49200         * m4/savedir.m4: New file.
49201
49202         Module xgetcwd.
49203         * m4/xgetcwd.m4: New file.
49204         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
49205
49206         Module xreadlink.
49207         * m4/xreadlink.m4: New file.
49208
49209         Module safe-read.
49210         * m4/safe-read.m4: New file.
49211
49212         Module safe-write.
49213         * m4/safe-write.m4: New file.
49214
49215         Module closeout.
49216         * m4/closeout.m4: New file.
49217
49218         Module stdio-safer.
49219         * m4/stdio-safer.m4: New file.
49220
49221         Module getpass.
49222         * m4/getpass.m4: New file.
49223
49224         Module getugroups.
49225         * m4/getugroups.m4: New file.
49226
49227         Module group-member.
49228         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
49229         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
49230
49231         Module idcache.
49232         * m4/idcache.m4: New file.
49233
49234         Module userspec.
49235         * m4/userspec.m4: New file.
49236
49237         Module gettime.
49238         * m4/clock_time.m4: New file.
49239         * m4/gettime.m4: New file.
49240
49241         Module settime.
49242         * m4/settime.m4: New file.
49243
49244         Module posixtm.
49245         * m4/posixtm.m4: New file.
49246
49247         Module gethostname.
49248         * m4/gethostname.m4: New file.
49249
49250         Module canon-host.
49251         * m4/canon-host.m4: New file.
49252
49253         Module gettext.
49254         * m4/codeset.m4: New file, from gettext-0.11.5.
49255         * m4/gettext.m4: New file, from gettext-0.11.5.
49256         * m4/glibc21.m4: New file, from gettext-0.11.5.
49257         * m4/iconv.m4: New file, from gettext-0.11.5.
49258         * m4/intdiv0.m4: New file, from gettext-0.11.5.
49259         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
49260         * m4/inttypes.m4: New file, from gettext-0.11.5.
49261         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
49262         * m4/isc-posix.m4: New file, from gettext-0.11.5.
49263         * m4/lcmessage.m4: New file, from gettext-0.11.5.
49264         * m4/lib-ld.m4: New file, from gettext-0.11.5.
49265         * m4/lib-link.m4: New file, from gettext-0.11.5.
49266         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
49267         * m4/progtest.m4: New file, from gettext-0.11.5.
49268         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
49269         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
49270         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
49271
49272         Module localcharset.
49273         * m4/localcharset.m4: New file.
49274
49275         Module hard-locale.
49276         * m4/hard-locale.m4: New file.
49277
49278         Module mbswidth.
49279         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
49280         onceonly macros.
49281         * m4/mbrtowc.m4: Add comment.
49282
49283         Module memcasecmp.
49284         * m4/memcasecmp.m4: New file.
49285
49286         Module memcoll.
49287         * m4/memcoll.m4: New file.
49288
49289         Module unicodeio.
49290         * m4/unicodeio.m4: New file.
49291
49292         Module rpmatch.
49293         * m4/rpmatch.m4: New file.
49294
49295         Module yesno.
49296         * m4/yesno.m4: New file.
49297
49298         Module exitfail.
49299         * m4/exitfail.m4: New file.
49300
49301         Module c-stack.
49302         * m4/c-stack.m4 (gl_C_STACK): New macro.
49303         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
49304
49305         Module error.
49306         * m4/error.m4 (gl_ERROR): New macro.
49307         (jm_PREREQ_ERROR): Use onceonly macros.
49308
49309         Module fatal.
49310         * m4/fatal.m4: New file.
49311
49312         Module getloadavg.
49313         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
49314         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
49315
49316         Module getpagesize.
49317         * m4/getpagesize.m4: New file.
49318
49319         Module getusershell.
49320         * m4/getusershell.m4: New file.
49321
49322         Module physmem.
49323         * m4/physmem.m4: New file.
49324
49325         Module posixver.
49326         * m4/posixver.m4: New file.
49327
49328         Module quotearg.
49329         * m4/quotearg.m4: New file.
49330
49331         Module quote.
49332         * m4/quote.m4: New file.
49333
49334         Module readutmp.
49335         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
49336
49337         Module sig2str.
49338         * m4/sig2str.m4: New file.
49339
49340         Other.
49341         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
49342         ulonglong.m4.
49343         * m4/intmax_t.m4: New file.
49344         * m4/d-type.m4: Indentation.
49345         * m4/jm-macros.m4: Update.
49346         * m4/prereq.m4 (jm_PREREQ): Update.
49347         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
49348         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
49349         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
49350         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
49351         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
49352         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
49353         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
49354         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
49355         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
49356         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
49357         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
49358         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
49359         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
49360         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
49361         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
49362         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
49363         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
49364         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
49365         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
49366
49367 2002-12-24  Bruno Haible  <bruno@clisp.org>
49368
49369         * MODULES.txt: Update according to m4/ changes.
49370
49371         Module gettext.
49372         * config.rpath: New file, from gettext-0.11.5.
49373
49374         * modules/*: New module descriptions.
49375         * gnulib-tool: New file.
49376         * MODULES.html.sh: New file.
49377
49378 2002-12-21  Karl Berry  <karl@gnu.org>
49379
49380         * doc/fdl.texi: update to version 1.2.
49381
49382 2002-12-19  Karl Berry  <karl@gnu.org>
49383
49384         * config/config.guess: update from prep.
49385
49386 2002-12-18  Bruno Haible  <bruno@clisp.org>
49387
49388         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
49389         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
49390
49391 2002-12-17  Bruno Haible  <bruno@clisp.org>
49392
49393         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
49394         stdlib.h, string.h.
49395
49396 2002-12-17  Bruno Haible  <bruno@clisp.org>
49397
49398         * lib/canon-host.c (strdup): Remove unused declaration.
49399
49400         * lib/fsusage.c: Include full_read.h.
49401         (get_fs_usage): Use full_read instead of safe_read.
49402
49403         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
49404
49405 2002-12-12  Karl Berry  <karl@gnu.org>
49406
49407         * config/config.guess: update from prep.
49408
49409 2002-12-11  Bruno Haible  <bruno@clisp.org>
49410
49411         * m4/setenv.m4: New file, from gettext-0.11.5.
49412
49413 2002-12-11  Bruno Haible  <bruno@clisp.org>
49414
49415         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
49416         not unsetenv().
49417         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
49418         modifications:
49419
49420         2002-12-11  Bruno Haible  <bruno@clisp.org>
49421
49422                 * setenv.c (alloca): Fall back to malloc.
49423                 (freea): New macro.
49424                 (setenv): Use freea() to free memory allocated with alloca().
49425
49426         2002-11-13  Bruno Haible  <bruno@clisp.org>
49427
49428                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
49429                 function declarations.
49430                 * unsetenv.c (unsetenv): Likewise.
49431
49432         2002-03-04  Bruno Haible  <bruno@clisp.org>
49433
49434                 Portability to AIX 4.3.3.
49435                 * unsetenv.c: New file, extracted from setenv.c.
49436                 * setenv.c: Move the unsetenv() function to unsetenv.c.
49437
49438         2001-12-20  Bruno Haible  <bruno@clisp.org>
49439
49440                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
49441                 use malloc instead. For SunOS 4.
49442
49443         2001-12-11  Bruno Haible  <bruno@clisp.org>
49444
49445                 * setenv.c: Declare alloca.
49446                 (compar_fn_t): New typedef.
49447                 (KNOWN_VALUE, STORE_VALUE): Use it.
49448
49449         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
49450         setenv.h.
49451
49452 2002-12-10  Paul Eggert  <eggert@twinsun.com>
49453
49454         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
49455         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
49456         Choose values that are less likely to collide with system fnmatch
49457         options.
49458         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
49459         defined (e.g., a pure POSIX system).
49460         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
49461         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
49462
49463 2002-12-06  Paul Eggert  <eggert@twinsun.com>
49464
49465         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
49466         a pain in practice to deal with generated m4 files.  This change
49467         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
49468
49469         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
49470         and jm-glibc-io.m4, as they are no longer a special case.
49471         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
49472         kludge and the auto-generation stuff.  Check only whether the
49473         functions are declared, not whether they exist, since older hosts
49474         that don't declare the functions can't use the optimization anyway.
49475
49476 2002-12-06  Jim Meyering  <jim@meyering.net>
49477
49478         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
49479
49480         Merge in changes from libc's misc/error.c, in preparation
49481         for the merge of gnulib's changes back into libc.
49482
49483         * lib/error.c (_): Define only if not already defined.
49484         Move definition to follow all #include directives.
49485         Include unlocked-io.h only if !_LIBC.
49486         [_LIBC]: Include <libio/libioP.h>.
49487         [USE_IN_LIBIO]: Include <libio/iolibio.h>
49488         (fflush): Tweak definition to use INTUSE.
49489         (putc): Define.
49490
49491 2002-12-05  Paul Eggert  <eggert@twinsun.com>
49492
49493         * lib/alloca.c [defined emacs]: Include "lisp.h".
49494         (xalloc_die) [defined emacs]: New macro.
49495         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
49496         [! defined emacs]: Include <xalloc.h>.
49497         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
49498         (pointer): Typedef to POINTER_TYPE *.
49499         (malloc): Remove decl; we now always use xmalloc.
49500         (alloca): Use old-style definition, since Emacs needs this.
49501         Check for arithmetic overflow when computing combined size.
49502
49503 2002-12-04  Paul Eggert  <eggert@twinsun.com>
49504
49505         Do not generate unlocked-io.h automatically, since it's easier to
49506         maintain it by hand.
49507
49508         * lib/unlocked-io.h: New file, from GNU diffutils,
49509         but with proper copyright notice and attribution.
49510         * lib/gen-uio: Remove.
49511         * lib/Makefile.am: Add copyright notice.
49512         (libfetish_a_SOURCES): Add unlocked-io.h.
49513         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
49514         (DISTCLEANFILES, io_functions): Remove macros.
49515         (EXTRA_DIST): Remove gen_uio.
49516         (unlocked-io.h): Remove rule.
49517
49518 2002-12-04  Jim Meyering  <jim@meyering.net>
49519
49520         Reflect the fact that stat.c and lstat.c are no longer generated.
49521         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
49522         (DISTCLEANFILES): Likewise.
49523         (EXTRA_DIST): Likewise.
49524         (all_local): Don't depend on stat.c or lstat.c.
49525         (stat.c, lstat.c): Remove rules.
49526         (EXTRA_DIST): Remove xstat.in.
49527
49528         * lib/xstat.in: Remove file.  Contents moved into stat.c.
49529         * lib/stat.c: New file.  Contents mostly from xstat.in.
49530         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
49531         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
49532
49533         * lib/safe-read.c: Rework so that it may serve to define safe_write,
49534         too.
49535         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
49536
49537 2002-12-03  Jim Meyering  <jim@meyering.net>
49538
49539         * lib/safe-read.c, safe-write.c: Change variable names and comments,
49540         but not semantics, to minimize the differences between these two files.
49541         (safe_read): Change comment to mention SAFE_READ_ERROR.
49542
49543         * lib/safe-read.c (IS_EINTR): Define.
49544         (safe_read): Use IS_EINTR in place of in-function cpp directives.
49545
49546 2002-12-02  Jim Meyering  <jim@meyering.net>
49547
49548         * lib/safe-read.c (EINTR): Define.
49549         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
49550         (INT_MAX): Provide fallback.
49551         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
49552
49553         * lib/safe-read.h (SAFE_READ_ERROR): Define.
49554
49555 2002-12-02  Bruno Haible  <bruno@clisp.org>
49556
49557         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
49558         Define, taken from safe-read.c.
49559         (INT_MAX): Provide fallback.
49560         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
49561         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
49562
49563         * lib/safe-read.c (EINTR): Remove definition.
49564         (safe_read): Don't use EINTR if it is absent.
49565
49566 2002-12-01  Jim Meyering  <jim@meyering.net>
49567
49568         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
49569         zero.
49570         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
49571
49572 2002-11-27  Paul Eggert  <eggert@twinsun.com>
49573
49574         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
49575         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
49576         with `if (! (value < limit)) abort ();', for readability.
49577
49578 2002-11-26  Karl Berry  <karl@gnu.org>
49579
49580         * lib/strdup.c: copy from libc again, with jim's ok.
49581         * lib/.cppi-disable: re-add strdup.c
49582
49583 2002-11-25  Karl Berry  <karl@gnu.org>
49584
49585         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
49586         instead of "strtol.c".
49587
49588 2002-11-25  Karl Berry  <karl@gnu.org>
49589
49590         * config/install-sh: update from automake for variable quoting, $0 in
49591         error msgs, etc.
49592
49593         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
49594         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
49595         entry.
49596
49597 2002-11-25  Jim Meyering  <jim@meyering.net>
49598
49599         * lib/mktime.c: Sync from libc, now that it has the latest fix.
49600
49601 2002-11-24  Karl Berry  <karl@gnu.org>
49602
49603         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
49604         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
49605
49606 2002-11-24  Jim Meyering  <jim@meyering.net>
49607
49608         Update from coreutils:
49609
49610         * lib/mktime.c: Merge in changes from libc.
49611
49612         Avoid a link-time failure on some Linux systems.
49613         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
49614         (otherwise).
49615         (__mon_yday): Declare with the STATIC attribute.
49616         (__mktime_internal): Likewise.
49617         Based on a report from Greg Schafer.
49618
49619 2002-11-23  Jim Meyering  <jim@meyering.net>
49620
49621         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
49622         Use `unsigned', not `int', as type of index.
49623
49624         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
49625
49626         * lib/fsusage.c: Remove unneeded parentheses around operands of
49627         `defined'.
49628
49629 2002-11-22  Paul Eggert  <eggert@twinsun.com>
49630
49631         * lib/quotearg.h: Allow multiple inclusion by surrounding with
49632         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
49633         so that we can be included first.
49634         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
49635         * lib/quotearg.c: Include quotearg.h immediately after config.h.
49636         No need to include stddef.h or sys/types.h any more.
49637         Surround local include files with "", not "<>".
49638         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
49639         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
49640         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
49641         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
49642         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
49643         (ISPRINT): Remove; no longer needed now that we assume C89.
49644
49645         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
49646         Preserve errno.
49647
49648         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
49649         quotearg_char): Use SIZE_MAX rather than
49650         (size_t) -1 when we are talking about "infinity".
49651
49652         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
49653
49654 2002-11-22  Paul Eggert  <eggert@twinsun.com>
49655
49656         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
49657         hint that one should use `if (! x) abort ();' rather than `assert
49658         (x);', and anyway it's one less thing to worry about configuring.
49659         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
49660         hash_rehash, hash_insert): Use abort rather than assert.
49661
49662 2002-11-22  Bruno Haible  <bruno@clisp.org>
49663
49664         * lib/safe-read.h: Assume C89. Add comments.
49665         (safe_read): Change return type to size_t.
49666         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
49667         byte counts > SSIZE_MAX correctly.
49668         * lib/safe-write.h: New file.
49669         * lib/safe-write.c: New file.
49670         * lib/full-read.h: New file.
49671         * lib/full-read.c: New file.
49672         * lib/full-write.h: Assume C89. Add comments.
49673         * lib/full-write.c: Include safe-write.h.
49674         (full_write): Rewritten to use safe_write.
49675         Suggested by Jim Meyering and Paul Eggert.
49676
49677 2002-11-21  Jim Meyering  <jim@meyering.net>
49678
49679         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
49680
49681         Merge in changes from the coreutils.
49682
49683         2002-09-25  Paul Eggert  <eggert@twinsun.com>
49684         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
49685         <stdint.h>.
49686         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
49687         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
49688         int.  Work more efficiently if X is the same width as uintmax_t.
49689         Do not compare X to -1, to avoid bogus compiler warning.
49690         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
49691         Don't assume that f_frsize and f_bsize are the same type.
49692
49693         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
49694         warning on FreeBSD.
49695
49696         * lib/makepath.c (make_path): Restore umask *before* creating the final
49697         component.
49698         (make_path): Minor reformatting.
49699
49700         * lib/xmalloc.c: Adjust to work with new autoconf macros,
49701         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
49702         HAVE_MALLOC/HAVE_REALLOC.
49703
49704         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
49705         dummy ones.  At least on GNU/Linux systems, `auto' means something
49706         else.
49707         From Michael Stone.
49708
49709 2002-11-21  Bruno Haible  <bruno@clisp.org>
49710
49711         Remove case insensitive option matching.
49712         * lib/argmatch.h (argcasematch): Remove declaration.
49713         (ARGCASEMATCH): Remove macro.
49714         (__xargmatch_internal): Remove case_sensitive argument.
49715         (XARGMATCH): Update.
49716         (XARGCASEMATCH): Remove macro.
49717         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
49718         case_sensitive argument.
49719         (argcasematch): Remove function.
49720         (__xargmatch_internal): Remove case_sensitive argument.
49721         (main): Use XARGMATCH instead of XARGCASEMATCH.
49722
49723         * lib/xmalloc.c: Change compile-time error message. Add comment about
49724         required autoconf version.
49725
49726 2002-11-20  Paul Eggert  <eggert@twinsun.com>
49727
49728         Merge argmatch cleanups from Bison.  Assume C89.
49729
49730         * lib/argmatch.c: Include config.h here, not in argmatch.h.
49731         Include stdlib.h, for EXIT_FAILURE.
49732         Always include <string.h>, since we assume C89.
49733         (EXIT_FAILURE): Remove pre-C89 bug workaround.
49734         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
49735         Include <stddef.h> instead, since it's all we need for size_t.
49736         (PARAMS): Remove.  All uses removed.
49737         (ARRAY_CARDINALITY): Do not bother to #undef.
49738         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
49739         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
49740         Remove unnecessary parentheses.
49741         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
49742         Insert necessary parentheses.
49743         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
49744         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
49745
49746 2002-11-19  Bruno Haible  <bruno@clisp.org>
49747
49748         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
49749         * lib/mbswidth.h: Include <stddef.h>, for size_t.
49750
49751         * lib/mbswidth.h (PARAMS): Remove macro.
49752         (mbswidth, mbsnwidth): Use ANSI C function declarations.
49753         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
49754
49755         * lib/gcd.h (PARAMS): Remove macro.
49756         (gcd): Use ANSI C function declarations.
49757         * lib/gcd.c (gcd): Likewise.
49758
49759 2002-11-15  Bruno Haible  <bruno@clisp.org>
49760
49761         * lib/strcspn.c: Include <stddef.h>.
49762         (strcspn): Use ANSI C function declaration. Change return type to
49763         size_t. Use NULL.
49764         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
49765         (strpbrk): Use NULL.
49766         * lib/strpbrk.h (PARAMS): Remove macro.
49767         (strpbrk): Use ANSI C function declaration.
49768         * lib/strstr.c: Don't include <sys/types.h>.
49769         * lib/strstr.h (PARAMS): Remove macro.
49770         (strstr): Use ANSI C function declarations.
49771
49772 2002-11-14  Karl Berry  <karl@gnu.org>
49773
49774         * config/mkinstalldirs: `do' on separate line, instead of
49775         `for var; do'.
49776
49777 2002-11-06  Bruno Haible  <bruno@clisp.org>
49778
49779         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
49780         * lib/gcd.c (gcd): Likewise.
49781
49782 2002-11-05  Bruno Haible  <bruno@clisp.org>
49783
49784         * lib/gcd.h: New file, from gettext-0.11.5.
49785         * lib/gcd.c: New file, from gettext-0.11.5.
49786
49787 2002-11-05  Bruno Haible  <bruno@clisp.org>
49788
49789         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49790         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49791         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49792         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49793
49794         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
49795         <libintl.h>.
49796         * lib/makepath.c: Include gettext.h instead of <locale.h> and
49797         <libintl.h>.
49798
49799         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
49800         * lib/human.c: Include gettext.h instead of <libintl.h>.
49801         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
49802         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
49803         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
49804         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
49805         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
49806         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
49807         (textdomain): Remove definition.
49808         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
49809
49810         * lib/long-options.c: Remove include of <libintl.h> and definition of
49811         _.
49812         * lib/same.c: Remove include of <libintl.h> and definition of _.
49813
49814 2002-11-04  Owen Taylor  <otaylor@redhat.com>
49815
49816         * lib/config.charset: A few additions for Solaris.
49817
49818 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
49819
49820         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
49821         * lib/localcharset.c (locale_charset): Declare as extern "C".
49822
49823 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
49824
49825         * lib/config.charset: msdos in uk_UA uses CP1125.
49826
49827 2002-11-04  Bruno Haible  <bruno@clisp.org>
49828
49829         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
49830         * lib/strcase.h: New file, from GNU gettext-0.11.5.
49831         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
49832         * lib/strstr.h: New file, from GNU gettext-0.11.5.
49833         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
49834
49835 2002-11-04  Bruno Haible  <bruno@clisp.org>
49836
49837         * lib/localcharset.c (locale_charset): Don't return an empty string.
49838
49839 2002-11-04  Bruno Haible  <bruno@clisp.org>
49840
49841         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
49842         aliases.
49843
49844 2002-11-04  Bruno Haible  <bruno@clisp.org>
49845
49846         * lib/config.charset: Update for newest glibc. Add canonical names
49847         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
49848
49849 2002-11-04  Bruno Haible  <bruno@clisp.org>
49850
49851         * lib/config.charset: Add support for NetBSD.
49852
49853 2002-11-04  Bruno Haible  <bruno@clisp.org>
49854
49855         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
49856
49857 2002-11-01  Bruno Haible  <bruno@clisp.org>
49858
49859         * configure.in: Add AC_CONFIG_AUX_DIR call.
49860         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
49861         test/Makefile.
49862         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
49863
49864 2002-09-28  Karl Berry  <karl@gnu.org>
49865
49866         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
49867         installed automake until the next release, since changes have been
49868         made.
49869
49870 2002-09-25  Karl Berry  <karl@gnu.org>
49871
49872         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
49873         * lib/getopt*: copy from libc/posix.
49874         * lib/gettext.h: copy from gettext.
49875         * lib/.cppi-disable: add strdup.c, gettext.h.
49876
49877 2002-09-25  Karl Berry  <karl@gnu.org>
49878
49879         * config/srclist.txt: enable gettext.h check.
49880         * config/config.{guess,sub}: update from prep.
49881         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
49882                 from automake 1.6.3.
49883         See srclist*.
49884
49885 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
49886
49887         * regex.c (PATFETCH): Remove the translating fetch.
49888         (PATFETCH_RAW): Rename to PATFETCH.
49889         (set_image_of_range): New fun.
49890         (SET_RANGE_TABLE_WORK_AREA): Use it.
49891         (regex_compile): Don't translate the pattern chars so eagerly.
49892         Only do it when inserting an `exactn' bytecode or when handling
49893         a char-range.
49894         (mutually_exclusive_p): Avoid empty statement.
49895
49896 2002-07-06  Jim Meyering  <meyering@lucent.com>
49897
49898         * m4/README: Don't mention Makefile.am.in.
49899         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
49900
49901 2002-07-01  Jim Meyering  <meyering@lucent.com>
49902
49903         * lib/c-stack.c: Include sys/time.h.
49904         From Volker Borchert.
49905
49906 2002-06-26  Paul Eggert  <eggert@twinsun.com>
49907
49908         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
49909
49910 2002-06-26  Paul Eggert  <eggert@twinsun.com>
49911
49912         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
49913         New macro.  Use it uniformly instead of
49914         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
49915         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
49916         reported by Vin Shelton.
49917
49918 2002-06-22  Paul Eggert  <eggert@twinsun.com>
49919
49920         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
49921         Do not assume SA_SIGINFO behavior.
49922         Bug reported by Jim Meyering on NetBSD 1.5.2.
49923
49924 2002-06-22  Jim Meyering  <meyering@lucent.com>
49925
49926         * m4/c-stack.m4: New file, from diffutils-2.8.2.
49927         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
49928
49929         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
49930         now that configure.ac uses AC_GNU_SOURCE.
49931         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
49932         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
49933
49934         Update to latest tools.  Suggestions from Paul Eggert.
49935         * m4/stdbool.m4: New file, from diffutils-2.8.2.
49936         * m4/gnu-source.m4: Update from diffutils-2.8.2.
49937         * m4/fnmatch.m4: Likewise.
49938         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
49939         to AC_HEADER_STDBOOL
49940
49941 2002-06-22  Jim Meyering  <meyering@lucent.com>
49942
49943         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
49944         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
49945
49946 2002-06-22  Jim Meyering  <meyering@lucent.com>
49947
49948         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
49949
49950         * lib/exitfail.c, exitfail.h: Likewise.
49951         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
49952
49953         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
49954         of fnmatch.h.
49955         (EXTRA_DIST): Add fnmatch_loop.c.
49956         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
49957
49958         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
49959         * lib/fnmatch.c: Update from diffutils-2.8.2.
49960         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
49961         * lib/fnmatch.h: Remove file.
49962
49963 2002-06-21  Jim Meyering  <meyering@lucent.com>
49964
49965         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
49966         * m4/mbrtowc.m4: Likewise.
49967
49968         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
49969         * m4/mbswidth.m4: Reflect name change:
49970         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
49971         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
49972
49973         * m4/lib-link.m4: Update from gettext-0.11.2.
49974         * m4/gettext.m4: Likewise.
49975
49976         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
49977         From Alfred M. Szmidt.
49978
49979 2002-06-18  Paul Eggert  <eggert@twinsun.com>
49980
49981         * lib/file-type.h: Report an error if neither S_ISREG nor
49982         S_IFREG is defined, instead of using a test specific to glibc
49983         2.2.  This should be safe, since POSIX requires S_ISREG and
49984         Unix Version 7 had S_IFREG.  We don't need to check for
49985         <sys/types.h> since we don't use any symbols that it defines.
49986
49987 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
49988
49989         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
49990         $@-t, so that each temporary file name is unique and valid in the first
49991         8 characters, for operation under DOS.
49992
49993 2002-06-15  Paul Eggert  <eggert@twinsun.com>
49994
49995         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
49996
49997 2002-06-15  Jim Meyering  <meyering@lucent.com>
49998
49999         Work even with DJGPP 2.03, which lacks support for symlinks.
50000         From Richard Dawe.
50001         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
50002         is defined.
50003         * lib/lchown.c (S_ISLNK): Likewise.
50004
50005 2002-06-15  Jim Meyering  <meyering@lucent.com>
50006
50007         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
50008         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
50009         have been included before this file.
50010
50011 2002-06-14  Jim Meyering  <meyering@lucent.com>
50012
50013         * lib/file-type.h: Use the version from diffutils-2.8.2.
50014         * lib/file-type.c: Likewise.
50015
50016 2002-06-07  Jim Meyering  <meyering@lucent.com>
50017
50018         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
50019         They're needed at least for NetBSD 1.5.2.
50020         ($statxfs_includes): Include those same headers.
50021         ($statxfs_includes): Include sys/vfs.h if available.
50022         ($statxfs_includes): Likewise for sys/statvfs.h.
50023         Check for the following members in both structs statfs and statvfs:
50024         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
50025
50026 2002-06-01  Jim Meyering  <meyering@lucent.com>
50027
50028         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
50029         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
50030
50031 2002-05-28  Jim Meyering  <meyering@lucent.com>
50032
50033         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
50034         Reported by Volker Borchert.
50035
50036 2002-05-27  Jim Meyering  <meyering@lucent.com>
50037
50038         Fix a problem seen only on nonconforming systems whereby ls.c's
50039         use of localtime, and then of gettimeofday would cause trouble:
50040         the localtime call used to initialize rpl_gettimeofday's save
50041         mechanism would clobber ls's current local time information so
50042         that in any long listing the first file would always be listed
50043         with date 1970-01-01.  Analysis by Volker Borchert.
50044
50045         * lib/gettimeofday.c (localtime): Undefine.
50046         (rpl_localtime): New function.
50047
50048 2002-05-27  Jim Meyering  <meyering@lucent.com>
50049
50050         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
50051         localtime.
50052
50053         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
50054         use the replacement function; it wouldn't resolve at link time.
50055         Reported by Volker Borchert.
50056
50057 2002-05-22  Jim Meyering  <meyering@lucent.com>
50058
50059         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
50060         file-type.h.
50061         * lib/file-type.h: New file.
50062         * lib/file-type.c (file_type): New file/function.  Extracted from
50063         diffutils.
50064
50065 2002-04-30  Jim Meyering  <meyering@lucent.com>
50066
50067         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
50068
50069 2002-04-29  Paul Eggert  <eggert@twinsun.com>
50070
50071         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
50072
50073 2002-04-29  Paul Eggert  <eggert@twinsun.com>
50074
50075         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
50076         Do not check for alloca.h (no longer used) or stdbool.h (was never
50077         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
50078
50079 2002-04-29  Paul Eggert  <eggert@twinsun.com>
50080
50081         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
50082
50083 2002-04-29  Jim Meyering  <meyering@lucent.com>
50084
50085         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
50086         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
50087         Use AC_FUNC_STRNLEN here instead.
50088
50089         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
50090         With autoconf-2.53a, it's part of AC_PROG_CC.
50091
50092 2002-04-28  Paul Eggert  <eggert@twinsun.com>
50093
50094         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
50095         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
50096
50097 2002-04-28  Paul Eggert  <eggert@twinsun.com>
50098
50099         * lib/sig2str.h, lib/sig2str.c: New files.
50100         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
50101
50102 2002-04-28  Paul Eggert  <eggert@twinsun.com>
50103
50104         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
50105         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
50106         of 127, since 64 is the largest conceivable number for ancient
50107         nonstandard hosts.
50108         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
50109
50110 2002-04-28  Jim Meyering  <meyering@lucent.com>
50111
50112         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
50113
50114 2002-04-24  Jim Meyering  <meyering@lucent.com>
50115
50116         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
50117         (jm_PREREQ): Use it.
50118
50119         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
50120         mach/mach.h fcntl.h.
50121         Check for this function: setlocale.
50122
50123 2002-04-24  Jim Meyering  <meyering@lucent.com>
50124
50125         * lib/gettext.h: New file, from Gettext.
50126         * lib/Makefile.am (INCLUDES): Remove -I../intl.
50127         (libfetish_a_SOURCES): Add gettext.h.
50128
50129 2002-04-16  Jim Meyering  <meyering@lucent.com>
50130
50131         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
50132         ut_pid, ut_id, ut_exit.
50133
50134 2002-04-16  Jim Meyering  <meyering@lucent.com>
50135
50136         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
50137         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
50138         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
50139
50140 2002-04-12  Jim Meyering  <meyering@lucent.com>
50141
50142         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
50143         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
50144         existence of the getmntinfo function.  Needed for Darwin 5.3.
50145
50146         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
50147         This is necessary at least on Darwin 5.3.
50148
50149         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
50150         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
50151         strnlen.o in the library, and that makes some versions of ranlib
50152         object.
50153
50154 2002-04-12  Jim Meyering  <meyering@lucent.com>
50155
50156         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
50157
50158 2002-04-09  Jim Meyering  <meyering@lucent.com>
50159
50160         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
50161         to be more precise.  Rather than saying we're checking whether the
50162         function `works', say what we're testing.
50163         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
50164         Reported by Bruno Haible.
50165
50166 2002-03-10  Jim Meyering  <meyering@lucent.com>
50167
50168         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
50169         Suggestion from Santiago Vila.
50170
50171 2002-03-08  Jim Meyering  <meyering@lucent.com>
50172
50173         * lib/rename.c: Mention that this wrapper is needed also on
50174         mips-dec-ultrix4.4 systems.
50175
50176 2002-03-02  Jim Meyering  <meyering@lucent.com>
50177
50178         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
50179         not HAVE_CLOCK_SETTIME.
50180
50181 2002-02-27  Paul Eggert  <eggert@twinsun.com>
50182
50183         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
50184         Check for clock_settime.
50185
50186 2002-02-27  Paul Eggert  <eggert@twinsun.com>
50187
50188         * lib/nanosleep.h: Rename to....
50189         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
50190
50191         * lib/gettime.c: New file.
50192         * lib/settime.c: New file.
50193         * lib/stime.c: Remove.
50194
50195         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
50196         timespec.h.  Remove nanosleep.h.
50197
50198 2002-02-25  Paul Eggert  <eggert@twinsun.com>
50199
50200         * m4/acl.m4: New file.
50201         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
50202         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
50203
50204 2002-02-25  Paul Eggert  <eggert@twinsun.com>
50205
50206         * lib/acl.c, lib/acl.h: New files.
50207         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
50208
50209 2002-02-24  Jim Meyering  <meyering@lucent.com>
50210
50211         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
50212         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
50213         cause trouble.  Reported by Nelson Beebe.
50214
50215 2002-02-23  Paul Eggert  <eggert@twinsun.com>
50216
50217         * lib/path-concat.c (xpath_concat): Reorder code to pacify
50218         compilers that don't know that xalloc_die never returns.
50219
50220 2002-02-20  Jim Meyering  <meyering@lucent.com>
50221
50222         * lib/getdate.c: Regenerate using bison-1.33.
50223
50224 2002-02-17  Jim Meyering  <meyering@lucent.com>
50225
50226         * config/config.guess (main): Don't use `head -1'; it's no longer
50227         portable. Use `sed 1q' instead.
50228
50229 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
50230
50231         * m4/codeset.m4: Upgrade to gettext-0.11.
50232         * m4/gettext.m4: Upgrade to gettext-0.11.
50233         * m4/glibc21.m4: Upgrade to gettext-0.11.
50234         * m4/iconv.m4: Upgrade to gettext-0.11.
50235         * m4/isc-posix.m4: Upgrade to gettext-0.11.
50236         * m4/lcmessage.m4: Upgrade to gettext-0.11.
50237         * m4/lib-ld.m4: New file, from gettext-0.11.
50238         * m4/lib-link.m4: New file, from gettext-0.11.
50239         * m4/lib-prefix.m4: New file, from gettext-0.11.
50240         * m4/progtest.m4: Upgrade to gettext-0.11.
50241
50242 2002-02-15  Paul Eggert  <eggert@twinsun.com>
50243
50244         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
50245         (jm_PREREQ): Use it.
50246
50247 2002-02-15  Paul Eggert  <eggert@twinsun.com>
50248
50249         * lib/posixver.c, lib/posixver.h: New files.
50250         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
50251
50252 2002-02-02  Paul Eggert  <eggert@twinsun.com>
50253             Bruno Haible  <bruno@clisp.org>
50254
50255         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
50256         (fwrite_success_callback): New declaration.
50257         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
50258         print_unicode_char. Call failure callback instead of error.
50259         (fwrite_success_callback): New function.
50260         (exit_failure_callback): New function.
50261         (fallback_failure_callback): New function.
50262         (print_unicode_char): Call unicode_to_mb.
50263
50264 2002-01-26  Jim Meyering  <meyering@lucent.com>
50265
50266         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
50267         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
50268
50269 2002-01-26  Jim Meyering  <meyering@lucent.com>
50270
50271         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
50272
50273 2002-01-22  Paul Eggert  <eggert@twinsun.com>
50274
50275         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
50276
50277 2002-01-22  Jim Meyering  <meyering@lucent.com>
50278
50279         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
50280         Otherwise, some versions of automake would omit the rule that makes
50281         Makefile from Makefile.in.
50282
50283 2002-01-21  Paul Eggert  <eggert@twinsun.com>
50284
50285         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
50286         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
50287         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
50288         (memcoll): Set errno to zero if there is no error.
50289
50290         * lib/quotearg.c (quotearg_buffer_restyled):
50291         Fix bug with quoting buffers containing NUL when backslashing escapes.
50292         This bug was exposed by the other changes in this patch.
50293         (quotearg_n_options): New arg ARGSIZE.
50294         All callers changed.
50295         (quoting_options_from_style): New function.
50296         (quotearg_n_style): Use it.
50297         (quotearg_n_style_mem): New function.
50298
50299         * lib/quotearg.h (quotearg_n_style_mem): New function.
50300
50301 2002-01-19  Jim Meyering  <meyering@lucent.com>
50302
50303         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
50304         Remove useless quotes: DF_PROG="df".
50305         * m4/strnlen.m4: New file.
50306
50307 2002-01-16  Paul Eggert  <eggert@twinsun.com>
50308
50309         * lib/backupfile.c (ISDIGIT): Comment fix.
50310         * lib/getdate.y (ISDIGIT): Likewise.
50311         * lib/posixtm.c (ISDIGIT, year): Likewise.
50312         * lib/strverscmp.c (ISDIGIT): Likewise.
50313         * lib/userspec.c (ISDIGIT): Likewise.
50314
50315 2002-01-16  Jim Meyering  <meyering@lucent.com>
50316
50317         * lib/getdate.y: Add three semicolons, each just before a closing
50318         brace. Bison (as of version 1.31) no longer papers over that mistake.
50319
50320 2002-01-05  Jim Meyering  <meyering@lucent.com>
50321
50322         * lib/version-etc.c (version_etc_copyright): Update copyright year.
50323
50324 2001-12-19  Paul Eggert  <eggert@twinsun.com>
50325
50326         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
50327         not silently exit merely because the output buffer happens to
50328         have nothing pending.
50329
50330 2001-12-18  Paul Eggert  <eggert@twinsun.com>
50331
50332         See the big note in ../ChangeLog.
50333         * lib/human.c (suffixes): Prefer K to k for 1024.
50334         (generate_suffix_backwards): New function.
50335         (human_readable_inexact): Use it.
50336         * lib/xstrtol.c (__xstrtol): If there is no number but there
50337         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
50338         Accept 'K' as well as 'k'.
50339
50340 2001-12-15  Jim Meyering  <meyering@lucent.com>
50341
50342         * lib/regex.h (__restrict_arr): Update from libc.
50343
50344         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
50345         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
50346         (STREQ): Define.
50347
50348 2001-12-14  Jim Meyering  <meyering@lucent.com>
50349
50350         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
50351         Suggestion from Bruno Haible.
50352
50353 2001-12-10  Jim Meyering  <meyering@lucent.com>
50354
50355         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
50356         xrealloc, Instead, include "xalloc.h".
50357         (initbuffer): Don't cast xmalloc return value to char*.
50358         (readline): Reword comment.
50359         Don't cast xrealloc return value to char*
50360         Return NULL, not 0.
50361
50362 2001-12-09  Jim Meyering  <meyering@lucent.com>
50363
50364         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
50365         about `signed and unsigned type in conditional expression'.
50366         * lib/posixtm.c (posix_time_parse): Likewise.
50367
50368         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
50369
50370         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
50371         to avoid a pedantic warning.
50372
50373         * lib/getstr.c: Don't include assert.h.
50374         (getstr): Remove warning-evoking assertions.
50375         Return -1 if offset parameter is out of bounds.
50376         Change the type of a local from int to size_t.
50377
50378         * lib/strftime.c (my_strftime_localtime_r): Include this function
50379         definition in the `#if ! HAVE_TM_GMTOFF' block.
50380
50381         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
50382         Include xalloc.h instead.
50383
50384 2001-12-02  Jim Meyering  <meyering@lucent.com>
50385
50386         * lib/tempname.c: Don't declare getenv, thus reverting the change of
50387         2001-11-18.  It's no longer necessary, now that stdlib.h is always
50388         included.
50389
50390         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
50391         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
50392
50393 2001-11-30  Akim Demaille  <akim@epita.fr>
50394
50395         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
50396         before being defined.
50397
50398 2001-11-27  Paul Eggert  <eggert@twinsun.com>
50399
50400         * lib/quotearg.h (quotearg_n, quotearg_n_style):
50401         First arg is int, not unsigned.
50402         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
50403         (SIZE_MAX, UINT_MAX): New macros.
50404         (quotearg_n_options): Abort if N is negative.
50405         Avoid overflow check on hosts where size_t is 64 bits and int
50406         is 32 bits, as overflow is impossible there.
50407         Fix off-by-one typo that caused unnecessary reallocation.
50408
50409 2001-11-27  Jim Meyering  <meyering@lucent.com>
50410
50411         * lib/tempname.c: Merge with version from libc.
50412         * lib/regex.c: Likewise.
50413
50414         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
50415         systems for which STDC_HEADERS is 0, it was not included, resulting in
50416         a warning about an integer-to-pointer conversion problem with getenv.
50417         Reported by Volker Borchert.
50418
50419 2001-11-26  Jim Meyering  <meyering@lucent.com>
50420
50421         * lib/gtod.h: Remove file.
50422         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
50423         * lib/gettimeofday.c: Don't include gtod.h.
50424         (GTOD_init): Remove function.
50425         (rpl_gettimeofday): Do its job here instead, rather than aborting.
50426         Suggestion from Volker Borchert.
50427
50428 2001-11-23  Jim Meyering  <meyering@lucent.com>
50429
50430         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
50431         it.
50432         * lib/hash.c (struct hash_table): Define it here instead.
50433
50434 2001-11-22  Jim Meyering  <meyering@lucent.com>
50435
50436         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
50437
50438 2001-11-20  Jim Meyering  <meyering@lucent.com>
50439
50440         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
50441         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
50442
50443 2001-11-19  Jim Meyering  <meyering@lucent.com>
50444
50445         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
50446         directory.  Use "conftestXXXXXX" as the template.
50447         Suggestion from Paul Eggert.
50448
50449         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
50450         immediately, so the test doesn't mistakenly hit the max-open-files
50451         limit.
50452
50453 2001-11-18  Paul Eggert  <eggert@twinsun.com>
50454
50455         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
50456         (TEMPORARIES): New macro.
50457         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
50458         removes an artificial limitation (e.g. HP-UX 10.20, where
50459         TMP_MAX is 17576).
50460
50461 2001-11-18  Jim Meyering  <meyering@lucent.com>
50462
50463         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
50464
50465 2001-11-18  Jim Meyering  <meyering@lucent.com>
50466
50467         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
50468         on SunOS 4.
50469
50470         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
50471         files will be created before anything else.
50472
50473 2001-11-17  Paul Eggert  <eggert@twinsun.com>
50474
50475         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
50476         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
50477
50478 2001-11-17  Jim Meyering  <meyering@lucent.com>
50479
50480         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
50481         Prompted by a report from Bob Proulx.
50482
50483         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
50484         Instead, require UTILS_FUNC_MKSTEMP.
50485
50486 2001-11-17  Jim Meyering  <meyering@lucent.com>
50487
50488         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
50489         Now, that's done as part of AC_FUNC_STRTOD.
50490
50491 2001-11-17  Jim Meyering  <meyering@lucent.com>
50492
50493         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
50494         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
50495         rather than group writable.  Patch by Juan F. Codagnone.
50496
50497         * lib/readtokens.c: Remove explicit declarations of xmalloc and
50498         xrealloc, Instead, include "xalloc.h".
50499
50500         * lib/mountlist.c: Include unlocked-io.h after all system headers.
50501         Remove explicit declarations of xmalloc, xrealloc,
50502         and xstrdup.  Instead, include "xalloc.h".
50503
50504         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
50505         unlocked-io.h.
50506         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
50507         Likewise.
50508         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
50509
50510         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
50511         Reported by Padraig Brady.
50512
50513         * lib/mkstemp.c: #undef mkstemp.
50514         Include config.h.
50515         (rpl_mkstemp): Rename from mkstemp.
50516         Protoize.
50517
50518 2001-11-16  Jim Meyering  <meyering@lucent.com>
50519
50520         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
50521         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
50522         determine the amount of total physical memory, use pstat_getstatic.
50523         HPUX-11 doesn't define _SC_PHYS_PAGES.
50524         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
50525         If sysconf couldn't be used to determine the amount of available
50526         physical memory, use both pstat_getstatic and pstat_getdynamic.
50527         Based on a patch from Bob Proulx.
50528
50529 2001-11-10  Jim Meyering  <meyering@lucent.com>
50530
50531         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
50532         (jm_PREREQ): Use it.
50533
50534 2001-11-09  Jim Meyering  <meyering@lucent.com>
50535
50536         * m4/jm-macros.m4: Require autoconf-2.52f.
50537         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
50538         Use these AC_-prefixed names, not the AM_-prefixed ones.
50539
50540         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
50541
50542 2001-11-05  Jim Meyering  <meyering@lucent.com>
50543
50544         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
50545
50546 2001-11-04  Jim Meyering  <meyering@lucent.com>
50547
50548         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
50549         $DEFS.
50550
50551 2001-11-03  Jim Meyering  <meyering@lucent.com>
50552
50553         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
50554         of AC_DEFUN.
50555
50556         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
50557         know the name of the variable in the macro definition.
50558
50559 2001-11-03  Jim Meyering  <meyering@lucent.com>
50560
50561         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
50562         in argmatch_to_argument call.
50563
50564         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
50565         argument.
50566
50567         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
50568         e.g., a fault due to an attempt to free a NULL pointer.
50569
50570 2001-11-01  Jim Meyering  <meyering@lucent.com>
50571
50572         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
50573         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
50574
50575 2001-11-01  Jim Meyering  <meyering@lucent.com>
50576
50577         * lib/dirfd.c, lib/dirfd.h: New files.
50578         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
50579
50580         * lib/hash.c (hash_print) [TESTING]: Clean up.
50581
50582 2001-10-22  Paul Eggert  <eggert@twinsun.com>
50583
50584         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
50585         to avoid a warning if -Wall.
50586
50587 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
50588
50589         * README: New file
50590         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
50591         (per RMS's instructions, this is now the canonical source)
50592         * lgpl/, gpl/: New directories.
50593
50594 2001-10-21  Paul Eggert  <eggert@twinsun.com>
50595
50596         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
50597
50598 2001-10-21  Jim Meyering  <meyering@lucent.com>
50599
50600         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
50601         this code would end up calling gettext even in packages built
50602         with --disable-nls.
50603         * lib/getopt.c (_): Likewise.
50604         * lib/regex.c (_): Likewise.
50605
50606 2001-10-20  Paul Eggert  <eggert@twinsun.com>
50607
50608         * m4/error.m4 (jm_PREREQ_ERROR):
50609         Do not invoke AC_CHECK_FUNCS with strerror_r, as
50610         AC_FUNC_STRERROR_R does that.
50611         Check for strerror declaration.
50612
50613         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
50614         are supposed to have them these days.
50615         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
50616         Merge changes from latest Autoconf CVS.
50617         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
50618         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
50619         POSIX decided to standardize on the int flavor of strerror_r.
50620
50621 2001-10-20  Paul Eggert  <eggert@twinsun.com>
50622
50623         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
50624         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
50625         Use strerror_r that is only a macro, even if it is not a function.
50626         (strerror): Check for HAVE_DECL_STRERROR before declaring.
50627         (private_strerror): Use prototypes, not old-style function definition.
50628         (print_errno_message): New function.
50629         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
50630         char*-flavored one.
50631         (error_tail, error, error_at_line): Use it.
50632
50633 2001-10-11  Jim Meyering  <meyering@lucent.com>
50634
50635         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
50636         and quote_n (1, ... to avoid clobbering a buffer.
50637
50638 2001-10-05  Jim Meyering  <meyering@lucent.com>
50639
50640         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
50641         hash-pjw.h.
50642         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
50643         * lib/hash-pjw.h: New file.
50644
50645 2001-09-30  Jim Meyering  <meyering@lucent.com>
50646
50647         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
50648         `struct fsstat' has the `f_fstypename' member.
50649         Use that to define FS_TYPE, which is now used to make
50650         the getfsstat link test tighter.
50651
50652 2001-09-30  Jim Meyering  <meyering@lucent.com>
50653
50654         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
50655         Include <sys/ucred.h>, for Apple Darwin.
50656         Include sys/mount.h and sys/fs_types.h only if available.
50657         (FS_TYPE): Define.
50658         (read_filesystem_list): Use FS_TYPE.
50659
50660 2001-09-29  Paul Eggert  <eggert@twinsun.com>
50661
50662         * lib/exclude.c (excluded_filename): 0 -> false, since it's
50663         a boolean context.
50664
50665 2001-09-29  Jim Meyering  <meyering@lucent.com>
50666
50667         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
50668         [one-argument getmntent function]): Include stdio.h before mntent.h.
50669         SunOS 4.1.x needs it for the declaration of `FILE'.
50670         Patch by Volker Borchert.
50671
50672         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
50673         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
50674         sys/fs_types.h, and make the link-test for getfsstat guard #include
50675         directives with appropriate #if HAVE_*_H tests so that we can
50676         detect getfsstat on Apple Darwin1.3.7 systems.
50677         Reported by Nelson Beebe.
50678         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
50679
50680 2001-09-28  Paul Eggert  <eggert@twinsun.com>
50681
50682         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
50683         #defines strtoimax.  Also treat the other strto* functions
50684         like strtoimax.
50685
50686         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
50687         Check for strtoul and strtoumax,
50688         as those declarations are made even in the signed case.
50689         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
50690         Likewise, for strtol and strtoimax.
50691
50692 2001-09-28  Paul Eggert  <eggert@twinsun.com>
50693
50694         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
50695         #defines strtoimax.  Also treat the other strto* functions
50696         like strtoimax.
50697
50698         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
50699         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
50700         (strtoimax, strtoumax): Do not declare if already defined as a macro.
50701
50702 2001-09-26  Jim Meyering  <meyering@lucent.com>
50703
50704         Most macros in unlocked-io.h had the wrong number of arguments.
50705         * lib/gen-uio: New script.
50706         (USE_UNLOCKED_IO): Define to 1 if not already defined.
50707         * lib/unlocked-io.hin: Remove file.
50708         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
50709         rather than trying to embed it here.
50710         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
50711         Reported by Padraig Brady.
50712
50713 2001-09-25  Volker Borchert  <bt@teknon.de>
50714
50715         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
50716         `result'.
50717
50718 2001-09-24  Jim Meyering  <meyering@lucent.com>
50719
50720         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
50721
50722 2001-09-23  Jim Meyering  <meyering@lucent.com>
50723
50724         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
50725         instead of the mere test for existence of mntent.h.  The latter
50726         would get a false-positive on AIX 3.4 systems.
50727         In the outer getmntent if-block, don't die if neither of the getmntent
50728         tests succeeds.  Instead, just fall through and continue with the
50729         remaining tests.
50730
50731 2001-09-23  Jim Meyering  <meyering@lucent.com>
50732
50733         * lib/mountlist.c: Remove useless parentheses in #if directives.
50734         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
50735         the deprecated MOUNTED symbol is no longer defined in mntent.h.
50736
50737 2001-09-22  Jim Meyering  <meyering@lucent.com>
50738
50739         * m4/gettext.m4: New file.  From gettext.
50740         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
50741         * m4/progtest.m4: Likewise
50742         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
50743         * m4/glibc21.m4: Likewise.
50744
50745         * m4/libintl.m4: Remove.  No longer used.
50746
50747 2001-09-22  Jim Meyering  <meyering@lucent.com>
50748
50749         * lib/localcharset.c: Update from latest gettext.
50750         * lib/config.charset: Likewise.
50751
50752 2001-09-20  Jim Meyering  <meyering@lucent.com>
50753
50754         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
50755         strtoimax.
50756         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
50757         strtoumax.
50758
50759 2001-09-20  Jim Meyering  <meyering@lucent.com>
50760
50761         * lib/xstrtol.c (strtoimax): Guard declaration with
50762         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
50763         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
50764         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
50765         (strtoumax): Likewise, for completeness (it wasn't necessary).
50766
50767 2001-09-17  Paul Eggert  <eggert@twinsun.com>
50768
50769         * lib/strtoimax.c (HAVE_LONG_LONG):
50770         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
50771         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
50772         to work around bug in IBM C compiler.
50773
50774 2001-09-17  Jim Meyering  <meyering@lucent.com>
50775
50776         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
50777         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
50778         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
50779         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
50780         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
50781         whenever the right hand side need not be expanded by the shell.
50782
50783 2001-09-16  Paul Eggert  <eggert@twinsun.com>
50784
50785         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
50786         library.  It's not correct, as some older glibcs are buggy.
50787         fnmatch wasn't fixed until glibc 2.2.
50788
50789         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
50790         special shell magic here.
50791
50792 2001-09-16  Jim Meyering  <meyering@lucent.com>
50793
50794         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
50795         * m4/jm-macros.m4: Require it.
50796
50797 2001-09-16  Jim Meyering  <meyering@lucent.com>
50798
50799         * lib/mkdir.c: New file.
50800
50801 2001-09-15  Jim Meyering  <meyering@lucent.com>
50802
50803         * m4/jm-macros.m4: Check for help2man.
50804
50805 2001-09-11  Jim Meyering  <meyering@lucent.com>
50806
50807         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
50808         The body, by Paul Eggert, was moved here from configure.in.
50809         * m4/jm-macros.m4: Require UTILS_HOST_OS.
50810
50811 2001-09-04  Paul Eggert  <eggert@twinsun.com>
50812
50813         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
50814         (jm_PREREQ): Use it.
50815
50816 2001-09-04  Paul Eggert  <eggert@twinsun.com>
50817
50818         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
50819         Use ssize_t, not int, to store result of readlink.
50820         Check for ssize_t overflow as well as size_t overflow,
50821         as POSIX says the result of readlink is implementation-defined
50822         when ssize_t overflows.
50823         Remove unnecessary cast to char*.
50824         Use free+malloc instead of realloc, as the storage doesn't need
50825         to be preserved and it's clearer and can be more efficient that way.
50826         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
50827         * lib/xreadlink.h (xreadlink): Update prototype.
50828
50829 2001-09-04  Paul Eggert  <eggert@twinsun.com>
50830
50831         * lib/xgetcwd.c: Revert some of the previous change; intead,
50832         fix the HAVE_GETCWD_NULL code to behave more like the
50833         !HAVE_GETCWD_NULL code used to.
50834
50835         Include "xalloc.h".
50836         (xgetcwd): Do not return NULL when memory is exhausted; instead,
50837         invoke xalloc_die.
50838
50839 2001-09-03  Paul Eggert  <eggert@twinsun.com>
50840
50841         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
50842         sys/param.h, as pathmax.h includes them.
50843
50844 2001-09-03  Paul Eggert  <eggert@twinsun.com>
50845
50846         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
50847         (jm_PREREQ_XGETCWD): New macro.
50848
50849         * m4/getcwd.m4: New file.
50850
50851 2001-09-03  Paul Eggert  <eggert@twinsun.com>
50852
50853         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
50854         like the HAVE_GETCWD_NULL code.
50855         Include pathmax.h if not HAVE_GETCWD.
50856         Do not include xalloc.h.
50857         (INITIAL_BUFFER_SIZE): New symbol.
50858         Do not use xmalloc / xrealloc, since the caller is responsible for
50859         handling errors.  Preserve errno around `free' during failure.
50860         Do not overrun buffer when using getwd.
50861
50862 2001-09-03  Paul Eggert  <eggert@twinsun.com>
50863
50864         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
50865         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
50866         getcwd (NULL, 0).
50867
50868 2001-09-03  Paul Eggert  <eggert@twinsun.com>
50869
50870         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
50871         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
50872         spotted by Jim Meyering.
50873
50874 2001-09-03  Jim Meyering  <meyering@lucent.com>
50875
50876         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
50877         failure.
50878
50879 2001-09-02  Jim Meyering  <meyering@lucent.com>
50880
50881         * lib/error.c: Update from GNU libc.
50882
50883 2001-09-01  Jim Meyering  <meyering@lucent.com>
50884
50885         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
50886         Used by df.
50887
50888 2001-09-01  Jim Meyering  <meyering@lucent.com>
50889
50890         * lib/xreadlink.c: New file.
50891         * lib/xreadlink.h: New file.
50892         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
50893         xreadlink.h.
50894
50895         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
50896         doesn't conflict with sparc Solaris 7's definition in
50897         /usr/include/sys/int_types.h.
50898
50899         * lib/exclude.c: Use `""', not `<>' to #include non-system header
50900         files.
50901         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
50902         and strncasecmp as r-values.  Unixware didn't have declarations.
50903
50904 2001-08-31  Paul Eggert  <eggert@twinsun.com>
50905
50906         * lib/xstrtol.h: Add copyright notice.
50907         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
50908         LONGINT_INVALID_SUFFIX_CHAR.
50909
50910 2001-08-31  Paul Eggert  <eggert@twinsun.com>
50911
50912         * lib/xstrtol.c (strtoimax): New decl.
50913
50914 2001-08-31  Paul Eggert  <eggert@twinsun.com>
50915
50916         * lib/xgetcwd.c: Don't include pathmax.h.
50917         Include stdlib.h and unistd.h if available.
50918         Include xalloc.h.
50919         (xmalloc, xstrdup, free): Remove decls.
50920         (xgetcwd): Don't assume sizes fit in unsigned.
50921         Check for overflow when computing sizes.
50922         Simplify reallocation code.
50923
50924 2001-08-31  Paul Eggert  <eggert@twinsun.com>
50925
50926         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
50927         a directory's st_size can have an arbitrary value, so the old
50928         usage could waste an arbitrary amount of memory.  All uses
50929         changed.
50930         * lib/savedir.h: Update prototype.
50931
50932 2001-08-31  Paul Eggert  <eggert@twinsun.com>
50933
50934         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
50935
50936         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
50937         old strtoimax.c.
50938
50939         Also, make the following further changes to make this file's
50940         configuration more similar to that of strtol.c:
50941         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
50942         (strtoumax, uintmax_t, strtoull, strtol): Remove.
50943         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
50944         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
50945         changed to signed values.
50946
50947         And make the following changes as well:
50948         Fix copyright notice, as 1999 was missing.
50949         (verify): New macro.
50950         (strtoimax): Check sizes at compile-time, not run-time.
50951         Prefer strtol to strtoll if both work.
50952         (main): Remove; it was not that useful and was a pain to maintain.
50953
50954         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
50955
50956 2001-08-31  Jim Meyering  <meyering@lucent.com>
50957
50958         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
50959         Use an initial, malloc'd, buffer of length 128 rather than
50960         a statically allocated one of length 1024.
50961
50962 2001-08-30  Paul Eggert  <eggert@twinsun.com>
50963
50964         Simplify code, partly by assuming autoconf 2.52 semantics.
50965
50966         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
50967
50968         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
50969         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
50970         All uses removed.
50971         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
50972         Move AC_REQUIRE to next-to-top level, to avoid confusion.
50973         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
50974         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
50975         jm_AC_HEADER_INTTYPES_H.
50976         * m4/jm-macros.m4 (jm_MACROS): Likewise.
50977
50978         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
50979
50980         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
50981         Quote first arg of AC_DEFUN.
50982         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
50983         since they are needed to parse the include file even if we need
50984         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
50985         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
50986         but with opposite signedness.
50987
50988 2001-08-30  Paul Eggert  <eggert@twinsun.com>
50989
50990         Merge 'exclude' changes from tar 1.13.22.
50991         This fixes one or two unlikely storage allocation overflow bugs,
50992         but doesn't change user-visible behavior otherwise.
50993
50994 2001-08-30  Paul Eggert  <eggert@twinsun.com>
50995
50996         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
50997         (jm_PREREQ_EXCLUDE): New macro.
50998
50999 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51000
51001         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
51002         tm to be declared.
51003
51004 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51005
51006         * lib/hash.c: Remove '2001' from copyright notice.
51007
51008 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51009
51010         * lib/full-write.h: New file.
51011         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
51012         * lib/full-write.c: Correct credits, as cccp.c no longer
51013         exists and anyway it was so heavily changed from the old cccp
51014         code as to be unrecognizable.  Include full-write.h.
51015         (full_write) Return size_t, with short writes meaning failure.
51016         All callers changed.  This fixes a bug with large buffers
51017         on 64-bit hosts.
51018         * lib/utime.c: Include full-write.h.
51019
51020 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51021
51022         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
51023         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
51024         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
51025         Include if available.
51026         (<xalloc.h>): Include
51027         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
51028         (verify): New macro.  Use it to verify that EXCLUDE macros do not
51029         collide with FNM macros.
51030         (struct patopts): New struct.
51031         (struct exclude): Use it, as exclude patterns now come with options.
51032         (new_exclude): Support above changes.
51033         (new_exclude, add_exclude_file):
51034         Initial size must now be a power of two to simplify overflow checking.
51035         (free_exclude, fnmatch_no_wildcards): New function.
51036         (excluded_filename): No longer requires options arg, as the options
51037         are determined by add_exclude.  Now returns bool, not int.
51038         (excluded_filename, add_exclude):
51039         Add support for the fancy new exclusion options.
51040         (add_exclude, add_exclude_file): Now takes int options arg.
51041         Check for arithmetic overflow when computing sizes.
51042         (add_exclude_file): xrealloc might modify errno, so don't
51043         realloc until after errno might be used.
51044
51045         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
51046         New macros.
51047         (free_exclude): New decl.
51048         (add_exclude, add_exclude_file): Now takes int options arg.
51049         (excluded_filename): No longer requires options arg, as the options
51050         are determined by add_exclude.  Now returns bool, not int.
51051
51052 2001-08-30  Paul Eggert  <eggert@twinsun.com>
51053
51054         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
51055
51056 2001-08-27  Jim Meyering  <meyering@lucent.com>
51057
51058         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
51059
51060         * lib/version-etc.c (N_): Remove definition.
51061         Revert most of last change.
51062         Instead, simply don't mark the `Copyright...' string for translation.
51063         Based on advice from Paul Eggert.
51064
51065         * lib/strtoxmax.c: Tweak comment.
51066
51067 2001-08-26  Jim Meyering  <meyering@lucent.com>
51068
51069         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
51070
51071         * m4/xstrtoimax.m4: New file.
51072         * m4/xstrtoumax.m4: Add comments explaining why we
51073         AC_REPLACE_FUNCS(strtol).
51074
51075 2001-08-26  Jim Meyering  <meyering@lucent.com>
51076
51077         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
51078         of copyright with `%s' so translators don't get an untranslated
51079         message in 2002.
51080         (COPYRIGHT_YEAR): Define.
51081         (version_etc): Use fprintf rather than fputs.
51082         Suggestion from Ulrich Drepper.
51083
51084         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
51085
51086         * lib/strtoll.c: New file, from GNU libc.
51087         * lib/xstrtoimax.c: New file.
51088
51089         * lib/xstrtol.h: Add xstrtoimax.
51090         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
51091         * lib/strtoimax.c: New file.  Likewise, but first define
51092         STRTOUXMAX_SIGNED.
51093
51094         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
51095         ...
51096         * lib/strtoxmax.c: ... then renamed to this.
51097
51098 2001-08-18  Paul Eggert  <eggert@twinsun.com>
51099
51100         * m4/inttypes.m4: Add AC_PREREQ(2.13).
51101         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
51102         (jm_AC_TYPE_INTMAX_T): New macro.
51103         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
51104
51105         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
51106
51107         * m4/longlong.m4: Renamed from ulonglong.m4.
51108         * m4/inttypes.m4: Renamed from inttypes_h.m4.
51109         * m4/uintmax_t.m4: Removed.
51110
51111 2001-08-13  Paul Eggert  <eggert@twinsun.com>
51112
51113         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
51114         Port to Solaris 8, where 'sed' requires a space after the 'r'
51115         command, and where sh dislikes "$/".  Clean up the spacing a bit.
51116         Redirect output to $tmp just once.
51117
51118 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
51119
51120         * lib/addext.c (<errno.h>): Include.
51121         (errno): Declare if not defined.
51122         (addext): Work correctly when pathconf returns -1 and leaves
51123         errno alone because there is no limit.  Also, work even if
51124         pathconf returns a value greater than SIZE_MAX.
51125
51126 2001-08-12  Jim Meyering  <meyering@lucent.com>
51127
51128         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
51129         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
51130         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
51131         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
51132         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
51133         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
51134         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
51135         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
51136         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
51137         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
51138         utime.m4, utimes.m4, xstrtoumax.m4:
51139         Quote the first argument in each use of AC_DEFUN.
51140
51141 2001-08-12  Jim Meyering  <meyering@lucent.com>
51142
51143         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
51144         Simply `return getcwd (NULL, 0);'.
51145         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
51146         Use 1300 as initial value for length, not PATH_MAX.
51147
51148         * lib/pathmax.h: Clean up cpp syntax.
51149
51150 2001-08-12  Jim Meyering  <meyering@lucent.com>
51151
51152         * lib/gettimeofday.c: New file.
51153         * lib/gtod.h: New file.
51154         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
51155
51156 2001-08-05  Jim Meyering  <meyering@lucent.com>
51157
51158         * m4/jm-macros.m4: Require autoconf-2.52.
51159
51160 2001-08-04  Jim Meyering  <meyering@lucent.com>
51161
51162         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
51163         stmt, to get in sync with glibc.
51164
51165 2001-08-03  Paul Eggert  <eggert@twinsun.com>
51166
51167         The following changes are from gettext 0.10.39 as maintained by
51168         Bruno Haible.
51169
51170         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
51171         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
51172         with inverted sense.  All uses changed.
51173
51174         * lib/mbswidth.c: Don't include <limits.h>.
51175         Include <stdlib.h> and <string.h> unconditionally.
51176         (iswcntrl, mbsinit, ISCNTRL): New macros.
51177         (mbsnwidth): Use K&R style function declarations.
51178         Don't bother checking for MB_LEN_MAX == 1, since the compiler
51179         can optimize it when MB_CUR_MAX == 1.
51180         The width of control characters is zero, not 1.
51181
51182 2001-08-03  Paul Eggert  <eggert@twinsun.com>
51183
51184         The following changes are from gettext 0.10.39 as maintained by
51185         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
51186
51187         * m4/codeset.m4: Upgrade to serial AM1.
51188         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
51189         all uses changed.  Quote first arg of AC_DEFUN.
51190         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
51191
51192         * m4/iconv.m4: Upgrade to serial AM2.
51193         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
51194         Add --with-libconv-prefix.
51195         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
51196         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
51197         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
51198         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
51199         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
51200
51201         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
51202         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
51203         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
51204         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
51205         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
51206         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
51207         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
51208         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
51209         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
51210
51211         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
51212         string.h any more.
51213
51214         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
51215         not the default value.
51216
51217         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
51218         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
51219         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
51220         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
51221         Also check for iswcntrl, used for wcwidth fallback.
51222         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
51223         to Autoconf 2.13.
51224
51225 2001-08-03  Jim Meyering  <meyering@lucent.com>
51226
51227         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
51228         as it was in the original.  Reported by Paul Eggert.
51229
51230 2001-07-16  Jim Meyering  <meyering@lucent.com>
51231
51232         * m4/gettimeofday.m4: New file.
51233         Prompted by a report from Bernhard Baehr.
51234
51235 2001-07-15  Jim Meyering  <meyering@lucent.com>
51236
51237         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
51238         stuff. Now it's in ../Makefile.cfg.
51239
51240 2001-07-15  Jim Meyering  <meyering@lucent.com>
51241
51242         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
51243         (BUILT_SOURCES): Add unlocked-io.h.
51244         (io_functions): Define.
51245         (unlocked-io.h): New rule.
51246         (DISTCLEANFILES): Add unlocked-io.h.
51247         (all-local): Depend on unlocked-io.h, to ensure it is created.
51248
51249         * lib/unlocked-io.hin: New file
51250
51251         * lib/regex.c: Update from glibc.
51252
51253 2001-07-05  Jim Meyering  <meyering@lucent.com>
51254
51255         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
51256         recommendation.
51257         (libfetish_a_SOURCES): Put all .h files here instead.
51258         Remove a thus-exposed (better checks in automake) duplicate and
51259         two unnecessary .h files.
51260
51261 2001-07-04  Jim Meyering  <meyering@lucent.com>
51262
51263         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
51264         that generates jm-glibc-io.m4 so that it doesn't trigger any make
51265         distcheck failure.
51266
51267 2001-07-02  Jim Meyering  <meyering@lucent.com>
51268
51269         The following changes were prompted by suggestions from Bruno Haible.
51270
51271         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
51272         is now generated.
51273         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
51274         definition of EXTRA_DIST.
51275         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
51276         ensure that the generated file is created/updated whenever the list
51277         of $(unlocked_functions) is changed.
51278         (jm-glibc-io.m4): New rule.
51279         (unlocked-io.h): New rule -- currently unused.
51280
51281 2001-06-24  Jim Meyering  <meyering@lucent.com>
51282
51283         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
51284         unmatched right bracket, rather than kludging it with an extra,
51285         falsely-matching quote in a comment.  Patch by Akim Demaille.
51286
51287 2001-06-11  Jim Meyering  <meyering@lucent.com>
51288
51289         * lib/regex.c: Update from GNU libc.
51290
51291 2001-05-27  Jim Meyering  <meyering@lucent.com>
51292
51293         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
51294         Check for ut_type in struct utmp.
51295
51296 2001-05-27  Jim Meyering  <meyering@lucent.com>
51297
51298         * lib/readutmp.h (UT_TYPE): Define.
51299
51300 2001-05-24  Jim Meyering  <meyering@lucent.com>
51301
51302         * lib/argmatch.c: Include "quote.h".
51303         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
51304         quote function.  Reported by Göran Uddeborg.
51305
51306 2001-05-22  Jim Meyering  <meyering@lucent.com>
51307
51308         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
51309         now that we use the package-supplied version unconditionally.
51310         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
51311
51312 2001-05-21  Jim Meyering  <meyering@lucent.com>
51313
51314         * m4/regex.m4: Change a couple backticks to single quotes to avoid
51315         shell syntax errors.
51316
51317 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
51318
51319         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
51320
51321 2001-05-20  Paul Eggert  <eggert@twinsun.com>
51322
51323         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
51324         Don't bother to check library strftime, since
51325         we'll be using our own my_strftime function anyway.
51326         Define my_strftime instead of strftime.
51327
51328 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
51329
51330         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
51331         which is not yet declared.
51332
51333 2001-05-15  Jim Meyering  <meyering@lucent.com>
51334
51335         * m4/regex.m4: Use proper quoting so brackets appear in the test
51336         program.
51337         Reported by, and with help from, Bruno Haible.
51338
51339 2001-05-13  Jim Meyering  <meyering@lucent.com>
51340
51341         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
51342         undefined.
51343
51344 2001-05-11  Paul Eggert  <eggert@twinsun.com>
51345
51346         dirname code cleanup.  base_name now behaves more compatibly
51347         with POSIX basename when given file names that have trailing
51348         slashes, and similarly for dir_name.  Add new primitives
51349         base_len and dir_len.  Put the directory-name-related decls
51350         into dirname.h.
51351
51352         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
51353         * lib/backupfile.c (base_name): Likewise.
51354         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
51355         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
51356         * lib/makepath.c (strip_trailing_slashes): Likewise.
51357         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
51358         ISSLASH): Likewise.
51359         * lib/rename.c (strip_trailing_slashes): Likewise.
51360         * lib/same.c (base_name): Likewise.
51361         * lib/stripslash.c (ISSLASH): Likewise.
51362
51363         * lib/addext.c: Include <dirname.h> after size_t is defined.
51364         * lib/backupfile.c: Likewise.
51365
51366         * lib/addext.c (addext): Use base_len to trim redundant
51367         trailing slashes instead of doing it ourselves.
51368         But do not trim the last slash if it is not redundant.
51369
51370         * lib/backupfile.c (find_backup_file_name,
51371         max_backup_version): Use base_len instead of rolling it ourselves.
51372         Handle the case of "" and (on DOS) "C:" correctly.
51373
51374         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
51375         needed. Include <string.h>, <dirname.h>.
51376         (base_name): Allow file names ending in slashes, other than names
51377         that are all slashes.  In this case, return the basename followed
51378         by the slashes.  This is more general, and can be used in places
51379         where the original base_name purposely had an assertion failure.
51380         (base_len): New function.
51381
51382         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
51383         Do not include <assert.h>; no longer needed.
51384         Include xalloc.h.
51385         (memrchr): Remove decl.
51386         (dir_name_r): Remove.
51387         (dir_len): Renamed from dirlen.  All callers changed.
51388         Rewrite in terms of base_name, for simplicity and consistency.
51389         (dir_name): Never return NULL.  All callers changed.
51390         Do not include <stdlib.h> in test program; no longer needed.
51391         return 0; is fine for test program.
51392
51393         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
51394         New macros.
51395         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
51396
51397         * lib/path-concat.c (path_concat): Use base_len to compute
51398         base length, not strlen; this means we cannot rely on memcpy
51399         to null-terminate.
51400
51401         * lib/same.c (STREQ): Remove.
51402         (same_name): Handle the case where the basename ends in trailing '/'.
51403
51404         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
51405         a slash was stripped.  Do not strip the last slash after a
51406         file system prefix.
51407
51408 2001-05-11  Paul Eggert  <eggert@twinsun.com>
51409
51410         * lib/Makefile.am (libfetish_a_SOURCES):
51411         Add strftime.c, since we now compile it on all hosts.
51412
51413         * lib/strftime.c (my_strftime):
51414         Define to nstrftime if emacs, but only if my_strftime is not defined.
51415         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
51416         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
51417         Add one more extra argument: a nanoseconds value.
51418         All uses changed.
51419         (ns): New macro.
51420         (my_strftime function): Add %N format.
51421         (emacs_strftimeu): Renamed from emacs_strftime,
51422         with extra ut argument.
51423
51424 2001-05-09  Paul Eggert  <eggert@twinsun.com>
51425
51426         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
51427
51428 2001-04-21  Jim Meyering  <meyering@lucent.com>
51429
51430         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
51431         doesn't interfere.
51432
51433 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
51434
51435         * m4/ftruncate.m4: Check for chsize.
51436         Link with ftruncate.o unconditionally if ftruncate is missing.
51437         This was required when cross-compiling to i586-mingw32msvc.
51438
51439 2001-04-08  Jim Meyering  <meyering@lucent.com>
51440
51441         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
51442         recomputed; that's necessary when the offset spans a DST transition.
51443         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
51444
51445 2001-04-02  Jim Meyering  <meyering@lucent.com>
51446
51447         * lib/regex.h, regex.c: Update from GNU libc.
51448
51449 2001-03-24  Jim Meyering  <meyering@lucent.com>
51450
51451         * m4/jm-macros.m4: Require autoconf-2.49d.
51452
51453 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
51454
51455         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
51456
51457 2001-03-19  Paul Eggert  <eggert@twinsun.com>
51458
51459         * lib/version-etc.c (version_etc_copyright): Update to 2001.
51460
51461 2001-03-17  Jim Meyering  <meyering@lucent.com>
51462
51463         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
51464         now that the version in autoconf is equivalent.
51465         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
51466
51467         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
51468         Suggestion from Akim Demaille.
51469
51470         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
51471         (jm_PREREQ_TEMPNAME): New function.
51472
51473 2001-03-16  Paul Eggert  <eggert@twinsun.com>
51474
51475         * lib/tempname.c (uint64_t): Define to uintmax_t if
51476         not defined, and if UINT64_MAX is not defined.
51477         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
51478         Reported by John David Anglin.
51479
51480 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
51481
51482         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
51483         resolve alias if codeset is empty.
51484         * lib/config.charset (BeOS): Use wildcard syntax.
51485
51486 2001-03-13  Jim Meyering  <meyering@lucent.com>
51487
51488         * lib/path-concat.c (path_concat)
51489         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
51490         concatenating e.g., `C:' and `foo'.
51491         From Bruno Haible.
51492
51493 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
51494
51495         * lib/localcharset.c (locale_charset): Don't use
51496         setlocale(LC_CTYPE,NULL). Don't return NULL.
51497         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
51498
51499 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
51500
51501         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
51502         support for DOS/DJGPP.
51503
51504 2001-03-01  Paul Eggert  <eggert@twinsun.com>
51505
51506         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
51507         lacks mkstemp.  Compile our own tempname.c if we compile our own
51508         mkstemp.c, as mkstemp relies on tempname.
51509
51510 2001-03-01  Jim Meyering  <meyering@lucent.com>
51511
51512         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
51513         AH_VERBATIM really does output its argument verbatim.
51514
51515 2001-02-28  Paul Eggert  <eggert@twinsun.com>
51516
51517         * lib/Makefile.am (libfetish_a_SOURCES):
51518         Add dup-safer.c, fopen-safer.c.
51519         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
51520
51521         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
51522         * lib/unistd-safer.h: New files.
51523
51524 2001-02-25  Paul Eggert  <eggert@twinsun.com>
51525
51526         The mkstemp replacement is taken from glibc 2.2.2, with some
51527         portability fixes for use outside glibc, as follows:
51528
51529         * lib/tempname.c (struct_stat64): New macro.
51530         (direxists, __gen_tempname): Use it.
51531         This avoids a portability problem with Solaris 8.
51532
51533         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
51534         (<stddef.h>, <stdint.h>, <string.h>):
51535         Include only if STDC_HEADERS || _LIBC.
51536         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
51537         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
51538         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
51539         (__set_errno): Define this macro if <errno.h> doesn't.
51540         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
51541         Define these macros if <stdio.h> doesn't.
51542         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
51543         Define these macros if <sys/stat.h>
51544         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
51545         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
51546         __xstat64): Define if not _LIBC.
51547         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
51548         (__gen_tempname): Invoke gettimeofday only if
51549         HAVE_GETTIMEOFDAY || _LIBC;
51550         otherwise, fall back on plain "time".
51551         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
51552
51553         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
51554
51555         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
51556
51557 2001-02-18  Paul Eggert  <eggert@twinsun.com>
51558
51559         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
51560
51561 2001-02-17  Paul Eggert  <eggert@twinsun.com>
51562
51563         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
51564         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
51565         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
51566         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
51567
51568 2001-02-17  Paul Eggert  <eggert@twinsun.com>
51569
51570         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
51571         Remove workaround macros for hosts that have mbrtowc but not
51572         mbstate_t, as we now insist on proper declarations for both
51573         before using mbrtowc.
51574
51575 2001-02-17  Jim Meyering  <meyering@lucent.com>
51576
51577         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
51578         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
51579         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
51580         UnixWare 7.1.1.
51581
51582         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
51583         rather than AC_CACHE_VAL.
51584
51585 2001-02-17  Jim Meyering  <meyering@lucent.com>
51586
51587         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
51588         around included file name.
51589
51590         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
51591
51592         * lib/strftime.c: Update from GNU libc (the only changes were to
51593         comments).
51594
51595 2001-02-17  Jim Meyering  <meyering@lucent.com>
51596
51597         * lib/regex.c: Update from libc.
51598
51599 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
51600
51601         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
51602         clash.
51603
51604 2001-02-16  Paul Eggert  <eggert@twinsun.com>
51605
51606         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
51607         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
51608         Reported by Mark Hounschell via Paul Eggert.
51609
51610 2001-02-07  Jim Meyering  <meyering@lucent.com>
51611
51612         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
51613
51614 2001-02-05  Jim Meyering  <meyering@lucent.com>
51615
51616         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
51617         it includes the patch required for `large file' support with at least
51618         HP-UX's 10.20 /bin/cc.
51619
51620 2001-02-03  Jim Meyering  <meyering@lucent.com>
51621
51622         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
51623         AS_IF, now that it works once again (mysteriously).
51624         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
51625
51626 2001-01-30  Jim Meyering  <meyering@lucent.com>
51627
51628         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
51629         * m4/chown.m4: Rename conftestchown to conftest.chown.
51630         * m4/rename.m4: s/conftestdir/conftest.d1/ and
51631         s/conftestdir2/conftest.d2/.
51632         * m4/utimes.m4: s/conftestdata/conftest.data/
51633         Inspired by Pavel Roskin's change in autoconf.
51634
51635 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
51636
51637         * lib/config.charset: Update for FreeBSD 4.2.
51638
51639 2001-01-27  Jim Meyering  <meyering@lucent.com>
51640
51641         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
51642         a use of AS_IF.
51643         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
51644
51645 2001-01-26  Jim Meyering  <meyering@lucent.com>
51646
51647         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
51648         quotearg.c includes it.
51649
51650 2001-01-26  Jim Meyering  <meyering@lucent.com>
51651
51652         * lib/quotearg.c: Include stddef.h.
51653         * lib/quote.c: Include stddef.h.
51654         Reported by Axel Kittenberger.
51655
51656         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
51657         line in double quotes so that it evokes a better diagnostic.
51658         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
51659         Reported by Axel Kittenberger.
51660
51661 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
51662
51663         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
51664         as if it was a `charset'.
51665
51666 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
51667
51668         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
51669         has const.
51670
51671 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
51672
51673         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
51674         to avoid a warning.  Add back 'const' to inptr.
51675
51676 2001-01-20  Jim Meyering  <meyering@lucent.com>
51677
51678         Be sure that headers are checked before used in code compiled
51679         for the type checks.
51680         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
51681         In place of that, invoke jm_CHECK_ALL_TYPES.
51682         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
51683         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
51684         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
51685         The check for ssize_t was mistakenly run before the test for unistd.h.
51686
51687         The configure-time check for stdbool.h was missing.
51688         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
51689         (jm_PREREQ_HASH): New function.
51690
51691 2001-01-17  Jim Meyering  <meyering@lucent.com>
51692
51693         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
51694         for autoconf-2.49c.
51695         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
51696
51697 2001-01-16  Jim Meyering  <meyering@lucent.com>
51698
51699         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
51700         From Bruno Haible.
51701
51702 2001-01-14  Jim Meyering  <meyering@lucent.com>
51703
51704         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
51705         foo and bar.  Create conftestdir/ in the script, not in the C code.
51706         Remove directories in the script, not in the C code.
51707         Remove conftestdir{,2} before trying to create the directory.
51708         Make the entire configure script fail if the mkdir fails.
51709
51710 2001-01-14  Jim Meyering  <meyering@lucent.com>
51711
51712         * lib/rename.c: New file.  From Volker Borchert.
51713         Include stdlib.h, string.h or strings.h, and xalloc.h.
51714         Use strip_trailing_slashes rather than open-coding it.
51715
51716 2001-01-03  Paul Eggert  <eggert@twinsun.com>
51717
51718         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
51719
51720 2001-01-03  Jim Meyering  <meyering@lucent.com>
51721
51722         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
51723         of local `inptr' to avoid warning with some system declarations of
51724         iconv.
51725
51726 2001-01-02  Volker Borchert  <bt@teknon.de>
51727
51728         * m4/rename.m4: New file.
51729         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
51730
51731 2001-01-01  Jim Meyering  <meyering@lucent.com>
51732
51733         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
51734         even on systems with utmpx.h.  It's necessary for the declaration of
51735         utmp's ut_user member.  Reported by Andreas Jaeger.
51736
51737         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
51738         available. They are required for the declarations of getgrgid and
51739         getpwuid resp.
51740         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
51741         Reported by Andreas Jaeger.
51742
51743 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
51744
51745         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
51746         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
51747         so `make install' also works in VPATH builds.
51748
51749 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
51750
51751         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
51752         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
51753         can be used in subdirectories.
51754
51755 2000-12-29  Paul Eggert  <eggert@twinsun.com>
51756
51757         * lib/modechange.c: Do not assume that mode_t uses the
51758         traditional octal encoding.  E.g. "chmod 1 FOO" should set
51759         the other-execute bit of FOO even if S_IXOTH != 1.
51760
51761         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
51762         WOTH, XOTH, ALLM): New macros.
51763         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
51764          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
51765         Use them.
51766         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
51767         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
51768         (mode_compile):
51769         No need to use uintmax_t; unsigned long is long enough.
51770         Don't bother to get suffix since we don't use it.
51771
51772 2000-12-26  Jim Meyering  <meyering@lucent.com>
51773
51774         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
51775         better with autoheader.
51776
51777 2000-12-24  Jim Meyering  <meyering@lucent.com>
51778
51779         * lib/hash.c (is_prime): Return explicit boolean values.
51780         (hash_get_first): Return NULL to appease Irix5.6's 89.
51781         Reported by Nelson Beebe.
51782
51783 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
51784
51785         * lib/localcharset.c (locale_charset): Add support for Win32.
51786
51787 2000-12-18  Paul Eggert  <eggert@twinsun.com>
51788
51789         * lib/physmem.h, lib/physmem.c: New files.
51790
51791         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
51792         (noinst_HEADERS): Add physmem.h.
51793
51794         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
51795         't' for compatibility with Solaris 8 sort.
51796
51797 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
51798
51799         * lib/config.charset: Add support for BeOS.
51800
51801 2000-12-17  Jim Meyering  <meyering@lucent.com>
51802
51803         * m4/dos.m4 (jm_AC_DOS): New file and macro.
51804         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
51805
51806 2000-12-16  Jim Meyering  <meyering@lucent.com>
51807
51808         This bug had a serious impact on chown: `chown N:M FILE' (for integer
51809         N and M) would have treated it like `chown N:N FILE'.
51810
51811         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
51812
51813 2000-12-16  Jim Meyering  <meyering@lucent.com>
51814
51815         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
51816         SHELLS_FILE to a file name that's useful on djgpp systems.
51817         Include stdlib.h.
51818         (ADDITIONAL_DEFAULT_SHELLS): Define.
51819         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
51820         Based mostly on a patch from Prashant TR.
51821
51822 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
51823
51824         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
51825         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
51826         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
51827
51828 2000-12-08  Andreas Schwab  <schwab@suse.de>
51829
51830         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
51831         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
51832
51833 2000-12-07  Jim Meyering  <meyering@lucent.com>
51834
51835         * lib/stripslash.c (ISSLASH): Define.
51836         (strip_trailing_slashes): Use ISSLASH rather than comparing against
51837         `/'.
51838         From Prashant TR.
51839
51840         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
51841         (dir_name_r): Declare this function as static.
51842         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
51843         manifest itself on a name containing a mix of slashes and
51844         backslashes.
51845         Make this function work with names starting with a DOS-style
51846         drive letter and colon prefix.
51847         (dir_name): Append `.' if necessary.
51848         Based mostly on patches from Prashant TR and Eli Zaretskii.
51849
51850         * lib/dirname.h (dir_name_r): Remove prototype.
51851
51852 2000-12-06  Paul Eggert  <eggert@twinsun.com>
51853
51854         * m4/off_t-format.m4: Remove this file.
51855         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
51856
51857 2000-12-06  Jim Meyering  <meyering@lucent.com>
51858
51859         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
51860         replacement strtoull, we may well need the replacement strtoul, too.
51861         Check for declarations of strtoul and strtoull.
51862         Check for strtol.  Mainly as a cue to cause automake to include
51863         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
51864         Check for limits.h -- strtol.c needs it.
51865
51866 2000-12-05  Jim Meyering  <meyering@lucent.com>
51867
51868         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
51869
51870 2000-12-04  Jim Meyering  <meyering@lucent.com>
51871
51872         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
51873         Also include memory.h, stdlib.h, unistd.h if appropriate.
51874         Reported by Andreas Jaeger (conflicting declaration of malloc).
51875
51876 2000-12-02  Jim Meyering  <meyering@lucent.com>
51877
51878         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
51879         * m4/jm-macros.m4 (jm_MACROS): require it.
51880
51881 2000-12-02  Jim Meyering  <meyering@lucent.com>
51882
51883         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
51884
51885 2000-12-01  Paul Eggert  <eggert@twinsun.com>
51886
51887         * lib/memrchr.c: Include <config.h> before any system include file.
51888
51889 2000-11-30  Jim Meyering  <meyering@lucent.com>
51890
51891         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
51892
51893 2000-11-30  Jim Meyering  <meyering@lucent.com>
51894
51895         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
51896
51897 2000-11-29  Paul Eggert  <eggert@twinsun.com>
51898
51899         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
51900
51901 2000-11-26  Jim Meyering  <meyering@lucent.com>
51902
51903         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
51904
51905 2000-11-22  Paul Eggert  <eggert@twinsun.com>
51906
51907         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
51908         size of (size_t) -1; it's not portable.
51909
51910 2000-11-17  Jim Meyering  <meyering@lucent.com>
51911
51912         * lib/strstr.c: Update from GNU libc.
51913
51914 2000-11-17  Akim Demaille  <akim@epita.fr>
51915
51916         * lib/obstack.h: Formatting changes.
51917         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
51918         prevent type checking.
51919         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
51920         cast the value to (void *): assigning a `foo *' to a `void *'
51921         variable is valid.
51922         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
51923
51924 2000-11-16  Jim Meyering  <meyering@lucent.com>
51925
51926         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
51927
51928 2000-11-11  Jim Meyering  <meyering@lucent.com>
51929
51930         * lib/error.c: Add a couple #includes, merging from GNU libc version.
51931
51932 2000-11-10  Jim Meyering  <meyering@lucent.com>
51933
51934         * lib/obstack.h: Update from GNU libc.
51935         * lib/obstack.c: Likewise.
51936
51937 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
51938
51939         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
51940
51941 2000-11-06  Paul Eggert  <eggert@twinsun.com>
51942
51943         * lib/getusershell.c (setusershell): Use rewind rather than
51944         fseek/fseeko, to avoid configuration hassles with fseeko.
51945         Don't bother opening SHELLS_FILE if shellstream is NULL;
51946         it's not necessary.
51947
51948 2000-11-05  Jim Meyering  <meyering@lucent.com>
51949
51950         * lib/makepath.h (make_dir): Declare.
51951         * lib/makepath.c (make_dir): Remove `static' attribute.
51952         Tweak a comment.
51953
51954 2000-11-04  Jim Meyering  <meyering@lucent.com>
51955
51956         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
51957
51958 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
51959
51960         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
51961         last one in a bucket, advance to the next bucket.
51962
51963 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
51964
51965         * lib/fnmatch.c: Do not comment out all the code if we are using
51966         the GNU C library, because in some cases we are replacing buggy
51967         code in the GNU C library itself.
51968
51969 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
51970
51971         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
51972         (regex_compile): Catch bogus \(\1\).
51973
51974 2000-10-30  Paul Eggert  <eggert@twinsun.com>
51975
51976         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
51977         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
51978         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
51979
51980 2000-10-30  Paul Eggert  <eggert@twinsun.com>
51981
51982         * lib/error.h, getline.h, modechange.h:
51983         Remove "2000" from Copyright line, as the file hasn't been
51984         changed this year other than in the copyright notice.
51985
51986         * lib/xalloc.h: Add "2000" to Copyright line, as this file
51987         was changed this year.
51988
51989 2000-10-29  Jim Meyering  <meyering@lucent.com>
51990
51991         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
51992         renaming.
51993         * m4/ls-mntd-fs.m4: Likewise
51994
51995 2000-10-29  Jim Meyering  <meyering@lucent.com>
51996
51997         * lib/xstat.in: Fix grammar in comment.
51998
51999 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
52000
52001         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
52002         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
52003         doesn't define __restrict_arr.
52004
52005 2000-10-28  Jim Meyering  <meyering@lucent.com>
52006
52007         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
52008         (jm_PREREQ_MEMCHR): New function.
52009
52010 2000-10-28  Jim Meyering  <meyering@lucent.com>
52011
52012         * lib/memchr.c: Update from libc.
52013         Adjust for portability:
52014         [HAVE_STDLIB_H]: Include stdlib.h.
52015         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
52016         Undef __memchr, too.
52017         [!weak_alias]: Define __memchr to memchr.
52018
52019         * lib/regex.c: Update from libc.
52020         * lib/regex.h: Likewise.
52021         * lib/getopt1.c: Likewise.
52022         * lib/memcmp.c: Likewise.
52023
52024         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
52025         Avoid using fseek, when possible -- it's broken by design.
52026         Patch by Ulrich Drepper.
52027
52028 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
52029
52030         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
52031         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
52032         Giving in to popular pressure to shut up the compiler with casts.
52033
52034 2000-10-26  Jim Meyering  <meyering@lucent.com>
52035
52036         * lib/strftime.c: Update from libc.
52037
52038 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
52039
52040         * regex.c: More `unsigned char' -> `re_char' changes.
52041         Also change several `int' into `re_wchar_t'.
52042         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
52043         (PUSH_FAILURE_POINTER): Don't cast any more.
52044         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
52045         We want GCC to complain, since this piece of code makes
52046         re_match non-reentrant, which *should* be fixed.
52047         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
52048         (EXTEND_BUFFER): Use RETALLOC.
52049         (SET_LIST_BIT): Don't cast.
52050         (re_wchar_t): New type.
52051         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
52052         that those two functions will always properly return.
52053         (IMMEDIATE_QUIT_CHECK): Cast to void.
52054         (analyse_first): Use recursion rather than an explicit stack.
52055         (re_compile_fastmap): Can't fail anymore.
52056         (re_search_2): Don't check re_compile_fastmap for failure.
52057         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
52058         Now also sets the new value (passed in a new argument).
52059         (re_match_2_internal): Use it.
52060         Also, use a new var `reg' of type size_t when looping through regs
52061         rather than reuse the inappropriate `mcnt'.
52062
52063 2000-10-25  Jim Meyering  <meyering@lucent.com>
52064
52065         * lib/obstack.c: Update from libc.
52066
52067 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
52068
52069         * regex.c (regex_compile): Change the way of handling a range from
52070         a char less than 256 to a char not less than 256.
52071
52072 2000-10-24  Andrew Innes  <andrewi@gnu.org>
52073
52074         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
52075         NT-Emacs only.
52076         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
52077         so that re_search functions only quit when callers expect them to.
52078
52079 2000-10-23  Jim Meyering  <meyering@lucent.com>
52080
52081         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
52082         wrong.  That set_locale call must not have any side effects.
52083         From Paul Eggert.
52084
52085 2000-10-22  Jim Meyering  <meyering@lucent.com>
52086
52087         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
52088         [CYCLIC]: Remove now-unused definition.
52089
52090         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
52091         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
52092         Suggestion from Ulrich Drepper.
52093
52094 2000-10-21  Jim Meyering  <meyering@lucent.com>
52095
52096         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
52097         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
52098         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
52099
52100 2000-10-21  Jim Meyering  <meyering@lucent.com>
52101
52102         * lib/dirname.c (memrchr): Declare if necessary.
52103         (dir_name): Remove the restriction that there be no
52104         trailing slashes.  Now, this code skips past them, effectively
52105         ignoring them.
52106         [TEST_DIRNAME] (main): New unit tests.
52107
52108         * lib/memrchr.c: New file from GNU libc.
52109         Undef __memrchr, too.
52110         [!weak_alias]: Define __memrchr to memrchr.
52111         Guard weak_alias use with `#ifdef weak_alias'.
52112
52113 2000-10-21  Jim Meyering  <meyering@lucent.com>
52114
52115         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
52116         (dir_name): Use dir_name_r.
52117         * lib/dirname.h (dir_name_r): Declare it.
52118
52119 2000-10-17  Jim Meyering  <meyering@lucent.com>
52120
52121         * lib/quote.h (PARAMS): Define and use.
52122         Reported by Akim Demaille.
52123
52124         * lib/getopt.c: Update from libc.
52125
52126 2000-10-16  Jim Meyering  <meyering@lucent.com>
52127
52128         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
52129         setlocale.
52130         From Jan Fedak.
52131
52132 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
52133
52134         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
52135
52136 2000-09-25  Jim Meyering  <meyering@lucent.com>
52137
52138         * lib/md5.h (rol): Define (from GnuPG).
52139
52140         * lib/sha.c: Give credit (GnuPG) where due.
52141         (M): Use rol rather than open-coding it.
52142         Add a FIXME comment.
52143
52144 2000-09-21  Jim Meyering  <meyering@lucent.com>
52145
52146         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
52147         Reported by Michael Stone.
52148
52149 2000-09-20  Jim Meyering  <meyering@lucent.com>
52150
52151         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
52152         (noinst_HEADERS): Add sha.h.
52153         Based on code from Scott G. Miller and from GnuPG.
52154
52155 2000-09-18  Jim Meyering  <meyering@lucent.com>
52156
52157         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
52158         LIBS. Otherwise, everyone ends up linking with -lelf for some
52159         configurations.
52160         Reported by Mike Stone.
52161
52162 2000-09-15  Jim Meyering  <meyering@lucent.com>
52163
52164         * lib/regex.c: Update from libc.
52165
52166 2000-09-10  Jim Meyering  <meyering@lucent.com>
52167
52168         * lib/getopt.c (_getopt_internal): Update from glibc.
52169
52170 2000-09-09  Jim Meyering  <meyering@lucent.com>
52171
52172         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
52173         think it should be used as a general replacement for isascii.
52174         * lib/fnmatch.c: Likewise.
52175         * lib/mbswidth.c: Likewise
52176         * lib/regex.c: Likewise.
52177
52178         Don't use atoi.
52179         * lib/userspec.c: Include sys/param.h and limits.h.
52180         Include xstrtol.h.
52181         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
52182         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
52183         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
52184         UID, GID.  Check range.
52185
52186 2000-09-06  Jim Meyering  <meyering@lucent.com>
52187
52188         * lib/getopt.c (_getopt_internal): Update from glibc.
52189
52190 2000-08-30  Jim Meyering  <meyering@lucent.com>
52191
52192         * lib/strftime.c: Merge in changes from GNU libc.
52193
52194 2000-08-26  Jim Meyering  <meyering@lucent.com>
52195
52196         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
52197         * m4/fpending.m4: New file.
52198
52199 2000-08-26  Jim Meyering  <meyering@lucent.com>
52200
52201         * lib/closeout.c: Include "__fpending.h".
52202         (close_stdout_status): Return right away if there's nothing to flush.
52203
52204         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
52205         * lib/__fpending.c: New file.
52206         * lib/__fpending.h: New file.
52207
52208 2000-08-20  Jim Meyering  <meyering@lucent.com>
52209
52210         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
52211         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
52212         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
52213
52214 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
52215
52216         Improve fileutils installation on systems where running
52217         programs (like install) can't be unlinked.
52218         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
52219         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
52220
52221 2000-08-07  Paul Eggert  <eggert@twinsun.com>
52222
52223         Standardize on "memory exhausted" instead of "Memory exhausted"
52224         or "virtual memory exhausted".
52225         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
52226         "virtual memory exhausted".
52227         * lib/same.c (same_name): Invoke xalloc_die instead of printing
52228         our own message.
52229         * lib/userspec.c (parse_user_spec): Likewise.
52230         * lib/bumpalloc.h: comment fix
52231         * lib/same.c, userspec.c: Include xalloc.h.
52232
52233         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
52234         not char *const and pointing to a constant array.
52235         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
52236         (xrealloc): Comment fix.
52237
52238         * lib/userspec.c (parse_user_spec):
52239         Don't translate a message until just before returning,
52240         to avoid unnecessary translation.
52241
52242 2000-08-07  Jim Meyering  <meyering@lucent.com>
52243
52244         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
52245         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
52246         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
52247         getgroups.c, gethostname.c, getopt.h, group-member.c,
52248         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
52249         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
52250         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
52251         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
52252         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
52253         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
52254         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
52255         yesno.c: Back out Copyright date changes for each file with no change
52256         this year.  This eases coordination with other programs using the same
52257         source code modules.  From Paul Eggert.
52258
52259 2000-08-06  Paul Eggert  <eggert@twinsun.com>
52260
52261         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
52262         not char, for compatibility with glibc 2.1.3 strftime.c.
52263
52264 2000-08-03  Greg McGary  <greg@mcgary.org>
52265
52266         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
52267         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
52268         (EXTEND_BUFFER): Use them.
52269
52270 2000-08-01  Jim Meyering  <meyering@lucent.com>
52271
52272         * lib/dirname.c (ISSLASH): Define.
52273         (BACKSLASH_IS_PATH_SEPARATOR): Define.
52274         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
52275         both `\' and `/' may be use as path separators.
52276         Based on a patch from Prashant TR.
52277
52278 2000-07-31  Paul Eggert  <eggert@twinsun.com>
52279
52280         * lib/quotearg.c (quotearg_n_options): Don't make the initial
52281         slot vector a constant, since it might get modified.
52282
52283 2000-07-31  Jim Meyering  <meyering@lucent.com>
52284
52285         * lib/xmalloc.c: Use `virtual memory exhausted', not
52286         `Memory exhausted'.
52287         * lib/obstack.c (print_and_abort): Likewise.
52288
52289 2000-07-30  Paul Eggert  <eggert@twinsun.com>
52290
52291         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
52292         buffer, so that the caller can always quote one small
52293         component of a "memory exhausted" message in slot 0.
52294         From a suggestion by Jim Meyering.
52295
52296 2000-07-30  Jim Meyering  <meyering@lucent.com>
52297
52298         * lib/makepath.c (make_path): Quote the other instance, too.
52299
52300         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
52301         (STATIC_BUF_SIZE): Define.
52302         (quotearg_n_options): Use only statically allocated storage when
52303         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
52304         than STATIC_BUF_SIZE.
52305
52306 2000-07-29  Jim Meyering  <meyering@lucent.com>
52307
52308         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
52309         * lib/dirname.c (dir_name): Likewise.
52310
52311         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
52312         `/'.
52313
52314         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
52315         (dir_name): Assert that there are no trailing slashes.
52316
52317 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
52318
52319         * lib/mbswidth.h (mbswidth): Add a flags argument.
52320         (mbswidth): New declaration.
52321         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
52322         * lib/mbswidth.c (mbswidth): Add a flags argument.
52323         (mbsnwidth): New function.
52324
52325 2000-07-24  Jim Meyering  <meyering@lucent.com>
52326
52327         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
52328
52329 2000-07-23  Paul Eggert  <eggert@twinsun.com>
52330
52331         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
52332
52333 2000-07-23  Paul Eggert  <eggert@twinsun.com>
52334
52335         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
52336         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
52337         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
52338         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
52339         invoke multibyte primitives.
52340
52341 2000-07-23  Paul Eggert  <eggert@twinsun.com>
52342
52343         * lib/quotearg.c:
52344         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
52345         so that mbstate_t is always defined.
52346
52347         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
52348         be 1 in at least one GCC installation, and this configuration
52349         error is likely to be common.  Ignoring MB_LEN_MAX hurts
52350         performance on hosts that have mbrtowc but have only unibyte
52351         locales, but I assume these hosts are rare.
52352
52353 2000-07-23  Paul Eggert  <eggert@twinsun.com>
52354
52355         * lib/mbswidth.c (_XOPEN_SOURCE):
52356         Don't define; this causes problems on Solaris 7.
52357         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
52358
52359 2000-07-23  Jim Meyering  <meyering@lucent.com>
52360
52361         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
52362         too: getgrgid, getpwuid, getuid.
52363
52364 2000-07-23  Jim Meyering  <meyering@lucent.com>
52365
52366         * lib/basename.c (base_name): Add an assertion.
52367
52368 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
52369
52370         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
52371         shadow its mbsinit function.
52372
52373 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
52374
52375         * lib/mbswidth.h: New file.
52376         * lib/mbswidth.c: New file.
52377         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
52378         (noinst_HEADERS): Add mbswidth.h.
52379
52380 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
52381
52382         * lib/config.charset: Add support for FreeBSD. Improve support for
52383         HP-UX and IRIX 6.
52384
52385 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
52386
52387         * m4/mbswidth.m4: New file.
52388         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
52389
52390 2000-07-15  Jim Meyering  <meyering@lucent.com>
52391
52392         * lib/makepath.c: Include quote.h.
52393         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
52394         corresponding argument in a `quote (...)' call.
52395         Give better diagnostics.
52396
52397         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
52398         (noinst_HEADERS): Add quote.h.
52399
52400         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
52401         from tar's src/misc.c.
52402         * lib/quote.h: New file.  Prototypes for same.
52403
52404 2000-07-14  Paul Eggert  <eggert@twinsun.com>
52405
52406         From a suggestion by Bruno Haible.
52407         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
52408         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
52409         to decide whether to define the BeOS workaround macro;
52410         this adjusts to the change to AC_MBSTATE_T.
52411
52412 2000-07-14  Jim Meyering  <meyering@lucent.com>
52413
52414         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
52415         jm_AC_TYPE_UINTMAX_T.
52416
52417 2000-07-13  Paul Eggert  <eggert@twinsun.com>
52418
52419         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
52420
52421         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
52422         quotearg_buffer_restyled): Add support for
52423         clocale_quoting_style.  Undo previous change to
52424         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
52425         and "{RIGHT QUOTATION MARK}" msgids.
52426
52427 2000-07-10  Paul Eggert  <eggert@twinsun.com>
52428
52429         From a suggestion by Bruno Haible.
52430         * m4/mbstate_t.m4 (AC_MBSTATE_T):
52431         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
52432         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
52433         and mbstate_t, to a single-part test that simply defines mbstate_t.
52434         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
52435         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
52436
52437 2000-07-10  Jim Meyering  <meyering@lucent.com>
52438
52439         * m4/strerror_r.m4: Mirror the correction made in autoconf.
52440
52441         * m4/gnu-source.m4: Output to confdefs.h directly.
52442         Suggestion from Akim Demaille.
52443
52444 2000-07-09  Paul Eggert  <eggert@twinsun.com>
52445
52446         The old behavior of quoting `like this' doesn't look good with
52447         newer, ISO-style fonts.  See:
52448         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
52449
52450         Instead, quote "like this" by default.  Let the translator
52451         tailor the locale-specific quoting behavior by providing
52452         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
52453
52454         * lib/quotearg.c (N_): New macro.
52455         (gettext_default): New function.
52456         (quotearg_buffer_restyled): Use
52457         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
52458         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
52459
52460 2000-07-09  Jim Meyering  <meyering@lucent.com>
52461
52462         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
52463         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
52464
52465         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
52466         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
52467
52468 2000-07-09  Jim Meyering  <meyering@lucent.com>
52469
52470         * lib/Most files: Update copyright dates to include 2000.
52471
52472 2000-07-08  Jim Meyering  <meyering@lucent.com>
52473
52474         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
52475         if not defined.
52476         (xgethostname): Remove now-unnecessary #ifdef.
52477         Move declaration of `err' into loop where it's used.
52478
52479 2000-07-05  Paul Eggert  <eggert@twinsun.com>
52480         and Bruno Haible  <haible@clisp.cons.org>
52481
52482         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
52483         only if the test for an object-type mbstate_t fails.  This
52484         prevents us from mistakenly reporting that mbstate_t is a
52485         system object type after we "#define mbstate_t int" to work
52486         around its lack.
52487
52488 2000-07-05  Paul Eggert  <eggert@twinsun.com>
52489         and Bruno Haible  <haible@clisp.cons.org>
52490
52491         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
52492
52493 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
52494
52495         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
52496         to strerror_r.
52497         Include <ctype.h> for use of isalpha.
52498
52499 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
52500
52501         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
52502         by allocating a larger buffer. Test the gethostname return value for
52503         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
52504         returns an error and ENAMETOOLONG isn't defined.
52505
52506 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
52507
52508         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
52509         dimension.
52510
52511 2000-07-04  Jim Meyering  <meyering@lucent.com>
52512
52513         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
52514         of the deprecated AC_CHECKING.
52515
52516 2000-07-04  Jim Meyering  <meyering@lucent.com>
52517
52518         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
52519         Reported by Bruno Haible.
52520
52521 2000-07-04  Jim Meyering  <meyering@lucent.com>
52522
52523         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
52524         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
52525         lacks mbrtowc.
52526
52527 2000-07-03  Paul Eggert  <eggert@twinsun.com>
52528
52529         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
52530         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
52531
52532 2000-07-03  Paul Eggert  <eggert@twinsun.com>
52533         and Bruno Haible  <haible@clisp.cons.org>
52534
52535         * lib/quotearg.c (mbrtowc):
52536         Assign to *pwc, and return 1 only if result is nonzero.
52537         (iswprint): Use ISPRINT when substituting our own mbrtowc.
52538
52539 2000-07-03  Jim Meyering  <meyering@lucent.com>
52540
52541         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
52542
52543 2000-07-03  Jim Meyering  <meyering@lucent.com>
52544
52545         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
52546         This is necessary to get a definition of e.g., UTMP_FILE on
52547         HP-UX 10.20.
52548         From Bob Proulx.
52549
52550 2000-07-02  Jim Meyering  <meyering@lucent.com>
52551
52552         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
52553
52554         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
52555         AC_LIBOBJ(function_name).
52556         * m4/chown.m4: Likewise.
52557         * m4/fnmatch.m4: Likewise.
52558         * m4/ftruncate.m4: Likewise.
52559         * m4/getgroups.m4: Likewise.
52560         * m4/getline.m4: Likewise.
52561         * m4/group-member.m4: Likewise.
52562         * m4/jm-macros.m4: Likewise.
52563         * m4/lstat.m4: Likewise.
52564         * m4/malloc.m4: Likewise.
52565         * m4/memcmp.m4: Likewise.
52566         * m4/nanosleep.m4: Likewise.
52567         * m4/putenv.m4: Likewise.
52568         * m4/realloc.m4: Likewise.
52569         * m4/regex.m4: Likewise.
52570         * m4/stat.m4: Likewise.
52571         * m4/strftime.m4: Likewise.
52572
52573 2000-07-02  Jim Meyering  <meyering@lucent.com>
52574
52575         * lib/quotearg.c (mbstate_t): Don't define here.
52576
52577 2000-07-02  Jim Meyering  <meyering@lucent.com>
52578
52579         * lib/nanosleep.c (SIGCONT): Define if not already defined.
52580
52581 2000-07-01  Jim Meyering  <meyering@lucent.com>
52582
52583         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
52584
52585 2000-07-01  Jim Meyering  <meyering@lucent.com>
52586
52587         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
52588         problem.
52589
52590 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
52591
52592         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
52593         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
52594
52595 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
52596
52597         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
52598         per change in ../m4/ls-mntd-fs.m4.
52599         (read_filesystem_list): Ignore symbolic links.
52600
52601 2000-06-29  Jim Meyering  <meyering@lucent.com>
52602
52603         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
52604         for declaration of strcmp.
52605
52606         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
52607
52608         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
52609         Avoid warning by casting result to `char *' to remove `const'.
52610
52611 2000-06-28  Jim Meyering  <meyering@lucent.com>
52612
52613         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
52614         included by quotearg.c, for which we perform this test.  From
52615         Bruno Haible.
52616
52617 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
52618
52619         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
52620         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
52621         <utmpx.h> exists, put readutmp.o into LIBOBJS.
52622
52623 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
52624
52625         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
52626
52627 2000-06-26  Paul Eggert  <eggert@twinsun.com>
52628
52629         savedir now sets errno on failure and invokes xmalloc to get memory.
52630         Fix a couple of other minor bugs while we're at it.
52631
52632         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
52633         (NAMLEN): Remove macro.
52634         (malloc, realloc): Remove decls.
52635         (stpcpy): Likewise.
52636         ("xalloc.h"): Include.
52637         (NAME_SIZE_DEFAULT): New macro.
52638         (savedir): Use xmalloc / xrealloc to allocate memory.
52639         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
52640         Skip "" directory entries.
52641         Use strlen to calculate directory entry length, since the old method
52642         is rarely used these days and isn't worth supporting.
52643         Don't use a pointer after freeing it.
52644         Check for integer overflow when calculating allocation size.
52645         Use memcpy to copy entries, instead of stpcpy.
52646         Set errno properly when returning NULL.
52647         Check for readdir error.
52648
52649 2000-06-26  Jim Meyering  <meyering@lucent.com>
52650
52651         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
52652
52653 2000-06-25  Jim Meyering  <meyering@lucent.com>
52654
52655         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
52656         Linux header bug when _XOPEN_SOURCE is defined to 500.
52657
52658 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
52659
52660         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
52661         deficiency.
52662
52663 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
52664
52665         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
52666         Include xalloc.h.
52667         Don't include <stdlib.h>.  Don't declare malloc, realloc.
52668
52669 2000-06-24  Jim Meyering  <meyering@lucent.com>
52670
52671         * m4/strerror_r.m4: Revive this file -- to try out an experimental
52672         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
52673         for which strerror does return char*, but which lacks a conveniently
52674         accessible declaration of the function.  If the compile-test says
52675         strerror_r doesn't work, then resort to a `run'-test that works on
52676         BeOS and segfaults on DEC Unix.
52677
52678 2000-06-24  Jim Meyering  <meyering@lucent.com>
52679
52680         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
52681
52682 2000-06-23  Paul Eggert  <eggert@twinsun.com>
52683
52684         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
52685         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
52686
52687 2000-06-23  Paul Eggert  <eggert@twinsun.com>
52688
52689         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
52690         (mbrtowc, mbstate_t): Define substitutes if
52691         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
52692         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
52693         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
52694
52695 2000-06-23  Jim Meyering  <meyering@lucent.com>
52696
52697         * m4/afs.m4: Add missing AC_MSG_RESULT.
52698         Reported by Bruno Haible.
52699
52700         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
52701         Suggestion from Bruno Haible.
52702
52703 2000-06-23  Jim Meyering  <meyering@lucent.com>
52704
52705         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
52706
52707 2000-06-21  Jim Meyering  <meyering@lucent.com>
52708
52709         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
52710
52711 2000-06-21  Jim Meyering  <meyering@lucent.com>
52712
52713         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
52714         (noinst_HEADERS): Add getstr.h.
52715
52716         * lib/getline.c (getstr): Move into a separate file.
52717         * lib/getstr.c (getstr): New file, extracted from getline.c, with
52718         the following changes: new parameter, delim2; both delim[12]
52719         parameters have type `int', not `char'.  The latter would lose
52720         with 8-bit delimiters.
52721         * lib/getstr.h: New file.
52722
52723 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
52724
52725         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
52726         than 1024, return a memory chunk of least possible size, instead
52727         of size PATH_MAX + 2. In the loop, increment the size proportionally.
52728         Use free/xmalloc instead of xrealloc to avoid copying for very long
52729         paths.
52730
52731 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
52732
52733         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
52734         the empty string.
52735
52736 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
52737
52738         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
52739         address, not strdup.  Include <stdlib.h> and don't declare free().
52740
52741 2000-06-19  Jim Meyering  <meyering@lucent.com>
52742
52743         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
52744
52745 2000-06-18  Jim Meyering  <meyering@lucent.com>
52746
52747         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
52748
52749         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
52750         `checking whether...' message to be consistent with that of the
52751         lstat test.
52752
52753 2000-06-18  Jim Meyering  <meyering@lucent.com>
52754
52755         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
52756         Besides, these days every porting target provides a mkdir function.
52757
52758         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
52759         needed. (this snippet comes from src/system.h).
52760
52761 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
52762
52763         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
52764
52765 2000-06-15  Paul Eggert  <eggert@twinsun.com>
52766
52767         * lib/human.c (adjust_value): New function.
52768         (human_readable_inexact): Apply rounding style even when
52769         printing approximate values.
52770
52771 2000-06-14  Paul Eggert  <eggert@twinsun.com>
52772
52773         * lib/human.c (human_readable_inexact): Allow an input block
52774         size that is not a multiple of the output block size, and vice versa.
52775         Reported by Piergiorgio Sartor.
52776
52777 2000-06-14  Paul Eggert  <eggert@twinsun.com>
52778
52779         * lib/getdate.y (get_date): Apply relative times after time
52780         zone indicator, not before.  Reported by Todd A. Jacobs.
52781
52782 2000-06-13  Jim Meyering  <meyering@lucent.com>
52783
52784         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
52785
52786         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
52787
52788 2000-06-12  Paul Eggert  <eggert@twinsun.com>
52789
52790         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
52791
52792 2000-06-12  Jim Meyering  <meyering@lucent.com>
52793
52794         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
52795         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
52796         optional argument.
52797         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
52798         the optional argument, `lib'.
52799
52800 2000-06-08  Jim Meyering  <meyering@lucent.com>
52801
52802         * m4/largefile.m4: Remove file (now that it's part of autoconf).
52803
52804 2000-06-04  Paul Eggert  <eggert@twinsun.com>
52805
52806         Rewrite largefile configuration so that we don't need to run
52807         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
52808         AC_CANONICAL_HOST in configure.in -- jmm]
52809
52810         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
52811         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
52812         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
52813         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
52814         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
52815         All uses changed.
52816         Instead of inspecting the output of getconf, try to compile the
52817         test program without and with the macro definition.
52818         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
52819         for getconf.  Instead, check for the needed flags by compiling
52820         test programs.
52821
52822 2000-06-04  Paul Eggert  <eggert@twinsun.com>
52823
52824         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
52825
52826 2000-06-04  Jim Meyering  <meyering@lucent.com>
52827
52828         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
52829         SunOS 4.1.4 for which gid_t is an unsigned type.
52830
52831 2000-06-03  Jim Meyering  <meyering@lucent.com>
52832
52833         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
52834         now that autoconf requires that.
52835
52836         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
52837         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
52838         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
52839
52840 2000-06-03  Jim Meyering  <meyering@lucent.com>
52841
52842         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
52843
52844 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
52845
52846         * m4/glibc21.m4: New file.
52847         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
52848
52849 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
52850
52851         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
52852         newer, don't install charset.alias.
52853         * lib/config.charset: Change the Linux/glibc rules so they become empty
52854         on glibc-2.1 or newer.
52855
52856 2000-06-02  Jim Meyering  <meyering@lucent.com>
52857
52858         * lib/mountlist.c: Back out last change.  Instead, do this...
52859         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
52860         me_dummy member using the same `ignore'-testing code.
52861         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
52862         fs_type strings.
52863         From Mark D. Roth.
52864
52865 2000-05-29  Jim Meyering  <meyering@lucent.com>
52866
52867         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
52868         mounts with the `ignore' attribute.  Based on a patch from
52869         Mark D. Roth.
52870
52871 2000-05-28  Jim Meyering  <meyering@lucent.com>
52872
52873         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
52874         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
52875         * m4/stat.m4: Likewise.
52876         * m4/lstat.m4: Likewise.
52877         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
52878
52879         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
52880         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
52881
52882 2000-05-26  Jim Meyering  <meyering@lucent.com>
52883
52884         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
52885
52886 2000-05-24  Jim Meyering  <meyering@lucent.com>
52887
52888         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
52889         autoconf requires that.
52890         * m4/lib-check.m4: Likewise.
52891         * m4/jm-macros.m4: Likewise.
52892         * m4/strftime.m4: Likewise.
52893
52894         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
52895         AC_CHECK_DECLS, now that autoconf requires that.
52896
52897 2000-05-22  Jim Meyering  <meyering@lucent.com>
52898
52899         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
52900         * m4/lstat.m4: Likewise.
52901
52902 2000-05-22  Jim Meyering  <meyering@lucent.com>
52903
52904         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
52905
52906 2000-05-20  Jim Meyering  <meyering@lucent.com>
52907
52908         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
52909         (jm_PREREQ): Use it.
52910
52911 2000-05-18  Jim Meyering  <meyering@lucent.com>
52912
52913         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
52914         back, too, since it may have been modified by allocate_entry.
52915         (hash_delete): Rewrite to use neither the assignment operator
52916         nor the comma operator in an if-expression.
52917
52918 2000-05-15  Paul Eggert  <eggert@twinsun.com>
52919
52920         * lib/closeout.c:
52921         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
52922         Remove; no longer needed.
52923         "quotearg.h": Add include.
52924         (file_name): Do not bother to explicitly initialize to NULL; it's less
52925         efficient on some hosts.
52926         (close_stdout_status): Remove test as to whether stdout was already
52927         closed; it breaks for the case "echo x | sort >&-".
52928         Quote file name colons.
52929         Do not assume that _("write error") lacks format strings.
52930
52931 2000-05-15  Jim Meyering  <meyering@lucent.com>
52932
52933         * lib/version-etc.c (version_etc_copyright): Update the copyright
52934         string used in all --version output.
52935
52936 2000-05-14  Jim Meyering  <meyering@lucent.com>
52937
52938         * lib/closeout.c (close_stdout_set_file_name): New function.
52939         (close_stdout_status): Use new file-scoped global.
52940         Return right away if fstat says the stdout file descriptor is invalid.
52941         * lib/closeout.h (close_stdout_set_file_name): Declare.
52942
52943 2000-05-10  Jim Meyering  <meyering@lucent.com>
52944
52945         * lib/closeout.c [default_exit_status]: New file-scoped variable.
52946         (close_stdout_set_status): New function.
52947         * lib/closeout.h (close_stdout_set_status): Declare.
52948
52949 2000-05-09  Jim Meyering  <meyering@lucent.com>
52950
52951         * m4/gettext.m4: Rename this...
52952         * m4/libintl.m4: ...to this.
52953
52954 2000-05-08  Jim Meyering  <meyering@lucent.com>
52955
52956         * lib/long-options.c: Don't include closeout.h.
52957         (parse_long_options): Don't call close_stdout for --version.
52958
52959 2000-05-06  Paul Eggert  <eggert@twinsun.com>
52960
52961         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
52962         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
52963         2.1.3 bug.  This avoids a clash when files like regex.c define
52964         _GNU_SOURCE.
52965
52966 2000-05-06  Jim Meyering  <meyering@lucent.com>
52967
52968         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
52969         (AC_REPLACE_FUNCS): Add strnlen.
52970
52971         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
52972         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
52973
52974         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
52975         AC_SEARCH_LIBS call for nanosleep.
52976         (LIB_NANOSLEEP): Set and AC_SUBST.
52977
52978 2000-05-06  Jim Meyering  <meyering@lucent.com>
52979
52980         * lib/strnlen.c: Undefine __strnlen and strnlen.
52981         [!weak_alias]: Define __strnlen to strnlen.
52982
52983         * lib/atexit.c: New file, from libiberty.
52984
52985 2000-05-06  Jim Meyering  <meyering@lucent.com>
52986
52987         * lib/closeout.c (close_stdout_status): Also check for errors on the
52988         stderr stream.
52989
52990 2000-05-05  Jim Meyering  <meyering@lucent.com>
52991
52992         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
52993         AC_SEARCH_LIBS call for clock_gettime.
52994         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
52995
52996         * m4/search-libs.m4: Update from autoconf.
52997
52998         su doesn't work on Solaris 2.6.
52999         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
53000         <shadow.h>.  Reported by Dragos Harabor.
53001
53002 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
53003
53004         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
53005         memcpy instead of xmalloc, xrealloc, path_concat.
53006         (locale_charset): Treat empty environment variables as absent.
53007         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
53008
53009 2000-05-04  Jim Meyering  <meyering@lucent.com>
53010
53011         * lib/getopt.c: Update from glibc.
53012         * lib/obstack.c: Likewise.
53013         * lib/obstack.h: Likewise.
53014         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
53015         file
53016
53017         * lib/regex.h: Likewise.
53018         * lib/strndup.c: Likewise.
53019         * lib/strnlen.c: New file, from glibc.
53020
53021 2000-05-03  Jim Meyering  <meyering@lucent.com>
53022
53023         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
53024
53025 2000-05-02  Paul Eggert  <eggert@twinsun.com>
53026
53027         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
53028         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
53029         compile-time test, rather than inspecting host and OS, to
53030         decide whether to define _LARGEFILE_SOURCE.
53031
53032 2000-05-01  Jim Meyering  <meyering@lucent.com>
53033
53034         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
53035
53036         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
53037         Based on a patch from Bruno Haible.
53038
53039 2000-05-01  Jim Meyering  <meyering@lucent.com>
53040
53041         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
53042
53043 2000-04-29  Jim Meyering  <meyering@lucent.com>
53044
53045         * lib/path-concat.c: Declare strdup only if it's not defined.
53046         * lib/canon-host.c: Likewise.
53047
53048 2000-04-28  Jim Meyering  <meyering@lucent.com>
53049
53050         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
53051         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
53052         is included first, then limits.h is included by locale.h by libintl.h.
53053         From John David Anglin.
53054
53055 2000-04-25  Jim Meyering  <meyering@lucent.com>
53056
53057         * lib/makepath.c (S_IRWXUGO): Define.
53058         (make_path): Always perform explicit chmod if MODE specifies any
53059         of the `special' permission bits.  Prompted by a bug report against
53060         install from Mate Wierdl and Joost van Baal.
53061
53062 2000-04-18  Jim Meyering  <meyering@lucent.com>
53063
53064         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
53065         (jm_PREREQ): Use it.
53066
53067 2000-04-18  Jim Meyering  <meyering@lucent.com>
53068
53069         * lib/README: New file.
53070
53071         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
53072         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
53073
53074 2000-04-17  Jim Meyering  <meyering@lucent.com>
53075
53076         Get it right :-)
53077         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
53078         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
53079         Suggestion from Akim Demaille.
53080
53081 2000-04-17  Jim Meyering  <meyering@lucent.com>
53082
53083         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
53084         the definition of it to rpl_strftime also defined-away the system's
53085         declaration.
53086
53087 2000-04-15  Jim Meyering  <meyering@lucent.com>
53088
53089         Use `C' to denote so-called `contiguous' files, the same way
53090         that tar does.
53091         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
53092         (ftypelet): Use S_ISCTG.
53093         From Michael Deutschmann.
53094
53095 2000-04-14  Jim Meyering  <meyering@lucent.com>
53096
53097         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
53098         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
53099         clobbered.
53100
53101 2000-04-14  Jim Meyering  <meyering@lucent.com>
53102
53103         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
53104
53105 2000-04-13  Jim Meyering  <meyering@lucent.com>
53106
53107         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
53108         AH_VERBATIM to insert required #ifndef into config.h.in.
53109         Suggestion from Akim Demaille.
53110
53111 2000-04-12  Jim Meyering  <meyering@lucent.com>
53112
53113         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
53114         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
53115         Christian Krackowizer.
53116
53117         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
53118         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
53119         (AC_SYS_LARGEFILE): Require.
53120         (AM_C_PROTOTYPES): Require.
53121
53122 2000-04-08  Jim Meyering  <meyering@lucent.com>
53123
53124         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
53125         names don't conflict.  Reported by Eli Zaretskii.
53126
53127 2000-04-07  Jim Meyering  <meyering@lucent.com>
53128
53129         * lib/putenv.c: Move inclusion of errno.h so it follows that of
53130         sys/types.h, to work around system header problems on AIX 3.2.5.
53131         From Bruno Haible.
53132
53133 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
53134
53135         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
53136         bug.  Deal with the different error behavior of Irix iconv.
53137
53138 2000-04-05  Paul Eggert  <eggert@twinsun.com>
53139
53140         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
53141         IRIX if the installer said otherwise.
53142
53143 2000-04-05  Jim Meyering  <meyering@lucent.com>
53144
53145         Portability tweaks required for ultrix4.3.
53146         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
53147         (jm_CHECK_DECLS): Add getutent to the list of functions.
53148         (_jm_DECL_HEADERS): Add utmpx.h.
53149         From John David Anglin.
53150
53151         * m4/strftime.m4: Back out the 2000-04-02 change.
53152         Instead of that change, simply undefine putenv in the test program.
53153
53154 2000-04-05  Jim Meyering  <meyering@lucent.com>
53155
53156         Portability tweaks required for ultrix4.3.
53157         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
53158         getutent.
53159         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
53160         * lib/canon-host.c: Declare strdup.
53161         * lib/path-concat.c: Likewise.
53162         From John David Anglin.
53163
53164 2000-04-04  Jim Meyering  <meyering@lucent.com>
53165
53166         Be more DOS 8.3-friendly.
53167         * lib/ref-add.sin: Renamed from ref-add.sed.in.
53168         * lib/ref-del.sin: Renamed from ref-del.sed.in.
53169         * lib/Makefile.am: Reflect renaming.
53170         Reported by Eli Zaretskii.
53171
53172         Use a temporary file name that won't clash with `charset.alias'
53173         in the DOS 8.3 name space.
53174         * lib/Makefile.am (charset_tmp): Define.
53175         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
53176         (uninstall-local): Likewise.
53177         Reported by Eli Zaretskii.
53178
53179 2000-04-03  Jim Meyering  <meyering@lucent.com>
53180
53181         * m4/gettext.m4: Fix typo in comment.
53182
53183         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
53184         textutils/configure.in).  Suggestion from Paul Eggert.
53185         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
53186
53187 2000-04-02  Paul Eggert  <eggert@twinsun.com>
53188
53189         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
53190         variable in the shell rather than using putenv, which isn't
53191         portable.  This avoids the configure-time inter-test dependency
53192         on the potentially-renamed putenv function.
53193
53194 2000-03-30  Paul Eggert  <eggert@twinsun.com>
53195
53196         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
53197         before checking struct stat.st_blksize, so that
53198         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
53199
53200 2000-03-29  Paul Eggert  <eggert@twinsun.com>
53201
53202         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
53203         since strftime.c uses HAVE_STRFTIME to decide whether to use
53204         the underlying strftime.
53205
53206 2000-03-29  Paul Eggert  <eggert@twinsun.com>
53207
53208         * lib/time/strftime.c (my_strftime): Make sure we call the system
53209         strftime, not ourselves, when invoking the underlying strftime.
53210
53211 2000-03-24  Jim Meyering  <meyering@lucent.com>
53212
53213         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
53214         (charset_alias): Define.
53215         (install-exec-local): Factor out common code.
53216         (uninstall-local): Split lines longer than 80.
53217         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
53218         (SUFFIXES): Define.
53219         (.sed.in.sed): New rule.  Don't redirect directly to $@.
53220         (CLEANFILES): Add ref-add.sed and ref-del.sed.
53221
53222 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
53223
53224         * lib/config.charset: Output a line containing "Packages using this
53225         file".
53226         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
53227         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
53228         ref-del.sed): New rules.
53229
53230 2000-03-17  Jim Meyering  <meyering@lucent.com>
53231
53232         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
53233         Otherwise, include <strings.h>
53234
53235 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
53236
53237         * lib/unicodeio.c (utf8_wctomb): New function.
53238         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
53239         format instead of in UCS-4 with platform dependent endianness.
53240
53241 2000-03-10  Jim Meyering  <meyering@lucent.com>
53242
53243         * m4/lib-check.m4: Look for getspnam in -lgen, too.
53244         From Marco Franzen.
53245
53246 2000-03-07  Paul Eggert  <eggert@twinsun.com>
53247
53248         * lib/savedir.c (savedir): Work even if directory size is
53249         negative; this can happen with some screwy NFS configurations.
53250
53251 2000-03-06  Jim Meyering  <meyering@lucent.com>
53252
53253         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
53254         if it's NULL (because we ran out of memory).  From Bruno Haible.
53255
53256 2000-03-05  Jim Meyering  <meyering@lucent.com>
53257
53258         * lib/localcharset.c ("path-concat.h"): Include.
53259         (get_charset_aliases): Use path_concat instead of ANSI string
53260         concatenation.
53261
53262         * lib/unicodeio.h (PARAMS): Define.
53263         Use it to guard prototype.
53264
53265 2000-03-04  Jim Meyering  <meyering@lucent.com>
53266
53267         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
53268         for lib/localcharset.c.
53269
53270 2000-03-04  Jim Meyering  <meyering@lucent.com>
53271
53272         * lib/Makefile.am (install-exec-local): Create $(libdir) before
53273         installing into it.
53274         (uninstall-local): Uncomment this rule so `make distcheck' works
53275         once again.
53276
53277         * lib/unicodeio.c (<errno.h>): Include it.
53278         (errno): Declare if not defined.
53279
53280         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
53281
53282         * lib/config.charset: New version, incorporating remarks from a linux
53283         i18n mailing list.  From Bruno Haible.
53284
53285 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
53286
53287         * m4/codeset.m4: New file.
53288         * m4/iconv.m4: New file.
53289         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
53290
53291 2000-03-03  Jim Meyering  <meyering@lucent.com>
53292
53293         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
53294
53295 2000-03-02  Jim Meyering  <meyering@lucent.com>
53296
53297         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
53298         the messages come out on separate lines.
53299
53300         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
53301         rather than jm_CHECK_DECLARATIONS.
53302         * m4/decl.m4: Remove now-unused file.
53303
53304         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
53305         geteuid.
53306
53307 2000-03-02  Jim Meyering  <meyering@lucent.com>
53308
53309         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
53310
53311 2000-03-01  Jim Meyering  <meyering@lucent.com>
53312
53313         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
53314         * lib/unicodeio.c: Likewise.
53315
53316 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
53317
53318         * lib/config.charset: New file.
53319         * lib/localcharset.c: New file.
53320         * lib/unicodeio.h, lib/unicodeio.c: New files.
53321         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
53322         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
53323         (noinst_HEADERS): Add unicodeio.h.
53324         (all-local, install-exec-local, charset.alias): New targets.
53325
53326 2000-02-28  Paul Eggert  <eggert@twinsun.com>
53327
53328         * lib/quotearg.c (ALERT_CHAR): New macro.
53329         (quotearg_buffer_restyled): Use it.
53330
53331 2000-02-27  Jim Meyering  <meyering@lucent.com>
53332
53333         * m4/check-decl.m4: Add getenv to the list.
53334
53335 2000-02-27  Jim Meyering  <meyering@lucent.com>
53336
53337         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
53338         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
53339
53340         * lib/backupfile.c: Guard inclusion of stdlib.h with
53341         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
53342         Declare malloc if needed.
53343
53344         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
53345         `#ifndef HAVE_DECL..'
53346         now that autoconf always defines the HAVE_DECL_ symbols.
53347         * lib/human.c: Likewise.
53348         * lib/same.c: Likewise.
53349         * lib/strtoumax.c: Likewise.
53350
53351         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
53352         declaration check was not run.
53353         * lib/hash.c: Likewise.
53354         * lib/human.c: Likewise.
53355         * lib/same.c: Likewise.
53356         * lib/strtoumax.c: Likewise.
53357
53358         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
53359         `.', then first look up the entire `.'-containing string as a login
53360         name.
53361
53362 2000-02-23  Jim Meyering  <meyering@lucent.com>
53363
53364         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
53365         in place of my hack.
53366
53367 2000-02-18  Paul Eggert  <eggert@twinsun.com>
53368
53369         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
53370         (textint): New typedef.
53371         (parser_control): Member year changed from int to textint.
53372         All uses changed.
53373         (YYSTYPE): Removed; replaced by %union with int and textint members.
53374         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
53375         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
53376         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
53377         (tSNUMBER, tUNUMBER): Now of type <textintval>.
53378         (date, number, to_year): Use width of number in digits, not its value,
53379         to determine whether it's a 2-digit year, or a 2-digit time.
53380         (yylex): Store number of digits of numeric tokens.
53381         Reported by John Kendall.
53382
53383         (parser_control): Changed from struct parser_control to typedef (for
53384         consistency).  All uses changed.
53385
53386         (tID): Removed; not used.
53387         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
53388
53389 2000-02-14  Paul Eggert  <eggert@twinsun.com>
53390
53391         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
53392         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
53393
53394 2000-02-12  Jim Meyering  <meyering@lucent.com>
53395
53396         * lib/userspec.c (ISDIGIT): Define it.
53397         (isdigit): Remove definition.
53398         (is_number): Use ISDIGIT, not isdigit.
53399         <libintl.h>: Include.
53400         (_ and N_): Define.
53401         (parse_user_spec): Mark translatable strings.
53402
53403 2000-02-10  Jim Meyering  <meyering@lucent.com>
53404
53405         With these changes, nanosleep.[ch] are finally enough like the other
53406         lib/* replacement files to compile on a few more losing systems.
53407
53408         * lib/nanosleep.h: Don't include config.h.
53409         Remove prototype from declaration of nanosleep.
53410         (PARAMS): Remove now-unneeded definition.
53411         * lib/nanosleep.c: #undef nanosleep.
53412         (rpl_nanosleep): Rename from nanosleep.
53413
53414 2000-02-10  Jim Meyering  <meyering@lucent.com>
53415
53416         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
53417         gnu_nanosleep to rpl_nanosleep.
53418
53419 2000-02-09  Jim Meyering  <meyering@lucent.com>
53420
53421         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
53422         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
53423
53424 2000-02-08  Akim Demaille  <akim@epita.fr>
53425
53426         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
53427         `[' and `]' and remove uses of `changequote'.
53428         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
53429         (AC_SYS_LARGEFILE): Likewise.
53430         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
53431         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
53432         of changequote.
53433         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
53434         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
53435         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
53436         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
53437
53438 2000-02-05  Jim Meyering  <meyering@lucent.com>
53439
53440         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
53441         Remove explicit use of AC_HEADER_TIME.  It is required by
53442         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
53443         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
53444         in autoconf whereby the expansion of the latter ended up preceding
53445         the expansion of its prerequisite, AC_HEADER_TIME.
53446         Reported by Volker Borchert.
53447
53448 2000-02-03  Jim Meyering  <meyering@lucent.com>
53449
53450         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
53451
53452 2000-02-03  Jim Meyering  <meyering@lucent.com>
53453
53454         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
53455         rather than with `#if HAVE_UTMPNAME'.
53456
53457 2000-02-02  Jim Meyering  <meyering@lucent.com>
53458
53459         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
53460         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
53461         Reported by Eli Zaretskii.
53462
53463 2000-02-01  Jim Meyering  <meyering@lucent.com>
53464
53465         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
53466
53467 2000-01-31  Jim Meyering  <meyering@lucent.com>
53468
53469         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
53470         functions.  Add the time.h and sys/time.h headers along with the
53471         AC_REQUIRE'ment of AC_HEADER_TIME.
53472
53473 2000-01-31  Jim Meyering  <meyering@lucent.com>
53474
53475         * lib/nanosleep.h (nanosleep): Guard declaration with
53476         `#if ! HAVE_DECL_NANOSLEEP'.
53477         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
53478         the declaration in that vendor's sys/timers.h.
53479         Reported by Christian Krackowizer.
53480
53481         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
53482         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
53483         (ISPRINT): Likewise.
53484         Reported by Tom Tromey.
53485
53486 2000-01-30  Jim Meyering  <meyering@lucent.com>
53487
53488         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
53489
53490         * m4/prereq.m4 (utmp_includes): Define.
53491         Check for ut_user and ut_name members in both struct utmpx
53492         and struct utmp.
53493
53494 2000-01-30  Jim Meyering  <meyering@lucent.com>
53495
53496         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
53497         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
53498         header files where only utmpx.ut_user is declared.
53499
53500         * lib/readutmp.h (UT_USER): Define.
53501
53502 2000-01-29  Jim Meyering  <meyering@lucent.com>
53503
53504         * m4/lib-check.m4: New file containing library-related checks from
53505         fileutils and sh-utils (textutils had none).
53506
53507 2000-01-28  Jim Meyering  <meyering@lucent.com>
53508
53509         * m4/perl.m4: Change format of warning message to look more like that
53510         from the missing script.  Suggestion from François Pinard.
53511
53512 2000-01-25  Jim Meyering  <meyering@lucent.com>
53513
53514         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
53515         well as time.h in the compile check.
53516         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
53517         Fix typo in cross-compiling case: s/yes/no/.
53518
53519 2000-01-23  Jim Meyering  <meyering@lucent.com>
53520
53521         * m4/jm-macros.m4: Move df-related tests here from
53522         fileutils/configure.in
53523
53524         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
53525         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
53526
53527         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
53528         s/space/ac_fsusage_space/.
53529         (jm_FILE_SYSTEM_USAGE): Take two parameters.
53530
53531         * m4/ftruncate.m4: New file (derived from part of
53532         fileutils/configure.in).
53533         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
53534         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
53535
53536         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
53537         AC_SUBST these here, rather than just in sh-util/configure.in, so
53538         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
53539         all the same.
53540         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
53541         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
53542         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
53543         (AC_SUBST(POW_LIBM)): Likewise.
53544         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
53545
53546 2000-01-23  Jim Meyering  <meyering@lucent.com>
53547
53548         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
53549         obstack.c.
53550
53551 2000-01-22  Jim Meyering  <meyering@lucent.com>
53552
53553         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
53554
53555         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
53556
53557         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
53558         configure.in
53559         (AC_CHECK_HEADERS): Likewise for sh-utils.
53560         (AC_CHECK_HEADERS): Likewise for textutils.
53561         Merge the three lists of headers.
53562
53563         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
53564         from fileutils' configure.in.
53565
53566         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
53567         code. Moved tests into their own function (_jm_DECL_HEADERS) in
53568         check-decl.m4.
53569
53570         * m4/check-decl.m4: Use #if rather than #ifdef.
53571         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
53572         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
53573         (_jm_DECL_HEADERS): Define new function.
53574         (jm_CHECK_DECLARATIONS): Require it.
53575
53576 2000-01-22  Jim Meyering  <meyering@lucent.com>
53577
53578         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
53579         [! HAVE_DECL_STRTOULL]: Declare strtoull.
53580         Required for some AIX systems.  Reported by Christian Krackowizer.
53581         [TESTING] (main): New function.
53582
53583         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
53584         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
53585         letters.
53586
53587         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
53588         iswprint.
53589
53590         * lib/strverscmp.c (ISDIGIT): Define.
53591         (strverscmp): Use ISDIGIT, not isdigit.
53592
53593 2000-01-19  Jim Meyering  <meyering@lucent.com>
53594
53595         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
53596         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
53597         defines `struct timespec' in <sys/time.h>
53598
53599         * m4/c-bs-a.m4: Remove uses of changequote altogether.
53600         Thanks to Akim for explaining.
53601
53602 2000-01-17  Paul Eggert  <eggert@twinsun.com>
53603
53604         * lib/nanosleep.c (nanosleep):
53605         Don't use SA_INTERRUPT to decide whether to call sigaction, as
53606         POSIX.1 doesn't require SA_INTERRUPT and some systems
53607         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
53608         it's been part of POSIX.1 since day 1 (in 1988).
53609
53610 2000-01-17  Jim Meyering  <meyering@lucent.com>
53611
53612         * lib/interlock: Remove unused file.  Reported by François Pinard.
53613
53614 2000-01-16  Paul Eggert  <eggert@twinsun.com>
53615
53616         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
53617         alert, backslash, formfeed, and vertical tab unnecessarily in
53618         shell quoting style.
53619
53620 2000-01-16  Jim Meyering  <meyering@lucent.com>
53621
53622         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
53623         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
53624         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
53625         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
53626
53627 2000-01-16  Jim Meyering  <meyering@lucent.com>
53628
53629         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
53630         because the latter didn't work.
53631
53632 2000-01-15  Jim Meyering  <meyering@lucent.com>
53633
53634         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
53635         (AC_REPLACE_FUNCS): Add memcpy and memset.
53636         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
53637         Add strpbrk.
53638         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
53639
53640 2000-01-12  Jim Meyering  <meyering@lucent.com>
53641
53642         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
53643         (jm_PREREQ): Use it.
53644         (jm_PREREQ_READUTMP): New macro.
53645         (jm_PREREQ): Use it.
53646
53647 2000-01-11  Paul Eggert  <eggert@twinsun.com>
53648
53649         Quote multibyte characters correctly.
53650         * m4/c-bs-a.m4: New file.
53651         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
53652         (jm_PREREQ): Use it.
53653
53654 2000-01-11  Paul Eggert  <eggert@twinsun.com>
53655
53656         * m4/uintmax_t.m4: Port to autoconf 2.13.
53657
53658 2000-01-08  Jim Meyering  <meyering@ascend.com>
53659
53660         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
53661         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
53662
53663 2000-01-04  Jim Meyering  <meyering@ascend.com>
53664
53665         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
53666         jm_STRUCT_DIRENT_D_TYPE.
53667         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
53668         jm_STRUCT_DIRENT_D_INO.
53669         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
53670         jm_STRUCT_UTIMBUF.
53671         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
53672         renamings.
53673         * m4/utime.m4: Likewise.
53674
53675         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
53676         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
53677
53678 2000-01-03  Paul Eggert  <eggert@twinsun.com>
53679
53680         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
53681         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
53682
53683 2000-01-02  Jim Meyering  <meyering@ascend.com>
53684
53685         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
53686         remember if this is necessary.
53687
53688 1999-12-26  Jim Meyering  <meyering@ascend.com>
53689
53690         * m4/jm-macros.m4: Use it here.
53691         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
53692
53693 1999-12-23  Jim Meyering  <meyering@ascend.com>
53694
53695         * m4/jm-macros.m4: Check for clock_gettime (moved from
53696         fileutils/configure.in)
53697         Check for gettimeofday.
53698
53699 1999-12-20  Jim Meyering  <meyering@ascend.com>
53700
53701         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
53702         autoconf-2.14a-1999-12-20.
53703
53704 1999-12-19  Jim Meyering  <meyering@ascend.com>
53705
53706         * m4/lstat-slash.m4: New file.
53707         * m4/jm-macros.m4: Use the new macro:
53708         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
53709
53710 1999-12-07  Jim Meyering  <meyering@ascend.com>
53711
53712         * m4/perl.m4: Require that File::Compare be available, too.
53713         Too many systems seem to lack it.
53714
53715         * m4/strftime.m4: Add checks for most of the cpp macros tested in
53716         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
53717
53718 1999-11-18  Paul Eggert  <eggert@twinsun.com>
53719
53720         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
53721         problem with the QNX 4.25 shell, which doesn't propagate exit
53722         status of failed commands inside shell assignments.
53723
53724 1999-11-17  Jim Meyering  <meyering@ascend.com>
53725
53726         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
53727
53728 1999-11-07  Jim Meyering  <meyering@ascend.com>
53729
53730         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
53731
53732 1999-11-06  Jim Meyering  <meyering@ascend.com>
53733
53734         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
53735         * m4/jm-macros.m4 (jm_MACROS): Use it here.
53736
53737 1999-11-05  Jim Meyering  <meyering@ascend.com>
53738
53739         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
53740         configure.in of textutils, fileutils, and sh-utils into this one
53741         (shared between those packages) file.
53742         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
53743         AC_STRUCT_ST_BLKSIZE.
53744
53745 1999-11-03  Jim Meyering  <meyering@ascend.com>
53746
53747         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
53748         of AC_CHECK_TYPE checks includes unistd.h.
53749         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
53750         Suggestion from Akim Demaille.
53751
53752 1999-10-30  Jim Meyering  <meyering@ascend.com>
53753
53754         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
53755         m4-quoted string.
53756         * m4/ls-mntd-fs.m4: Likewise.
53757         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
53758         * m4/jm-winsz1.m4: Likewise.
53759
53760         * m4/const.m4: Remove file, since the fix made it into the experimental
53761         version of autoconf.
53762         * m4/mktime.m4: Likewise.
53763
53764         * m4/check-type.m4: Remove file, now that the latest version of
53765         AC_CHECK_TYPE takes a third arg to specify additional #includes.
53766
53767         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
53768         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
53769         AC_CHECK_TYPE.
53770
53771 1999-10-04  Jim Meyering  <meyering@ascend.com>
53772
53773         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
53774
53775 1999-09-22  Paul Eggert  <eggert@twinsun.com>
53776
53777         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
53778         2.95.1 bug with HP-UX 10.20.
53779
53780 1999-09-17  Jim Meyering  <meyering@ascend.com>
53781
53782         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
53783         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
53784         due to missing strdup (against sh-utils-2.0).
53785
53786 1999-08-29  Jim Meyering  <meyering@ascend.com>
53787
53788         * m4/jm-macros.m4: Require jm_BISON.
53789         * m4/bison.m4: New file.
53790
53791 1999-08-17  Paul Eggert  <eggert@twinsun.com>
53792
53793         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
53794         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
53795
53796 1999-08-05  Jim Meyering  <meyering@ascend.com>
53797
53798         * m4/getline.m4: Rename test file from conftestdata to conftest.data
53799         to avoid conflicts with `conftest' on 8+3 filesystems.
53800         Suggestion from Eli Zaretskii.
53801
53802 1999-08-04  Jim Meyering  <meyering@ascend.com>
53803
53804         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
53805         fileutils and sh-utils (textutils's getline test was inadequate).
53806         (AM_FUNC_GETLINE): Run this test.
53807         (AC_CHECK_FUNCS): Check for getdelim.
53808         Reported by Bob Proulx.
53809
53810 1999-08-02  Jim Meyering  <meyering@ascend.com>
53811
53812         * m4/jm-macros.m4: Add a comment.
53813
53814 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53815
53816         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
53817         <inttypes.h> defines strtoumax as a macro (and not as a
53818         function).
53819
53820 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53821
53822         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
53823         that we can shift, multiply and divide unsigned long long
53824         values; Ultrix cc can't do it.
53825
53826 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53827
53828         * m4/mktime.m4: New file, which is a preview of what should appear
53829         in the next public autoconf release.
53830
53831 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53832
53833         * m4/lfs.m4: Remove this file.
53834         * m4/largefile.m4: New file.  It contains the old contents of
53835         lfs.m4, except that all names with prefix AC_LFS have been
53836         changed to use the prefix AC_SYS_LARGEFILE instead, to be
53837         compatible with future autoconf versions.  Also, some minor m4
53838         quoting problems have been fixed.
53839
53840 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53841
53842         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
53843         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
53844         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
53845         and simplify the shell code.
53846
53847 1999-08-01  Jim Meyering  <meyering@ascend.com>
53848
53849         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
53850         m4.
53851
53852 1999-07-20  Jim Meyering  <meyering@ascend.com>
53853
53854         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
53855
53856 1999-07-15  Jim Meyering  <meyering@ascend.com>
53857
53858         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
53859
53860 1999-05-22  Jim Meyering  <meyering@ascend.com>
53861
53862         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
53863
53864 1999-05-20  Jim Meyering  <meyering@ascend.com>
53865
53866         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
53867         Add a colon after each `then' in case $4 is empty.
53868
53869 1999-05-16  Jim Meyering  <meyering@ascend.com>
53870
53871         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
53872
53873 1999-05-10  Jim Meyering  <meyering@ascend.com>
53874
53875         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
53876
53877         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
53878         AC_FUNC_MKTIME.
53879
53880 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
53881
53882         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
53883
53884 1999-05-04  Paul Eggert  <eggert@twinsun.com>
53885
53886         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
53887         not CPPFLAGS, so that linking works correctly in IRIX.
53888
53889 1999-04-30  Paul Eggert  <eggert@twinsun.com>
53890
53891         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
53892
53893 1999-04-20  Paul Eggert  <eggert@twinsun.com>
53894
53895         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
53896         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
53897         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
53898         jm_AC_TYPE_UNSIGNED_LONG_LONG.
53899         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
53900
53901         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
53902
53903 1999-04-20  Jim Meyering  <meyering@ascend.com>
53904
53905         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
53906         AC_REPLACE xstroull if necessary.  From Paul Eggert.
53907         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
53908
53909 1999-04-18  Jim Meyering  <meyering@ascend.com>
53910
53911         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
53912         * m4/jm-macros.m4: Use it.
53913
53914 1999-04-06  Jim Meyering  <meyering@ascend.com>
53915
53916         * m4/strftime.m4: Remove test for %f.
53917
53918 1999-03-29  Jim Meyering  <meyering@ascend.com>
53919
53920         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
53921         superset of the AC_TYPE_* checks in the textutils, fileutils,
53922         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
53923         AC_TYPE_PID_T.
53924
53925 1999-03-28  Jim Meyering  <meyering@ascend.com>
53926
53927         * m4/jm-macros.m4: Define GNU_PACKAGE here.
53928         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
53929         replaced e.g., in the *.sh files of the sh-utils.
53930
53931 1999-03-20  Jim Meyering  <meyering@ascend.com>
53932
53933         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
53934         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
53935         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
53936
53937 1999-03-19  Jim Meyering  <meyering@ascend.com>
53938
53939         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
53940
53941 1999-03-12  Jim Meyering  <meyering@ascend.com>
53942
53943         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
53944
53945 1999-03-07  Jim Meyering  <meyering@ascend.com>
53946
53947         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
53948         declared.
53949
53950 1999-02-17  Jim Meyering  <meyering@ascend.com>
53951
53952         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
53953         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
53954
53955 1999-02-07  Jim Meyering  <meyering@ascend.com>
53956
53957         * m4/group-member.m4: New file -- extracted from sh-utils'
53958         configure.in.
53959
53960         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
53961         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
53962
53963 1999-02-06  Jim Meyering  <meyering@ascend.com>
53964
53965         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
53966         * m4/fnmatch.m4: Likewise.
53967         * m4/getgroups.m4: Likewise.
53968         * m4/lstat.m4: Likewise.
53969         * m4/malloc.m4: Likewise.
53970         * m4/putenv.m4: Likewise.
53971         * m4/realloc.m4: Likewise.
53972         * m4/regex.m4: Likewise.
53973         * m4/stat.m4: Likewise.
53974         * m4/strftime.m4: Likewise.
53975         Suggestion from Alain Magloire.
53976
53977         * m4/chown.m4: Use `.$ac_objext', not `.o'.
53978         * m4/fnmatch.m4: Likewise.
53979         * m4/getgroups.m4: Likewise.
53980         * m4/getline.m4: Likewise.
53981         * m4/lstat.m4: Likewise.
53982         * m4/malloc.m4: Likewise.
53983         * m4/memcmp.m4: Likewise.
53984         * m4/putenv.m4: Likewise.
53985         * m4/realloc.m4: Likewise.
53986         * m4/regex.m4: Likewise.
53987         * m4/stat.m4: Likewise.
53988         * m4/strftime.m4: Likewise.
53989         Suggestion from Alain Magloire.
53990
53991         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
53992         an argument.
53993
53994         * m4/regex.m4: Add a run-time Test for proper operation of
53995         re_compile_pattern.
53996
53997 1999-01-31  Jim Meyering  <meyering@ascend.com>
53998
53999         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
54000
54001 1999-01-30  Jim Meyering  <meyering@ascend.com>
54002
54003         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
54004
54005         * m4/jm-mktime.m4: Make this a wrapper around the official
54006         AM_FUNC_MKTIME rather than my private copy, now that the official one
54007         is up to date.
54008         * m4/mktime.m4: Remove file.
54009
54010         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
54011         * m4/uptime.m4: Likewise.
54012         * m4/uintmax_t.m4: Likewise.
54013
54014 1999-01-28  Jim Meyering  <meyering@ascend.com>
54015
54016         * m4/jm-macros.m4: Use jm_AFS.
54017         * m4/afs.m4: New file (from fileutils' configure.in).
54018
54019         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
54020         * m4/chown.m4: Likewise.
54021         * m4/d-ino.m4: Likewise.
54022         * m4/d-type.m4: Likewise.
54023         * m4/fnmatch.m4: Likewise.
54024         * m4/getgroups.m4: Likewise.
54025         * m4/gettext.m4: Likewise.
54026         * m4/jm-mktime.m4: Likewise.
54027         * m4/jm-winsz2.m4: Likewise.
54028         * m4/lcmessage.m4: Likewise.
54029         * m4/ls-mntd-fs.m4: Likewise.
54030         * m4/malloc.m4: Likewise.
54031         * m4/memcmp.m4: Likewise.
54032         * m4/putenv.m4: Likewise.
54033         * m4/realloc.m4: Likewise.
54034         * m4/st_mtim.m4: Likewise.
54035         * m4/strftime.m4: Likewise.
54036
54037 1999-01-16  Jim Meyering  <meyering@ascend.com>
54038
54039         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
54040         (ARGMATCH_DIE_DECL): Define.
54041
54042 1999-01-12  Jim Meyering  <meyering@ascend.com>
54043
54044         * m4/Makefile.am.in: Rewrite to avoid using fmt.
54045         Reported by Lars Hecking.
54046
54047 1999-01-10  Jim Meyering  <meyering@ascend.com>
54048
54049         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
54050         gross kludge.
54051         * m4/inttypes_h.m4: Likewise.
54052         * m4/lstat.m4: Likewise.
54053         * m4/malloc.m4: Likewise.
54054         * m4/readdir.m4: Likewise.
54055         * m4/realloc.m4: Likewise.
54056         * m4/st_dm_mode.m4: Likewise.
54057         * m4/stat.m4: Likewise.
54058         * m4/utimbuf.m4: Likewise.
54059         * m4/utimes.m4: Likewise.
54060
54061         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
54062         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
54063         comments in config.h.in are meaningful.
54064
54065         * m4/jm-macros.m4: Require autoconf-2.13 here.
54066
54067         * m4/regex.m4: By default, don't use the included regex.c on systems
54068         with glibc 2.  Suggestion from Uli Drepper.
54069
54070 1999-01-02  Jim Meyering  <meyering@ascend.com>
54071
54072         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
54073
54074 1998-12-18  Jim Meyering  <meyering@ascend.com>
54075
54076         * m4/Makefile.am.in (Makefile.am): Simplify rule.
54077         Based on a suggestion from Lars Hecking.
54078
54079 1998-11-16  Paul Eggert  <eggert@twinsun.com>
54080
54081         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
54082
54083 1998-11-16  Jim Meyering  <meyering@ascend.com>
54084
54085         * m4/lfs.m4: Double-quote the `uname...` expression.
54086
54087 1998-11-14  Jim Meyering  <meyering@ascend.com>
54088
54089         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
54090         * m4/stat.m4: Likewise.
54091
54092 1998-11-03  Jim Meyering  <meyering@ascend.com>
54093
54094         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
54095         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
54096
54097 1998-10-18  Jim Meyering  <meyering@ascend.com>
54098
54099         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
54100
54101 1998-10-17  Jim Meyering  <meyering@ascend.com>
54102
54103         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
54104         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
54105         calls for those previously hard-coded headers.  Instead, take a new
54106         parameter.
54107         (jm_CHECK_DECLARATIONS): Reflect interface change.
54108         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
54109         (jm_CHECK_DECL_LOCALTIME_R): New macro.
54110
54111         * m4/mktime.m4: Test for spring-forward gap before long-running test.
54112
54113 1998-10-14  Jim Meyering  <meyering@ascend.com>
54114
54115         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
54116         instead of "TZ=America/Vancouver".  From Paul Eggert.
54117
54118 1998-10-11  Jim Meyering  <meyering@ascend.com>
54119
54120         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
54121         This adds a test for a recently added compatibility fix for mktime.c.
54122         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
54123
54124 1998-09-27  Jim Meyering  <meyering@ascend.com>
54125
54126         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
54127
54128         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
54129         ../configure.in, including a change from Gordon Matzigkeit to allow
54130         cross-compiling for the Hurd.
54131
54132         * m4/glibc.m4: New file/macro to test for the GNU C Library
54133         versions 1 and 2.  From Gordon Matzigkeit.
54134         Indent.
54135
54136 1998-09-21  Jim Meyering  <meyering@ascend.com>
54137
54138         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
54139
54140 1998-08-18  Paul Eggert  <eggert@twinsun.com>
54141
54142         Port nanosecond-resolution times to UnixWare 2.1.2 and
54143         pedantic Solaris 2.6.
54144
54145         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
54146         AC_STRUCT_ST_MTIM.
54147         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
54148         Generate name of ns member, instead of just 1 or undef.
54149         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
54150
54151 1998-08-15  Jim Meyering  <meyering@ascend.com>
54152
54153         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
54154         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
54155         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
54156         instead of jm_TYPE_SSIZE_T.
54157
54158 1998-08-12  Jim Meyering  <meyering@ascend.com>
54159
54160         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
54161
54162 1998-08-02  Jim Meyering  <meyering@ascend.com>
54163
54164         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
54165         in acconfig.h manually.
54166
54167 1998-07-31  Paul Eggert  <eggert@twinsun.com>
54168
54169         * m4/st_mtim.m4: New file.
54170
54171 1998-07-28  Jim Meyering  <meyering@ascend.com>
54172
54173         * m4/utimes.m4: Undef stat.
54174
54175 1998-07-25  Jim Meyering  <meyering@ascend.com>
54176
54177         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
54178         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
54179
54180 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
54181
54182         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
54183         uid and gid actually remain unchanged.
54184
54185 1998-07-07  Jim Meyering  <meyering@ascend.com>
54186
54187         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
54188
54189 1998-07-04  Jim Meyering  <meyering@ascend.com>
54190
54191         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
54192         to prove that this macro can be used in packages without regex.c.
54193
54194 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
54195
54196         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
54197         is to be used.
54198
54199 1998-07-03  Jim Meyering  <meyering@ascend.com>
54200
54201         * m4/gettext.m4: Add -lintl if it's found to be necessary.
54202
54203         * m4/gettext.m4: New file -- from gettext-0.10.35.
54204         * m4/lcmessage.m4: Likewise.
54205         * m4/progtest.m4: Likewise.
54206
54207         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
54208         * m4/jm-macros.m4: Require the new macro.
54209
54210 1998-06-29  Jim Meyering  <meyering@ascend.com>
54211
54212         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
54213         for the definition of NGROUPS (used in a system header included
54214         by sys/mount.h).
54215
54216 1998-06-28  Jim Meyering  <meyering@ascend.com>
54217
54218         * m4/ls-mntd-fs.m4: New file.
54219         * m4/fstypename.m4: New file.
54220
54221         * m4/jm-macros.m4: Require the new macro.
54222         * m4/jm-glibc-io.m4: New file.
54223
54224 1998-05-19  Jim Meyering  <meyering@ascend.com>
54225
54226         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
54227         * m4/lchown.m4: New file.
54228
54229         * m4/Makefile.am.in: New file.
54230         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
54231
54232 1998-05-14  Jim Meyering  <meyering@ascend.com>
54233
54234         * m4/Makefile.am (EXTRA_DIST): Add them.
54235         * m4/jm-macros.m4: New file.
54236         * m4/utimbuf.m4: New file.
54237
54238 1998-05-12  Jim Meyering  <meyering@ascend.com>
54239
54240         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
54241
54242 1998-05-11  Jim Meyering  <meyering@ascend.com>
54243
54244         * m4/isc-posix.m4: New file.
54245
54246 1998-05-10  Jim Meyering  <meyering@ascend.com>
54247
54248         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
54249
54250 1998-05-09  Jim Meyering  <meyering@ascend.com>
54251
54252         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
54253         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
54254         with automake.
54255
54256         * m4/ssize_t.m4: New file.
54257         * m4/mktime.m4: Remove file -- the new automake has this now.
54258
54259 1998-04-26  Jim Meyering  <meyering@ascend.com>
54260
54261         * m4/assert.m4: New file.
54262         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
54263
54264 1998-04-05  Jim Meyering  <meyering@ascend.com>
54265
54266         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
54267         (jm_PREREQ): Use it here.
54268
54269 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
54270
54271         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
54272         in acconfig.h.
54273
54274 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
54275
54276         * m4/prereq.m4: New file.
54277         * m4/error.m4: New file.
54278         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
54279
54280 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
54281
54282         * m4/getline.m4: Don't set am_cv_func_working_getline before the
54283         cache-check for the same variable -- that defeated the purpose of
54284         the test; the test program was never run.  This was a problem only
54285         on systems with losing getline functions -- HP-UX 10.20 is one.
54286         Reported by Bjorn Helgaas.
54287
54288 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
54289
54290         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
54291
54292 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
54293
54294         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
54295
54296         * m4/const.m4: New file.  Use an initializer in this declaration
54297         typedef int charset[2]; const charset x;
54298         Reported by Bob Glickstein.
54299
54300 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
54301
54302         * m4/chown.m4: Fix reversed types on -1 args to chown.
54303         From Kaveh Ghazi.
54304
54305 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
54306
54307         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
54308         Add lseek and memchr.
54309
54310         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
54311         T.E.Dickey <dickey@clark.net> said that some older preprocessors
54312         have a 20-character limit on names.
54313
54314 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
54315
54316         * m4/inttypes_h.m4: New file.
54317         * m4/uintmax_t.m4: New file.
54318         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
54319
54320
54321         -----
54322
54323         Local Variables:
54324         coding: utf-8
54325         End:
54326
54327         Copyright (C) 1997-2009 Free Software Foundation, Inc.
54328
54329         Copying and distribution of this file, with or without
54330         modification, are permitted provided the copyright notice
54331         and this notice are preserved.