Remove unused code for mempcpy.
[gnulib.git] / ChangeLog
1 2009-01-18  Bruno Haible  <bruno@clisp.org>
2
3         * lib/strftime.c (MEMPCPY): Remove unused macro.
4         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mempcpy.
5
6 2009-01-18  Martin Lambers  <marlam@marlam.de>
7
8         New module 'link'.
9         * lib/unistd.in.h (link): New declaration.
10         * lib/link.c: New file.
11         * m4/link.m4: New file.
12         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_LINK,
13         HAVE_LINK.
14         * modules/unistd (Makefile.am): Substitute GNULIB_LINK, HAVE_LINK.
15         * modules/link: New file.
16         * doc/posix-functions/link.texi: Mention the new module.
17
18 2009-01-18  Bruno Haible  <bruno@clisp.org>
19
20         * tests/test-avltree_list.c (main): Call set_program_name.
21         * tests/test-avltree_oset.c (main): Likewise.
22         * tests/test-obstack-printf.c: Include progname.h.
23         (main): Call set_program_name.
24         * tests/test-quotearg.c: Include progname.h.
25         (main): Call set_program_name.
26         * tests/test-xmemdup0.c: Include progname.h.
27         (main): Call set_program_name.
28
29 2009-01-18  Bruno Haible  <bruno@clisp.org>
30
31         New module 'alphasort'.
32         * lib/dirent.in.h (alphasort): New declaration.
33         * lib/alphasort.c: New file, from glibc with modifications.
34         * m4/alphasort.m4: New file.
35         * modules/alphasort: New file.
36         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_ALPHASORT,
37         HAVE_ALPHASORT.
38         * modules/dirent (Makefile.am): Substitute GNULIB_ALPHASORT,
39         HAVE_ALPHASORT.
40         * doc/posix-functions/alphasort.texi: Mention the new module and the
41         portability problems.
42
43 2009-01-18  Bruno Haible  <bruno@clisp.org>
44
45         New module 'scandir'.
46         * lib/dirent.in.h (scandir): New declaration.
47         * lib/scandir.c: New file, from glibc with modifications.
48         * m4/scandir.m4: New file.
49         * modules/scandir: New file.
50         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_SCANDIR,
51         HAVE_SCANDIR.
52         * modules/dirent (Makefile.am): Substitute GNULIB_SCANDIR,
53         HAVE_SCANDIR.
54         * doc/posix-functions/scandir.texi: Mention the new module and the
55         portability problems.
56
57 2009-01-17  Bruno Haible  <bruno@clisp.org>
58
59         * gnulib-tool (func_remove_prefix): Escape all dots in the prefix.
60         Update documentation.
61         (func_remove_suffix): Escape all dots in the suffix. Update
62         documentation.
63         (func_filter_filelist): Update documentation.
64         Reported by Ralf Wildenhues.
65
66 2009-01-17  Bruno Haible  <bruno@clisp.org>
67
68         * modules/dprintf-posix-tests: New file.
69         * tests/test-dprintf-posix.sh: New file.
70         * tests/test-dprintf-posix.c: New file.
71
72         New modules 'dprintf', 'dprintf-posix'.
73         * lib/stdio.in.h (dprintf): New declaration.
74         * lib/dprintf.c: New file.
75         * m4/dprintf.m4: New file.
76         * m4/dprintf-posix.m4: New file.
77         * modules/dprintf: New file.
78         * modules/dprintf-posix: New file.
79         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_DPRINTF,
80         HAVE_DPRINTF, REPLACE_DPRINTF.
81         * modules/stdio (Makefile.am): Substitute also GNULIB_DPRINTF,
82         HAVE_DPRINTF, REPLACE_DPRINTF.
83         * doc/posix-functions/dprintf.texi: Mention the new modules.
84
85 2009-01-17  Bruno Haible  <bruno@clisp.org>
86
87         * modules/vdprintf-posix-tests: New file.
88         * tests/test-vdprintf-posix.sh: New file.
89         * tests/test-vdprintf-posix.c: New file.
90
91         New modules 'vdprintf', 'vdprintf-posix'.
92         * lib/stdio.in.h (vdprintf): New declaration.
93         * lib/vdprintf.c: New file.
94         * m4/vdprintf.m4: New file.
95         * m4/vdprintf-posix.m4: New file.
96         * modules/vdprintf: New file.
97         * modules/vdprintf-posix: New file.
98         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_VDPRINTF,
99         HAVE_VDPRINTF, REPLACE_VDPRINTF.
100         * modules/stdio (Makefile.am): Substitute also GNULIB_VDPRINTF,
101         HAVE_VDPRINTF, REPLACE_VDPRINTF.
102         * doc/posix-functions/vdprintf.texi: Mention the new modules.
103
104 2009-01-17  Bruno Haible  <bruno@clisp.org>
105
106         Fix replacement of fopen on mingw.
107         * m4/fopen.m4 (gl_FUNC_FOPEN): Define FOPEN_TRAILING_SLASH_BUG also on
108         mingw.
109
110 2009-01-17  Bruno Haible  <bruno@clisp.org>
111
112         Fix compilation error on HP-UX 11.00, present since 2008-09-24.
113         * lib/fopen.c: Include <sys/types.h> and <sys/types.h>.
114
115 2009-01-17  Bruno Haible  <bruno@clisp.org>
116
117         Avoid test-fflush2.sh failure on mingw.
118         * tests/test-fflush2.c: Include binary-io.h.
119         (main): Put standard input into binary mode.
120         * modules/fflush-tests (Depends-on): Add binary-io.
121
122 2009-01-17  Bruno Haible  <bruno@clisp.org>
123
124         * lib/wchar.in.h: In another particular situation, include only the
125         system's <wchar.h> file.
126         (_GL_ALREADY_INCLUDING_WCHAR_H): New macro.
127         Reported by Albert Chin-A-Young <china@thewrittenword.com>
128         and Thomas Guyot-Sionnest <dermoth@aei.ca>.
129
130 2009-01-17  Bruno Haible  <bruno@clisp.org>
131
132         Support for stripping executables in --enable-relocatable.
133         * build-aux/install-reloc: Expect one more argument, or an environment
134         variable RELOC_STRIP_PROG. If set, strip the destination program and
135         its wrapper.
136         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV, set
137         RELOC_STRIP_PROG.
138         * doc/relocatable-maint.texi (Supporting Relocation): Mention the need
139         to set RELOCATABLE_STRIP.
140         * NEWS: Mention the new Makefile requirement.
141
142 2009-01-17  Bruno Haible  <bruno@clisp.org>
143
144         * build-aux/install-reloc: Remove debugging information left over by
145         C compiler on MacOS X.
146
147 2009-01-17  Bruno Haible  <bruno@clisp.org>
148
149         Update use of _NSGetExecutablePath after API change in MacOS X 10.4.
150         * lib/progreloc.c (find_executable): Fix type of pointer passed to
151         _NSGetExecutablePath.
152
153 2009-01-16  Jim Meyering  <meyering@redhat.com>
154
155         strerror: avoid warnings about discarding "const"
156         * lib/strerror.c (rpl_strerror): Instead of returning a const
157         string from each and every "case", use a variable, and add a single
158         cast after the switch.
159
160 2009-01-16  Albert Chin-A-Young <china@thewrittenword.com>
161
162         * lib/arpa_inet.in.h: Add extern "C" block for C++.
163
164 2009-01-16  Bruno Haible  <bruno@clisp.org>
165
166         * m4/printf.m4 (gl_SNPRINTF_SIZE1, gl_VSNPRINTF_ZEROSIZE_C99): Use an
167         array initializer syntax that also works in C++ mode.
168         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
169
170 2009-01-16  Jim Meyering  <meyering@redhat.com>
171
172         poll: suppress a warning
173         * lib/poll.c: Use #pragma GCC diagnostic ignored "-Wtype-limits"
174         to ignore "...unsigned expression < 0 is always false" warnings.
175
176 2009-01-16  Daniel P. Berrange  <berrange@redhat.com>
177
178         poll: remove declarations of unused variables
179         * lib/poll.c (poll) [WIN32_NATIVE]: Remove declarations of unused
180         sockbuf and optlen.
181
182 2009-01-15  Bruno Haible  <bruno@clisp.org>
183
184         Make fflush-after-ungetc POSIX compliant on BSD systems.
185         * lib/fflush.c (clear_ungetc_buffer_preserving_position): New function.
186         (clear_ungetc_buffer): Implement also for other systems.
187         (rpl_fflush): On glibc systems, invoke
188         clear_ungetc_buffer_preserving_position. Otherwise, invoke
189         clear_ungetc_buffer after fetching the stream's position, not before.
190
191 2009-01-15  Bruno Haible  <bruno@clisp.org>
192
193         Make fflush-after-ungetc POSIX compliant on glibc systems.
194         * m4/fflush.m4 (gl_FUNC_FFLUSH): Test also the behaviour of fflush
195         after ungetc.
196         * lib/fflush.c (clear_ungetc_buffer): Implement for glibc systems.
197         (rpl_fflush): On glibc systems, simply call the system's fflush
198         function after clearing the ungetc buffer.
199         * lib/fseeko.c (rpl_fseeko): Don't try to lseek past the end of file.
200         Instead, lseek only to the end of file, then use the system's fseeko
201         for the rest. On glibc systems, reset the EOF indicator bit.
202
203 2009-01-15  Jim Meyering  <meyering@redhat.com>
204
205         openmp.m4: revert quote-adding change, for portability to older autoconf
206         * m4/openmp.m4: Remove the quotes added on 2009-01-14.
207         This reverts part of 42d1eda5dcce2d68deab7a642e7f29bcd7144a0d.
208         Simon Josefsson noticed the problem when using autoconf-2.61.
209
210 2009-01-15  Bruno Haible  <bruno@clisp.org>
211
212         * tests/test-fflush2.sh: Invoke test-fflush2 twice.
213         * tests/test-fflush2.c (ASSERT): Always fail.
214         (main): Add two tests for fflush() after ungetc(), taking into account
215         the Austin Group's clarification.
216         Suggested by Eric Blake.
217
218 2009-01-15  Albert Chin-A-Young  <china@thewrittenword.com>
219
220         mktime.m4: remove K&R-style function prototypes
221         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove K&R-style function prototypes
222         for the Sun C++ compiler.
223
224 2009-01-14  Bruno Haible  <bruno@clisp.org>
225
226         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_WCHAR_H): New macro, defined
227         while including <wchar.h>.
228         * lib/wchar.in.h: In two particular situations on HP-UX, include only
229         the system's <wchar.h> file.
230         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
231
232 2009-01-14  Bruno Haible  <bruno@clisp.org>
233
234         * m4/csharp.m4: Don't mention gettext on the serial number line.
235         * m4/csharpexec.m4: Likewise.
236         * m4/eaccess.m4: Likewise.
237         * m4/javaexec.m4: Likewise.
238         * m4/sig_atomic_t.m4: Likewise.
239         * m4/tmpdir.m4: Likewise.
240         * m4/intldir.m4: Bump gettext version.
241         * m4/lib-ld.m4: Likewise.
242
243 2009-01-14  Bruno Haible  <bruno@clisp.org>
244
245         * lib/progname.c (set_program_name): Add more comments.
246         Reported by Sergey Poznyakoff <gray@gnu.org.ua>.
247
248 2009-01-14  Simon Josefsson  <simon@josefsson.org>
249
250         * lib/sys_stat.in.h: Include sys/types.h for nlink_t on systems
251         were sys/stat.h does not define it.
252
253 2009-01-14  Jim Meyering  <meyering@redhat.com>
254
255         many *.m4 files: improve m4 quoting
256         99% of this change was performed by running the following commands:
257         git ls-files | grep '\.m4$' | xargs perl -pi \
258           -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \
259           -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
260           -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
261           -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g'
262         perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4
263         The remainder were to add Copyright dates, increment serial numbers,
264         undo some changes in comments, exclude m4/intl.m4, and add quotes
265         around the "1" in ",1" where the unusual spacing prohibited the
266         above regexps from doing the job.  For more details, see
267         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
268         * m4/acl.m4: Modified.
269         * m4/afs.m4: Likewise.
270         * m4/alloca.m4: Likewise.
271         * m4/argp.m4: Likewise.
272         * m4/argz.m4: Likewise.
273         * m4/atexit.m4: Likewise.
274         * m4/bison-i18n.m4: Likewise.
275         * m4/bison.m4: Likewise.
276         * m4/byteswap.m4: Likewise.
277         * m4/c-stack.m4: Likewise.
278         * m4/c-strtod.m4: Likewise.
279         * m4/calloc.m4: Likewise.
280         * m4/canonicalize-lgpl.m4: Likewise.
281         * m4/chown.m4: Likewise.
282         * m4/clock_time.m4: Likewise.
283         * m4/codeset.m4: Likewise.
284         * m4/copy-file.m4: Likewise.
285         * m4/csharp.m4: Likewise.
286         * m4/csharpcomp.m4: Likewise.
287         * m4/csharpexec.m4: Likewise.
288         * m4/d-ino.m4: Likewise.
289         * m4/d-type.m4: Likewise.
290         * m4/dirfd.m4: Likewise.
291         * m4/double-slash-root.m4: Likewise.
292         * m4/eaccess.m4: Likewise.
293         * m4/eealloc.m4: Likewise.
294         * m4/environ.m4: Likewise.
295         * m4/errno_h.m4: Likewise.
296         * m4/euidaccess.m4: Likewise.
297         * m4/execute.m4: Likewise.
298         * m4/fatal-signal.m4: Likewise.
299         * m4/fchdir.m4: Likewise.
300         * m4/fcntl_h.m4: Likewise.
301         * m4/fileblocks.m4: Likewise.
302         * m4/filenamecat.m4: Likewise.
303         * m4/findprog.m4: Likewise.
304         * m4/flexmember.m4: Likewise.
305         * m4/fnmatch.m4: Likewise.
306         * m4/fopen.m4: Likewise.
307         * m4/fpending.m4: Likewise.
308         * m4/fprintf-posix.m4: Likewise.
309         * m4/free.m4: Likewise.
310         * m4/frexp.m4: Likewise.
311         * m4/frexpl.m4: Likewise.
312         * m4/fsusage.m4: Likewise.
313         * m4/ftruncate.m4: Likewise.
314         * m4/gc-camellia.m4: Likewise.
315         * m4/gc-random.m4: Likewise.
316         * m4/gc.m4: Likewise.
317         * m4/getaddrinfo.m4: Likewise.
318         * m4/getcwd-abort-bug.m4: Likewise.
319         * m4/getcwd-path-max.m4: Likewise.
320         * m4/getdate.m4: Likewise.
321         * m4/getdomainname.m4: Likewise.
322         * m4/getgroups.m4: Likewise.
323         * m4/gethostname.m4: Likewise.
324         * m4/gethrxtime.m4: Likewise.
325         * m4/getline.m4: Likewise.
326         * m4/getloadavg.m4: Likewise.
327         * m4/getndelim2.m4: Likewise.
328         * m4/getpass.m4: Likewise.
329         * m4/gettext.m4: Likewise.
330         * m4/gettime.m4: Likewise.
331         * m4/gettimeofday.m4: Likewise.
332         * m4/gnulib-common.m4: Likewise.
333         * m4/group-member.m4: Likewise.
334         * m4/host-os.m4: Likewise.
335         * m4/iconv.m4: Likewise.
336         * m4/iconv_open.m4: Likewise.
337         * m4/inet_ntop.m4: Likewise.
338         * m4/inet_pton.m4: Likewise.
339         * m4/inline.m4: Likewise.
340         * m4/intldir.m4: Likewise.
341         * m4/intlmacosx.m4: Likewise.
342         * m4/intmax.m4: Likewise.
343         * m4/intmax_t.m4: Likewise.
344         * m4/inttypes.m4: Likewise.
345         * m4/inttypes_h.m4: Likewise.
346         * m4/inttypes-pri.m4: Likewise.
347         * m4/isapipe.m4: Likewise.
348         * m4/isnand.m4: Likewise.
349         * m4/isnanf.m4: Likewise.
350         * m4/isnanl.m4: Likewise.
351         * m4/javacomp.m4: Likewise.
352         * m4/javaexec.m4: Likewise.
353         * m4/jm-winsz1.m4: Likewise.
354         * m4/jm-winsz2.m4: Likewise.
355         * m4/lchown.m4: Likewise.
356         * m4/lcmessage.m4: Likewise.
357         * m4/ldexpl.m4: Likewise.
358         * m4/lib-ld.m4: Likewise.
359         * m4/lib-link.m4: Likewise.
360         * m4/libsigsegv.m4: Likewise.
361         * m4/link-follow.m4: Likewise.
362         * m4/localcharset.m4: Likewise.
363         * m4/locale-fr.m4: Likewise.
364         * m4/locale-ja.m4: Likewise.
365         * m4/locale-tr.m4: Likewise.
366         * m4/locale-zh.m4: Likewise.
367         * m4/lock.m4: Likewise.
368         * m4/longlong.m4: Likewise.
369         * m4/ls-mntd-fs.m4: Likewise.
370         * m4/lstat.m4: Likewise.
371         * m4/malloc.m4: Likewise.
372         * m4/mathl.m4: Likewise.
373         * m4/mbrtowc.m4: Likewise.
374         * m4/mbstate_t.m4: Likewise.
375         * m4/mbswidth.m4: Likewise.
376         * m4/memchr.m4: Likewise.
377         * m4/memcmp.m4: Likewise.
378         * m4/memcpy.m4: Likewise.
379         * m4/memmem.m4: Likewise.
380         * m4/memmove.m4: Likewise.
381         * m4/mempcpy.m4: Likewise.
382         * m4/memrchr.m4: Likewise.
383         * m4/memset.m4: Likewise.
384         * m4/minmax.m4: Likewise.
385         * m4/mkdir-slash.m4: Likewise.
386         * m4/mkdtemp.m4: Likewise.
387         * m4/mktime.m4: Likewise.
388         * m4/mmap-anon.m4: Likewise.
389         * m4/mountlist.m4: Likewise.
390         * m4/nanosleep.m4: Likewise.
391         * m4/nls.m4: Likewise.
392         * m4/nocrash.m4: Likewise.
393         * m4/open.m4: Likewise.
394         * m4/openat.m4: Likewise.
395         * m4/openmp.m4: Likewise.
396         * m4/pathmax.m4: Likewise.
397         * m4/perl.m4: Likewise.
398         * m4/physmem.m4: Likewise.
399         * m4/pipe.m4: Likewise.
400         * m4/po.m4: Likewise.
401         * m4/poll.m4: Likewise.
402         * m4/posixtm.m4: Likewise.
403         * m4/posixver.m4: Likewise.
404         * m4/printf-frexp.m4: Likewise.
405         * m4/printf-frexpl.m4: Likewise.
406         * m4/printf-posix.m4: Likewise.
407         * m4/printf-posix-rpl.m4: Likewise.
408         * m4/printf.m4: Likewise.
409         * m4/progtest.m4: Likewise.
410         * m4/putenv.m4: Likewise.
411         * m4/readline.m4: Likewise.
412         * m4/readlink.m4: Likewise.
413         * m4/readutmp.m4: Likewise.
414         * m4/realloc.m4: Likewise.
415         * m4/regex.m4: Likewise.
416         * m4/relocatable.m4: Likewise.
417         * m4/relocatable-lib.m4: Likewise.
418         * m4/rename-dest-slash.m4: Likewise.
419         * m4/rename.m4: Likewise.
420         * m4/rmdir-errno.m4: Likewise.
421         * m4/rmdir.m4: Likewise.
422         * m4/roundf.m4: Likewise.
423         * m4/roundl.m4: Likewise.
424         * m4/rpmatch.m4: Likewise.
425         * m4/save-cwd.m4: Likewise.
426         * m4/selinux-selinux-h.m4: Likewise.
427         * m4/setenv.m4: Likewise.
428         * m4/settime.m4: Likewise.
429         * m4/sig2str.m4: Likewise.
430         * m4/sig_atomic_t.m4: Likewise.
431         * m4/signalblocking.m4: Likewise.
432         * m4/signbit.m4: Likewise.
433         * m4/sigpipe.m4: Likewise.
434         * m4/sockets.m4: Likewise.
435         * m4/sockpfaf.m4: Likewise.
436         * m4/st_dm_mode.m4: Likewise.
437         * m4/stat-time.m4: Likewise.
438         * m4/stdbool.m4: Likewise.
439         * m4/stdint.m4: Likewise.
440         * m4/stdint_h.m4: Likewise.
441         * m4/stpcpy.m4: Likewise.
442         * m4/stpncpy.m4: Likewise.
443         * m4/strcase.m4: Likewise.
444         * m4/strchrnul.m4: Likewise.
445         * m4/strcspn.m4: Likewise.
446         * m4/strdup.m4: Likewise.
447         * m4/strftime.m4: Likewise.
448         * m4/strndup.m4: Likewise.
449         * m4/strnlen.m4: Likewise.
450         * m4/strpbrk.m4: Likewise.
451         * m4/strptime.m4: Likewise.
452         * m4/strsep.m4: Likewise.
453         * m4/strtod.m4: Likewise.
454         * m4/strtoimax.m4: Likewise.
455         * m4/strtok_r.m4: Likewise.
456         * m4/strtol.m4: Likewise.
457         * m4/strtoll.m4: Likewise.
458         * m4/strtoul.m4: Likewise.
459         * m4/strtoull.m4: Likewise.
460         * m4/strtoumax.m4: Likewise.
461         * m4/strverscmp.m4: Likewise.
462         * m4/threadlib.m4: Likewise.
463         * m4/timegm.m4: Likewise.
464         * m4/tm_gmtoff.m4: Likewise.
465         * m4/tmpdir.m4: Likewise.
466         * m4/tmpfile.m4: Likewise.
467         * m4/tzset.m4: Likewise.
468         * m4/uintmax_t.m4: Likewise.
469         * m4/unlinkdir.m4: Likewise.
470         * m4/unlocked-io.m4: Likewise.
471         * m4/uptime.m4: Likewise.
472         * m4/userspec.m4: Likewise.
473         * m4/utimbuf.m4: Likewise.
474         * m4/utime.m4: Likewise.
475         * m4/utimes-null.m4: Likewise.
476         * m4/utimes.m4: Likewise.
477         * m4/vararrays.m4: Likewise.
478         * m4/vasnprintf.m4: Likewise.
479         * m4/vfprintf-posix.m4: Likewise.
480         * m4/vprintf-posix.m4: Likewise.
481         * m4/wait-process.m4: Likewise.
482         * m4/wchar_t.m4: Likewise.
483         * m4/wint_t.m4: Likewise.
484         * m4/write-any-file.m4: Likewise.
485         * m4/yield.m4: Likewise.
486
487 2009-01-13  Bruno Haible  <bruno@clisp.org>
488
489         Avoid test-copy-file.sh failures when ACL support insufficient.
490         * modules/copy-file-tests (Makefile.am): Pass USE_ACL in
491         TESTS_ENVIRONMENT.
492         * tests/test-copy-file.sh: Skip the ACL comparisons if USE_ACL is 0.
493         Reported by Jim Meyering.
494
495 2009-01-13  Bruno Haible  <bruno@clisp.org>
496
497         * modules/unistdio/u-printf-args (Files): Add m4/stdint_h.m4 and
498         m4/inttypes_h.m4, needed by m4/intmax_t.m4.
499         * modules/unistdio/u8-printf-parse (Files): Likewise.
500         * modules/unistdio/u32-printf-parse (Files): Likewise.
501         * modules/unistdio/ulc-printf-parse (Files): Likewise.
502
503 2009-01-13  Simon Josefsson  <simon@josefsson.org>
504
505         * modules/unistdio/u16-printf-parse (Files): Add m4/stdint_h.m4
506         and m4/inttypes_h.m4 too.
507
508 2009-01-12  Eric Blake  <ebb9@byu.net>
509
510         tests: IRIX 6.2 cc can't compile -0.0 into .data
511         * tests/test-ceill.c (minus_zero): Compute -0.0L at runtime,
512         rather than at compile-time.
513         * tests/test-floorl.c (minus_zero): Likewise.
514         * tests/test-frexpl.c (minus_zero): Likewise.
515         * tests/test-isnan.c (minus_zerol): Likewise.
516         * tests/test-isnanl.h (minus_zero): Likewise.
517         * tests/test-ldexpl.c (minus_zero): Likewise.
518         * tests/test-roundl.c (minus_zero): Likewise.
519         * tests/test-signbit.c (minus_zerol): Likewise.
520         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
521         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
522         * tests/test-truncl.c (minus_zero): Likewise.
523         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
524         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
525         Reported by Tom G. Christensen and Nelson H. F. Beebe.
526
527 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
528
529         regex: fix glibc bug 9697
530         * lib/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET
531         handling.
532
533 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
534
535         regex: fix glibc bug 697
536         * lib/regexec.c (prune_impossible_nodes): Handle sifted_states[0]
537         being NULL also if there are no backreferences.
538
539 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
540
541         regex: merge glibc changes
542         * lib/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc.
543         * lib/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer,
544         re_string_skip_chars, re_string_reconstruct): Likewise.
545         * lib/regex_internal.h [!_LIBC] (__mbrtowc): New #define.
546
547 2009-01-07  Jim Meyering  <meyering@redhat.com>
548
549         poll: filter through cppi
550         * lib/poll.c: Indent cpp directives to reflect nesting.
551
552 2009-01-07  Daniel P. Berrange  <berrange@redhat.com>
553
554         poll: don't return uninitialized
555         * lib/poll.c (poll) [WIN32_NATIVE]: Initialize "rc".
556
557 2009-01-06  Jeremy Olexa <darkside@gentoo.org>  (tiny change)
558
559         avoid compile failure on AIX 6.1
560         * lib/getloadavg.c [HAVE_LIBPERFSTAT]: Include <sys/protosw.h>.
561         Details in http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/15465
562
563 2009-01-04  Jim Meyering  <meyering@redhat.com>
564
565         remove duplicate inclusion of <stdio.h>
566         * tests/test-fprintf-posix.c: Likewise.
567         * tests/test-printf-posix.c: Likewise.
568         * tests/test-snprintf-posix.c: Likewise.
569         * tests/test-sprintf-posix.c: Likewise.
570         * tests/test-vasprintf-posix.c: Likewise.
571         * tests/test-vfprintf-posix.c: Likewise.
572         * tests/test-vprintf-posix.c: Likewise.
573         * tests/test-vsnprintf-posix.c: Likewise.
574         * tests/test-vsprintf-posix.c: Likewise.
575
576 2009-01-03  Jim Meyering  <meyering@redhat.com>
577
578         gnulib-tool: fix sed-based filtering
579         * gnulib-tool (func_filter_filelist): Remove extra backslash
580         in sed_fff_filter definition.
581
582 2009-01-02  Jim Meyering  <meyering@redhat.com>
583
584         strftime: avoid compilation failure on Solaris 2.6
585         * modules/strftime (Depends-on): Add mbrlen and mbsinit.
586         * lib/strftime.c [DO_MULTIBYTE]: Include <wchar.h> unconditionally.
587         Don't #define mbrlen or mbsinit, since now they're guaranteed to
588         be available.  Reported by Tom G. Christensen.  Details in
589         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16180>.
590
591 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
592             Bruno Haible  <bruno@clisp.org>
593
594         Speed up gnulib-tool by doing more string processing through shell
595         built-ins.
596         * gnulib-tool (fast_func_append): New variable.
597         (func_remove_prefix, func_remove_suffix): New functions.
598         (fast_func_remove_prefix, fast_func_remove_suffix): New variables.
599         (func_filter_filelist): New function.
600         (func_get_dependencies): Use func_remove_suffix instead of sed.
601         (func_get_automake_snippet): Use func_filter_filelist instead of a
602         subshell and sed invocation.
603
604 2009-01-01  Bruno Haible  <bruno@clisp.org>
605
606         Fix a security bug.
607         * gnulib-tool (func_import, import, update): Don't allow the characters
608         '"', '$', '`', '\' in macro arguments that become part of commands that
609         are evaluated.
610
611 2009-01-01  Bruno Haible  <bruno@clisp.org>
612
613         * gnulib-tool (func_reset_sigpipe): Add more comments.
614
615 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
616
617         * gnulib-tool (func_modules_add_dummy, func_emit_lib_Makefile_am,
618         func_emit_tests_Makefile_am, func_import): Abort loops early if we
619         already know the answer.
620
621 2009-01-01  Jim Meyering  <meyering@redhat.com>
622
623         * lib/version-etc.c (version_etc_va): Update copyright year.
624
625 2008-12-30  Bruno Haible  <bruno@clisp.org>
626
627         * m4/lib-prefix.m4 (AC_LIB_LINKFLAGS_BODY): Don't overwrite
628         LIB${NAME}_PREFIX when considering the dependencies of lib${name}.
629         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
630
631 2008-12-29  Eric Blake  <ebb9@byu.net>
632
633         multiarch: avoid autoconf AC_REQUIRE bug
634         * m4/multiarch.m4 (gl_MULTIARCH): Split body...
635         (gl_MULTIARCH_BODY): ...into new macro, to work around bug in Autoconf
636         2.63 and older.
637         Reported by Bruno Haible, and analyzed in
638         http://lists.gnu.org/archive/html/bug-autoconf/2008-12/msg00039.html
639
640 2008-12-29  Bruno Haible  <bruno@clisp.org>
641
642         * gnulib-tool (func_import): When generating sed-ignore-removed, handle
643         files in subdirectories correctly.
644         Reported by Ralf Wildenhues.
645
646 2008-12-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
647
648         * gnulib-tool (func_update_ignorelist): Use 'join - FILE'
649         rather than 'join FILE -', for Solaris join.
650
651 2008-12-29  Bruno Haible  <bruno@clisp.org>
652
653         * m4/codeset.m4 (AM_LANGINFO_CODESET): More systematic m4 argument
654         quoting.
655         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
656         * m4/glibc2.m4 (gt_GLIBC2): Likewise.
657         * m4/glibc21.m4 (gl_GLIBC21): Likewise.
658         * m4/iconv.m4 (AM_ICONV_LINK, AM_ICONV): Likewise.
659         * m4/intdiv0.m4 (gt_INTDIV0): Likewise.
660         * m4/intlmacosx.m4 (gt_INTL_MACOSX): Likewise.
661         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Likewise.
662         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Likewise.
663         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
664         * m4/lcmessage.m4 (gt_LC_MESSAGES): Likewise.
665         * m4/nls.m4 (AM_NLS): Likewise.
666         * m4/po.m4 (AM_PO_SUBDIRS): Likewise.
667         * m4/printf-posix.m4 (gt_PRINTF_POSIX): Likewise.
668         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
669         * m4/size_max.m4 (gl_SIZE_MAX): Likewise.
670         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Likewise.
671         * m4/threadlib.m4 (gl_THREADLIB_BODY): Likewise.
672         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Likewise.
673         * m4/visibility.m4 (gl_VISIBILITY): Likewise.
674         * m4/wchar_t.m4 (gt_TYPE_WCHAR_T): Likewise.
675         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
676         * m4/xsize.m4 (gl_XSIZE): Likewise.
677         Suggested by Jim Meyering.
678
679 2008-11-17  Bruce Korb  <bkorb@gnu.org>
680
681         * lib/parse-duration.h: non-iso form accepts years, months weeks, too
682         * lib/parse-duration.c: use a switch instead of cascading if's.
683
684 2008-12-29  Eric Blake  <ebb9@byu.net>
685
686         wchar.h: supply WEOF on Irix 5.3
687         * lib/wchar.in.h (wint_t): Also supply WEOF.
688         * lib/wctype.in.h (wint_t): Likewise.
689         * doc/posix-headers/wchar.texi (wchar.h): Document the bug.
690         * doc/posix-headers/wctype.texi (wctype.h): Likewise.
691         Reported by Tom G. Christensen.
692
693 2008-12-26  Bruno Haible  <bruno@clisp.org>
694
695         * m4/multiarch.m4 (gl_MULTIARCH): Recognize also the architecture names
696         i486, i586, i686.
697
698 2008-12-26  Bruno Haible  <bruno@clisp.org>
699
700         * lib/stdlib.in.h (struct random_data): Fix indentation of comments.
701
702 2008-12-26  Bruno Haible  <bruno@clisp.org>
703
704         * lib/stdint.in.h: Move the include of <wchar.h> down until after all
705         the types are defined. Also conditionalize it on __STDC_LIMIT_MACROS,
706         not __STDC_CONSTANT_MACROS.
707         Reported by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
708
709 2008-12-25  Bruno Haible  <bruno@clisp.org>
710
711         Add support for universal builds to vasnprintf.
712         * m4/printf.m4 (gl_PRINTF_ENOMEM): Require gl_MULTIARCH. In Apple
713         universal builds, guess no.
714         * modules/vasnprintf-posix (Depends-on): Add multiarch.
715         * modules/vasprintf-posix (Depends-on): Likewise.
716         * modules/fprintf-posix (Depends-on): Likewise.
717         * modules/vfprintf-posix (Depends-on): Likewise.
718         * modules/snprintf-posix (Depends-on): Likewise.
719         * modules/vsnprintf-posix (Depends-on): Likewise.
720         * modules/sprintf-posix (Depends-on): Likewise.
721         * modules/vsprintf-posix (Depends-on): Likewise.
722         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
723         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
724         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
725         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
726         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
727         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
728         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
729
730         Add support for universal builds to <inttypes.h>.
731         * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX,
732         _SCNu64_PREFIX): In Apple
733         universal builds, define directly, using _LP64.
734         * m4/inttypes.m4 (gl_INTTYPES_H): In Apple universal builds, set
735         INT64_MAX_EQ_LONG_MAX and UINT64_MAX_EQ_ULONG_MAX to -1.
736         * modules/inttypes (Depends-on): Add multiarch.
737         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
738
739         Add support for universal builds to <stdint.h>.
740         * lib/stdint.in.h (PDFDIFF_MIN, PTRDIFF_MAX, SIZE_MAX): In Apple
741         universal builds, define directly, using _LP64.
742         * m4/stdint.m4 (gl_STDINT_TYPE_PROPERTIES): Require gl_MULTIARCH. In
743         Apple universal builds, don't test for the size and suffix of ptrdiff_t
744         and size_t.
745         * modules/stdint (Depends-on): Add multiarch.
746         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
747
748         New module 'multiarch'.
749         * modules/multiarch: New file.
750         * m4/multiarch.m4: New file.
751
752 2008-12-25  Bruno Haible  <bruno@clisp.org>
753
754         * gnulib-tool (func_create_testdir): Avoid failure of mv command.
755
756 2008-12-25  Bruno Haible  <bruno@clisp.org>
757
758         * modules/btowc (License): Relicense under LGPLv2+.
759         * modules/mbsinit (License): Likewise.
760         * modules/mbrtowc (License): Likewise.
761         * modules/wcrtomb (License): Likewise.
762         * modules/streq (License): Likewise.
763         Reported by David Lutterkort <lutter@redhat.com>.
764
765 2008-12-23  Bruno Haible  <bruno@clisp.org>
766
767         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Fix conditional and comment.
768
769 2008-12-23  Bruno Haible  <bruno@clisp.org>
770
771         Module getaddrinfo requires linking with $(GETADDRINFO_LIB).
772         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Put link options into
773         GETADDRINFO_LIB, not in LIBS.
774         * modules/getaddrinfo (Link): Set to $(GETADDRINFO_LIB).
775         * modules/canon-host (Link): Likewise.
776         * NEWS: Mention the change.
777         * modules/getaddrinfo-tests (test_getaddrinfo_LDADD): Add the
778         GETADDRINFO_LIB.
779
780 2008-12-22  Bruno Haible  <bruno@clisp.org>
781
782         * doc/posix-functions/iswalnum_l.texi: Mention limitation of wchar_t.
783         * doc/posix-functions/iswalpha_l.texi: Likewise.
784         * doc/posix-functions/iswblank_l.texi: Likewise.
785         * doc/posix-functions/iswcntrl_l.texi: Likewise.
786         * doc/posix-functions/iswctype_l.texi: Likewise.
787         * doc/posix-functions/iswdigit_l.texi: Likewise.
788         * doc/posix-functions/iswgraph_l.texi: Likewise.
789         * doc/posix-functions/iswlower_l.texi: Likewise.
790         * doc/posix-functions/iswprint_l.texi: Likewise.
791         * doc/posix-functions/iswpunct_l.texi: Likewise.
792         * doc/posix-functions/iswspace_l.texi: Likewise.
793         * doc/posix-functions/iswupper_l.texi: Likewise.
794         * doc/posix-functions/iswxdigit_l.texi: Likewise.
795         * doc/posix-functions/mbsnrtowcs.texi: Likewise.
796         * doc/posix-functions/open_wmemstream.texi: Likewise.
797         * doc/posix-functions/swscanf.texi: Likewise.
798         * doc/posix-functions/towctrans_l.texi: Likewise.
799         * doc/posix-functions/towlower.texi: Likewise.
800         * doc/posix-functions/towlower_l.texi: Likewise.
801         * doc/posix-functions/towupper.texi: Likewise.
802         * doc/posix-functions/towupper_l.texi: Likewise.
803         * doc/posix-functions/vfwprintf.texi: Likewise.
804         * doc/posix-functions/vfwscanf.texi: Likewise.
805         * doc/posix-functions/vswscanf.texi: Likewise.
806         * doc/posix-functions/vwprintf.texi: Likewise.
807         * doc/posix-functions/vwscanf.texi: Likewise.
808         * doc/posix-functions/wcpcpy.texi: Likewise.
809         * doc/posix-functions/wcpncpy.texi: Likewise.
810         * doc/posix-functions/wcscasecmp.texi: Likewise.
811         * doc/posix-functions/wcscasecmp_l.texi: Likewise.
812         * doc/posix-functions/wcscoll_l.texi: Likewise.
813         * doc/posix-functions/wcsdup.texi: Likewise.
814         * doc/posix-functions/wcsncasecmp.texi: Likewise.
815         * doc/posix-functions/wcsncasecmp_l.texi: Likewise.
816         * doc/posix-functions/wcsnlen.texi: Likewise.
817         * doc/posix-functions/wcsnrtombs.texi: Likewise.
818         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
819         * doc/posix-functions/wctrans_l.texi: Likewise.
820         * doc/posix-functions/wctype_l.texi: Likewise.
821         * doc/glibc-functions/fgetwc_unlocked.texi: Likewise.
822         * doc/glibc-functions/fgetws_unlocked.texi: Likewise.
823         * doc/glibc-functions/fputwc_unlocked.texi: Likewise.
824         * doc/glibc-functions/fputws_unlocked.texi: Likewise.
825         * doc/glibc-functions/getwc_unlocked.texi: Likewise.
826         * doc/glibc-functions/getwchar_unlocked.texi: Likewise.
827         * doc/glibc-functions/putwc_unlocked.texi: Likewise.
828         * doc/glibc-functions/putwchar_unlocked.texi: Likewise.
829         * doc/glibc-functions/wcschrnul.texi: Likewise.
830         * doc/glibc-functions/wcsftime_l.texi: Likewise.
831         * doc/glibc-functions/wcstod_l.texi: Likewise.
832         * doc/glibc-functions/wcstof_l.texi: Likewise.
833         * doc/glibc-functions/wcstol_l.texi: Likewise.
834         * doc/glibc-functions/wcstold_l.texi: Likewise.
835         * doc/glibc-functions/wcstoll_l.texi: Likewise.
836         * doc/glibc-functions/wcstoq.texi: Likewise.
837         * doc/glibc-functions/wcstoul_l.texi: Likewise.
838         * doc/glibc-functions/wcstoull_l.texi: Likewise.
839         * doc/glibc-functions/wcstouq.texi: Likewise.
840         * doc/glibc-functions/wmempcpy.texi: Likewise.
841
842 2008-12-22  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
843             Eric Blake  <ebb9@byu.net>
844             Paolo Bonzini  <bonzini@gnu.org>
845             Bruno Haible  <bruno@clisp.org>
846
847         Make c-stack work on Haiku.
848         * lib/c-stack.c (SA_ONSTACK): Define fallback.
849         (c_stack_action): Use SA_ONSTACK flag.
850
851 2008-12-22  Bruno Haible  <bruno@clisp.org>
852
853         * m4/locale-fr.m4 (gt_LOCALE_FR_UTF8): Treat Haiku like BeOS.
854
855 2008-12-22  Bruno Haible  <bruno@clisp.org>
856
857         Work around mbrlen() bugs on AIX, HP-UX, OSF/1, Solaris.
858         * m4/mbrlen.m4 (gl_FUNC_MBRLEN): Set REPLACE_MBRLEN if mbrtowc is
859         being overridden.
860         (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL):
861         New macros.
862         * lib/wchar.in.h (mbrlen): Override if REPLACE_MBRLEN is set.
863         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBRLEN.
864         * modules/wchar (Makefile.am): Substitute REPLACE_MBRLEN.
865         * doc/posix-functions/mbrlen.texi: Mention the various platform bugs.
866
867 2008-12-22  Bruno Haible  <bruno@clisp.org>
868
869         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE): Remove unused variable
870         from test code.
871
872 2008-12-22  Eric Blake  <ebb9@byu.net>
873
874         Avoid gcc warnings on cygwin.
875         * lib/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]:
876         Avoid unused variable.
877         * lib/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]:
878         Likewise.
879
880 2008-12-22  Bruno Haible  <bruno@clisp.org>
881
882         Remove HAVE_MBRTOWC conditionals.
883         * lib/mbscasecmp.c: Include mbuiter.h unconditionally.
884         (mbscasecmp): Assume mbrtowc function.
885         * lib/mbscasestr.c: Include mbuiter.h unconditionally.
886         (knuth_morris_pratt_multibyte, mbscasestr): Assume mbrtowc function.
887         * lib/mbschr.c: Include mbuiter.h unconditionally.
888         (mbschr): Assume mbrtowc function.
889         * lib/mbscspn.c: Include mbuiter.h unconditionally.
890         (mbscspn): Assume mbrtowc function.
891         * lib/mbslen.c: Include mbuiter.h unconditionally.
892         (mbslen): Assume mbrtowc function.
893         * lib/mbsncasecmp.c: Include mbuiter.h unconditionally.
894         (mbsncasecmp): Assume mbrtowc function.
895         * lib/mbsnlen.c: Include mbiter.h unconditionally.
896         (mbsnlen): Assume mbrtowc function.
897         * lib/mbspbrk.c: Include mbuiter.h unconditionally.
898         (mbspbrk): Assume mbrtowc function.
899         * lib/mbspcasecmp.c: Include mbuiter.h unconditionally.
900         (mbspcasecmp): Assume mbrtowc function.
901         * lib/mbsrchr.c: Include mbuiter.h unconditionally.
902         (mbsrchr): Assume mbrtowc function.
903         * lib/mbssep.c: Include mbuiter.h unconditionally.
904         (mbssep): Assume mbrtowc function.
905         * lib/mbsspn.c: Include mbuiter.h unconditionally.
906         (mbsspn): Assume mbrtowc function.
907         * lib/mbsstr.c: Include mbuiter.h unconditionally.
908         (knuth_morris_pratt_multibyte, mbsstr): Assume mbrtowc function.
909         * lib/mbstok_r.c: Include mbuiter.h unconditionally.
910         (mbstok_r): Assume mbrtowc function.
911         * lib/propername.c: Include mbuiter.h unconditionally.
912         (mbsstr_trimmed_wordbounded): Assume mbrtowc function.
913         * lib/trim.c: Include mbchar.h, mbiter.h uncondtionally.
914         (trim2): Assume mbrtowc function.
915         * lib/mbswidth.c (mbsinit): Remove fallback definition.
916         (mbsnwidth): Assume mbrtowc function.
917         * modules/mbswidth (Depends-on): Add mbrtowc, mbsinit.
918         * lib/quotearg.c (MB_CUR_MAX, mbstate_t, mbrtowc, iswprint): Remove
919         fallback definitions.
920         * modules/quotearg (Depends-on): Add mbrtowc, mbsinit.
921
922 2008-12-22  Bruno Haible  <bruno@clisp.org>
923
924         * doc/posix-functions/mbtowc.texi: Mention a glibc bug.
925
926 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
927
928         * modules/regex: Request emulations for the mb*/wc* functions we need.
929         * m4/regex.m4: Don't look for those functions here.
930         * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
931
932 2008-12-22  Bruno Haible  <bruno@clisp.org>
933
934         * modules/fnmatch (Depends-on): Remove duplicated dependency.
935
936 2008-12-21  Bruno Haible  <bruno@clisp.org>
937
938         Make mbiter.h, mbuiter.h, mbfile.h usable unconditionally.
939         * modules/mbiter (Depends-on): Add mbrtowc, mbsinit.
940         (Include): Remove conditionalization.
941         * modules/mbuiter (Depends-on): Add mbrtowc, mbsinit.
942         (Include): Remove conditionalization.
943         * modules/mbfile (Depends-on): Add mbrtowc, mbsinit.
944         (Include): Remove conditionalization.
945         * m4/mbiter.m4 (gl_MBITER): Deprecate the use of AC_FUNC_MBRTOWC.
946         * m4/mbfile.m4 (gl_MBFILE): Likewise.
947         * NEWS: Mention the change.
948         Reported by Alan Hourihane <alanh@fairlite.co.uk>
949         via Sergey Poznyakoff <gray@gnu.org.ua>.
950
951 2008-12-21  Bruno Haible  <bruno@clisp.org>
952
953         * MODULES.html.sh (Extended multibyte and wide character utilities
954         <wchar.h>): Add btowc, wctob, mbsinit, mbrlen, mbrtowc, mbsrtowcs,
955         wcrtomb, wcsrtombs.
956         (Support for systems lacking POSIX:2008): Add accept, bind, close,
957         connect, fclose, getpeername, getsockname, getsockopt, hostent, listen,
958         mbsnrtowcs, posix_spawn*, recv, recvfrom, sched, select, send, sendto,
959         setsockopt, shutdown, socket, spawn, sys_wait, wcsnrtombs, write.
960
961 2008-12-21  Bruno Haible  <bruno@clisp.org>
962
963         * MODULES.html.sh: Change section titles to refer to POSIX:2008.
964
965 2008-12-21  Bruno Haible  <bruno@clisp.org>
966
967         * modules/wcsnrtombs-tests: New file.
968         * tests/test-wcsnrtombs1.sh: New file.
969         * tests/test-wcsnrtombs2.sh: New file.
970         * tests/test-wcsnrtombs3.sh: New file.
971         * tests/test-wcsnrtombs4.sh: New file.
972         * tests/test-wcsnrtombs.c: New file.
973
974         New module 'wcsnrtombs'.
975         * lib/wchar.in.h (wcsnrtombs): New declaration.
976         * lib/wcsnrtombs.c: New file.
977         * lib/wcsrtombs-state.c: New file.
978         * lib/wcsrtombs.c: Refer to _gl_wcsrtombs_state.
979         (internal_state): Remove variable.
980         * m4/wcsnrtombs.m4: New file.
981         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): Add wcsrtombs-state.c to the
982         compilation units.
983         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNRTOMBS,
984         HAVE_WCSNRTOMBS.
985         * modules/wchar (Makefile.am): Substitute GNULIB_WCSNRTOMBS,
986         HAVE_WCSNRTOMBS.
987         * modules/wcsnrtombs: New file.
988         * modules/wcsrtombs (Files): Add lib/wcsrtombs-state.c.
989         * doc/posix-functions/wcsnrtombs.texi: Mention the new module.
990
991 2008-12-21  Bruno Haible  <bruno@clisp.org>
992
993         * modules/wcsrtombs-tests: New file.
994         * tests/test-wcsrtombs1.sh: New file.
995         * tests/test-wcsrtombs2.sh: New file.
996         * tests/test-wcsrtombs3.sh: New file.
997         * tests/test-wcsrtombs4.sh: New file.
998         * tests/test-wcsrtombs.c: New file.
999
1000         New module 'wcsrtombs'.
1001         * lib/wchar.in.h (wcsrtombs): New declaration.
1002         * lib/wcsrtombs.c: New file.
1003         * m4/wcsrtombs.m4: New file.
1004         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRTOMBS,
1005         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
1006         * modules/wchar (Makefile.am): Substitute GNULIB_WCSRTOMBS,
1007         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
1008         * modules/wcsrtombs: New file.
1009         * doc/posix-functions/wcsrtombs.texi: Mention the new module and the
1010         bugs.
1011
1012 2008-12-21  Bruno Haible  <bruno@clisp.org>
1013
1014         Work around a wcrtomb() bug on Solaris 10 and OSF/1 5.1.
1015         * lib/wchar.in.h (wcrtomb): Override if REPLACE_WCRTOMB is set.
1016         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Test the return value of wcrtomb
1017         with NULL destination argument in various locales. Set REPLACE_WCRTOMB
1018         if not correct.
1019         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCRTOMB.
1020         * modules/wchar (Makefile.am): Substitute REPLACE_WCRTOMB.
1021         * modules/wcrtomb (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
1022         m4/locale-zh.m4, m4/codeset.m4.
1023         * doc/posix-functions/wcrtomb.texi: Document the bug.
1024
1025 2008-12-21  Bruno Haible  <bruno@clisp.org>
1026
1027         Work around a btowc() bug on IRIX 6.5.
1028         * lib/wchar.in.h (btowc): Override if REPLACE_BTOWC is set.
1029         * m4/btowc.m4 (gl_FUNC_BTOWC): Test whether btowc(EOF) is correct. Set
1030         REPLACE_WTOBC if not.
1031         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_BTOWC.
1032         * modules/wchar (Makefile.am): Substitute REPLACE_BTOWC.
1033         * doc/posix-functions/btowc.texi: Mention the IRIX bug.
1034
1035 2008-12-21  Bruno Haible  <bruno@clisp.org>
1036
1037         * modules/wcrtomb-tests: New file.
1038         * tests/test-wcrtomb.sh: New file.
1039         * tests/test-wcrtomb.c: New file.
1040
1041         New module 'wcrtomb'.
1042         * lib/wchar.in.h (wcrtomb): New declaration.
1043         * lib/wcrtomb.c: New file.
1044         * m4/wcrtomb.m4: New file.
1045         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCRTOMB,
1046         HAVE_WCRTOMB.
1047         * modules/wchar (Makefile.am): Substitute GNULIB_WCRTOMB,
1048         HAVE_WCRTOMB.
1049         * modules/wcrtomb: New file.
1050         * doc/posix-functions/wcrtomb.texi: Mention the new module.
1051
1052 2008-12-21  Bruno Haible  <bruno@clisp.org>
1053
1054         * modules/mbrtowc (Files): Add m4/codeset.m4, needed by m4/locale-fr.m4.
1055         * modules/mbsrtowcs (Files): Likewise.
1056         * modules/wctob (Files): Likewise.
1057         * modules/c-strcase-tests (Files): Likewise.
1058         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
1059         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
1060         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
1061         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
1062         * modules/vasnprintf-posix-tests (Files): Likewise.
1063
1064 2008-12-21  William Pursell  <bill.pursell@gmail.com>
1065
1066         gitlog-to-changelog: pass all command-line arguments to git-log
1067         * build-aux/gitlog-to-changelog: When producing a ChangeLog,
1068         it is sometimes convenient to filter the commits in various ways.
1069         gitlog-to-changelog only allows --since to specify a start date,
1070         but git-log itself supports many other filtering mechanisms.
1071         At the moment, I want to filter by branch name.  Rather than
1072         adding a --branch option to gitlog-to-changelog, it seems more
1073         flexible to simply pass all options directly to git-log and let
1074         git do the work.  Notice that this effectively makes --since a
1075         redundant option for gitlog-to-changelog, but removing it would
1076         require current usage to change since calls would then require
1077         an additional '--'.
1078
1079 2008-12-21  Bruno Haible  <bruno@clisp.org>
1080
1081         * modules/mbsnrtowcs-tests: New file.
1082         * tests/test-mbsnrtowcs1.sh: New file.
1083         * tests/test-mbsnrtowcs2.sh: New file.
1084         * tests/test-mbsnrtowcs3.sh: New file.
1085         * tests/test-mbsnrtowcs4.sh: New file.
1086         * tests/test-mbsnrtowcs.c: New file.
1087
1088         New module 'mbsnrtowcs'.
1089         * lib/wchar.in.h (mbsnrtowcs): New declaration.
1090         * lib/mbsnrtowcs.c: New file.
1091         * lib/mbsrtowcs-state.c: New file.
1092         * lib/mbsrtowcs.c: Refer to _gl_mbsrtowcs_state.
1093         (internal_state): Remove variable.
1094         * m4/mbsnrtowcs.m4: New file.
1095         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Add mbsrtowcs-state.c to the
1096         compilation units.
1097         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSNRTOWCS,
1098         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
1099         * modules/wchar (Makefile.am): Substitute GNULIB_MBSNRTOWCS,
1100         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
1101         * modules/mbsnrtowcs: New file.
1102         * modules/mbsrtowcs (Files): Add lib/mbsrtowcs-state.c.
1103         * doc/posix-functions/mbsnrtowcs.texi: Mention the new module and a
1104         portability problem.
1105
1106 2008-12-21  Bruno Haible  <bruno@clisp.org>
1107
1108         Work around mbsrtowcs bug.
1109         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): New macro.
1110         (gl_FUNC_MBSRTOWCS): Invoke it.
1111         * modules/mbsrtowcs (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
1112         m4/locale-zh.m4.
1113         * doc/posix-functions/mbsrtowcs.texi: Document the bug.
1114
1115 2008-12-21  Bruno Haible  <bruno@clisp.org>
1116
1117         * tests/test-mbsrtowcs.c (main): Execute the loop also for unlimited=1.
1118
1119 2008-12-21  Bruno Haible  <bruno@clisp.org>
1120
1121         Update doc for AIX.
1122         * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
1123         16-bit wchar_t type.
1124         * doc/posix-functions/btowc.texi: Likewise.
1125         * doc/posix-functions/fgetwc.texi: Likewise.
1126         * doc/posix-functions/fgetws.texi: Likewise.
1127         * doc/posix-functions/fputwc.texi: Likewise.
1128         * doc/posix-functions/fputws.texi: Likewise.
1129         * doc/posix-functions/fwide.texi: Likewise.
1130         * doc/posix-functions/fwprintf.texi: Likewise.
1131         * doc/posix-functions/fwscanf.texi: Likewise.
1132         * doc/posix-functions/getwchar.texi: Likewise.
1133         * doc/posix-functions/getwc.texi: Likewise.
1134         * doc/posix-functions/iswalnum.texi: Likewise.
1135         * doc/posix-functions/iswalpha.texi: Likewise.
1136         * doc/posix-functions/iswblank.texi: Likewise.
1137         * doc/posix-functions/iswcntrl.texi: Likewise.
1138         * doc/posix-functions/iswctype.texi: Likewise.
1139         * doc/posix-functions/iswdigit.texi: Likewise.
1140         * doc/posix-functions/iswgraph.texi: Likewise.
1141         * doc/posix-functions/iswlower.texi: Likewise.
1142         * doc/posix-functions/iswprint.texi: Likewise.
1143         * doc/posix-functions/iswpunct.texi: Likewise.
1144         * doc/posix-functions/iswspace.texi: Likewise.
1145         * doc/posix-functions/iswupper.texi: Likewise.
1146         * doc/posix-functions/iswxdigit.texi: Likewise.
1147         * doc/posix-functions/mbrtowc.texi: Likewise.
1148         * doc/posix-functions/mbsrtowcs.texi: Likewise.
1149         * doc/posix-functions/mbstowcs.texi: Likewise.
1150         * doc/posix-functions/mbtowc.texi: Likewise.
1151         * doc/posix-functions/putwchar.texi: Likewise.
1152         * doc/posix-functions/putwc.texi: Likewise.
1153         * doc/posix-functions/swprintf.texi: Likewise.
1154         * doc/posix-functions/tolower.texi: Likewise.
1155         * doc/posix-functions/toupper.texi: Likewise.
1156         * doc/posix-functions/towctrans.texi: Likewise.
1157         * doc/posix-functions/ungetwc.texi: Likewise.
1158         * doc/posix-functions/vswprintf.texi: Likewise.
1159         * doc/posix-functions/wcrtomb.texi: Likewise.
1160         * doc/posix-functions/wcscat.texi: Likewise.
1161         * doc/posix-functions/wcschr.texi: Likewise.
1162         * doc/posix-functions/wcscmp.texi: Likewise.
1163         * doc/posix-functions/wcscoll.texi: Likewise.
1164         * doc/posix-functions/wcscpy.texi: Likewise.
1165         * doc/posix-functions/wcscspn.texi: Likewise.
1166         * doc/posix-functions/wcsftime.texi: Likewise.
1167         * doc/posix-functions/wcslen.texi: Likewise.
1168         * doc/posix-functions/wcsncat.texi: Likewise.
1169         * doc/posix-functions/wcsncmp.texi: Likewise.
1170         * doc/posix-functions/wcsncpy.texi: Likewise.
1171         * doc/posix-functions/wcspbrk.texi: Likewise.
1172         * doc/posix-functions/wcsrchr.texi: Likewise.
1173         * doc/posix-functions/wcsrtombs.texi: Likewise.
1174         * doc/posix-functions/wcsspn.texi: Likewise.
1175         * doc/posix-functions/wcsstr.texi: Likewise.
1176         * doc/posix-functions/wcstod.texi: Likewise.
1177         * doc/posix-functions/wcstof.texi: Likewise.
1178         * doc/posix-functions/wcstoimax.texi: Likewise.
1179         * doc/posix-functions/wcstok.texi: Likewise.
1180         * doc/posix-functions/wcstold.texi: Likewise.
1181         * doc/posix-functions/wcstoll.texi: Likewise.
1182         * doc/posix-functions/wcstol.texi: Likewise.
1183         * doc/posix-functions/wcstombs.texi: Likewise.
1184         * doc/posix-functions/wcstoull.texi: Likewise.
1185         * doc/posix-functions/wcstoul.texi: Likewise.
1186         * doc/posix-functions/wcstoumax.texi: Likewise.
1187         * doc/posix-functions/wcswidth.texi: Likewise.
1188         * doc/posix-functions/wcsxfrm.texi: Likewise.
1189         * doc/posix-functions/wctob.texi: Likewise.
1190         * doc/posix-functions/wctomb.texi: Likewise.
1191         * doc/posix-functions/wctrans.texi: Likewise.
1192         * doc/posix-functions/wctype.texi: Likewise.
1193         * doc/posix-functions/wcwidth.texi: Likewise.
1194         * doc/posix-functions/wmemchr.texi: Likewise.
1195         * doc/posix-functions/wmemcmp.texi: Likewise.
1196         * doc/posix-functions/wmemcpy.texi: Likewise.
1197         * doc/posix-functions/wmemmove.texi: Likewise.
1198         * doc/posix-functions/wmemset.texi: Likewise.
1199         * doc/posix-functions/wprintf.texi: Likewise.
1200         * doc/posix-functions/wscanf.texi: Likewise.
1201
1202 2008-12-21  Bruno Haible  <bruno@clisp.org>
1203
1204         Update doc for HP-UX 11.11.
1205         * doc/posix-functions/btowc.texi: Clarify that the function is missing
1206         in HP-UX version 11.00, not in all versions of HP-UX 11.
1207         * doc/posix-functions/fwide.texi: Likewise.
1208         * doc/posix-functions/fwprintf.texi: Likewise.
1209         * doc/posix-functions/fwscanf.texi: Likewise.
1210         * doc/posix-functions/inet_ntop.texi: Likewise.
1211         * doc/posix-functions/inet_pton.texi: Likewise.
1212         * doc/posix-functions/mbrlen.texi: Likewise.
1213         * doc/posix-functions/mbrtowc.texi: Likewise.
1214         * doc/posix-functions/mbsinit.texi: Likewise.
1215         * doc/posix-functions/mbsrtowcs.texi: Likewise.
1216         * doc/posix-functions/swprintf.texi: Likewise.
1217         * doc/posix-functions/swscanf.texi: Likewise.
1218         * doc/posix-functions/towctrans.texi: Likewise.
1219         * doc/posix-functions/vfwprintf.texi: Likewise.
1220         * doc/posix-functions/vswprintf.texi: Likewise.
1221         * doc/posix-functions/vwprintf.texi: Likewise.
1222         * doc/posix-functions/wcrtomb.texi: Likewise.
1223         * doc/posix-functions/wcsrtombs.texi: Likewise.
1224         * doc/posix-functions/wcsstr.texi: Likewise.
1225         * doc/posix-functions/wctob.texi: Likewise.
1226         * doc/posix-functions/wctrans.texi: Likewise.
1227         * doc/posix-functions/wmemchr.texi: Likewise.
1228         * doc/posix-functions/wmemcmp.texi: Likewise.
1229         * doc/posix-functions/wmemcpy.texi: Likewise.
1230         * doc/posix-functions/wmemmove.texi: Likewise.
1231         * doc/posix-functions/wmemset.texi: Likewise.
1232         * doc/posix-functions/wprintf.texi: Likewise.
1233         * doc/posix-functions/wscanf.texi: Likewise.
1234
1235 2008-12-21  Bruno Haible  <bruno@clisp.org>
1236
1237         Work around a portability problem.
1238         * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
1239         * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
1240
1241 2008-12-20  Bruno Haible  <bruno@clisp.org>
1242
1243         * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
1244         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
1245         REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
1246         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
1247         * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
1248
1249         Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
1250         * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
1251         set.
1252         (GNULIB_defined_mbstate_t): New macro.
1253         (mbsinit): Redefine if REPLACE_MBSINIT is set.
1254         (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
1255         * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
1256         reuses the system's mbrtowc function but works around the bugs.
1257         * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
1258         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
1259         macros.
1260         (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
1261         be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
1262         MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
1263         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
1264         REPLACE_MBSINIT if mbsinit needs to be overridden.
1265         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
1266         REPLACE_MBSINIT, REPLACE_MBRTOWC.
1267         * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
1268         REPLACE_MBSINIT, REPLACE_MBRTOWC.
1269         * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
1270         m4/locale-zh.m4.
1271         (Depends): Add mbsinit.
1272         * modules/mbsinit (Depends): Add mbrtowc.
1273         * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
1274
1275 2008-12-20  Bruno Haible  <bruno@clisp.org>
1276
1277         * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
1278         so that there are no conversion errors on AIX.
1279         * tests/test-mbsrtowcs.c (main): LIkewise.
1280
1281 2008-12-20  Bruno Haible  <bruno@clisp.org>
1282
1283         Work around wctob bug on Solaris <= 9.
1284         * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
1285         * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
1286         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
1287         * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
1288         * modules/wctob (Files): Add m4/locale-fr.m4.
1289         * doc/posix-functions/wctob.texi: Mention the Solaris bug.
1290
1291 2008-12-20  Bruno Haible  <bruno@clisp.org>
1292
1293         * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
1294         /dev/null.
1295         * tests/test-select-in.sh: Likewise.
1296         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
1297
1298 2008-12-20  Bruno Haible  <bruno@clisp.org>
1299
1300         Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
1301         * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
1302         Cygwin 1.5.x.
1303
1304 2008-12-20  Bruno Haible  <bruno@clisp.org>
1305
1306         Ensure mbstate_t is defined on HP-UX 11.11.
1307         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
1308         AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
1309         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
1310         AC_USE_SYSTEM_EXTENSIONS.
1311         * modules/fnmatch (Depends-on): Add extensions.
1312         * modules/mbrlen (Depends-on): Likewise.
1313         * modules/mbrtowc (Depends-on): Likewise.
1314         * modules/mbsinit (Depends-on): Likewise.
1315         * modules/mbsrtowcs (Depends-on): Likewise.
1316         * modules/mbswidth (Depends-on): Likewise.
1317         * modules/quotearg (Depends-on): Likewise.
1318         * modules/strftime (Depends-on): Likewise.
1319
1320 2008-12-20  Bruno Haible  <bruno@clisp.org>
1321
1322         Ensure wctob is declared on IRIX 6.5.
1323         * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
1324         * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
1325         HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
1326         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
1327         of HAVE_WCTOB.
1328         * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
1329         HAVE_WCTOB.
1330         * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
1331
1332 2008-12-19  Bruno Haible  <bruno@clisp.org>
1333
1334         * modules/mbsrtowcs-tests: New file.
1335         * tests/test-mbsrtowcs1.sh: New file.
1336         * tests/test-mbsrtowcs2.sh: New file.
1337         * tests/test-mbsrtowcs3.sh: New file.
1338         * tests/test-mbsrtowcs4.sh: New file.
1339         * tests/test-mbsrtowcs.c: New file.
1340
1341         New module 'mbsrtowcs'.
1342         * lib/wchar.in.h (mbsrtowcs): New declaration.
1343         * lib/mbsrtowcs.c: New file.
1344         * m4/mbsrtowcs.m4: New file.
1345         * modules/mbsrtowcs: New file.
1346         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOWCS and
1347         HAVE_MBSRTOWCS.
1348         * modules/wchar (Makefile.am): Substitute GNULIB_MBSRTOWCS and
1349         HAVE_MBSRTOWCS.
1350         * doc/posix-functions/mbsrtowcs.texi: Document the new module.
1351
1352 2008-12-19  Bruno Haible  <bruno@clisp.org>
1353
1354         New module 'mbrlen'.
1355         * lib/wchar.in.h (mbrlen): New declaration.
1356         * lib/mbrlen.c: New file.
1357         * m4/mbrlen.m4: New file.
1358         * modules/mbrlen: New file.
1359         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRLEN and
1360         HAVE_MBRLEN.
1361         * modules/wchar (Makefile.am): Substitute GNULIB_MBRLEN and
1362         HAVE_MBRLEN.
1363         * doc/posix-functions/mbrlen.texi: Document the new module.
1364
1365 2008-12-19  Bruno Haible  <bruno@clisp.org>
1366
1367         * lib/mbrtowc.c: Include verify.h. Verify an assumption.
1368         * modules/mbrtowc (Depends-on): Add verify.
1369         Suggested by Paul Eggert.
1370
1371 2008-12-18  Bruno Haible  <bruno@clisp.org>
1372
1373         * modules/mbsinit-tests: New file.
1374         * tests/test-mbsinit.sh: New file.
1375         * tests/test-mbsinit.c: New file.
1376
1377 2008-12-18  Bruno Haible  <bruno@clisp.org>
1378
1379         * modules/mbrtowc-tests: New file.
1380         * tests/test-mbrtowc1.sh: New file.
1381         * tests/test-mbrtowc2.sh: New file.
1382         * tests/test-mbrtowc3.sh: New file.
1383         * tests/test-mbrtowc4.sh: New file.
1384         * tests/test-mbrtowc.c: New file.
1385
1386         New module 'mbrtowc'.
1387         * lib/wchar.in.h (mbstate_t): Override when the system does not have
1388         mbsinit and mbrtowc.
1389         (mbrtowc): New declaration.
1390         * lib/mbrtowc.c: New file.
1391         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_PREREQ_MBRTOWC): New macros.
1392         * modules/mbrtowc: New file.
1393         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOWC and
1394         HAVE_MBRTOWC.
1395         * modules/wchar (Makefile.am): Substitute GNULIB_MBRTOWC and
1396         HAVE_MBRTOWC.
1397         * doc/posix-functions/mbrtowc.texi: Document the new module.
1398
1399 2008-12-18  Bruno Haible  <bruno@clisp.org>
1400
1401         New module 'wctob'.
1402         * lib/wchar.in.h (wctob): New declaration.
1403         * lib/wctob.c: New file.
1404         * m4/wctob.m4: New file.
1405         * modules/wctob: New file.
1406         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCTOB and
1407         HAVE_WCTOB.
1408         * modules/wchar (Makefile.am): Substitute GNULIB_WCTOB and HAVE_WCTOB.
1409         * doc/posix-functions/wctob.texi: Document the new module.
1410
1411 2008-12-18  Bruno Haible  <bruno@clisp.org>
1412
1413         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_REPLACE_WCHAR_H.
1414         * m4/btowc.m4 (gl_FUNC_BTOWC): Likewise.
1415
1416 2008-12-18  Simon Josefsson  <simon@josefsson.org>
1417
1418         * lib/flock.c: Use proper #if symbol in check.  Reported by "Tom
1419         G. Christensen" <tgc@jupiterrise.com>.
1420
1421         * lib/flock.c: Need to include errno.h.  Reported by "Tom
1422         G. Christensen" <tgc@jupiterrise.com>.
1423
1424         * lib/flock.c: Need to include string.h.  Reported by "Tom
1425         G. Christensen" <tgc@jupiterrise.com> and Eric Blake
1426         <ebb9@byu.net>.
1427
1428 2008-12-18  Bruno Haible  <bruno@clisp.org>
1429
1430         * m4/locale-ja.m4: New file, from GNU gettext.
1431
1432 2008-12-17  Bruno Haible  <bruno@clisp.org>
1433
1434         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Don't override in autoconf >= 2.60.
1435         Suggested by Eric Blake.
1436
1437 2008-12-17  Bruno Haible  <bruno@clisp.org>
1438
1439         * m4/errno_h.m4 (AC_COMPUTE_INT): Provide fallback definition.
1440
1441 2008-12-17  Bruno Haible  <bruno@clisp.org>
1442
1443         * lib/mbsinit.c: Include verify.h. Verify an assumption.
1444         * modules/mbsinit (Depends-on): Add verify.
1445         Suggested by Paul Eggert.
1446
1447 2008-12-17  Bruno Haible  <bruno@clisp.org>
1448
1449         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Renamed from gl_FUNC_MBRTOWC.
1450         * m4/mbfile.m4 (gl_MBFILE): Use AC_FUNC_MBRTOWC instead of
1451         gl_FUNC_MBRTOWC.
1452         * m4/mbiter.m4 (gl_MBITER): LIkewise.
1453         * m4/mbscasecmp.m4 (gl_PREREQ_MBSCASECMP): Likewise.
1454         * m4/mbscasestr.m4 (gl_PREREQ_MBSCASESTR): Likewise.
1455         * m4/mbschr.m4 (gl_PREREQ_MBSCHR): Likewise.
1456         * m4/mbscspn.m4 (gl_PREREQ_MBSCSPN): Likewise.
1457         * m4/mbslen.m4 (gl_PREREQ_MBSLEN): Likewise.
1458         * m4/mbsncasecmp.m4 (gl_PREREQ_MBSNCASECMP): Likewise.
1459         * m4/mbsnlen.m4 (gl_PREREQ_MBSNLEN): Likewise.
1460         * m4/mbspbrk.m4 (gl_PREREQ_MBSPBRK): Likewise.
1461         * m4/mbspcasecmp.m4 (gl_PREREQ_MBSPCASECMP): Likewise.
1462         * m4/mbsrchr.m4 (gl_PREREQ_MBSRCHR): Likewise.
1463         * m4/mbssep.m4 (gl_PREREQ_MBSSEP): Likewise.
1464         * m4/mbsspn.m4 (gl_PREREQ_MBSSPN): Likewise.
1465         * m4/mbsstr.m4 (gl_PREREQ_MBSSTR): Likewise.
1466         * m4/mbstok_r.m4 (gl_PREREQ_MBSTOK_R): Likewise.
1467         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
1468         * m4/quotearg.m4 (gl_QUOTEARG): Likewise.
1469         * modules/trim (configure.ac): Likewise.
1470
1471 2008-12-17  Bruno Haible  <bruno@clisp.org>
1472
1473         * modules/btowc-tests: New file.
1474         * tests/test-btowc1.sh: New file.
1475         * tests/test-btowc2.sh: New file.
1476         * tests/test-btowc.c: New file.
1477
1478         New module 'btowc'.
1479         * lib/wchar.in.h (btowc): New declaration.
1480         * lib/btowc.c: New file.
1481         * m4/btowc.m4: New file.
1482         * modules/btowc: New file.
1483         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_BTOWC and
1484         HAVE_BTOWC.
1485         * modules/wchar (Makefile.am): Substitute GNULIB_BTOWC and HAVE_BTOWC.
1486         * doc/posix-functions/btowc.texi: Document the new module.
1487
1488 2008-12-17  Bruno Haible  <bruno@clisp.org>
1489
1490         New module 'mbsinit'.
1491         * lib/wchar.in.h (mbsinit): New declaration.
1492         * lib/mbsinit.c: New file.
1493         * m4/mbsinit.m4: New file.
1494         * modules/mbsinit: New file.
1495         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSINIT and
1496         HAVE_MBSINIT.
1497         * modules/wchar (Makefile.am): Substitute GNULIB_MBSINIT and
1498         HAVE_MBSINIT.
1499         * doc/posix-functions/mbsinit.texi: Document the new module.
1500
1501 2008-12-16  Bruno Haible  <bruno@clisp.org>
1502
1503         * lib/unistd.in.h: Add comment.
1504         * tests/test-environ.c: Don't include <stdlib.h>.
1505
1506 2008-12-16  Bruno Haible  <bruno@clisp.org>
1507
1508         * lib/parse-duration.h (parse_duration): Document return value
1509         convention.
1510         * lib/parse-duration.c: Include specification header first. Add
1511         comments.
1512         (_): Remove macro.
1513         (parse_year_month_day, parse_hour_minute_second): Move side effects
1514         outside of strchr call.
1515         (parse_non_iso8601): Move side effects outside of isspace call.
1516         (parse_duration): Don't test errno is res != BAD_TIME. Remove fprintf
1517         call.
1518
1519 2008-12-16  Bruno Haible  <bruno@clisp.org>
1520
1521         * tests/test-parse-duration.sh: Produce no output when the test
1522         succeeds.
1523
1524 2008-12-16  Bruno Haible  <bruno@clisp.org>
1525
1526         * tests/test-parse-duration.sh: Fix quoting of $tmp and $tmpf
1527         expressions.
1528
1529 2008-12-15  Bruno Haible  <bruno@clisp.org>
1530
1531         * doc/glibc-functions/fgetxattr.texi: Tweak wording.
1532         * doc/glibc-functions/flistxattr.texi: Likewise.
1533         * doc/glibc-functions/fopencookie.texi: Likewise.
1534         * doc/glibc-functions/fremovexattr.texi: Likewise.
1535         * doc/glibc-functions/fsetxattr.texi: Likewise.
1536         * doc/glibc-functions/getxattr.texi: Likewise.
1537         * doc/glibc-functions/lgetxattr.texi: Likewise.
1538         * doc/glibc-functions/listxattr.texi: Likewise.
1539         * doc/glibc-functions/llistxattr.texi: Likewise.
1540         * doc/glibc-functions/lremovexattr.texi: Likewise.
1541         * doc/glibc-functions/lsetxattr.texi: Likewise.
1542         * doc/glibc-functions/removexattr.texi: Likewise.
1543         * doc/glibc-functions/setxattr.texi: Likewise.
1544         * doc/posix-functions/open_memstream.texi: Likewise.
1545
1546 2008-12-15  Eric Blake  <ebb9@byu.net>
1547
1548         Update doc for cygwin 1.7.
1549         * doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
1550         functions.
1551         * doc/posix-functions/fchmodat.texi: Likewise.
1552         * doc/posix-functions/fchownat.texi: Likewise.
1553         * doc/posix-functions/fdopendir.texi: Likewise.
1554         * doc/posix-functions/fmemopen.texi: Likewise.
1555         * doc/posix-functions/freeaddrinfo.texi: Likewise.
1556         * doc/posix-functions/fstatat.texi: Likewise.
1557         * doc/posix-functions/futimens.texi: Likewise.
1558         * doc/posix-functions/gai_strerror.texi: Likewise.
1559         * doc/posix-functions/getaddrinfo.texi: Likewise.
1560         * doc/posix-functions/getnameinfo.texi: Likewise.
1561         * doc/posix-functions/if_freenameindex.texi: Likewise.
1562         * doc/posix-functions/if_indextoname.texi: Likewise.
1563         * doc/posix-functions/if_nameindex.texi: Likewise.
1564         * doc/posix-functions/if_nametoindex.texi: Likewise.
1565         * doc/posix-functions/insque.texi: Likewise.
1566         * doc/posix-functions/linkat.texi: Likewise.
1567         * doc/posix-functions/llrint.texi: Likewise.
1568         * doc/posix-functions/llrintf.texi: Likewise.
1569         * doc/posix-functions/llrintl.texi: Likewise.
1570         * doc/posix-functions/lockf.texi: Likewise.
1571         * doc/posix-functions/lrintl.texi: Likewise.
1572         * doc/posix-functions/mkdirat.texi: Likewise.
1573         * doc/posix-functions/mkfifoat.texi: Likewise.
1574         * doc/posix-functions/mknodat.texi: Likewise.
1575         * doc/posix-functions/mq_close.texi: Likewise.
1576         * doc/posix-functions/mq_getattr.texi: Likewise.
1577         * doc/posix-functions/mq_notify.texi: Likewise.
1578         * doc/posix-functions/mq_open.texi: Likewise.
1579         * doc/posix-functions/mq_receive.texi: Likewise.
1580         * doc/posix-functions/mq_send.texi: Likewise.
1581         * doc/posix-functions/mq_setattr.texi: Likewise.
1582         * doc/posix-functions/mq_timedreceive.texi: Likewise.
1583         * doc/posix-functions/mq_timedsend.texi: Likewise.
1584         * doc/posix-functions/mq_unlink.texi: Likewise.
1585         * doc/posix-functions/open_memstream.texi: Likewise.
1586         * doc/posix-functions/openat.texi: Likewise.
1587         * doc/posix-functions/posix_fadvise.texi: Likewise.
1588         * doc/posix-functions/posix_fallocate.texi: Likewise.
1589         * doc/posix-functions/posix_madvise.texi: Likewise.
1590         * doc/posix-functions/posix_memalign.texi: Likewise.
1591         * doc/posix-functions/posix_openpt.texi: Likewise.
1592         * doc/posix-functions/readlinkat.texi: Likewise.
1593         * doc/posix-functions/remque.texi: Likewise.
1594         * doc/posix-functions/renameat.texi: Likewise.
1595         * doc/posix-functions/rintl.texi: Likewise.
1596         * doc/posix-functions/sem_unlink.texi: Likewise.
1597         * doc/posix-functions/shm_open.texi: Likewise.
1598         * doc/posix-functions/shm_unlink.texi: Likewise.
1599         * doc/posix-functions/signgam.texi: Likewise.
1600         * doc/posix-functions/sigset.texi: Likewise.
1601         * doc/posix-functions/stpcpy.texi: Likewise.
1602         * doc/posix-functions/stpncpy.texi: Likewise.
1603         * doc/posix-functions/strerror.texi: Likewise.
1604         * doc/posix-functions/strtod.texi: Likewise.
1605         * doc/posix-functions/symlinkat.texi: Likewise.
1606         * doc/posix-functions/unlinkat.texi: Likewise.
1607         * doc/posix-functions/utimensat.texi: Likewise.
1608         * doc/glibc-functions/bindresvport.texi: Likewise.
1609         * doc/glibc-functions/dn_expand.texi: Likewise.
1610         * doc/glibc-functions/exp10.texi: Likewise.
1611         * doc/glibc-functions/exp10f.texi: Likewise.
1612         * doc/glibc-functions/fgetxattr.texi: Likewise.
1613         * doc/glibc-functions/flistxattr.texi: Likewise.
1614         * doc/glibc-functions/fopencookie.texi: Likewise.
1615         * doc/glibc-functions/freeifaddrs.texi: Likewise.
1616         * doc/glibc-functions/fremovexattr.texi: Likewise.
1617         * doc/glibc-functions/fsetxattr.texi: Likewise.
1618         * doc/glibc-functions/getifaddrs.texi: Likewise.
1619         * doc/glibc-functions/getxattr.texi: Likewise.
1620         * doc/glibc-functions/lgetxattr.texi: Likewise.
1621         * doc/glibc-functions/listxattr.texi: Likewise.
1622         * doc/glibc-functions/llistxattr.texi: Likewise.
1623         * doc/glibc-functions/lremovexattr.texi: Likewise.
1624         * doc/glibc-functions/lsetxattr.texi: Likewise.
1625         * doc/glibc-functions/pow10.texi: Likewise.
1626         * doc/glibc-functions/pow10f.texi: Likewise.
1627         * doc/glibc-functions/rcmd_af.texi: Likewise.
1628         * doc/glibc-functions/removexattr.texi: Likewise.
1629         * doc/glibc-functions/res_init.texi: Likewise.
1630         * doc/glibc-functions/res_mkquery.texi: Likewise.
1631         * doc/glibc-functions/res_query.texi: Likewise.
1632         * doc/glibc-functions/res_querydomain.texi: Likewise.
1633         * doc/glibc-functions/res_send.texi: Likewise.
1634         * doc/glibc-functions/rresvport_af.texi: Likewise.
1635         * doc/glibc-functions/setxattr.texi: Likewise.
1636         * doc/glibc-functions/strcasestr.texi: Likewise.
1637
1638 2008-12-15  Bruno Haible  <bruno@clisp.org>
1639
1640         Fix compilation error on OSF/1 4.0.
1641         * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or
1642         <sys/time.h>, simply delegate to the system header.
1643         Reported by Daniel Richard G. <oss@teragram.com>.
1644
1645 2008-12-15  Bruno Haible  <bruno@clisp.org>
1646
1647         * doc/posix-functions/openat.texi: Mention the 'openat' module.
1648         * doc/posix-functions/fchmodat.texi: Likewise.
1649         * doc/posix-functions/fchownat.texi: Likewise.
1650         * doc/posix-functions/fdopendir.texi: Likewise.
1651         * doc/posix-functions/fstatat.texi: Likewise.
1652         * doc/posix-functions/mkdirat.texi: Likewise.
1653         * doc/posix-functions/unlinkat.texi: Likewise.
1654
1655 2008-12-14  Bruno Haible  <bruno@clisp.org>
1656
1657         Update doc for POSIX:2008.
1658         * doc/posix-functions/faccessat.texi: New file.
1659         * doc/posix-functions/fchmodat.texi: New file.
1660         * doc/posix-functions/fchownat.texi: New file.
1661         * doc/posix-functions/fdopendir.texi: New file.
1662         * doc/posix-functions/fstatat.texi: New file.
1663         * doc/posix-functions/futimens.texi: New file.
1664         * doc/posix-functions/linkat.texi: New file.
1665         * doc/posix-functions/mkdirat.texi: New file.
1666         * doc/posix-functions/mkfifoat.texi: New file.
1667         * doc/posix-functions/mknodat.texi: New file.
1668         * doc/posix-functions/open_wmemstream.texi: New file.
1669         * doc/posix-functions/openat.texi: New file.
1670         * doc/posix-functions/psiginfo.texi: New file.
1671         * doc/posix-functions/pthread_mutex_consistent.texi: New file.
1672         * doc/posix-functions/pthread_mutexattr_getrobust.texi: New file.
1673         * doc/posix-functions/pthread_mutexattr_setrobust.texi: New file.
1674         * doc/posix-functions/readlinkat.texi: New file.
1675         * doc/posix-functions/renameat.texi: New file.
1676         * doc/posix-functions/strerror_l.texi: New file.
1677         * doc/posix-functions/symlinkat.texi: New file.
1678         * doc/posix-functions/unlinkat.texi: New file.
1679         * doc/posix-functions/utimensat.texi: New file.
1680         * doc/gnulib.texi (Function Substitutes): Add these subsections.
1681
1682 2008-12-14  Bruno Haible  <bruno@clisp.org>
1683
1684         Update doc for POSIX:2008.
1685         * doc/posix-functions/alphasort.texi: Renamed from
1686         doc/glibc-functions/alphasort.texi.
1687         * doc/posix-functions/dirfd.texi: Renamed from
1688         doc/glibc-functions/dirfd.texi.
1689         * doc/posix-functions/dprintf.texi: Renamed from
1690         doc/glibc-functions/dprintf.texi.
1691         * doc/posix-functions/duplocale.texi: Renamed from
1692         doc/glibc-functions/duplocale.texi.
1693         * doc/posix-functions/fexecve.texi: Renamed from
1694         doc/glibc-functions/fexecve.texi.
1695         * doc/posix-functions/fmemopen.texi: Renamed from
1696         doc/glibc-functions/fmemopen.texi.
1697         * doc/posix-functions/freelocale.texi: Renamed from
1698         doc/glibc-functions/freelocale.texi.
1699         * doc/posix-functions/getdate_err.texi: Renamed from
1700         doc/glibc-functions/getdate_err.texi.
1701         * doc/posix-functions/isalnum_l.texi: Renamed from
1702         doc/glibc-functions/isalnum_l.texi.
1703         * doc/posix-functions/isalpha_l.texi: Renamed from
1704         doc/glibc-functions/isalpha_l.texi.
1705         * doc/posix-functions/isblank_l.texi: Renamed from
1706         doc/glibc-functions/isblank_l.texi.
1707         * doc/posix-functions/iscntrl_l.texi: Renamed from
1708         doc/glibc-functions/iscntrl_l.texi.
1709         * doc/posix-functions/isdigit_l.texi: Renamed from
1710         doc/glibc-functions/isdigit_l.texi.
1711         * doc/posix-functions/isgraph_l.texi: Renamed from
1712         doc/glibc-functions/isgraph_l.texi.
1713         * doc/posix-functions/islower_l.texi: Renamed from
1714         doc/glibc-functions/islower_l.texi.
1715         * doc/posix-functions/isprint_l.texi: Renamed from
1716         doc/glibc-functions/isprint_l.texi.
1717         * doc/posix-functions/ispunct_l.texi: Renamed from
1718         doc/glibc-functions/ispunct_l.texi.
1719         * doc/posix-functions/isspace_l.texi: Renamed from
1720         doc/glibc-functions/isspace_l.texi.
1721         * doc/posix-functions/isupper_l.texi: Renamed from
1722         doc/glibc-functions/isupper_l.texi.
1723         * doc/posix-functions/iswalnum_l.texi: Renamed from
1724         doc/glibc-functions/iswalnum_l.texi.
1725         * doc/posix-functions/iswalpha_l.texi: Renamed from
1726         doc/glibc-functions/iswalpha_l.texi.
1727         * doc/posix-functions/iswblank_l.texi: Renamed from
1728         doc/glibc-functions/iswblank_l.texi.
1729         * doc/posix-functions/iswcntrl_l.texi: Renamed from
1730         doc/glibc-functions/iswcntrl_l.texi.
1731         * doc/posix-functions/iswctype_l.texi: Renamed from
1732         doc/glibc-functions/iswctype_l.texi.
1733         * doc/posix-functions/iswdigit_l.texi: Renamed from
1734         doc/glibc-functions/iswdigit_l.texi.
1735         * doc/posix-functions/iswgraph_l.texi: Renamed from
1736         doc/glibc-functions/iswgraph_l.texi.
1737         * doc/posix-functions/iswlower_l.texi: Renamed from
1738         doc/glibc-functions/iswlower_l.texi.
1739         * doc/posix-functions/iswprint_l.texi: Renamed from
1740         doc/glibc-functions/iswprint_l.texi.
1741         * doc/posix-functions/iswpunct_l.texi: Renamed from
1742         doc/glibc-functions/iswpunct_l.texi.
1743         * doc/posix-functions/iswspace_l.texi: Renamed from
1744         doc/glibc-functions/iswspace_l.texi.
1745         * doc/posix-functions/iswupper_l.texi: Renamed from
1746         doc/glibc-functions/iswupper_l.texi.
1747         * doc/posix-functions/iswxdigit_l.texi: Renamed from
1748         doc/glibc-functions/iswxdigit_l.texi.
1749         * doc/posix-functions/isxdigit_l.texi: Renamed from
1750         doc/glibc-functions/isxdigit_l.texi.
1751         * doc/posix-functions/mbsnrtowcs.texi: Renamed from
1752         doc/glibc-functions/mbsnrtowcs.texi.
1753         * doc/posix-functions/mkdtemp.texi: Renamed from
1754         doc/glibc-functions/mkdtemp.texi.
1755         * doc/posix-functions/newlocale.texi: Renamed from
1756         doc/glibc-functions/newlocale.texi.
1757         * doc/posix-functions/nl_langinfo_l.texi: Renamed from
1758         doc/glibc-functions/nl_langinfo_l.texi.
1759         * doc/posix-functions/open_memstream.texi: Renamed from
1760         doc/glibc-functions/open_memstream.texi.
1761         * doc/posix-functions/opterr.texi: Renamed from
1762         doc/glibc-functions/opterr.texi.
1763         * doc/posix-functions/optind.texi: Renamed from
1764         doc/glibc-functions/optind.texi.
1765         * doc/posix-functions/optopt.texi: Renamed from
1766         doc/glibc-functions/optopt.texi.
1767         * doc/posix-functions/psignal.texi: Renamed from
1768         doc/glibc-functions/psignal.texi.
1769         * doc/posix-functions/scandir.texi: Renamed from
1770         doc/glibc-functions/scandir.texi.
1771         * doc/posix-functions/sched_get_priority_min.texi: Renamed from
1772         doc/glibc-functions/sched_get_priority_min.texi.
1773         * doc/posix-functions/signgam.texi: Renamed from
1774         doc/glibc-functions/signgam.texi.
1775         * doc/posix-functions/stpcpy.texi: Renamed from
1776         doc/glibc-functions/stpcpy.texi.
1777         * doc/posix-functions/stpncpy.texi: Renamed from
1778         doc/glibc-functions/stpncpy.texi.
1779         * doc/posix-functions/strcasecmp_l.texi: Renamed from
1780         doc/glibc-functions/strcasecmp_l.texi.
1781         * doc/posix-functions/strcoll_l.texi: Renamed from
1782         doc/glibc-functions/strcoll_l.texi.
1783         * doc/posix-functions/strfmon_l.texi: Renamed from
1784         doc/glibc-functions/strfmon_l.texi.
1785         * doc/posix-functions/strftime_l.texi: Renamed from
1786         doc/glibc-functions/strftime_l.texi.
1787         * doc/posix-functions/strncasecmp_l.texi: Renamed from
1788         doc/glibc-functions/strncasecmp_l.texi.
1789         * doc/posix-functions/strndup.texi: Renamed from
1790         doc/glibc-functions/strndup.texi.
1791         * doc/posix-functions/strnlen.texi: Renamed from
1792         doc/glibc-functions/strnlen.texi.
1793         * doc/posix-functions/strsignal.texi: Renamed from
1794         doc/glibc-functions/strsignal.texi.
1795         * doc/posix-functions/strxfrm_l.texi: Renamed from
1796         doc/glibc-functions/strxfrm_l.texi.
1797         * doc/posix-functions/timer_gettime.texi: Renamed from
1798         doc/glibc-functions/timer_gettime.texi.
1799         * doc/posix-functions/tolower_l.texi: Renamed from
1800         doc/glibc-functions/tolower_l.texi.
1801         * doc/posix-functions/toupper_l.texi: Renamed from
1802         doc/glibc-functions/toupper_l.texi.
1803         * doc/posix-functions/towctrans_l.texi: Renamed from
1804         doc/glibc-functions/towctrans_l.texi.
1805         * doc/posix-functions/towlower_l.texi: Renamed from
1806         doc/glibc-functions/towlower_l.texi.
1807         * doc/posix-functions/towupper_l.texi: Renamed from
1808         doc/glibc-functions/towupper_l.texi.
1809         * doc/posix-functions/uselocale.texi: Renamed from
1810         doc/glibc-functions/uselocale.texi.
1811         * doc/posix-functions/vdprintf.texi: Renamed from
1812         doc/glibc-functions/vdprintf.texi.
1813         * doc/posix-functions/wcpcpy.texi:
1814         Renamed from doc/glibc-functions/wcpcpy.texi.
1815         * doc/posix-functions/wcpncpy.texi: Renamed from
1816         doc/glibc-functions/wcpncpy.texi.
1817         * doc/posix-functions/wcscasecmp.texi: Renamed from
1818         doc/glibc-functions/wcscasecmp.texi.
1819         * doc/posix-functions/wcscasecmp_l.texi: Renamed from
1820         doc/glibc-functions/wcscasecmp_l.texi.
1821         * doc/posix-functions/wcscoll_l.texi: Renamed from
1822         doc/glibc-functions/wcscoll_l.texi.
1823         * doc/posix-functions/wcsdup.texi: Renamed from
1824         doc/glibc-functions/wcsdup.texi.
1825         * doc/posix-functions/wcsncasecmp.texi: Renamed from
1826         doc/glibc-functions/wcsncasecmp.texi.
1827         * doc/posix-functions/wcsncasecmp_l.texi: Renamed from
1828         doc/glibc-functions/wcsncasecmp_l.texi.
1829         * doc/posix-functions/wcsnlen.texi: Renamed from
1830         doc/glibc-functions/wcsnlen.texi.
1831         * doc/posix-functions/wcsnrtombs.texi: Renamed from
1832         doc/glibc-functions/wcsnrtombs.texi.
1833         * doc/posix-functions/wcsxfrm_l.texi: Renamed from
1834         doc/glibc-functions/wcsxfrm_l.texi.
1835         * doc/posix-functions/wctrans_l.texi: Renamed from
1836         doc/glibc-functions/wctrans_l.texi.
1837         * doc/posix-functions/wctype_l.texi: Renamed from
1838         doc/glibc-functions/wctype_l.texi.
1839         * doc/gnulib.texi (Function Substitutes): Add these subsections.
1840         (Glibc ctype.h, Glibc dirent.h, Glibc getopt.h, Glibc math.h,
1841         Glibc sched.h, Glibc signal.h, Glibc stdio.h, Glibc stdlib.h,
1842         Glibc string.h, Glibc time.h, Glibc unistd.h, Glibc wchar.h): Remove
1843         these subsections.
1844         (Glibc langinfo.h, Glibc locale.h, Glibc monetary.h, Glibc wctype.h):
1845         Remove sections.
1846
1847 2008-12-14  Bruno Haible  <bruno@clisp.org>
1848
1849         Update doc for POSIX:2008.
1850         * doc/posix-functions/*.texi: Update URL of POSIX specification.
1851
1852 2008-12-14  Bruno Haible  <bruno@clisp.org>
1853
1854         Update doc for POSIX:2008.
1855         * doc/pastposix-functions/bcmp.texi: Renamed from
1856         doc/posix-functions/bcmp.texi.
1857         * doc/pastposix-functions/bcopy.texi: Renamed from
1858         doc/posix-functions/bcopy.texi.
1859         * doc/pastposix-functions/bsd_signal.texi: Renamed from
1860         doc/posix-functions/bsd_signal.texi.
1861         * doc/pastposix-functions/bzero.texi: Renamed from
1862         doc/posix-functions/bzero.texi.
1863         * doc/pastposix-functions/ecvt.texi: Renamed from
1864         doc/posix-functions/ecvt.texi.
1865         * doc/pastposix-functions/fcvt.texi: Renamed from
1866         doc/posix-functions/fcvt.texi.
1867         * doc/pastposix-functions/ftime.texi: Renamed from
1868         doc/posix-functions/ftime.texi.
1869         * doc/pastposix-functions/gcvt.texi: Renamed from
1870         doc/posix-functions/gcvt.texi.
1871         * doc/pastposix-functions/getcontext.texi: Renamed from
1872         doc/posix-functions/getcontext.texi.
1873         * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
1874         doc/posix-functions/gethostbyaddr.texi.
1875         * doc/pastposix-functions/gethostbyname.texi: Renamed from
1876         doc/posix-functions/gethostbyname.texi.
1877         * doc/pastposix-functions/getwd.texi: Renamed from
1878         doc/posix-functions/getwd.texi.
1879         * doc/pastposix-functions/h_errno.texi: Renamed from
1880         doc/posix-functions/h_errno.texi.
1881         * doc/pastposix-functions/index.texi: Renamed from
1882         doc/posix-functions/index.texi.
1883         * doc/pastposix-functions/makecontext.texi: Renamed from
1884         doc/posix-functions/makecontext.texi.
1885         * doc/pastposix-functions/mktemp.texi: Renamed from
1886         doc/posix-functions/mktemp.texi.
1887         * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
1888         doc/posix-functions/pthread_attr_getstackaddr.texi.
1889         * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
1890         doc/posix-functions/pthread_attr_setstackaddr.texi.
1891         * doc/pastposix-functions/rindex.texi: Renamed from
1892         doc/posix-functions/rindex.texi.
1893         * doc/pastposix-functions/scalb.texi: Renamed from
1894         doc/posix-functions/scalb.texi.
1895         * doc/pastposix-functions/setcontext.texi: Renamed from
1896         doc/posix-functions/setcontext.texi.
1897         * doc/pastposix-functions/swapcontext.texi: Renamed from
1898         doc/posix-functions/swapcontext.texi.
1899         * doc/pastposix-functions/ualarm.texi: Renamed from
1900         doc/posix-functions/ualarm.texi.
1901         * doc/pastposix-functions/usleep.texi: Renamed from
1902         doc/posix-functions/usleep.texi.
1903         * doc/pastposix-functions/vfork.texi: Renamed from
1904         doc/posix-functions/vfork.texi.
1905         * doc/pastposix-functions/wcswcs.texi: Renamed from
1906         doc/posix-functions/wcswcs.texi.
1907         * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
1908         (Function Substitutes): Update.
1909
1910 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1911
1912         * modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
1913         m4/strerror.m4.
1914
1915 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1916             Bruno Haible  <bruno@clisp.org>
1917
1918         * modules/unilbrk/tables (Depends-on): Add unilbrk/base.
1919
1920 2008-12-13  Bruno Haible  <bruno@clisp.org>
1921
1922         * modules/strtoull (Depends-on): Remove unistd.
1923
1924 2008-12-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1925
1926         * modules/strtoull (Depends-on): Add stdlib.
1927
1928 2008-12-11  Simon Josefsson  <simon@josefsson.org>
1929
1930         * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add more warnings.
1931
1932 2008-12-10  Jim Meyering  <meyering@redhat.com>
1933
1934         gl_ASSERT: don't say assertions are disabled when they're not
1935         * m4/assert.m4 (gl_ASSERT): Do not make configure report
1936         "checking whether to enable assertions... no", when they are in
1937         fact enabled.  This is solely a bug in the output of configure.
1938         In spite of saying "no", NDEBUG was not defined in that case.
1939         Also, as noted by Eric Blake, leave assertions enabled upon
1940         --enable-assert=INVALID.
1941
1942 2008-12-10  Bruno Haible  <bruno@clisp.org>
1943
1944         Change MODULES.html to refer to POSIX:2008 where possible.
1945         * MODULES.html.sh (POSIX2008_URL): New variable.
1946         (posix_headers): Remove sys/timeb, ucontext.
1947         (posix2001_headers): New variable.
1948         (posix_functions): Remove bcmp, bcopy, bsd_signal, bzero, ecvt, fcvt,
1949         ftime, gcvt, getcontext, gethostbyaddr, gethostbyname, getwd, h_errno,
1950         index, makecontext, mktemp, pthread_attr_getstackaddr,
1951         pthread_attr_setstackaddr, rindex, scalb, setcontext, swapcontext,
1952         ualarm, usleep, vfork, wcswcs. Add the new POSIX:2008 functions.
1953         (posix2001_functions): New variable.
1954         (func_module): Use URLs to POSIX:2008 where possible and to POSIX:2001
1955         otherwise.
1956
1957 2008-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1958
1959         add missing include to parse-duration.c
1960         * lib/parse-duration.c: #include "xalloc.h", for xstrdup.
1961         * modules/parse-duration (Depends-on): Add xalloc.
1962
1963         fix sed script reading maint.mk
1964         * top/maint.mk (MYSELF): New macro, define as $(srcdir)/$(ME).
1965         (syntax-check-rules): Use it.
1966
1967 2008-12-09  Bruno Haible  <bruno@clisp.org>
1968
1969         * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Add another check, that fails on
1970         MacOS X 10.4/PowerPC.
1971         Reported by Simon Josefsson.
1972
1973 2008-12-08  Jim Meyering  <meyering@redhat.com>
1974
1975         work around mingw's lack of some S_IF definitions
1976         * lib/fts.c (S_IFLNK, S_IFSOCK): Define if not already defined.
1977         Reported by Simon Josefsson.
1978
1979 2008-12-08  Bruno Haible  <bruno@clisp.org>
1980
1981         * m4/signbitl.m4 (gl_SIGNBIT_TEST_PROGRAM): Add a link check of signbit
1982         applied to variables. Needed on MacOS X 10.4/PowerPC.
1983         Reported by Simon Josefsson.
1984
1985 2008-12-08  William Pursell  <bill.pursell@gmail.com>  (tiny change)
1986         and Eric Blake  <ebb9@byu.net>
1987
1988         assert: honor --enable-assert
1989         * m4/assert.m4 (gl_ASSERT): Synchronize with autoconf 2.64, in
1990         order to honor --enable-assert, rather than treating it as a
1991         synonym for --disable-assert.
1992
1993 2008-12-08  Jim Meyering  <meyering@redhat.com>
1994
1995         * lib/posixtm.c: Remove now-useless declaration of mktime.
1996
1997         * build-aux/announce-gen (get_tool_versions): Accept .xz tarballs.
1998
1999 2008-12-07  Bruno Haible  <bruno@clisp.org>
2000
2001         * tests/test-lock.c (test_lock, test_rwlock, test_recursive_lock,
2002         test_once): Mark functions as static.
2003         * tests/test-tls.c (test_tls): Likewise.
2004
2005 2008-12-07  Bruno Haible  <bruno@clisp.org>
2006
2007         * lib/striconveha.h (uniconv_register_autodetect): Renamed from
2008         iconv_register_autodetect.
2009
2010 2008-12-07  Jim Meyering  <meyering@redhat.com>
2011
2012         posixtm.c: avoid a warning
2013         * lib/posixtm.c (posixtime): Don't initialize tm0.
2014         It's no longer needed to placate gcc4's -Wuninitialized,
2015         and the attempt to placate would elicit a new warning.
2016
2017         unicodeio.c: mark unused parameters
2018         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
2019         (fallback_failure_callback): Likewise.
2020
2021 2008-12-07  Bruno Haible  <bruno@clisp.org>
2022
2023         * gnulib-tool (func_create_testdir): When building the tests
2024         subdirectory, ignore the modules gnumakefile and maintainer-makefile.
2025         Reported by Simon Josefsson.
2026
2027 2008-12-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2028
2029         * doc/manywarnings.texi, doc/gnulib-intro.texi: Fix typos.
2030
2031 2008-12-06  Bruno Haible  <bruno@clisp.org>
2032
2033         * lib/c-stack.h (c_stack_action): Clarify possible side effects.
2034         Suggested by Eric Blake.
2035
2036 2008-12-06  Bruno Haible  <bruno@clisp.org>
2037
2038         Fix a c-stack test failure on MacOS X.
2039         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Require
2040         AC_CANONICAL_HOST. Define FAULT_YIELDS_SIGBUS. If set, install a signal
2041         handler for SIGBUS as well.
2042         * lib/c-stack.c (c_stack_action): If FAULT_YIELDS_SIGBUS is set,
2043         install a signal handler for SIGBUS as well.
2044         Reported by Bruce Dugan <bld0401@gmail.com> via Eric Blake.
2045
2046 2008-12-06  Bruno Haible  <bruno@clisp.org>
2047
2048         Advocacy documentation.
2049         * doc/gnulib-intro.texi (Benefits): New section.
2050         * doc/gnulib.texi: Update.
2051
2052 2008-12-06  Bruno Haible  <bruno@clisp.org>
2053
2054         Document the 'manywarnings' module.
2055         * doc/manywarnings.texi: New file.
2056         * doc/gnulib.texi: Include it.
2057
2058 2008-12-05  Eric Blake  <ebb9@byu.net>
2059
2060         tests: silence some gcc warnings
2061         * tests/test-getdate.c (LOG) [!DEBUG]: Mark no-op void.
2062         * tests/uniwidth/test-uc_width2.c (finish_interval): Avoid printf
2063         type mismatches.
2064
2065 2008-12-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2066             Bruno Haible  <bruno@clisp.org>
2067
2068         * m4/openmp.m4 (AC_OPENMP): Do not define with Autoconf 2.62 or newer.
2069
2070 2008-11-29  Jim Meyering  <meyering@redhat.com>
2071
2072         unicodeio.c: mark unused parameters
2073         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
2074         (fallback_failure_callback): Likewise.
2075
2076         fts: fix a thinko
2077         * lib/fts.c (s_ifmt_shift_bits): Remove function.  Not needed after all.
2078         (set_stat_type): Return S_IF*-valued "type" directly.
2079         Prompted by James Youngman's spotting a related bug.
2080         Confirmed by further testing through find.
2081
2082         fts: provide dirent.d_type via FTSENT.fts_statp, when possible
2083         * lib/fts.c (D_TYPE): Define.
2084         (DT_UNKNOWN, DT_BLK, DT_CHR) [HAVE_STRUCT_DIRENT_D_TYPE]: Define.
2085         (DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK): Likewise.
2086         (s_ifmt_shift_bits): New function.
2087         (set_stat_type): New function.
2088         (fts_build): When not calling fts_stat, call set_stat_type
2089         to propagate dirent.d_type info to fts_read caller.
2090         * lib/fts_.h (FTSENT) [FTS_DEFER_STAT]: Mention that
2091         fts_statp->st_mode type information may be valid.
2092
2093 2008-11-28  Simon Josefsson  <simon@josefsson.org>
2094
2095         * lib/sys_time.in.h: Add extern "C" block for C++.  Suggested by
2096         Brian Dessent <brian@dessent.net>.  Reported by Sam Steingold
2097         <sds@gnu.org>.
2098
2099 2008-11-20  Bruno Haible  <bruno@clisp.org>
2100
2101         Attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
2102         * lib/math.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of
2103         INCLUDE_NEXT.
2104         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also
2105         INCLUDE_NEXT_AS_FIRST_DIRECTIVE.
2106         * modules/math (Makefile.am): Substitute
2107         INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of INCLUDE_NEXT.
2108         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
2109
2110 2008-11-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
2111             Bruno Haible  <bruno@clisp.org>
2112
2113         * lib/stdint.in.h: Define all type macros so that their expansion is
2114         a single typedef'ed token. Fixes a compilation failure in Boost which
2115         does "using ::int8_t;".
2116
2117 2008-11-18  Simon Josefsson  <simon@josefsson.org>
2118
2119         * m4/manywarnings.m4: New file with gl_MANYWARN_COMPLEMENT and
2120         gl_MANYWARN_ALL_GCC.
2121         * m4/warnings.m4: Removed gl_WARN_SUPPORTED and
2122         gl_WARN_COMPLEMENT.  Suggested by Bruno Haible <bruno@clisp.org>.
2123         * modules/manywarnings: New file.
2124         * MODULES.html.sh: Mention manywarnings module.
2125
2126 2008-11-18  Bruno Haible  <bruno@clisp.org>
2127
2128         * doc/gnulib-tool.texi (Unit tests): New section.
2129
2130 2008-11-18  Simon Josefsson  <simon@josefsson.org>
2131
2132         * top/maint.mk (refresh-po): Fix sed regexp to avoid problems with
2133         paths like 'lib/po/foo.po'.
2134
2135 2008-11-17  Simon Josefsson  <simon@josefsson.org>
2136
2137         * m4/warnings.m4: Improve code.  Reported by Ralf Wildenhues
2138         <Ralf.Wildenhues@gmx.de> and Paolo Bonzini <bonzini@gnu.org>.
2139
2140 2008-11-17  Simon Josefsson  <simon@josefsson.org>
2141
2142         * m4/warnings.m4: Use CPPFLAGS to really check whether the
2143         parameter works.
2144
2145 2008-11-17  Simon Josefsson  <simon@josefsson.org>
2146
2147         * m4/warnings.m4: Add gl_WARN_COMPLEMENT and gl_WARN_SUPPORTED.
2148
2149 2008-11-17  Bruce Korb  <bkorb@gnu.org>
2150
2151         * modules/parse-duration-tests: New file.
2152         * tests/test-parse-duration.sh: New file.
2153         * tests/test-parse-duration.c: New file.
2154
2155         New module 'parse-duration'.
2156         * lib/parse-duration.h: New file.
2157         * lib/parse-duration.c: New file.
2158         * modules/parse-duration: New file.
2159
2160 2008-11-17  Bruno Haible  <bruno@clisp.org>
2161
2162         * tests/test-select-out.sh: Comment out the first pipe test.
2163         Reported by Simon Josefsson.
2164
2165 2008-11-17  Bruno Haible  <bruno@clisp.org>
2166
2167         * modules/getaddrinfo (Depends-on): Add servent, hostent.
2168         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_SERVENT and
2169         gl_HOSTENT.
2170
2171 2008-11-17  Bruno Haible  <bruno@clisp.org>
2172
2173         * m4/sockets.m4 (gl_SOCKETS): After trying -lsocket, try also
2174         -lnetwork and -lnet. Needed for Haiku and BeOS.
2175
2176 2008-11-16  Bruno Haible  <bruno@clisp.org>
2177
2178         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix indentation.
2179
2180 2008-11-16  Bruno Haible  <bruno@clisp.org>
2181
2182         Avoid test failure on Haiku.
2183         * tests/test-fsync.c: Include <errno.h>.
2184         (main): Don't require that fsync (0) fails.
2185
2186 2008-11-15  Bruno Haible  <bruno@clisp.org>
2187
2188         New module 'hostent'.
2189         * modules/hostent: New file.
2190         * m4/hostent.m4: New file, based on code in m4/getaddrinfo.m4.
2191
2192 2008-11-15  Bruno Haible  <bruno@clisp.org>
2193
2194         New module 'servent'.
2195         * modules/servent: New file.
2196         * m4/servent.m4: New file, based on code in m4/getaddrinfo.m4.
2197
2198 2008-11-15  Bruno Haible  <bruno@clisp.org>
2199
2200         Avoid generating same test program with two different rules.
2201         * modules/frexp-nolibm-tests (Makefile.am): Rename test program from
2202         test-frexp to test-frexp-nolibm.
2203         * modules/frexpl-nolibm-tests (Makefile.am): Rename test program from
2204         test-frexpl to test-frexpl-nolibm.
2205
2206 2008-11-15  Bruno Haible  <bruno@clisp.org>
2207
2208         * modules/frexpl-tests (Makefile.am): Link test-frexpl with
2209         $(FREXPL_LIBM).
2210
2211 2008-11-15  Bruno Haible  <bruno@clisp.org>
2212
2213         * lib/netdb.in.h: Activate the definitions also when the system's
2214         <netdb.h> has 'struct addrinfo'.
2215         * m4/netdb_h.m4 (gl_HEADER_NETDB): Replace netdb.h also when it lacks
2216         EAI_OVERFLOW or AI_NUMERICSERV.
2217         * doc/posix-headers/netdb.texi: Document the problem.
2218
2219 2008-11-15  Bruno Haible  <bruno@clisp.org>
2220
2221         * tests/test-sched.c: Test also the existence of the SCHED_* macros.
2222
2223         Make the 'sched' module work on platforms where <sched.h> exists but
2224         is incomplete (such as Haiku).
2225         * lib/sched.in.h; Include the system's <sched.h> if it exists.
2226         (SCHED_FIFO, SCHED_RR, SCHED_OTHER): New macros.
2227         * m4/sched_h.m4 (gl_SCHED_H): Test whether <sched.h> exists and also
2228         defines SCHED_FIFO, SCHED_RR, SCHED_OTHER. Set HAVE_SCHED_H,
2229         HAVE_STRUCT_SCHED_PARAM.
2230         * modules/sched (Depends-on): Add include_next.
2231         (Makefile.am): Substitute HAVE_SCHED_H, INCLUDE_NEXT,
2232         PRAGMA_SYSTEM_HEADER, NEXT_SCHED_H, HAVE_STRUCT_SCHED_PARAM.
2233         * doc/posix-headers/sched.texi: Document the issue.
2234
2235 2008-11-13  Jim Meyering  <meyering@redhat.com>
2236
2237         test-argp-2: avoid test failure when PACKAGE_BUGREPORT is defined
2238         * tests/test-argp-2.sh: When PACKAGE_BUGREPORT was defined, this
2239         test would fail due to the difference in the Report bugs to ...
2240         line.  The expected address is empty, "<>", while the actual
2241         would contain e.g., "<bug-tar@gnu.org>".  Filter out any address.
2242
2243 2008-11-12  Bruno Haible  <bruno@clisp.org>
2244
2245         lstat: don't compile lstat.c on systems lacking lstat
2246         * m4/lstat.m4 (gl_FUNC_LSTAT): Don't compile lstat.c on systems
2247         which don't have lstat; this is handled by lib/sys_stat.in.h already.
2248         Reported by Daniel P. Berrange via Jim Meyering.
2249
2250 2008-11-12  Jim Meyering  <meyering@redhat.com>
2251
2252         * lib/unicodeio.c (unicode_to_mb): Correct spelling of u8_uctomb.
2253
2254 2008-11-12  Simon Josefsson  <simon@josefsson.org>
2255
2256         * modules/warnings (configure.ac): Do AC_SUBST([WARN_CFLAGS]) here
2257         instead.
2258
2259 2008-11-12  Bruno Haible  <bruno@clisp.org>
2260
2261         * lib/unicodeio.c: Include unistr.h.
2262         (utf8_wctomb): Remove function.
2263         (unicode_to_mb): Use utf8_uctomb instead of utf8_wctomb.
2264
2265 2008-11-12  Simon Josefsson  <simon@josefsson.org>
2266
2267         * m4/warnings.m4 (gl_WARN_INIT): Remove, suggested by Ralf
2268         Wildenhues <Ralf.Wildenhues@gmx.de> and Bruno Haible
2269         <bruno@clisp.org>.
2270         * modules/warnings (configure.ac): Don't call gl_WARN_INIT.
2271
2272 2008-11-12  Simon Josefsson  <simon@josefsson.org>
2273
2274         * doc/warnings.texi: New file, from Bruno Haible <bruno@clisp.org>.
2275         * doc/gnulib.texi: Add section for warnings.
2276
2277 2008-11-11  Bruno Haible  <bruno@clisp.org>
2278
2279         * lib/sockets.h: Add a comment.
2280
2281 2008-11-11  Karl Berry  <karl@gnu.org>
2282
2283         * config/srclist.txt (fdl.texi): add, syncing from gnustandards.
2284
2285 2008-11-11  Eric Blake  <ebb9@byu.net>
2286
2287         fdl.texi: avoid git symlinks
2288         * doc/fdl.texi: Copy, rather than link, fdl-1.3.texi.
2289
2290 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
2291
2292         * m4/warnings.m4 (gl_WARN_ADD): Don't AC_SUBST the empty string.
2293
2294 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
2295
2296         * m4/warnings.m4 (gl_WARN_INIT): Substitute WARN_CFLAGS.
2297         (gl_WARN_ADD): Substitute $2 if literal.
2298
2299 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
2300
2301         * m4/warning.m4: Remove.
2302
2303 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
2304
2305         * m4/warnings.m4: Almost complete rewrite. :-)
2306
2307 2008-11-10  Simon Josefsson  <simon@josefsson.org>
2308
2309         * modules/warnings: New module.
2310         * m4/warnings.m4: New file.
2311         * MODULES.html.sh: Mention warnings module.
2312         With review improvements from Paolo Bonzini <bonzini@gnu.org> and
2313         Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2314
2315 2008-11-10  Eric Blake  <ebb9@byu.net>
2316
2317         fdl.texi: make a symlink to the latest version
2318         * doc/standards.texi: Revert today's earlier change.
2319         * doc/fdl-1.2.texi: Rename from old fdl.texi...
2320         * doc/fdl.texi: ...and replace this with a symlink to the newer
2321         fdl-1.3.texi.
2322
2323 2008-11-10  Bruno Haible  <bruno@clisp.org>
2324
2325         * tests/test-select-fd.c (main): Accept the result file name as fourth
2326         argument.
2327         * tests/test-select-in.sh: Pass t-select-in.tmp as fourth argument.
2328         * tests/test-select-out.sh: Pass t-select-out.tmp as fourth argument.
2329
2330 2008-11-10  Bruno Haible  <bruno@clisp.org>
2331
2332         * lib/netdb.in.h: Use HAVE_STRUCT_ADDRINFO, HAVE_DECL_GETADDRINFO,
2333         HAVE_DECL_FREEADDRINFO, HAVE_DECL_GAI_STRERROR, HAVE_DECL_GETNAMEINFO
2334         as autoconf-substituted macros.
2335         * m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Initialize these variables to 1.
2336         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require
2337         gl_NETDB_H_DEFAULTS. Set these variables.
2338         * modules/netdb (Makefile.am): Substitute these variables.
2339
2340 2008-11-10  Eric Blake  <ebb9@byu.net>
2341
2342         standards.texi: include correct file for FDL 1.3
2343         * doc/standards.texi (GNU Free Documentation License): Change
2344         include file to pull in FDL 1.3, not 1.2.
2345
2346         fdl.texi: revert accidental change to license
2347         * doc/fdl.texi: This is FDL 1.2, not 1.3.
2348
2349 2008-11-10  Bruno Haible  <bruno@clisp.org>
2350
2351         * m4/printf.m4 (gl_PRINTF_ENOMEM): Guess yes on Haiku. Use the
2352         cross-compiling guesses also when the native compile gives no result.
2353
2354 2008-11-10  Bruno Haible  <bruno@clisp.org>
2355
2356         * lib/spawni.c (__spawni): Force variable into the stack.
2357
2358 2008-11-10  Bruno Haible  <bruno@clisp.org>
2359
2360         Add support for Haiku.
2361         * lib/fbufmode.c (fbufmode): Test a symbol that is not only defined on
2362         glibc and BeOS, but also on Haiku.
2363         * lib/fpurge.c (fpurge): Likewise.
2364         * lib/freadable.c (freadable): Likewise.
2365         * lib/freadahead.c (freadahead): Likewise.
2366         * lib/freading.c (freading): Likewise.
2367         * lib/freadptr.c (freadptr): Likewise.
2368         * lib/freadseek.c (freadptrinc): Likewise.
2369         * lib/fseeko.c (rpl_fseeko): Likewise.
2370         * lib/fseterr.c (fseterr): Likewise.
2371         * lib/fwritable.c (fwritable): Likewise.
2372         * lib/fwriting.c (fwriting): Likewise.
2373         Reported by Ingo Weinhold <ingo_weinhold@gmx.de>.
2374
2375 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
2376
2377         * lib/config.charset: Treat Haiku like BeOS.
2378
2379 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
2380
2381         * lib/binary-io.h (O_BINARY, O_TEXT): Treat Haiku like BeOS.
2382         * lib/fcntl.in.h (O_BINARY, O_TEXT): Likewise.
2383
2384 2008-11-08  Bruno Haible  <bruno@clisp.org>
2385
2386         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
2387         AC_CACHE_CHECK.
2388
2389 2008-11-08  Bruno Haible  <bruno@clisp.org>
2390
2391         * modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
2392
2393 2008-11-08  Bruno Haible  <bruno@clisp.org>
2394
2395         * tests/test-select-fd.c: New file.
2396         * tests/test-select-in.sh: New file.
2397         * tests/test-select-out.sh: New file.
2398         * tests/test-select-stdin.c: New file.
2399         * modules/select-tests (Files): Add the new files.
2400         (Depends-on): Add gettimeofday.
2401         (Makefile.am): Add test-select-in.sh, test-select-out.sh to TESTS.
2402         Set TESTS_ENVIRONMENT. Add test-select-fd, test-select-stdin to
2403         check_PROGRAMS. Define test_select_fd_LDADD, test_select_stdin_LDADD.
2404
2405 2008-11-06  Alexander V. Lukyanov  <lav@netis.ru>
2406             Bruno Haible  <bruno@clisp.org>
2407
2408         * lib/sys_stat.in.h: Enclose function definitions in extern "C".
2409
2410 2008-10-12  Giuseppe Scrivano  <gscrivano@gnu.org>
2411
2412         * build-aux/pmccabe2html: Added support for C++ source files.
2413
2414 2008-11-05  Ben Pfaff  <blp@gnu.org>
2415
2416         Fix lib/close.c build on Windows.
2417         * modules/close (Files): Add lib/w32sock.h.
2418
2419 2008-11-05  Joel E. Denny  <jdenny@ces.clemson.edu>
2420
2421         Accept Bison's NEWS format.
2422         * build-aux/announce-gen (print_news_deltas): Tweak
2423         $re_prefix.
2424
2425 2008-11-04  Bruno Haible  <bruno@clisp.org>
2426
2427         * modules/random_r (Maintainer): Add glibc.
2428
2429 2008-11-04  Simon Josefsson  <simon@josefsson.org>
2430
2431         * doc/alloca-opt.texi: Change license to GFDLv1.3+, as suggested
2432         by karl@freefriends.org (Karl Berry).
2433         * doc/alloca.texi: Likewise.
2434         * doc/c-ctype.texi: Likewise.
2435         * doc/c-strcase.texi: Likewise.
2436         * doc/c-strcaseeq.texi: Likewise.
2437         * doc/c-strcasestr.texi: Likewise.
2438         * doc/c-strstr.texi: Likewise.
2439         * doc/c-strtod.texi: Likewise.
2440         * doc/c-strtold.texi: Likewise.
2441         * doc/ctime.texi: Likewise.
2442         * doc/error.texi: Likewise.
2443         * doc/fdl.texi: Likewise.
2444         * doc/gcd.texi: Likewise.
2445         * doc/getdate.texi: Likewise.
2446         * doc/gnulib-intro.texi: Likewise.
2447         * doc/gnulib-tool.texi: Likewise.
2448         * doc/gnulib.texi: Likewise.
2449         * doc/inet_ntoa.texi: Likewise.
2450         * doc/maintain.texi: Likewise.
2451         * doc/make-stds.texi: Likewise.
2452         * doc/quote.texi: Likewise.
2453         * doc/regexprops-generic.texi: Likewise.
2454         * doc/standards.texi: Likewise.
2455         * doc/verify.texi: Likewise.
2456         * doc/visibility.texi: Likewise.
2457         * doc/gnulib.texi (GNU Free Documentation License): Include
2458         fdl-1.3.texi instead of fdl.texi.
2459
2460 2008-11-04  Simon Josefsson  <simon@josefsson.org>
2461
2462         * doc/fdl-1.3.texi: New file, from
2463         <http://www.gnu.org/licenses/fdl-1.3.texi>.
2464         * modules/fdl-1.3: Add.
2465         * MODULES.html.sh: Add fdl-1.3.
2466
2467 2008-11-03  Bruno Haible  <bruno@clisp.org>
2468
2469         Make determination of absolute name of header file work with AIX xlc.
2470         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Require
2471         AC_CANONICAL_HOST. On AIX, use "$CPP -C" rather than "$CPP" for
2472         preprocessing.
2473         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
2474         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
2475
2476 2008-11-03  Simon Josefsson  <simon@josefsson.org>
2477
2478         * top/maint.mk (COVERAGE_CCOPTS): Use --coverage instead of
2479         -fprofile-arcs -ftest-coverage.  Suggested by Ludovic Courtès
2480         <ludo@gnu.org>.
2481
2482 2008-11-02  Bruno Haible  <bruno@clisp.org>
2483
2484         Mark 'strpbrk' obsolete.
2485         * modules/strpbrk (Status, Notice): New sections.
2486         * modules/strtok_r (Depends-on): Add strpbrk.
2487
2488 2008-11-02  Bruno Haible  <bruno@clisp.org>
2489
2490         Mark 'strdup' obsolete.
2491         * modules/strdup (Status, Notice): New sections.
2492         * modules/findprog (Depends-on): Add strdup.
2493         * modules/getaddrinfo (Depends-on): Likewise.
2494         * modules/localename (Depends-on): Likewise.
2495         * modules/relocatable-lib (Depends-on): Likewise.
2496         * modules/relocatable-lib-lgpl (Depends-on): Likewise.
2497         * modules/relocatable-prog (Depends-on): Likewise.
2498         * modules/trim (Depends-on): Likewise.
2499         * modules/unictype/gen-ctype (Depends-on): Likewise.
2500         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
2501
2502 2008-11-02  Bruno Haible  <bruno@clisp.org>
2503
2504         Mark 'strcspn' obsolete.
2505         * modules/strcspn (Status, Notice): New sections.
2506
2507 2008-11-02  Bruno Haible  <bruno@clisp.org>
2508
2509         Mark 'rmdir' obsolete.
2510         * modules/rmdir (Status, Notice): New sections.
2511         * modules/clean-temp (Depends-on): Add rmdir.
2512         * modules/openat (Depends-on): Likewise.
2513
2514 2008-11-02  Bruno Haible  <bruno@clisp.org>
2515
2516         Mark 'raise' obsolete.
2517         * modules/raise (Status, Notice): New sections.
2518         (Include): Specify <signal.h>.
2519         * modules/stdio (Depends-on): Add raise.
2520         * modules/write (Depends-on): Likewise.
2521
2522 2008-11-02  Bruno Haible  <bruno@clisp.org>
2523
2524         Mark 'memset' obsolete.
2525         * modules/memset (Status, Notice): New sections.
2526
2527 2008-11-02  Bruno Haible  <bruno@clisp.org>
2528
2529         Mark 'memmove' obsolete.
2530         * modules/memmove (Status, Notice): New sections.
2531         * modules/argp (Depends-on): Add memmove.
2532         * modules/argz (Depends-on): Likewise.
2533         * modules/canonicalize (Depends-on): Likewise.
2534         * modules/canonicalize-lgpl (Depends-on): Likewise.
2535         * modules/fts (Depends-on): Likewise.
2536         * modules/getcwd (Depends-on): Likewise.
2537         * modules/human (Depends-on): Likewise.
2538         * modules/regex (Depends-on): Likewise.
2539         * modules/striconveh (Depends-on): Likewise.
2540         * modules/trim (Depends-on): Likewise.
2541         * modules/unistr/u8-move (Depends-on): Likewise.
2542         * modules/unistr/u16-move (Depends-on): Likewise.
2543         * modules/unistr/u32-move (Depends-on): Likewise.
2544
2545 2008-11-02  Bruno Haible  <bruno@clisp.org>
2546
2547         Mark 'memcpy' obsolete.
2548         * modules/memcpy (Status, Notice): New sections.
2549
2550 2008-11-02  Bruno Haible  <bruno@clisp.org>
2551
2552         Mark 'memcmp' obsolete.
2553         * modules/memcmp (Status, Notice): New sections.
2554         * modules/argmatch (Depends-on): Add memchr.
2555         * modules/backupfile (Depends-on): Likewise.
2556         * modules/c-strcasestr (Depends-on): Likewise.
2557         * modules/crypto/des (Depends-on): Likewise.
2558         * modules/csharpcomp (Depends-on): Likewise.
2559         * modules/fnmatch (Depends-on): Likewise.
2560         * modules/git-merge-changelog (Depends-on): Likewise.
2561         * modules/isnand (Depends-on): Likewise.
2562         * modules/isnand-nolibm (Depends-on): Likewise.
2563         * modules/isnanf (Depends-on): Likewise.
2564         * modules/isnanf-nolibm (Depends-on): Likewise.
2565         * modules/isnanl (Depends-on): Likewise.
2566         * modules/isnanl-nolibm (Depends-on): Likewise.
2567         * modules/mbchar (Depends-on): Likewise.
2568         * modules/memcoll (Depends-on): Likewise.
2569         * modules/quotearg (Depends-on): Likewise.
2570         * modules/regex (Depends-on): Likewise.
2571         * modules/relocatable-prog (Depends-on): Likewise.
2572         * modules/same (Depends-on): Likewise.
2573         * modules/signbit (Depends-on): Likewise.
2574         * modules/strcasestr-simple (Depends-on): Likewise.
2575         * modules/unictype/gen-ctype (Depends-on): Likewise.
2576         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
2577         * modules/uniname/uniname (Depends-on): Likewise.
2578         * modules/unistr/u8-cmp (Depends-on): Likewise.
2579
2580 2008-11-02  Bruno Haible  <bruno@clisp.org>
2581
2582         Mark 'memchr' obsolete.
2583         * modules/memchr (Status, Notice): New sections.
2584         * modules/argp (Depends-on): Add memchr.
2585         * modules/base64 (Depends-on): Likewise.
2586         * modules/c-strcasestr (Depends-on): Likewise.
2587         * modules/chdir-long (Depends-on): Likewise.
2588         * modules/fnmatch (Depends-on): Likewise.
2589         * modules/getsubopt (Depends-on): Likewise.
2590         * modules/git-merge-changelog (Depends-on): Likewise.
2591         * modules/glob (Depends-on): Likewise.
2592         * modules/strcasestr-simple (Depends-on): Likewise.
2593         * modules/strnlen (Depends-on): Likewise.
2594
2595 2008-11-02  Bruno Haible  <bruno@clisp.org>
2596
2597         Mark 'atexit' obsolete.
2598         * modules/atexit (Status, Notice): New sections.
2599         * modules/chdir-long (Depends-on): Add atexit.
2600         * modules/wait-process (Depends-on): Likewise.
2601
2602 2008-11-02  Bruno Haible  <bruno@clisp.org>
2603
2604         * gnulib-tool: New option --with-obsolete.
2605         (func_usage): Document it.
2606         (func_modules_transitive_closure): Drop obsolete dependencies if
2607         incobsolete is not true.
2608         (func_import): Read and save the incobsolete variable to the cache.
2609
2610 2008-11-02  Bruno Haible  <bruno@clisp.org>
2611
2612         * modules/TEMPLATE-EXTENDED: New field 'Status'.
2613         * gnulib-tool: New option --extract-status.
2614         (func_usage): Document it.
2615         (sed_extract_prog): Recognize it.
2616         (func_get_status): New function.
2617
2618 2008-10-30  Simon Josefsson  <simon@josefsson.org>
2619
2620         * modules/sockets (License): Change from LGPL to LGPLv2+.
2621
2622 2008-10-28  Simon Josefsson  <simon@josefsson.org>
2623
2624         * top/maint.mk: Add coverage rules, inspired by scripts in gnupdf.
2625
2626 2008-10-28  Simon Josefsson  <simon@josefsson.org>
2627
2628         * MODULES.html.sh (Support for systems lacking POSIX:2001):
2629         Mention times and sys_times.
2630         * modules/sys_times, modules/sys_times-tests: New modules.
2631         * modules/times, modules/times-tests: Likewise
2632         * m4/sys_times_h.m4: New file.
2633         * lib/sys_times.in.h: Likewise
2634         * lib/times.c: Likewise.
2635         * tests/test-sys_times.c: Likewise.
2636         * tests/test-times.c: Likewise.
2637         * doc/posix-headers/sys_times.texi: Update.
2638         * doc/posix-functions/times.texi: Update.
2639
2640 2008-10-28  Jim Meyering  <meyering@redhat.com>
2641
2642         * modules/tempname (Depends-on): Add lstat.
2643
2644         * modules/lstat (License): Relicense: LGPL -> LGPLv2+.
2645
2646 2008-10-28  Simon Josefsson  <simon@josefsson.org>
2647
2648         * gnulib-tool (func_emit_tests_Makefile_am): Revert last commit.
2649         * modules/argp-tests (test_argp_LDADD): Set EXEEXT here instead,
2650         using idiom used elsewhere in gnulib.
2651
2652 2008-10-27  Jim Meyering  <meyering@redhat.com>
2653
2654         * modules/gethostname (License): Relicense: LGPL -> LGPLv2+.
2655
2656 2008-10-27  Simon Josefsson  <simon@josefsson.org>
2657
2658         * gnulib-tool (func_emit_tests_Makefile_am): Set EXEEXT in
2659         TESTS_ENVIRONMENT, for shell scripts that needs to call built
2660         programs.
2661         * tests/test-argp-2.sh: Use $EXEEXT when needed.
2662
2663 2008-10-27  Simon Josefsson  <simon@josefsson.org>
2664
2665         * lib/sys_stat.in.h (lstat): Fix declaration for mingw.
2666
2667 2008-10-27  Bruno Haible  <bruno@clisp.org>
2668
2669         * tests/test-lstat.c: Include <stdio.h>.
2670
2671 2008-10-27  Simon Josefsson  <simon@josefsson.org>
2672
2673         * modules/lstat-tests: New module.
2674         * tests/test-lstat.c: New file.
2675
2676 2008-10-26  Jim Meyering  <meyering@redhat.com>
2677
2678         * lib/mkdir.c (rpl_mkdir) [_WIN32...]: Mark mode as an unused parameter.
2679
2680 2008-10-26  Simon Josefsson  <simon@josefsson.org>
2681             Bruno Haible  <bruno@clisp.org>
2682
2683         Fix a clash between the type DATADIR on Windows and the macro DATADIR.
2684         * modules/configmake (Include): Add a note that the include must come
2685         after all system headers.
2686         * lib/javaversion.c: Include configmake.h after all other includes.
2687
2688 2008-10-26  Bruno Haible  <bruno@clisp.org>
2689
2690         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Set default of
2691         HAVE_STRUCT_RANDOM_DATA to 1.
2692         (gl_STDLIB_H): Simplify.
2693
2694 2008-10-26  Simon Josefsson  <simon@josefsson.org>
2695
2696         * m4/stdlib_h.m4: Check for struct random_data.  Initialize and
2697         substitute HAVE_STRUCT_RANDOM_DATA.
2698         * lib/stdlib.in.h [!HAVE_STRUCT_RANDOM_DATA]: Provide struct
2699         random_data.
2700         * modules/stdlib (Makefile.am): Substitute
2701         HAVE_STRUCT_RANDOM_DATA.
2702
2703 2008-10-26  Simon Josefsson  <simon@josefsson.org>
2704
2705         * doc/gnulib.texi (@copying): Use GFDLv1.2+.
2706         * doc/gnulib-intro.texi (Copyright): Likewise.
2707
2708 2008-10-26  Simon Josefsson  <simon@josefsson.org>
2709
2710         * doc/gnulib.texi (Header files): C++ fixes, based on Bruno's
2711         findings.
2712
2713 2008-10-25  Ben Pfaff  <blp@cs.stanford.edu>
2714             Bruno Haible  <bruno@clisp.org>
2715
2716         * lib/unistd.in.h: Include <winsock2.h>.
2717         (socket, connect,accept, bind, getpeername, getsockname, getsockopt,
2718         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, select):
2719         Provide dummy declarations.
2720         (gethostname): Override.
2721         * lib/sys_socket.in.h (gethostname): Provide dummy declaration.
2722         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Invoke
2723         gl_PREREQ_SYS_H_WINSOCK2.
2724         * modules/gethostname (Files): Add m4/sys_socket_h.m4.
2725         * doc/posix-functions/gethostname.texi: More details.
2726
2727 2008-10-25  Bruno Haible  <bruno@clisp.org>
2728
2729         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
2730         gl_UNISTD_H_DEFAULTS, gl_SYS_IOCTL_H_DEFAULTS only if they exist.
2731         * modules/sys_socket (Files): Remove m4/unistd_h.m4, m4/sys_ioctl_h.m4.
2732
2733         * lib/sys_socket.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); Move macro from
2734         here ...
2735         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); ... to here.
2736         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Remove invocation of
2737         gl_UNISTD_H_DEFAULTS.
2738
2739 2008-10-25  Eric Blake  <ebb9@byu.net>
2740
2741         signbit: avoid spurious compiler failure
2742         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Move non-constant
2743         declarations inside function.
2744
2745 2008-10-24  Simon Josefsson  <simon@josefsson.org>
2746             Bruno Haible  <bruno@clisp.org>
2747
2748         * lib/stdlib.in.h (@GNULIB_RANDOM_R@): Include stdint.h.
2749         * modules/random_r (Depends-on): Add stdint.
2750
2751 2008-10-24  Bruno Haible  <bruno@clisp.org>
2752
2753         * modules/intprops (License): Change to LGPLv2+, with approval by Paul
2754         Eggert.
2755         * modules/strerror (License): Likewise.
2756
2757 2008-10-24  Jim Meyering  <meyering@redhat.com>
2758
2759         sys_socket: fix typo that inhibited expansion of @GNULIB_SEND@
2760         * modules/sys_socket (Depends-on) [Depends-on]: Fix typo.
2761
2762 2008-10-24  Eric Blake  <ebb9@byu.net>
2763
2764         getgroups: fix compilation when getgroups is available
2765         * lib/getgroups.c (includes): Include <unistd.h> for getgroups,
2766         but with <config.h> override of getgroups disabled.
2767
2768 2008-10-24  Simon Josefsson  <simon@josefsson.org>
2769
2770         * doc/gnulib.texi (Header files): Add note about C++ problems.
2771         Explained by Bruno Haible <bruno@clisp.org>.
2772
2773 2008-10-23  Bruno Haible  <bruno@clisp.org>
2774
2775         Define a dummy SA_NODEFER macro on Interix.
2776         * lib/signal.in.h (SA_NODEFER): Define fallback.
2777         Reported by Aleksey Cheusov <cheusov@tut.by> via
2778         Thomas Klausner <wiz@netbsd.org> and Eric Blake.
2779
2780 2008-10-23  Bruno Haible  <bruno@clisp.org>
2781
2782         * modules/freadahead (License): Change to LGPLv2+.
2783         Suggested by Simon Josefsson.
2784
2785 2008-10-23  Jim Meyering  <meyering@redhat.com>
2786
2787         random_r: new module
2788         * modules/random_r: New file.
2789         * m4/random_r.m4: New file.
2790         * lib/random_r.c: New file, from glibc.
2791         * modules/random_r-tests: New file.
2792         * tests/test-random_r.c: New file.
2793         * lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r):
2794          Declare.
2795         (RAND_MAX): Define.
2796         * m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
2797         * modules/stdlib: Substitute them, too.
2798         * MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
2799         * doc/glibc-functions/initstate_r.texi: Mention the new module.
2800         * doc/glibc-functions/random_r.texi: Likewise.
2801         * doc/glibc-functions/setstate_r.texi: Likewise.
2802         * doc/glibc-functions/srandom_r.texi: Likewise.
2803         * config/srclist.txt: Mention it.
2804
2805 2008-10-23  David Lutterkort  <lutter@redhat.com>
2806
2807         * modules/selinux-h: Search for LIB_SELINUX and mark it as a
2808         link requirement
2809
2810 2008-10-23  Jim Meyering  <meyering@redhat.com>
2811
2812         selinux-h: mark parameters of stub functions as intentionally unused
2813         * lib/se-selinux.in.h: Mark parameters as _UNUSED_PARAMETER_.
2814         * lib/se-context.in.h: Likewise.
2815
2816 2008-10-22  Simon Josefsson  <simon@josefsson.org>
2817
2818         * lib/sys_socket.in.h (FD_ISSET): Fix warnings under mingw.
2819
2820 2008-10-22  Simon Josefsson  <simon@josefsson.org>
2821
2822         * m4/getgroups.m4: Avoid invoking test with wrong parameters.
2823
2824 2008-10-22  Eric Blake  <ebb9@byu.net>
2825
2826         glthread/thread: avoid compiler warning
2827         * lib/glthread/thread.c (gl_thread_exit_func) [USE_WIN32_THREADS]:
2828         Add unreachable abort to silence compiler.
2829
2830 2008-10-22  Eric Blake  <ebb9@byu.net>
2831
2832         netdb: also supply struct addrinfo for cygwin 1.5.x
2833         * m4/netdb_h.m4 (gl_HEADER_NETDB): Check for incomplete header on
2834         older cygwin.
2835         * lib/netdb.in.h [!HAVE_STRUCT_ADDRINFO]: Also supply contents for
2836         cygwin.
2837         * doc/posix-headers/netdb.texi (netdb.h): Document this.
2838
2839 2008-10-22  Bruno Haible  <bruno@clisp.org>
2840
2841         * users.txt: Update entry about pspp.
2842
2843 2008-10-21  Bruno Haible  <bruno@clisp.org>
2844
2845         Simplification.
2846         * lib/sys_socket.in.h (_gl_close_fd_maybe_socket): Remove declaration.
2847         * lib/close.c (_gl_close_fd_maybe_socket): Make static.
2848
2849         Simplification.
2850         * lib/ioctl.c (ioctl): Don't undefine.
2851         * lib/socket.c (socket): Don't undefine.
2852
2853         Remove unused module indicator macros.
2854         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Don't define
2855         GNULIB_$1 as a C macro.
2856
2857         * doc/posix-functions/close.texi: Undo last change.
2858         * doc/posix-functions/ioctl.texi: Merge the two paragraphs about
2859         Windows platforms.
2860
2861 2008-10-21  Bruno Haible  <bruno@clisp.org>
2862
2863         Add gethostname() declaration to <unistd.h>.
2864         * lib/unistd.in.h (gethostname): New declaration.
2865         * lib/gethostname.c: Include <unistd.h>.
2866         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Require
2867         gl_UNISTD_H_DEFAULTS. Set HAVE_GETHOSTNAME.
2868         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETHOSTNAME
2869         and HAVE_GETHOSTNAME.
2870         * modules/gethostname (Depends-on): Add unistd.
2871         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
2872         (Include): Specify <unistd.h>.
2873         * modules/unistd (Makefile.am): Substitute GNULIB_GETHOSTNAME and
2874         HAVE_GETHOSTNAME.
2875         * tests/test-gethostname.c: Include <unistd.h> first.
2876
2877 2008-10-21  Bruno Haible  <bruno@clisp.org>
2878
2879         * modules/poll-tests (Depends-on): Add sys_ioctl, ioctl.
2880         * modules/select-tests (Depends-on): Likewise.
2881         Reported by Simon Josefsson.
2882
2883 2008-10-21  Simon Josefsson  <simon@josefsson.org>
2884
2885         * lib/close.c: Add _gl_close_fd_maybe_socket from winsock.c.
2886         * lib/accept.c: New file, based on winsock.c.
2887         * lib/bind.c: New file, based on winsock.c.
2888         * lib/connect.c: New file, based on winsock.c.
2889         * lib/getpeername.c: New file, based on winsock.c.
2890         * lib/getsockname.c: New file, based on winsock.c.
2891         * lib/getsockopt.c: New file, based on winsock.c.
2892         * lib/ioctl.c: New file, based on winsock.c.
2893         * lib/listen.c: New file, based on winsock.c.
2894         * lib/recv.c: New file, based on winsock.c.
2895         * lib/recvfrom.c: New file, based on winsock.c.
2896         * lib/send.c: New file, based on winsock.c.
2897         * lib/sendto.c: New file, based on winsock.c.
2898         * lib/setsockopt.c: New file, based on winsock.c.
2899         * lib/shutdown.c: New file, based on winsock.c.
2900         * lib/socket.c: New file, based on winsock.c.
2901         * lib/w32sock.h: New file, based on winsock.c.
2902         * lib/winsock.c: Remove file.
2903         * modules/accept: Likewise.
2904         * modules/bind: Likewise.
2905         * modules/connect: Likewise.
2906         * modules/getpeername: Likewise.
2907         * modules/getsockname: Likewise.
2908         * modules/getsockopt: Likewise.
2909         * modules/ioctl: Likewise.
2910         * modules/listen: Likewise.
2911         * modules/recv: Likewise.
2912         * modules/recvfrom: Likewise.
2913         * modules/send: Likewise.
2914         * modules/sendto: Likewise.
2915         * modules/setsockopt: Likewise.
2916         * modules/shutdown: Likewise.
2917         * modules/socket: Use socket.c instead of winsock.c.
2918         * modules/sys_socket: Remove (unneeded?) dependency on winsock.c.
2919         * doc/posix-functions/accept.texi: Doc fix.
2920         * doc/posix-functions/bind.texi: Doc fix.
2921         * doc/posix-functions/close.texi: Doc fix.
2922         * doc/posix-functions/connect.texi: Doc fix.
2923         * doc/posix-functions/getpeername.texi: Doc fix.
2924         * doc/posix-functions/getsockname.texi: Doc fix.
2925         * doc/posix-functions/getsockopt.texi: Doc fix.
2926         * doc/posix-functions/ioctl.texi: Doc fix.
2927         * doc/posix-functions/listen.texi: Doc fix.
2928         * doc/posix-functions/recv.texi: Doc fix.
2929         * doc/posix-functions/recvfrom.texi: Doc fix.
2930         * doc/posix-functions/send.texi: Doc fix.
2931         * doc/posix-functions/sendto.texi: Doc fix.
2932         * doc/posix-functions/setsockopt.texi: Doc fix.
2933         * doc/posix-functions/shutdown.texi: Doc fix.
2934         * doc/posix-functions/socket.texi: Doc fix.
2935
2936 2008-10-20  Bruno Haible  <bruno@clisp.org>
2937
2938         Take into account the role of SIGABRT_COMPAT on Windows 2008.
2939         * lib/sigprocmask.c (SIGABRT_COMPAT, SIGABRT_COMPAT_MASK): New macros.
2940         (sigismember, sigaddset, sigdelset, sigfillset, rpl_signal): Handle it
2941         as an alias for SIGABRT.
2942         * lib/sigaction.c (SIGABRT_COMPAT): New macro.
2943         (sigaction): Map it to SIGABRT.
2944         Reported by Ramiro Polla <ramiro.polla@gmail.com> via Eric Blake.
2945
2946 2008-10-20  Bruno Haible  <bruno@clisp.org>
2947
2948         * lib/fts.c: Don't include lstat.h.
2949         * lib/openat.c: Include <sys/stat.h> instead of lstat.h.
2950
2951         Move the lstat() declaration to <sys/stat.h>.
2952         * lib/lstat.h: Remove file.
2953         * lib/sys_stat.in.h: Add special invocation convention.
2954         (lstat): New declaration.
2955         * lib/lstat.c (orig_lstat): New function.
2956         (rpl_lstat): Use orig_lstat instead of lstat.
2957         * m4/lstat.m4 (gl_FUNC_LSTAT): Require gl_SYS_STAT_H_DEFAULTS and
2958         AC_C_INLINE. Set REPLACE_LSTAT.
2959         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LSTAT
2960         and REPLACE_LSTAT.
2961         * modules/lstat (Files): Remove lib/lstat.h.
2962         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
2963         (Include): Specify <sys/stat.h> instead of lstat.h.
2964         * modules/sys_stat (Makefile.am): Substitute GNULIB_LSTAT and
2965         REPLACE_LSTAT.
2966         * NEWS: Mention the change.
2967
2968 2008-10-20  Bruno Haible  <bruno@clisp.org>
2969
2970         * modules/posix_spawn-tests: New file.
2971         * tests/test-posix_spawn3.c: New file.
2972
2973 2008-10-20  Bruno Haible  <bruno@clisp.org>
2974
2975         * modules/posix_spawnp-tests (Depends-on): Add sys_wait.
2976         * tests/test-posix_spawn1.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
2977         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Remove fallback definitions.
2978         * tests/test-posix_spawn2.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
2979         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Likewise.
2980
2981 2008-10-20  Bruno Haible  <bruno@clisp.org>
2982
2983         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Test against another bug
2984         of posix_spawn on AIX 5.3.
2985
2986 2008-10-20  Bruno Haible  <bruno@clisp.org>
2987
2988         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Make the check on MacOS X.
2989
2990 2008-10-20  Bruno Haible  <bruno@clisp.org>
2991
2992         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Use AC_LANG_SOURCE instead
2993         of AC_LANG_PROGRAM.
2994
2995 2008-10-20  Simon Josefsson  <simon@josefsson.org>
2996
2997         * lib/netdb.in.h: Don't define GNU specific constants until they
2998         are supported or needed.  Reported by Bruno Haible
2999         <bruno@clisp.org>.
3000
3001 2008-10-20  Simon Josefsson  <simon@josefsson.org>
3002
3003         * lib/canon-host.c: Include netdb.h instead of getaddrinfo.h.
3004
3005 2008-10-20  Simon Josefsson  <simon@josefsson.org>
3006
3007         * lib/getaddrinfo.h: Remove file.
3008         * modules/getaddrinfo: Reflect move from getaddrinfo.h to netdb.h.
3009         * m4/getaddrinfo.m4: Call gl_HEADER_NETDB.  Don't check for netdb.h.
3010         * lib/netdb.in.h: Add declarations from getaddrinfo.h.
3011         * m4/netdb_h.m4: Initialize GNULIB_GETADDRINFO to 0.
3012         * modules/netdb: Substitute GNULIB_GETADDRINFO.
3013         * lib/getaddrinfo.c: Include netdb.h instead of getaddrinfo.h.
3014         * tests/test-getaddrinfo.c: Likewise.
3015         * lib/gai_strerror.c: Likewise.  Also drop HAVE_NETDB_H check.
3016         * NEWS: Mention change.
3017
3018 2008-10-19  Bruno Haible  <bruno@clisp.org>
3019
3020         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Remove unneeded code.
3021
3022 2008-10-19  Bruno Haible  <bruno@clisp.org>
3023
3024         * lib/wait-process.c: Include simply <sys/wait.h>.
3025         (waitpid, WTERMSIG, WCOREDUMP, WEXITSTATUS, WIFSIGNALED, WIFEXITED,
3026         WIFSTOPPED): Remove fallback definitions.
3027         * modules/wait-process (Depends-on): Add sys_wait.
3028
3029         New module 'sys_wait'.
3030         * modules/sys_wait: New file.
3031         * lib/sys_wait.in.h: New file, partially copied from
3032         lib/wait-process.c.
3033         * m4/sys_wait_h.m4: New file.
3034         * doc/posix-headers/sys_wait.texi: Mention the new module.
3035
3036 2008-10-19  Bruno Haible  <bruno@clisp.org>
3037
3038         * m4/wait-process.m4 (gl_WAIT_PROCESS): Remove test for unistd.h.
3039
3040 2008-10-19  Bruno Haible  <bruno@clisp.org>
3041
3042         Assume that waitpid() fills an 'int' status, not a 'union wait'.
3043         * lib/wait-process.c (WAIT_T): Remove type.
3044         (WTERMSIG, WCOREDUMP, WEXITSTATUS): Define fallbacks using bit masks.
3045         (wait_subprocess): Update.
3046
3047 2008-10-19  Bruno Haible  <bruno@clisp.org>
3048
3049         New module 'atoll'.
3050         * modules/atoll: New file.
3051         * lib/stdlib.in.h (atoll): New declaration.
3052         * lib/atoll.c: New file, from glibc with modifications.
3053         * m4/atoll.m4: New file.
3054         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_ATOLL,
3055         HAVE_ATOLL.
3056         * modules/stdlib (Makefile.am): Substitute GNULIB_ATOLL, HAVE_ATOLL.
3057         * doc/posix-functions/atoll.texi: Mention the new module.
3058
3059 2008-10-19  Bruno Haible  <bruno@clisp.org>
3060
3061         Add strtoull() declaration to <stdlib.h>.
3062         * lib/stdlib.in.h (strtoull): New declaration.
3063         * m4/strtoull.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
3064         Set HAVE_STRTOULL.
3065         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOULL,
3066         HAVE_STRTOULL.
3067         * modules/strtoull (Depends-on): Add stdlib.
3068         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
3069         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOULL,
3070         HAVE_STRTOULL.
3071
3072 2008-10-19  Bruno Haible  <bruno@clisp.org>
3073
3074         Add strtoll() declaration to <stdlib.h>.
3075         * lib/stdlib.in.h (strtoll): New declaration.
3076         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
3077         Set HAVE_STRTOLL.
3078         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOLL,
3079         HAVE_STRTOLL.
3080         * modules/strtoll (Depends-on): Add stdlib.
3081         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
3082         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOLL, HAVE_STRTOLL.
3083
3084 2008-10-19  Bruno Haible  <bruno@clisp.org>
3085
3086         * modules/bcopy (Depends-on): Add strings.
3087         (Include): Specify <strings.h>.
3088
3089 2008-10-19  Bruno Haible  <bruno@clisp.org>
3090
3091         * doc/posix-functions/atexit.texi: Update doc regarding mingw.
3092
3093 2008-10-19  Bruno Haible  <bruno@clisp.org>
3094
3095         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
3096         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
3097         mingw.
3098
3099 2008-10-19  Bruno Haible  <bruno@clisp.org>
3100
3101         * lib/atanl.c: Don't include isnanl.h.
3102         * lib/cosl.c: Likewise.
3103         * lib/ldexpl.c: Likewise.
3104         * lib/logl.c: Likewise.
3105         * lib/sinl.c: Likewise.
3106         * lib/sqrtl.c: Likewise.
3107         * lib/tanl.c: Likewise.
3108
3109         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
3110         * lib/isnanf.h: Remove file.
3111         * lib/isnand.h: Remove file.
3112         * lib/isnanl.h: Remove file.
3113         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
3114         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
3115         macros.
3116         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
3117         HAVE_ISNANF, don't define it as a C macro.
3118         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
3119         HAVE_ISNAND, don't define it as a C macro.
3120         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
3121         HAVE_ISNANL, don't define it as a C macro.
3122         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
3123         HAVE_ISNAN[FDL].
3124         * modules/isnanf (Files): Remove lib/isnanf.h.
3125         (Depends-on): Add math.
3126         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
3127         (Include): Specify <math.h> instead of isnanf.h.
3128         * modules/isnand (Files): Remove lib/isnand.h.
3129         (Depends-on): Add math.
3130         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
3131         (Include): Specify <math.h> instead of isnand.h.
3132         * modules/isnanl (Files): Remove lib/isnanl.h.
3133         (Depends-on): Add math.
3134         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
3135         (Include): Specify <math.h> instead of isnanl.h.
3136         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
3137         HAVE_ISNAN[FDL].
3138         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
3139         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
3140         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
3141         * NEWS: Mention the change.
3142
3143 2008-10-18  Bruno Haible  <bruno@clisp.org>
3144
3145         Add getusershell(), setusershell(), endusershell() declarations to
3146         <unistd.h>.
3147         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
3148         declarations.
3149         * lib/getusershell.c: Include unistd.h.
3150         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
3151         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
3152         HAVE_GETUSERSHELL.
3153         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
3154         and HAVE_GETUSERSHELL.
3155         * modules/getusershell (Depends-on): Add unistd, extensions.
3156         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
3157         (Include): Specify <unistd.h>.
3158         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
3159         HAVE_GETUSERSHELL.
3160
3161 2008-10-18  Bruno Haible  <bruno@clisp.org>
3162
3163         Add a getloadavg() declaration to <stdlib.h>.
3164         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
3165         getloadavg declaration.
3166         (getloadavg): New declaration.
3167         * lib/getloadavg.c: Include <stdlib.h> first.
3168         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
3169         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
3170         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
3171         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
3172         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
3173         * modules/getloadavg (Depends-on): Add stdlib, extensions.
3174         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
3175         (Include): Specify <stdlib.h>.
3176         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
3177         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
3178
3179 2008-10-18  Bruno Haible  <bruno@clisp.org>
3180
3181         * lib/dirchownmod.c: Don't include lchmod.h.
3182
3183         Move the lchmod() declaration to <sys/stat.h>.
3184         * lib/lchmod.h: Remove file.
3185         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
3186         (lchmod): New declaration, moved here from lib/lchown.h.
3187         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
3188         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
3189         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
3190         and HAVE_LCHMOD.
3191         * modules/lchmod (Files): Remove lib/lchmod.h.
3192         (Depends-on): Add sys_stat, extensions.
3193         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
3194         (Include): Specify <sys/stat.h> instead of lchmod.h.
3195         * modules/sys_stat (Depends-on): Add link-warning.
3196         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
3197         definition of GL_LINK_WARNING.
3198         * NEWS: Mention the change.
3199
3200 2008-10-18  Bruno Haible  <bruno@clisp.org>
3201
3202         * lib/fchdir.c: Don't include dirfd.h.
3203         * lib/fts.c: Likewise.
3204         * lib/getcwd.c: Likewise.
3205         * lib/glob.c: Likewise.
3206
3207         Move the dirfd() declaration to <dirent.h>.
3208         * lib/dirfd.h: Remove file.
3209         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
3210         (dirfd): New declaration.
3211         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
3212         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
3213         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
3214         HAVE_DECL_DIRFD.
3215         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
3216         HAVE_DECL_DIRFD.
3217         * modules/dirfd (Files): Remove lib/dirfd.h.
3218         (Depends-on): Add dirent, extensions.
3219         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
3220         (Include): Specify <dirent.h> instead of dirfd.h.
3221         * modules/dirent (Depends-on): Add link-warning.
3222         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
3223         definition of GL_LINK_WARNING.
3224         * NEWS: Mention the change.
3225
3226 2008-10-18  Bruno Haible  <bruno@clisp.org>
3227
3228         Move the euidaccess() declaration to <unistd.h>.
3229         * lib/euidaccess.h: Remove file.
3230         * lib/unistd.in.h (euidaccess): New declaration.
3231         * lib/euidaccess.c: Don't include euidaccess.h.
3232         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
3233         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
3234         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
3235         and HAVE_EUIDACCESS.
3236         * modules/euidaccess (Files): Remove lib/euidaccess.h.
3237         (Depends-on): Add unistd.
3238         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
3239         (Include): Specify <unistd.h> instead of euidaccess.h.
3240         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
3241         HAVE_EUIDACCESS.
3242         * NEWS: Mention the change.
3243
3244 2008-10-18  Bruno Haible  <bruno@clisp.org>
3245
3246         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
3247
3248         Move the getdomainname() declaration to <unistd.h>.
3249         * lib/getdomainname.h: Remove file.
3250         * lib/unistd.in.h (getdomainname): New declaration.
3251         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
3252         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
3253         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
3254         HAVE_GETDOMAINNAME.
3255         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
3256         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
3257         * modules/getdomainname (Files): Remove lib/getdomainname.h.
3258         (Depends-on): Add unistd, extensions.
3259         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
3260         (Includes): Specify <unistd.h> instead of getdomainname.h.
3261         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
3262         HAVE_GETDOMAINNAME.
3263         * NEWS: Mention the change.
3264
3265 2008-10-18  Bruno Haible  <bruno@clisp.org>
3266
3267         * modules/dirent: New file.
3268         * m4/dirent_h.m4: New file.
3269         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
3270         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
3271         * modules/fchdir (Files): Remove lib/dirent.in.h.
3272         (Depends-on): Add dirent.
3273         (Makefile.am): Move rules to modules/dirent.
3274         * doc/posix-headers/dirent.texi: Mention the new module.
3275
3276 2008-10-18  Bruno Haible  <bruno@clisp.org>
3277
3278         Avoid -Wunused-parameter warnings in public gnulib header files.
3279         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
3280         macro.
3281         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
3282
3283 2008-10-18  Bruno Haible  <bruno@clisp.org>
3284
3285         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
3286         * doc/glibc-functions/error.texi: Mention the module 'error'.
3287         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
3288         * doc/glibc-functions/getdomainname.texi: Mention the module
3289         'getdomainname'.
3290         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
3291         * doc/glibc-functions/getpagesize.texi: Mention the module
3292         'getpagesize'.
3293         * doc/glibc-functions/getusershell.texi: Mention the module
3294         'getusershell'.
3295         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
3296         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
3297         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
3298         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
3299         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
3300         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
3301         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
3302         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
3303         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
3304         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
3305         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
3306         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
3307         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
3308         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
3309
3310 2008-10-17  Bruno Haible  <bruno@clisp.org>
3311
3312         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
3313         HP-UX and IRIX, use -0.0L.
3314         * tests/test-ceill.c (minus_zero): Likewise.
3315         * tests/test-floorl.c (minus_zero): Likewise.
3316         * tests/test-frexpl.c (minus_zero): Likewise.
3317         * tests/test-isnan.c (minus_zerol): Likewise.
3318         * tests/test-isnanl.h (minus_zero): Likewise.
3319         * tests/test-ldexpl.c (minus_zero): Likewise.
3320         * tests/test-roundl.c (minus_zero): Likewise.
3321         * tests/test-signbit.c (minus_zerol): Likewise.
3322         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
3323         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
3324         * tests/test-truncl.c (minus_zero): Likewise.
3325         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
3326         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
3327         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
3328         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
3329
3330 2008-10-17  Bruno Haible  <bruno@clisp.org>
3331
3332         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
3333         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
3334         that it gets activated only for gcc >= 3.0.
3335         * lib/dirent.in.h: Likewise.
3336         * lib/errno.in.h: Likewise.
3337         * lib/fcntl.in.h: Likewise.
3338         * lib/float.in.h: Likewise.
3339         * lib/iconv.in.h: Likewise.
3340         * lib/inttypes.in.h: Likewise.
3341         * lib/locale.in.h: Likewise.
3342         * lib/math.in.h: Likewise.
3343         * lib/netdb.in.h: Likewise.
3344         * lib/netinet_in.in.h: Likewise.
3345         * lib/search.in.h: Likewise.
3346         * lib/signal.in.h: Likewise.
3347         * lib/spawn.in.h: Likewise.
3348         * lib/stdarg.in.h: Likewise.
3349         * lib/stdint.in.h: Likewise.
3350         * lib/stdio.in.h: Likewise.
3351         * lib/stdlib.in.h: Likewise.
3352         * lib/string.in.h: Likewise.
3353         * lib/strings.in.h: Likewise.
3354         * lib/sys_file.in.h: Likewise.
3355         * lib/sys_ioctl.in.h: Likewise.
3356         * lib/sys_select.in.h: Likewise.
3357         * lib/sys_socket.in.h: Likewise.
3358         * lib/sys_stat.in.h: Likewise.
3359         * lib/sys_time.in.h: Likewise.
3360         * lib/sysexits.in.h: Likewise.
3361         * lib/time.in.h: Likewise.
3362         * lib/unistd.in.h: Likewise.
3363         * lib/wchar.in.h: Likewise.
3364         * lib/wctype.in.h: Likewise.
3365         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
3366
3367 2008-10-17  Jim Meyering  <meyering@redhat.com>
3368
3369         ignore-value: don't depend on inline module
3370         * modules/ignore-value (Depends-on): Remove 'inline'.
3371         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
3372         Suggestion from Bruno Haible.
3373
3374 2008-10-17  Bruno Haible  <bruno@clisp.org>
3375
3376         New implementation of condition variables for Win32.
3377         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
3378         (gl_linked_waitqueue_t): New type.
3379         (gl_cond_t): Use it.
3380         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
3381         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
3382         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
3383         (glthread_cond_init_func, glthread_cond_wait_func,
3384         glthread_cond_timedwait_func, glthread_cond_signal_func,
3385         glthread_cond_broadcast_func, glthread_cond_destroy_func):
3386         Reimplemented on the basis of gl_linked_waitqueue_t.
3387         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
3388         gl_waitqueue_t.
3389         (gl_rwlock_t): Update.
3390         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
3391
3392 2008-10-17  Simon Josefsson  <simon@josefsson.org>
3393
3394         * modules/recvfrom (Depends-on): Add dependency on getpeername.
3395         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
3396
3397 2008-10-17  Jim Meyering  <meyering@redhat.com>
3398
3399         ignore-value: new module
3400         * modules/ignore-value: New file.
3401         * lib/ignore-value.h: New file.
3402         * MODULES.html.sh (Compiler warning management): New section,
3403         just for this module.  More to come.
3404
3405 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3406
3407         open-safer.c: avoid 'signed and unsigned in conditional...' warning
3408         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
3409         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
3410
3411 2008-10-16  Jim Meyering  <meyering@redhat.com>
3412
3413         openat-die.c: avoid 'no previous prototype' warning
3414         * lib/openat-die.c: Include "openat.h".
3415         Reported by Reuben Thomas <rrt@sc3d.org>.
3416
3417 2008-10-16  Simon Josefsson  <simon@josefsson.org>
3418
3419         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
3420         * lib/netdb.in.h: Fix typo.
3421         Reported by Bruno Haible  <bruno@clisp.org>
3422
3423         * lib/netdb.in.h: Include sys/socket.h for platforms without
3424         netdb.h, to get structures like hostent on MinGW.
3425         * modules/netdb (Depends-on): Add sys_socket.
3426
3427 2008-10-15  Simon Josefsson  <simon@josefsson.org>
3428
3429         * modules/netdb, modules/netdb-tests: New file.
3430         * m4/netdb_h.m4: New file.
3431         * lib/netdb.in.h: Add, currently just an empty file pending
3432         definitions.
3433         * tests/test-netdb.c: New file.
3434         * doc/posix-headers/netdb.texi: Mention that we replace it if
3435         needed.
3436         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
3437         netdb.
3438
3439 2008-10-15  Simon Josefsson  <simon@josefsson.org>
3440
3441         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
3442         with code.
3443
3444 2008-10-13  Bruno Haible  <bruno@clisp.org>
3445
3446         * lib/glthread/cond.c (glthread_cond_wait_func,
3447         glthread_cond_timedwait_func): Add a comment.
3448
3449 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
3450
3451         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
3452         * tests/test-select.c: Likewise,
3453
3454 2008-10-13  Bruno Haible  <bruno@clisp.org>
3455
3456         * lib/glthread/cond.c (glthread_cond_wait_func,
3457         glthread_cond_timedwait_func): Fix variable name.
3458         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
3459
3460 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
3461
3462         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
3463         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
3464         struct sockaddr.sa_len.
3465         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
3466
3467 2008-10-13  Simon Josefsson  <simon@josefsson.org>
3468
3469         * build-aux/pmccabe2html: Add css and css_url parameters.
3470
3471 2008-10-12  Bruno Haible  <bruno@clisp.org>
3472
3473         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
3474         calling aclx_get.
3475         Reported by Rainer Tammer <tammer@tammer.net>.
3476
3477 2008-10-12  Bruno Haible  <bruno@clisp.org>
3478
3479         Use msvcrt aware primitives for creation/termination of Win32 threads.
3480         * lib/glthread/thread.c: Include <process.h>.
3481         (glthread_create_func): Use _beginthreadex instead of CreateThread.
3482         (wrapper_func): Update signature.
3483         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
3484
3485 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
3486             Bruno Haible  <bruno@clisp.org>
3487
3488         Provide a Win32 implementation of the 'cond' module.
3489         * lib/glthread/cond.h [USE_WIN32]: New implementation.
3490         * lib/glthread/cond.c (glthread_cond_init_func,
3491         glthread_cond_wait_func, glthread_cond_timedwait_func,
3492         glthread_cond_signal_func, glthread_cond_broadcast_func,
3493         glthread_cond_destroy_func) [USE_WIN32]: New functions.
3494         * modules/cond (Dependencies): Add gettimeofday.
3495
3496 2008-10-11  Bruno Haible  <bruno@clisp.org>
3497
3498         Make sleep work on older versions of mingw.
3499         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
3500         only whether it exists.
3501         * doc/posix-functions/sleep.texi: Mention the problem with older
3502         versions of mingw.
3503
3504 2008-10-11  Bruno Haible  <bruno@clisp.org>
3505
3506         New module 'shutdown'.
3507         * modules/shutdown: New file.
3508         * lib/sys_socket.in.h (shutdown): New declaration.
3509         * lib/winsock.c (shutdown): New function.
3510         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
3511         GNULIB_SHUTDOWN.
3512         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
3513         * doc/posix-functions/shutdown.texi: Document the new module.
3514
3515 2008-10-11  Jim Meyering  <meyering@redhat.com>
3516
3517         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
3518
3519 2008-10-11  Bruno Haible  <bruno@clisp.org>
3520
3521         New module 'fclose'.
3522         * modules/fclose: New file.
3523         * lib/stdio.in.h (fclose): New declaration.
3524         * lib/fclose.c: New file.
3525         * m4/fclose.m4: New file.
3526         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
3527         REPLACE_FCLOSE.
3528         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
3529         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
3530         REPLACE_FCLOSE.
3531         * modules/close (Depends-on): fclose.
3532         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
3533
3534 2008-10-11  Bruno Haible  <bruno@clisp.org>
3535
3536         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
3537         set errno and don't call _close.
3538
3539 2008-10-10  Bruno Haible  <bruno@clisp.org>
3540
3541         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
3542         ACL, not afterwards. Fixes test failure on Cygwin.
3543
3544 2008-10-09  Ben Pfaff  <blp@gnu.org>
3545
3546         * build-aux/announce-gen: Fix gnulib version related part of usage
3547         message.  Die with a useful error message if no tarballs are
3548         found.
3549
3550 2008-10-10  Jim Meyering  <meyering@redhat.com>
3551
3552         bootstrap: use git's --depth=N option only if it's supported
3553         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
3554         recognize the --depth option.  Reported by Pádraig Brady.
3555
3556 2008-10-09  Bruno Haible  <bruno@clisp.org>
3557
3558         New module 'ioctl'.
3559         * modules/ioctl: New file.
3560         * lib/sys_socket.in.h (ioctl): Remove declaration.
3561         * lib/winsock.c: Include <sys/ioctl.h>.
3562         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
3563         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
3564         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
3565         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
3566         * doc/posix-functions/ioctl.texi: Mention the new module.
3567
3568 2008-10-09  Bruno Haible  <bruno@clisp.org>
3569
3570         New module 'sys_ioctl'.
3571         * lib/sys_ioctl.in.h: New file.
3572         * m4/sys_ioctl_h.m4: New file.
3573         * modules/sys_ioctl: New file.
3574         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
3575
3576 2008-10-09  Bruno Haible  <bruno@clisp.org>
3577
3578         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
3579         * lib/winsock.c: Include <stdarg.h>.
3580         (rpl_ioctl): Change to second argument 'int' and then varargs.
3581
3582 2008-10-09  Bruno Haible  <bruno@clisp.org>
3583
3584         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
3585         when the sys_socket module is present and the system has <winsock2.h>.
3586
3587 2008-10-09  Bruno Haible  <bruno@clisp.org>
3588
3589         * doc/posix-functions/close.texi: Mention module 'close' instead of
3590         module 'sys_socket'.
3591
3592 2008-10-09  Bruno Haible  <bruno@clisp.org>
3593
3594         * doc/glibc-headers/sys_ioctl.texi: New file.
3595         * doc/gnulib.texi: Include it.
3596
3597 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
3598             Bruno Haible  <bruno@clisp.org>
3599
3600         Combine the two replacements of 'close'.
3601         * lib/sys_socket.in.h (close): Define to a reminder to include
3602         <unistd.h>.
3603         (_gl_close_fd_maybe_socket): New declaration.
3604         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
3605         * lib/winsock.c (close): Remove undefinition.
3606         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
3607         needed for the gnulib module 'close'.
3608         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
3609         define to an error symbol or to a warning, if suitable.
3610         * lib/close.c: Include <sys/socket.h>.
3611         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
3612         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
3613         UNISTD_H_HAVE_WINSOCK2_H.
3614         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
3615         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
3616         UNISTD_H_HAVE_WINSOCK2_H.
3617         * modules/sys_socket (Files): Add m4/unistd_h.m4.
3618         (configure.ac): Set a module indicator.
3619         (Makefile.am): Substitute GNULIB_CLOSE.
3620         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
3621         * modules/poll-tests (Depends-on): Add close.
3622         * modules/select-tests (Depends-on): Likewise.
3623
3624 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
3625             Bruno Haible  <bruno@clisp.org>
3626
3627         New module 'close'.
3628         * modules/close: New file.
3629         * lib/unistd.in.h (close): Move declaration out of the
3630         FCHDIR_REPLACEMENT scope.
3631         (_gl_unregister_fd): New declaration.
3632         * lib/close.c: New file.
3633         * lib/fchdir.c (rpl_close): Remove function.
3634         * m4/close.m4: New file.
3635         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
3636         close.
3637         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
3638         REPLACE_CLOSE.
3639         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
3640         REPLACE_CLOSE.
3641         * modules/fchdir (Depends-on): Add close.
3642
3643 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
3644             Bruno Haible  <bruno@clisp.org>
3645
3646         * lib/fcntl.in.h (open): Simplify conditionals.
3647         (_gl_register_fd): New declaration.
3648         * lib/fchdir.c (rpl_open): Remove function.
3649         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
3650         also.
3651         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
3652         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
3653         open.
3654
3655 2008-10-09  Jim Meyering  <meyering@redhat.com>
3656
3657         GNUmakefile: use the more name-space-friendly "_version"
3658         * top/GNUmakefile (_dummy): Update.
3659         (_version): Rename from "version".
3660
3661 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
3662             Bruno Haible  <bruno@clisp.org>
3663
3664         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
3665         rpl_close.
3666         (_gl_register_fd): New function, extracted from rpl_open.
3667         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
3668         (rpl_open, rpl_opendir): Use _gl_register_fd.
3669
3670 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
3671
3672         Fix organization of 'open' replacement.
3673         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
3674         (gl_FUNC_OPEN): Use it.
3675         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
3676
3677 2008-10-08  Bruno Haible  <bruno@clisp.org>
3678
3679         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
3680
3681 2008-10-08  Simon Josefsson  <simon@josefsson.org>
3682
3683         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
3684         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
3685         listen).
3686
3687 2008-10-08  Eric Blake  <ebb9@byu.net>
3688
3689         GNUmakefile: add 'make version' target
3690         * top/GNUmakefile (_curr-ver): Split version update rules...
3691         (version): ...into a target.
3692
3693 2008-10-07  Bruno Haible  <bruno@clisp.org>
3694
3695         Use a more portable replacement expression for -0.0L.
3696         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
3697         instead of -0.0L. Fix m4 quotation.
3698
3699         * tests/test-signbit.c: Include <float.h>.
3700         (minus_zero): New variable.
3701         (test_signbitl): Use minus_zero instead of -zero.
3702         * modules/signbit-tests (Depends-on): Add float.
3703
3704         * tests/test-ceill.c: Include <float.h>.
3705         (zero): Remove variable.
3706         (minus_zero): New variable.
3707         (main): Use minus_zero instead of -zero.
3708         * modules/ceill-tests (Depends-on): Add float.
3709
3710         * tests/test-floorl.c: Include <float.h>.
3711         (zero): Remove variable.
3712         (minus_zero): New variable.
3713         (main): Use minus_zero instead of -zero.
3714         * modules/floorl-tests (Depends-on): Add float.
3715
3716         * tests/test-roundl.c: Include <float.h>.
3717         (zero): Remove variable.
3718         (minus_zero): New variable.
3719         (main): Use minus_zero instead of -zero.
3720         * modules/roundl-tests (Depends-on): Add float.
3721
3722         * tests/test-truncl.c: Include <float.h>.
3723         (zero): Remove variable.
3724         (minus_zero): New variable.
3725         (main): Use minus_zero instead of -zero.
3726         * modules/truncl-tests (Depends-on): Add float.
3727
3728         * tests/test-frexpl.c (zero): Remove variable.
3729         (minus_zero): New variable.
3730         (main): Use minus_zero instead of -zero.
3731         * modules/frexpl-tests (Depends-on): Add float.
3732
3733         * tests/test-isnan.c (zerol): Remove variable.
3734         (minus_zerol): New variable.
3735         (test_long_double): Use minus_zerol instead of -zerol.
3736         * modules/isnan-tests (Depends-on): Add float.
3737
3738         * tests/test-isnanl.h (zero): Remove variable.
3739         (minus_zero): New variable.
3740         (main): Use minus_zero instead of -zero.
3741         * modules/isnanl-nolibm-tests (Depends-on): Add float.
3742         * modules/isnanl-tests (Depends-on): Add float.
3743
3744         * tests/test-ldexpl.c (zero): Remove variable.
3745         (minus_zero): New variable.
3746         (main): Use minus_zero instead of -zero.
3747         * modules/ldexpl-tests (Depends-on): Add float.
3748
3749         * tests/test-snprintf-posix.h (zerol): Remove variable.
3750         (minus_zerol): New variable.
3751         (test_function): Use minus_zerol instead of -zerol.
3752         * modules/snprintf-posix-tests (Depends-on): Add float.
3753         * modules/vsnprintf-posix-tests (Depends-on): Add float.
3754
3755         * tests/test-sprintf-posix.h (zerol): Remove variable.
3756         (minus_zerol): New variable.
3757         (test_function): Use minus_zerol instead of -zerol.
3758         * modules/sprintf-posix-tests (Depends-on): Add float.
3759         * modules/vsprintf-posix-tests (Depends-on): Add float.
3760
3761         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
3762         (minus_zerol): New variable.
3763         (test_function): Use minus_zerol instead of -zerol.
3764         * modules/vasnprintf-posix-tests (Depends-on): Add float.
3765
3766         * tests/test-vasprintf-posix.c (zerol): Remove variable.
3767         (minus_zerol): New variable.
3768         (test_function): Use minus_zerol instead of -zerol.
3769         * modules/vasprintf-posix-tests (Depends-on): Add float.
3770
3771 2008-10-07  Simon Josefsson  <simon@josefsson.org>
3772
3773         * MODULES.html.sh (Support for building documentation): Mention
3774         pmccabe2html.  Sort entries.
3775
3776         Add pmccabe2html module, from gnupdf.
3777         * build-aux/pmccabe.css: New file.
3778         * build-aux/pmccabe2html: New file.
3779         * m4/pmccabe2html.m4: New file.
3780         * modules/pmccabe2html: New file.
3781
3782 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
3783
3784         flock: new module
3785         * MODULES.html.sh: Add to list of modules.
3786         * lib/flock.c: flock implementation for Windows and Unix systems
3787         which have fcntl.
3788         * doc/glibc-functions/flock.texi: Update documentation.
3789         * lib/sys_file.in.h: <sys/file.h> header file.
3790         * m4/flock.m4: M4 macros.
3791         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
3792         * modules/flock: flock module.
3793         * modules/flock-tests: flock tests module.
3794         * modules/sys_file: sys/file.h module.
3795         * tests/test-flock.c: test suite for flock.
3796
3797 2008-10-06  Jim Meyering  <meyering@redhat.com>
3798
3799         bootstrap: check for LT_INIT more portably still ;-)
3800         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
3801         Spotted by Bruno Haible.
3802
3803 2008-10-06  Eric Blake  <ebb9@byu.net>
3804
3805         test-signbit: avoid tripping Irix cc bug on -0.0L
3806         * tests/test-signbit.c (minus_zerol): Delete, and replace with
3807         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
3808         entire testsuite consistent and avoids an Irix 6.2 bug.
3809
3810 2008-10-05  Bruno Haible  <bruno@clisp.org>
3811             Jim Meyering  <jim@meyering.net>
3812
3813         Add an option for ignoring EPIPE during close_stdout.
3814         * lib/closeout.h: Include <stdbool.h>.
3815         (close_stdout_set_ignore_EPIPE): New declaration.
3816         * lib/closeout.c: Include <stdbool.h>.
3817         (ignore_EPIPE): New variable.
3818         (close_stdout_set_ignore_EPIPE): New function.
3819         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
3820         * lib/close-stream.c (close_stream): Mention the possible EPIPE
3821         failure.
3822         * modules/closeout (Depends-on): Add stdbool.
3823
3824 2008-10-05  Bruno Haible  <bruno@clisp.org>
3825
3826         * modules/accept: New file.
3827         * modules/bind: New file.
3828         * modules/connect: New file.
3829         * modules/getpeername: New file.
3830         * modules/getsockname: New file.
3831         * modules/getsockopt: New file.
3832         * modules/listen: New file.
3833         * modules/recv: New file.
3834         * modules/recvfrom: New file.
3835         * modules/send: New file.
3836         * modules/sendto: New file.
3837         * modules/setsockopt: New file.
3838         * modules/socket: New file.
3839         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
3840         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
3841         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
3842         the particular module is requested. Add a link warning when the
3843         particular module is not requested.
3844         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
3845         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
3846         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
3847         the particular module is requested.
3848         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
3849         gl_SYS_SOCKET_H_DEFAULTS): New macros.
3850         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
3851         * modules/sys_socket (Depends-on): Add link-warning.
3852         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
3853         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
3854         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
3855         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
3856         GL_LINK_WARNING.
3857         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
3858         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
3859         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
3860         * doc/posix-functions/getpeername.texi: Mention the new module
3861         'getpeername'.
3862         * doc/posix-functions/getsockname.texi: Mention the new module
3863         'getsockname'.
3864         * doc/posix-functions/getsockopt.texi: Mention the new module
3865         'getsockopt'.
3866         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
3867         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
3868         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
3869         * doc/posix-functions/send.texi: Mention the new module 'send'.
3870         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
3871         * doc/posix-functions/setsockopt.texi: Mention the new module
3872         'setsockopt'.
3873         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
3874         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
3875         listen, connect, accept.
3876         * modules/select-tests (Depends-on): Likewise.
3877
3878 2008-10-05  Bruno Haible  <bruno@clisp.org>
3879
3880         * lib/winsock.c (strerror): Remove unused #undef.
3881         (rpl_close): Remove unused local variable.
3882
3883         * modules/sys_socket (Depends-on); Add errno.
3884
3885 2008-10-05  Bruno Haible  <bruno@clisp.org>
3886
3887         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
3888         (select): Add a link warning when the 'select' module is not used.
3889         * modules/sys_select (Depends-on): Add link-warning.
3890         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
3891         Suggested by Paolo Bonzini.
3892
3893 2008-10-05  Jim Meyering  <meyering@redhat.com>
3894
3895         bootstrap: check for LT_INIT more portably
3896         * build-aux/bootstrap: Avoid using grep -E, since it's not
3897         portable enough.  Suggestion from Bruno Haible.
3898
3899 2008-10-05  Bruno Haible  <bruno@clisp.org>
3900
3901         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
3902         as being fixed by gnulib.
3903
3904 2008-10-05  Bruno Haible  <bruno@clisp.org>
3905
3906         * modules/select-tests: New file, mostly copied from
3907         modules/sys_select-tests.
3908         * tests/test-select.c: New file, mostly copied from
3909         tests/test-sys_select.c.
3910         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
3911         * modules/sys_select-tests (Depends-on): Remove all dependencies.
3912         (Makefile.am): Remove test_sys_select_LDADD.
3913
3914         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
3915         to an undefined symbol, for an error message.
3916         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
3917         (gl_SYS_SELECT_H_DEFAULTS): New macro.
3918         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
3919         winsock-select.c here.
3920         * modules/sys_select (Files): Remove lib/winsock-select.c.
3921         (Depends-on): Remove alloca.
3922         (Makefile.am): Substitute GNULIB_SELECT.
3923         * modules/select: New file.
3924         * doc/posix-functions/select.texi: Update.
3925
3926 2008-10-05  Bruno Haible  <bruno@clisp.org>
3927
3928         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
3929         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
3930         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
3931         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
3932         getdtablesize.
3933         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
3934         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
3935
3936 2008-10-05  Bruno Haible  <bruno@clisp.org>
3937
3938         * modules/getdtablesize-tests: New file.
3939         * tests/test-getdtablesize.c: New file.
3940
3941         New module 'getdtablesize'.
3942         * lib/unistd.in.h (getdtablesize): New declaration.
3943         * lib/getdtablesize.c: New file.
3944         * m4/getdtablesize.m4: New file.
3945         * modules/getdtablesize: New file.
3946         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
3947         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
3948         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
3949         HAVE_GETDTABLESIZE.
3950         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
3951
3952 2008-10-05  Bruno Haible  <bruno@clisp.org>
3953
3954         * modules/sched (Makefile.am): Fix typo.
3955         Reported by Simon Josefsson.
3956
3957 2008-10-05  Jim Meyering  <meyering@redhat.com>
3958
3959         bootstrap: check for LT_INIT, too
3960         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
3961         are deprecated.  Suggestion from Ralf Wildenhues.
3962
3963 2008-10-05  Bruno Haible  <bruno@clisp.org>
3964
3965         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
3966         overriding them by ours.
3967         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
3968
3969 2008-10-05  Jim Meyering  <meyering@redhat.com>
3970
3971         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
3972         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
3973         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
3974
3975 2008-10-04  Bruno Haible  <bruno@clisp.org>
3976
3977         * modules/dup2 (License): Change to LGPLv2+.
3978         * modules/sleep (License): Likewise.
3979         * modules/perror (License): Likewise.
3980         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
3981         Blake.
3982         * modules/signal (License): Likewise.
3983         * modules/sigprocmask (License): Likewise.
3984         * modules/raise (License): Change to LGPLv2+, with approval by Jim
3985         Meyering.
3986
3987 2008-10-04  Bruno Haible  <bruno@clisp.org>
3988
3989         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
3990         Reported by Rainer Tammer <tammer@tammer.net>.
3991
3992 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
3993             Bruno Haible  <bruno@clisp.org>
3994
3995         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
3996         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
3997         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
3998
3999 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
4000
4001         filevercmp: new module
4002         * lib/filevercmp.h: New function filevercmp comparing version strings.
4003         * lib/filevercmp.c: Implementation of filevercmp function.
4004         * modules/filevercmp: Module metadata.
4005         * tests/test-filevercmp.c: Unit test for new module.
4006         * modules/filevercmp-tests: Unit test metadata.
4007         * MODULES.html.sh: Add filevercmp module.
4008
4009 2008-10-03  Bruno Haible  <bruno@clisp.org>
4010
4011         * lib/c-ctype.h: Add comment.
4012         Reported by Jim Meyering.
4013
4014 2008-10-02  Bruno Haible  <bruno@clisp.org>
4015
4016         * modules/posix_spawn-internal (Depends-on): Add 'open'.
4017
4018 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
4019
4020         * build-aux/bootstrap: Allow renaming bootstrap, and change the
4021         name of bootstrap.conf accordingly.
4022
4023 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
4024
4025         * build-aux/bootstrap: Install git-merge-changelog configuration
4026         items into .gitconfig if needed.
4027
4028 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
4029
4030         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
4031         git repository, and initialize/update it accordingly.
4032
4033 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
4034
4035         * modules/fsync-tests: New file.
4036         * tests/test-fsync.c: New file.
4037
4038         New module 'fsync'.
4039         * lib/fsync.c: New file.
4040         * m4/fsync.m4: New file.
4041         * modules/fsync: New file.
4042         * lib/unistd.in.h (fsync): New declaration.
4043         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
4044         GNULIB_FSYNC and HAVE_FSYNC.
4045         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
4046         * MODULES.html.sh (posix_functions): Add fsync.
4047         * doc/posix-functions/fsync.texi: Mention the new module.
4048
4049 2008-10-02  Jim Meyering  <meyering@redhat.com>
4050
4051         fts.c: sync with similar code from coreutils' remove.c
4052         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
4053         Guard also with "#if defined __linux__", since for now at least,
4054         this code is Linux-kernel-specific.
4055
4056 2008-10-02  Jim Meyering  <meyering@redhat.com>
4057
4058         fts: bug fixes
4059         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
4060         Include <sys/vfs.h>, not <sys/statfs.h>.
4061
4062         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
4063         Include <sys/vfs.h>, not <sys/statfs.h>.
4064
4065 2008-10-01  Bruno Haible  <bruno@clisp.org>
4066
4067         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
4068         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
4069         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
4070         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
4071         * doc/posix-functions/posix_spawnp.texi: Likewise.
4072         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
4073         whether posix_spawn actually works.
4074         * m4/pipe.m4 (gl_PIPE): Likewise.
4075         * modules/execute (Files): Add m4/posix_spawn.m4.
4076         * modules/pipe (Files): Add m4/posix_spawn.m4.
4077         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
4078
4079 2008-10-01  Jim Meyering  <meyering@redhat.com>
4080
4081         remove trailing spaces
4082         * NEWS: Likewise.
4083         * lib/poll.c (poll): Likewise.
4084         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
4085         * lib/winsock.c (rpl_close): Likewise.
4086         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
4087         * modules/yield: Likewise.
4088         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
4089         * tests/test-sys_select.c (connect_to_socket): Likewise.
4090
4091         fts.c: adjust a new interface to be more generally useful
4092         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
4093         (fts_build): Adjust caller.
4094
4095 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4096
4097         * modules/cond-tests: New file.
4098         * tests/test-cond.c: New file.
4099
4100 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4101             Bruno Haible  <bruno@clisp.org>
4102
4103         * modules/cond (Dependencies): Add errno, time.
4104         * lib/glthread/cond.h: Include <time.h>.
4105         (gl_cond_define, gl_cond_define_initialized): Use the same definition
4106         across platforms.
4107
4108 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4109             Bruno Haible  <bruno@clisp.org>
4110
4111         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
4112
4113 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4114             Bruno Haible  <bruno@clisp.org>
4115
4116         * modules/tls-tests (Depends-on): Add thread, yield.
4117         (configure.ac): Remove all checks.
4118         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
4119         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
4120         gl_thread_self): Remove definitions. Include glthread/thread.h and
4121         glthread/yield.h instead.
4122         (test_tls): Pass an additional NULL argument to gl_thread_join.
4123
4124 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4125             Bruno Haible  <bruno@clisp.org>
4126
4127         * modules/lock-tests (Depends-on): Add thread, yield.
4128         (configure.ac): Remove all checks.
4129         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
4130         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
4131         gl_thread_self): Remove definitions. Include glthread/thread.h and
4132         glthread/yield.h instead.
4133         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
4134         additional NULL argument to gl_thread_join.
4135
4136 2008-09-30  Bruno Haible  <bruno@clisp.org>
4137
4138         Fix the Win32 implementation of the 'thread' module.
4139         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
4140         pointer type.
4141         (gl_thread_self): Invoke gl_thread_self_func.
4142         (gl_thread_self_func): New declaration.
4143         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
4144         (do_init_self_key, init_self_key): New functions.
4145         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
4146         Remove some fields.
4147         (running_threads, running_lock): Remove variables.
4148         (get_current_thread_handle): New function.
4149         (gl_thread_self_func, wrapper_func, glthread_create_func,
4150         glthread_join_func, gl_thread_exit_func): Largely rewritten and
4151         simplified.
4152
4153 2008-09-30  Bruno Haible  <bruno@clisp.org>
4154
4155         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
4156         files.
4157
4158 2008-09-30  Jim Meyering  <meyering@redhat.com>
4159
4160         fts.m4: correct the test for statfs.f_type
4161         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
4162         when checking for statfs.f_type.
4163
4164 2008-09-15  Simon Josefsson  <simon@josefsson.org>
4165
4166         tests: avoid some compiler warnings
4167         * tests/test-memchr.c (main): Pass NULL indirectly.
4168         * tests/test-getdate.c (main): Remove unused variable 'ret'.
4169
4170 2008-09-29  OndÅ™ej Vašík  <ovasik@redhat.com>
4171
4172         getdate.y: disallow countable dayshifts like "4 yesterday ago"
4173         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
4174         exactly specified dayshifts.
4175         (dayshift): New rule.
4176         (rel): Add dayshift.
4177         (relative_time_table) [tomorrow, yesterday, today, now]:
4178         Use tDAY_SHIFT in place of tDAY_UNIT.
4179         * tests/test-getdate.c: Add tests for now-disallowed countable
4180         dayshifts, e.g., "4 yesterday ago".
4181
4182 2008-09-29  Bruno Haible  <bruno@clisp.org>
4183
4184         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
4185         * tests/test-posix_spawn1.in.sh: Renamed from
4186         tests/test-posix_spawn.in.sh.
4187         * tests/test-posix_spawn2.c: New file.
4188         * tests/test-posix_spawn2.in.sh: New file.
4189         * modules/posix_spawnp-tests (Files): Update.
4190         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
4191
4192 2008-09-29  Bruno Haible  <bruno@clisp.org>
4193
4194         Propagate effects of putenv/setenv/unsetenv to child processes.
4195         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
4196         * lib/pipe.c (create_pipe): Likewise.
4197
4198 2008-09-29  Bruno Haible  <bruno@clisp.org>
4199
4200         Enable use of shell scripts as executables in mingw.
4201         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
4202         run the program as a shell script.
4203         * lib/pipe.c (create_pipe): Likewise.
4204         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
4205         resulting array.
4206
4207 2008-09-29  Eric Blake  <ebb9@byu.net>
4208
4209         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
4210
4211 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
4212
4213         * doc/posix-functions/accept.texi: Update mingw problems.
4214         * doc/posix-functions/bind.texi: Update mingw problems.
4215         * doc/posix-functions/close.texi: Update mingw problems.
4216         * doc/posix-functions/connect.texi: Update mingw problems.
4217         * doc/posix-functions/getpeername.texi: Update mingw problems.
4218         * doc/posix-functions/getsockname.texi: Update mingw problems.
4219         * doc/posix-functions/getsockopt.texi: Update mingw problems.
4220         * doc/posix-functions/ioctl.texi: Update mingw problems.
4221         * doc/posix-functions/listen.texi: Update mingw problems.
4222         * doc/posix-functions/recv.texi: Update mingw problems.
4223         * doc/posix-functions/recvfrom.texi: Update mingw problems.
4224         * doc/posix-functions/select.texi: Update mingw problems.
4225         * doc/posix-functions/send.texi: Update mingw problems.
4226         * doc/posix-functions/sendto.texi: Update mingw problems.
4227         * doc/posix-functions/setsockopt.texi: Update mingw problems.
4228         * doc/posix-functions/socket.texi: Update mingw problems.
4229
4230 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
4231             Bruno Haible  <bruno@clisp.org>
4232
4233         * lib/sys_select.in.h: Include sys/time.h.
4234         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
4235         * modules/sys_select: Depend on sys_time.
4236         * tests/test-sys_select.c: Test that sys/select.h defines struct
4237         timeval fully.
4238
4239 2008-09-29  Bruno Haible  <bruno@clisp.org>
4240
4241         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
4242         * lib/sys_select.in.h: Likewise.
4243
4244 2008-09-29  Bruno Haible  <bruno@clisp.org>
4245
4246         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
4247
4248 2008-09-29  Bruno Haible  <bruno@clisp.org>
4249
4250         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
4251         Set LIBSOCKET instead of augmenting LIBS.
4252         * modules/sockets (Link): New section.
4253         * modules/sockets-tests (test_sockets_LDADD): New variable.
4254         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
4255         * modules/poll-tests (test_poll_LDADD): New variable.
4256         * NEWS: Document the change.
4257
4258 2008-09-29  Bruno Haible  <bruno@clisp.org>
4259
4260         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
4261         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
4262         ARPA_INET_H directly.
4263         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
4264
4265 2008-09-28  Bruno Haible  <bruno@clisp.org>
4266
4267         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
4268         from gl_HEADER_SYS_SOCKET.
4269         (gl_HEADER_SYS_SOCKET): Invoke it.
4270         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
4271
4272 2008-09-28  Bruno Haible  <bruno@clisp.org>
4273
4274         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
4275         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
4276         Needed on OSF/1 4.0.
4277
4278 2008-09-28  Bruno Haible  <bruno@clisp.org>
4279
4280         Override open more carefully.
4281         * lib/open.c (orig_open): New function.
4282         (rpl_open): Use orig_open instead of open.
4283         * lib/fcntl.in.h: Add special invocation convention.
4284         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
4285         (gl_FUNC_OPEN): Invoke it.
4286
4287         Override freopen more carefully.
4288         * lib/freopen.c (orig_freopen): New function.
4289         (rpl_freopen): Use orig_freopen instead of freopen.
4290         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
4291         (gl_FUNC_FREOPEN): Invoke it.
4292
4293         Override fopen more carefully.
4294         * lib/fopen.c (orig_fopen): New function.
4295         (rpl_fopen): Use orig_fopen instead of fopen.
4296         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
4297         (gl_FUNC_FOPEN): Invoke it.
4298         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
4299
4300 2008-09-28  Bruno Haible  <bruno@clisp.org>
4301
4302         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
4303         SIGPIPE.
4304
4305 2008-09-28  Bruno Haible  <bruno@clisp.org>
4306
4307         * tests/test-sigaction.c (handler, main): Disable the check whether
4308         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
4309         glibc systems with LinuxThreads.
4310
4311 2008-09-28  Bruno Haible  <bruno@clisp.org>
4312
4313         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
4314
4315         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
4316         with AIX xlc.
4317         * lib/fcntl.in.h (open): Likewise.
4318         Reported by Rainer Tammer <tammer@tammer.net>.
4319
4320 2008-09-28  Bruno Haible  <bruno@clisp.org>
4321
4322         * modules/posix_spawnp-tests: New file.
4323         * tests/test-posix_spawn.c: New file.
4324         * tests/test-posix_spawn.in.sh: New file.
4325
4326         New module 'posix_spawnp'.
4327         * modules/posix_spawnp: New file.
4328         * lib/spawnp.c: New file, from GNU libc with modifications.
4329         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
4330
4331         New module 'posix_spawn'.
4332         * modules/posix_spawn: New file.
4333         * lib/spawn.c: New file, from GNU libc with modifications.
4334         * doc/posix-functions/posix_spawn.texi: Mention the new module.
4335
4336         New module 'posix_spawnattr_destroy'.
4337         * modules/posix_spawnattr_destroy: New file.
4338         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
4339         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
4340         module.
4341
4342         New module 'posix_spawnattr_setsigmask'.
4343         * modules/posix_spawnattr_setsigmask: New file.
4344         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
4345         modifications.
4346         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
4347         new module.
4348
4349         New module 'posix_spawnattr_getsigmask'.
4350         * modules/posix_spawnattr_getsigmask: New file.
4351         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
4352         modifications.
4353         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
4354         new module.
4355
4356         New module 'posix_spawnattr_setsigdefault'.
4357         * modules/posix_spawnattr_setsigdefault: New file.
4358         * lib/spawnattr_setdefault.c: New file, from GNU libc with
4359         modifications.
4360         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
4361         new module.
4362
4363         New module 'posix_spawnattr_getsigdefault'.
4364         * modules/posix_spawnattr_getsigdefault: New file.
4365         * lib/spawnattr_getdefault.c: New file, from GNU libc with
4366         modifications.
4367         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
4368         new module.
4369
4370         New module 'posix_spawnattr_setschedpolicy'.
4371         * modules/posix_spawnattr_setschedpolicy: New file.
4372         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
4373         modifications.
4374         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
4375         new module.
4376
4377         New module 'posix_spawnattr_getschedpolicy'.
4378         * modules/posix_spawnattr_getschedpolicy: New file.
4379         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
4380         modifications.
4381         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
4382         new module.
4383
4384         New module 'posix_spawnattr_setschedparam'.
4385         * modules/posix_spawnattr_setschedparam: New file.
4386         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
4387         modifications.
4388         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
4389         new module.
4390
4391         New module 'posix_spawnattr_getschedparam'.
4392         * modules/posix_spawnattr_getschedparam: New file.
4393         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
4394         modifications.
4395         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
4396         new module.
4397
4398         New module 'posix_spawnattr_setpgroup'.
4399         * modules/posix_spawnattr_setpgroup: New file.
4400         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
4401         modifications.
4402         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
4403         module.
4404
4405         New module 'posix_spawnattr_getpgroup'.
4406         * modules/posix_spawnattr_getpgroup: New file.
4407         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
4408         modifications.
4409         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
4410         module.
4411
4412         New module 'posix_spawnattr_setflags'.
4413         * modules/posix_spawnattr_setflags: New file.
4414         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
4415         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
4416         module.
4417
4418         New module 'posix_spawnattr_getflags'.
4419         * modules/posix_spawnattr_getflags: New file.
4420         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
4421         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
4422         module.
4423
4424         New module 'posix_spawnattr_init'.
4425         * modules/posix_spawnattr_init: New file.
4426         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
4427         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
4428         module.
4429
4430         New module 'posix_spawn_file_actions_destroy'.
4431         * modules/posix_spawn_file_actions_destroy: New file.
4432         * lib/spawn_faction_destroy.c: New file, from GNU libc with
4433         modifications.
4434         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
4435         the new module.
4436
4437         New module 'posix_spawn_file_actions_addopen'.
4438         * modules/posix_spawn_file_actions_addopen: New file.
4439         * lib/spawn_faction_addopen.c: New file, from GNU libc with
4440         modifications.
4441         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
4442         the new module.
4443
4444         New module 'posix_spawn_file_actions_adddup2'.
4445         * modules/posix_spawn_file_actions_adddup2: New file.
4446         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
4447         modifications.
4448         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
4449         the new module.
4450
4451         New module 'posix_spawn_file_actions_addclose'.
4452         * modules/posix_spawn_file_actions_addclose: New file.
4453         * lib/spawn_faction_addclose.c: New file, from GNU libc with
4454         modifications.
4455         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
4456         the new module.
4457
4458         New module 'posix_spawn_file_actions_init'.
4459         * modules/posix_spawn_file_actions_init: New file.
4460         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
4461         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
4462         new module.
4463
4464         New module 'posix_spawn-internal'.
4465         * modules/posix_spawn-internal: New file.
4466         * lib/spawn_int.h: New file, from GNU libc with modifications.
4467         * lib/spawni.c: New file, from GNU libc with modifications.
4468         * m4/posix_spawn.m4: New file.
4469
4470         New module 'spawn'.
4471         * modules/spawn: New file.
4472         * lib/spawn.in.h: New file, from GNU libc with modifications.
4473         * m4/spawn_h.m4: New file.
4474         * doc/posix-headers/spawn.texi: Mention the new module.
4475
4476 2008-09-28  Bruno Haible  <bruno@clisp.org>
4477
4478         * modules/sched-tests: New file.
4479         * tests/test-sched.c: New file.
4480
4481         New module 'sched'.
4482         * modules/sched: New file.
4483         * lib/sched.in.h: New file.
4484         * m4/sched_h.m4: New file.
4485         * doc/posix-headers/sched.texi: Mention the new module.
4486
4487 2008-09-27  Eric Blake  <ebb9@byu.net>
4488
4489         Fix previous patch, and tweak references to $0.
4490         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
4491         (func_version, func_gnulib_dir): Don't call this program
4492         gnulib-tool.
4493         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
4494         with using $0 in function.
4495         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
4496         (func_fatal_error): Reuse the name the user invoked us with.
4497
4498 2008-09-27  Bruno Haible  <bruno@clisp.org>
4499
4500         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
4501         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
4502         (gl_ICONV_H): Not here.
4503         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
4504         instead of assigning ICONV_H directly.
4505
4506         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
4507         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
4508         WCHAR_H directly.
4509
4510 2008-09-27  Bruno Haible  <bruno@clisp.org>
4511
4512         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
4513         * modules/arpa_inet (Depends-on): Add link-warning.
4514         (Makefile.am): Insert the definition of GL_LINK-WARNING.
4515         * modules/unistd (Makefile.am): Likewise.
4516
4517 2008-09-26  Bruno Haible  <bruno@clisp.org>
4518
4519         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
4520         variables.
4521         (func_version): Essentially copied from gnulib-tool.
4522         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
4523         func_readlink): Copied from gnulib-tool.
4524
4525 2008-09-26  Bruno Haible  <bruno@clisp.org>
4526
4527         * gnulib-tool (func_version): Change directory to $gnulib_dir before
4528         invoking git-version-gen.
4529
4530 2008-09-26  Bruno Haible  <bruno@clisp.org>
4531
4532         * posix-modules: Update to directory names changed on 2008-01-19.
4533         Remove commas in output before splitting into words. No more need to
4534         avoid 'ftruncate' since 2007-02-19.
4535
4536 2008-09-26  Bruno Haible  <bruno@clisp.org>
4537
4538         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
4539
4540 2008-09-26  Bruno Haible  <bruno@clisp.org>
4541
4542         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
4543         * modules/fwriteerror (Depends-on): Add errno.
4544
4545 2008-09-26  Bruno Haible  <bruno@clisp.org>
4546
4547         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
4548         * tests/test-vc-list-files-cvs.sh: Likewise.
4549
4550 2008-09-26  Bruno Haible  <bruno@clisp.org>
4551
4552         * doc/posix-headers/sys_resource.texi: Reorder items.
4553
4554 2008-09-26  Jim Meyering  <meyering@redhat.com>
4555
4556         fts: tweak inode comparison function
4557         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
4558         inode numbers, as documented.
4559
4560         fts: sort dirent entries on inode number before traversing
4561         This avoids a quadratic, seek-related performance penalty when
4562         operating on a directory containing many entries (measurable at 10k;
4563         3.5 hours at 2 million entries with a cold cache) on certain types
4564         of file systems, including ext3 and ext4, but not tmpfs.
4565         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
4566         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
4567         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
4568         (fs_handles_readdir_ordered_dirents_efficiently): New function.
4569         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
4570         (fts_build): Set the stat.st_ino member from D_INO.
4571         If it is likely to be useful, sort dirent entries on inode number.
4572
4573         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
4574         and the struct statfs.f_type member.
4575         * modules/fts (Depends-on): Add d-ino.
4576
4577 2008-09-26  Bruno Haible  <bruno@clisp.org>
4578
4579         * modules/sigpipe-die (Depends-on): Add sigpipe.
4580
4581         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
4582         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
4583         and GNULIB_STDIO_H_SIGPIPE are set.
4584         * lib/stdio-write.c: New file.
4585         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
4586         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
4587         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
4588         REPLACE_STDIO_WRITE_FUNCS.
4589         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
4590         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
4591         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
4592         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
4593         * modules/stdio (Files): Add lib/stdio-write.c.
4594         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
4595         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
4596         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
4597         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
4598         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
4599         REPLACE_FPRINTF_POSIX.
4600         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
4601         REPLACE_PRINTF_POSIX.
4602         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
4603         REPLACE_VFPRINTF_POSIX.
4604         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
4605         REPLACE_VPRINTF_POSIX.
4606         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
4607         SIGPIPE issue.
4608         * doc/posix-functions/fputc.texi: Likewise.
4609         * doc/posix-functions/fputs.texi: Likewise.
4610         * doc/posix-functions/fwrite.texi: Likewise.
4611         * doc/posix-functions/printf.texi: Likewise.
4612         * doc/posix-functions/putc.texi: Likewise.
4613         * doc/posix-functions/putchar.texi: Likewise.
4614         * doc/posix-functions/puts.texi: Likewise.
4615         * doc/posix-functions/vfprintf.texi: Likewise.
4616         * doc/posix-functions/vprintf.texi: Likewise.
4617
4618         * modules/safe-write (Depends-on): Add write.
4619
4620         * modules/sigpipe-tests: New file.
4621         * tests/test-sigpipe.c: New file.
4622         * tests/test-sigpipe.sh: New file.
4623
4624         * modules/write: New file.
4625         * lib/unistd.in.h: Include <sys/types.h>.
4626         (write): New declaration.
4627         * lib/write.c: New file.
4628         * m4/write.m4: New file.
4629         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
4630         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
4631         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
4632         GNULIB_WRITE, REPLACE_WRITE.
4633         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
4634         and the SIGPIPE issue.
4635
4636         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
4637         (raise): New declaration.
4638         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
4639         (ext_signal): New function.
4640         (rpl_raise): New function.
4641         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
4642         GNULIB_SIGNAL_H_SIGPIPE.
4643         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
4644         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
4645
4646         * modules/sigpipe: New file.
4647         * m4/sigpipe.m4: New file.
4648
4649 2008-09-25  Derek Price  <derek@ximbiot.com>
4650             Bruno Haible  <bruno@clisp.org>
4651
4652         * gnulib-tool (func_import): Report all license incompatibilities, not
4653         just the first one.
4654
4655 2008-09-25  Bruno Haible  <bruno@clisp.org>
4656
4657         * gnulib-tool (func_import): When computing the edits, consider not
4658         only the Makefile.ams that exist but also those that will be generated.
4659
4660 2008-09-25  Simon Josefsson  <simon@josefsson.org>
4661
4662         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
4663         fixes gnulib-tool --test warning about duplicate dependency.
4664
4665 2008-09-25  Bruno Haible  <bruno@clisp.org>
4666
4667         * gnulib-tool: Don't ask the user to perform edits in the generated
4668         Makefile.ams.
4669         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
4670         apply to the Makefile.am being generated.
4671         (func_emit_tests_Makefile_am): Execute edits that apply to the
4672         Makefile.am being generated.
4673         (func_import): Setup list of Makefile.am edits before emitting the
4674         Makefile.ams, not at the end.
4675         (func_create_testdir): Update.
4676         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
4677
4678 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4679
4680         * gnulib-tool (func_import): Store the --tests-base option in the
4681         comment in gnulib-cache.m4.
4682
4683 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
4684
4685         * NEWS: Document increased portability that sys_select now provides.
4686
4687         * lib/sys_select.in.h: Install select wrapper.
4688         * lib/sys_socket.in.h: Use more descriptive name when there is no
4689         select wrapper.
4690         * lib/winsock-select.c: New.
4691         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
4692         Require gl_HEADER_SYS_SOCKET.
4693         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
4694         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
4695         * tests/test-sys_select.c: Add functional tests.
4696
4697 2008-09-24  Eric Blake  <ebb9@byu.net>
4698
4699         open, fopen: close fd leak in last patch
4700         * lib/open.c (rpl_open): Close fd before returning error.
4701         * lib/fopen.c (rpl_fopen): Close fd before returning error.
4702         * doc/posix-functions/open.texi (open): Document that Irix also
4703         has the bug.
4704         * doc/posix-functions/fopen.texi (fopen): Likewise.
4705         Reported by Paolo Bonzini.
4706
4707 2008-09-24  Bruno Haible  <bruno@clisp.org>
4708
4709         Ensure that a filename ending in a slash cannot be used to access a
4710         non-directory.
4711         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
4712         to check whether it's really a directory.
4713         * lib/fopen.c: Include fcntl.h, unistd.h.
4714         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
4715         and fdopen().
4716         * modules/fopen (Depends-on): Add unistd.
4717         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
4718         * tests/test-fopen.c (main): Likewise.
4719         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
4720         * doc/posix-functions/fopen.texi: Likewise.
4721         Reported by Eric Blake.
4722
4723 2008-09-23  Eric Blake  <ebb9@byu.net>
4724
4725         c-stack: avoid compiler optimizations when provoking overflow
4726         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
4727         recursion harder to optimize, to ensure a stack overflow occurs.
4728         * tests/test-c-stack.c (recurse): Likewise.
4729         Borrowed from libsigsegv.
4730
4731         c-stack: work around Irix sigaltstack bug
4732         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
4733         whether sigaltstack uses wrong end of stack_t (copied in part from
4734         libsigsegv).
4735         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
4736         Irix bug, without requiring an over-allocation.
4737         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
4738         bug.
4739
4740         fopen: document mingw bug on directories
4741         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
4742         not allowing a stream visiting a directory, even though reading
4743         from such a stream is not portable.
4744
4745 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
4746
4747         * lib/poll.c: Rewrite.
4748         * modules/poll: Depend on alloca.
4749
4750 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
4751
4752         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
4753         instead define prototypes for a full set of wrappers.  Ensure
4754         that Cygwin does not use the compatibility code, which is only
4755         for MinGW.
4756         * lib/winsock.c: New.
4757         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
4758         * modules/sys_socket: Add lib/winsock.c.
4759
4760         * modules/poll-tests: Add errno and perror.
4761         * tests/test-poll.c: Use ioctl, not ioctlsocket.
4762
4763 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
4764
4765         * tests/test-poll.c: Downgrade minimum needed Winsock version.
4766
4767 2008-09-23  Bruno Haible  <bruno@clisp.org>
4768
4769         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
4770         * doc/glibc-functions/*: Likewise.
4771
4772 2008-09-23  Simon Josefsson  <simon@josefsson.org>
4773
4774         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
4775         success.
4776
4777 2008-09-22  Eric Blake  <ebb9@byu.net>
4778             Bruno Haible  <bruno@clisp.org>
4779
4780         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
4781         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
4782         supply %A but mishandle pseudo-NaN.
4783         Reported by Simon Josefsson.
4784
4785 2008-09-21  Bruno Haible  <bruno@clisp.org>
4786
4787         * tests/test-lock.c (main): Tweak skip message.
4788         * tests/test-tls.c (main): Likewise.
4789
4790 2008-09-21  Bruno Haible  <bruno@clisp.org>
4791
4792         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
4793         whether 'struct sigaction' has sa_sigaction here...
4794         (gl_PREREQ_SIG_HANDLER_H): ... not here.
4795         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
4796
4797 2008-09-21  Bruno Haible  <bruno@clisp.org>
4798
4799         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
4800         section.
4801         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
4802         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
4803         the new section.
4804         (Support for obsolete systems lacking POSIX:2001): New section.
4805         (String handling <string.h>): Move strdup to the new section.
4806         Suggested by Simon Josefsson and Paolo Bonzini.
4807
4808 2008-09-21  Bruno Haible  <bruno@clisp.org>
4809
4810         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
4811         exponents in %e and %g results on 'long double'. Needed for mingw's
4812         improved *printf functions.
4813         * tests/test-vasprintf-posix.c (test_function): Likewise.
4814         * tests/test-snprintf-posix.h (test_function): Likewise.
4815         * tests/test-sprintf-posix.h (test_function): Likewise.
4816         Reported by Eric Blake.
4817
4818 2008-09-21  Bruno Haible  <bruno@clisp.org>
4819
4820         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
4821         * tests/test-sprintf-posix.h (test_function): Likewise.
4822
4823 2008-09-21  Bruno Haible  <bruno@clisp.org>
4824
4825         * modules/getpass (Depends-on): Add strdup-posix.
4826
4827         New module 'strdup-posix'.
4828         * modules/strdup-posix: New file.
4829         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
4830         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
4831         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
4832         REPLACE_STRDUP.
4833         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
4834         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
4835         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
4836         strdup-posix.
4837
4838         * modules/strdup (Depends-on): Remove malloc-posix.
4839
4840 2008-09-20  Bruno Haible  <bruno@clisp.org>
4841
4842         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
4843         Wildenhues.
4844
4845 2008-09-20  Bruno Haible  <bruno@clisp.org>
4846
4847         Ensure that wint_t gets defined on IRIX 5.3.
4848         * lib/wchar.in.h (wint_t): Define if not defined by the system.
4849         * lib/wctype.in.h (wint_t): Likewise.
4850         (__wctype_wint_t): Remove type.
4851         (isw*): Use wint_t instead of __wctype_wint_t.
4852         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
4853         * modules/wchar (Files): Add m4/wint_t.m4.
4854         (Makefile.am): Substitute HAVE_WINT_T.
4855         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
4856         * tests/test-wctype.c: Check that wint_t is defined.
4857         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
4858         * doc/posix-headers/wctype.texi: Likewise.
4859         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
4860
4861 2008-09-18  Bruno Haible  <bruno@clisp.org>
4862
4863         * gnulib-tool (func_exit): Update comment.
4864
4865 2008-09-18  Simon Josefsson  <simon@josefsson.org>
4866
4867         * modules/getaddrinfo (Depends-on): Remove strdup, this module
4868         assumes strdup exists and does not depend on strdup to return
4869         ENOMEM on out of memory conditions.
4870
4871 2008-09-18  Bruno Haible  <bruno@clisp.org>
4872
4873         * lib/vasnprintf.c (VASNPRINTF): When printing Â±0.0L in
4874         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
4875         digits for the exponent.
4876
4877 2008-09-18  Jim Meyering  <meyering@redhat.com>
4878             Bruno Haible  <bruno@clisp.org>
4879
4880         * lib/vasnprintf.c (decimal_point_char): Define also if
4881         NEED_PRINTF_INFINITE_LONG_DOUBLE.
4882
4883 2008-09-16  Bruno Haible  <bruno@clisp.org>
4884         and Eric Blake  <ebb9@byu.net>
4885
4886         vasnprintf: support Irix 5.3
4887         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
4888         that mishandle long double infinity.
4889         Reported by Tom G. Christensen.
4890
4891 2008-09-16  Bruno Haible  <bruno@clisp.org>
4892
4893         * doc/glibc-functions/scandir.texi: Mention the function is missing on
4894         Solaris 9.
4895         * doc/glibc-functions/alphasort.texi: Likewise.
4896         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
4897
4898 2008-09-16  Jim Meyering  <meyering@redhat.com>
4899
4900         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
4901         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
4902         a umask modification leak out of a subshell.  Otherwise, the
4903         opensolaris /bin/sh would be accepted and thus cause unwarranted
4904         failures in the coreutils test suite.
4905
4906 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
4907
4908         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
4909         to succeed.
4910
4911 2008-09-16  Jim Meyering  <meyering@redhat.com>
4912
4913         avoid spurious test failure when library is built without ACL support
4914         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
4915         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
4916         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
4917         * tests/test-copy-acl.sh: Likewise.
4918
4919 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4920
4921         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
4922         based on character occurrence counts.
4923
4924 2008-09-15  Eric Blake  <ebb9@byu.net>
4925
4926         tests: avoid some compiler warnings
4927         * tests/test-memchr.c (main): Pass NULL indirectly.
4928         * tests/test-closein.c (main): Avoid unused variable.
4929
4930 2008-09-15  Bruno Haible  <bruno@clisp.org>
4931
4932         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
4933         are missing on OpenBSD 4.0 individually.
4934         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
4935
4936 2008-09-15  Bruno Haible  <bruno@clisp.org>
4937
4938         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
4939         * doc/posix-functions/strerror.texi: Mention also Cygwin.
4940         * doc/posix-functions/perror.texi: Likewise.
4941         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
4942         is missing.
4943         Reported by Eric Blake.
4944
4945         * lib/errno.in.h: Use replacement values >= 2000.
4946         Reported by Eric Blake.
4947
4948 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4949
4950         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
4951         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
4952         limit.
4953         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
4954         compareseq was aborted.
4955
4956 2008-09-14  Bruno Haible  <bruno@clisp.org>
4957
4958         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
4959         yvec_edit_count.
4960         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
4961         (fstrcmp_bounded): Simplify result computation accordingly.
4962
4963 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4964
4965         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
4966         (fstrcmp): Define in terms of fstrcmp_bounded.
4967         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
4968         lower_bound argument.
4969         Return quickly if the result is certainly < lower_bound.
4970         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
4971
4972 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4973
4974         * lib/diffseq.h (EARLY_ABORT): New macro.
4975         (compareseq): Change return type to bool. Return true when EARLY_ABORT
4976         evaluates to true.
4977
4978 2008-09-14  Bruno Haible  <bruno@clisp.org>
4979
4980         * modules/perror-tests: New file.
4981         * tests/test-perror.sh: New file.
4982         * tests/test-perror.c: New file.
4983
4984         New module 'perror'.
4985         * lib/stdio.in.h (perror): New declaration.
4986         * lib/perror.c: New file.
4987         * m4/perror.m4: New file.
4988         * modules/perror: New file.
4989         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
4990         * doc/posix-functions/perror.texi: Mention the perror module.
4991         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
4992         REPLACE_PERROR.
4993         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
4994         REPLACE_PERROR.
4995
4996 2008-09-14  Bruno Haible  <bruno@clisp.org>
4997
4998         * modules/stdio (Makefile.am): Reorder to match the order in
4999         lib/stdio.in.h.
5000         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
5001
5002 2008-09-13  Bruno Haible  <bruno@clisp.org>
5003
5004         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
5005
5006 2008-09-13  Bruno Haible  <bruno@clisp.org>
5007
5008         Extend strerror to cover the added errno values.
5009         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
5010         (rpl_strerror): Provide error messages for the added errno values and
5011         for the WSA* values.
5012         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
5013         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
5014         strerror.
5015         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
5016         * modules/strerror (Depends-on): Add errno.
5017         * doc/posix-functions/strerror.texi: Document the change.
5018         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
5019         and EOVERFLOW.
5020
5021 2008-09-13  Bruno Haible  <bruno@clisp.org>
5022
5023         * modules/EOVERFLOW: Remove file.
5024         * m4/eoverflow.m4: Remove file.
5025         * modules/EOVERFLOW-tests: Remove file.
5026         * tests/test-EOVERFLOW.c: Remove file.
5027         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
5028         * modules/ftell (Depends-on): Likewise.
5029         * modules/getdelim (Depends-on): Likewise.
5030         * modules/getugroups (Depends-on): Likewise.
5031         * modules/poll (Depends-on): Likewise.
5032         * modules/snprintf (Depends-on): Likewise.
5033         * modules/sprintf-posix (Depends-on): Likewise.
5034         * modules/vasnprintf (Depends-on): Likewise.
5035         * modules/vasprintf (Depends-on): Likewise.
5036         * modules/vfprintf-posix (Depends-on): Likewise.
5037         * modules/vsnprintf (Depends-on): Likewise.
5038         * modules/vsprintf-posix (Depends-on): Likewise.
5039         * modules/xvasprintf (Depends-on): Likewise.
5040         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
5041         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
5042         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
5043         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
5044         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
5045         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
5046         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
5047         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
5048         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
5049         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
5050         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
5051         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
5052         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
5053         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
5054         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
5055         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
5056         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
5057         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
5058         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
5059         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
5060         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
5061         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
5062         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
5063         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
5064         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
5065         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
5066         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
5067         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
5068         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
5069         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
5070         * MODULES.html.sh: Remove EOVERFLOW.
5071         * NEWS: Mention the change.
5072
5073 2008-09-13  Bruno Haible  <bruno@clisp.org>
5074
5075         * modules/errno-tests: New file.
5076         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
5077
5078         * lib/errno.in.h: New file.
5079         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
5080         * modules/errno: New file.
5081         * doc/posix-headers/errno.texi: Update documentation.
5082         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
5083
5084 2008-09-13  Bruno Haible  <bruno@clisp.org>
5085
5086         * tests/test-poll.c: Use #if for native Windows, rather than testing
5087         __MSVCRT__.
5088
5089 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5090             Bruno Haible  <bruno@clisp.org>
5091
5092         * lib/glob.c: Don't include <pwd.h> on native Windows.
5093         (WINDOWS32): New macro.
5094         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
5095
5096 2008-09-13  Bruno Haible  <bruno@clisp.org>
5097
5098         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
5099         (ETIMEDOUT): Remove macro.
5100         (glthread_cond_timedwait_multithreaded): New declaration.
5101         (glthread_cond_timedwait): Use it.
5102         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
5103         (glthread_cond_timedwait_multithreaded): New function.
5104
5105 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
5106
5107         * modules/poll-tests: Do not check for io.h.
5108         * tests/test-poll.c: Check for __MSVCRT__ instead.
5109
5110 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
5111
5112         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
5113         * modules/poll-tests: Add inet_pton, stdbool, sockets.
5114         * tests/test-poll.c: Use them.  Use _pipe on Windows.
5115
5116 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
5117
5118         * modules/poll-tests: New.
5119         * tests/test-poll.c: New.
5120
5121 2008-09-12  Eric Blake  <ebb9@byu.net>
5122
5123         frexp: test for NetBSD failure on -0.0
5124         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
5125         not all, bugs from NetBSD 3.0 have been fixed.
5126         * doc/posix-functions/frexp.texi (frexp): Document bug.
5127         Reported by Thomas Klausner.
5128
5129         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
5130         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
5131         literal -0.0.
5132         Reported by Jonathan C. Patschke <jp@centtech.com>.
5133
5134 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5135
5136         * lib/glthread/cond.h: Use dummy implementation also if
5137         USE_WIN32_THREADS.
5138
5139 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5140
5141         * modules/fnmatch-posix (License): Change to LGPLv2+.
5142         * modules/fnmatch-gnu (License): Likewise.
5143
5144 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5145
5146         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
5147
5148 2008-09-11  Jim Meyering  <meyering@redhat.com>
5149
5150         * users.txt: Add gtk-vnc.
5151
5152 2008-09-08  Simon Josefsson  <simon@josefsson.org>
5153
5154         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
5155         rotate amounts.
5156
5157         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
5158         required for 16-bit and 8-bit rotates.
5159         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
5160         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
5161         UINT8_MAX instead of hard-coded constants.
5162         Suggested by Paul Eggert.
5163
5164 2008-09-07  Bruno Haible  <bruno@clisp.org>
5165
5166         * tests/test-striconveh.c (main): Check behaviour when converting from
5167         UTF-7.
5168
5169         Make striconveh work better with stateful encodings.
5170         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
5171         that iconv does not increment the inptr when returning -1/EINVAL.
5172
5173 2008-09-07  Bruno Haible  <bruno@clisp.org>
5174
5175         * build-aux/config.rpath: Update according to libtool-2.2.6.
5176         * build-aux/config.libpath: Likewise.
5177
5178 2008-09-06  Bruno Haible  <bruno@clisp.org>
5179
5180         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
5181         * lib/freadptr.c (freadptr): Likewise.
5182         * lib/freadseek.c (freadptrinc): Likewise.
5183         Reported by Simon Josefsson.
5184
5185 2008-09-06  Bruno Haible  <bruno@clisp.org>
5186
5187         * modules/freadptr (License): Change to LGPLv2+.
5188         * modules/freadseek (License): Likewise.
5189         Suggested by Eric Blake.
5190
5191         * modules/memchr2 (License): Change to LGPLv2+.
5192         Approved by Eric Blake.
5193
5194 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5195             Bruno Haible  <bruno@clisp.org>
5196
5197         Make gnulib-tool work with native 'sed' on AIX.
5198         * gnulib-tool (sed_noop): New variable.
5199         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
5200         func_add_or_update, func_create_testdir): Use it to initialize sed
5201         script variables.
5202         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
5203
5204 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
5205             Bruno Haible  <bruno@clisp.org>
5206
5207         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
5208         also works after #include directives.
5209
5210 2008-09-04  OndÅ™ej Vašík  <ovasik@redhat.com>
5211
5212         getdate.y: reject an out-of-range timezone value
5213         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
5214         the range [-24...+24].  When specified with only one or two digits,
5215         * tests/test-getdate.c: Tests for the fix.
5216         * doc/getdate.texi: Document this change.
5217
5218 2008-09-03  Bruno Haible  <bruno@clisp.org>
5219
5220         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
5221
5222 2008-09-02  Simon Josefsson  <simon@josefsson.org>
5223
5224         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
5225         <bruce.korb@gmail.com> with ideas from Ben Pfaff
5226         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
5227         Blake <ebb9@byu.net>.
5228
5229         * tests/test-bitrotate.c: Add more test vectors.
5230
5231 2008-09-02  Eric Blake  <ebb9@byu.net>
5232
5233         vasnprintf-posix: handle large precision via %.*d
5234         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
5235         when handling it ourselves.
5236         * tests/test-vasnprintf-posix.c (test_function): Add test.
5237         * tests/test-snprintf-posix.h (test_function): Likewise.
5238         * tests/test-sprintf-posix.h (test_function): Likewise.
5239         * tests/test-vasprintf-posix.c (test_function): Likewise.
5240         Reported by Alain Guibert.
5241
5242 2008-09-01  Eric Blake  <ebb9@byu.net>
5243
5244         c-stack: make configure-time check more robust
5245         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
5246         successful sigaction call.
5247         Reported by Tom G. Christensen.
5248
5249 2008-09-01  Bruno Haible  <bruno@clisp.org>
5250
5251         New module 'findprog-lgpl'.
5252         * modules/findprog-lgpl: New file.
5253         * lib/findprog-lgpl.c: New file.
5254         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
5255         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
5256         to decide whether to use strdup or xstrdup, concatenated_filename or
5257         xconcatenated_filename.
5258
5259 2008-09-01  Bruno Haible  <bruno@clisp.org>
5260
5261         Split module 'concat-filename' into 'concat-filename' (LGPL) and
5262         'xconcat-filename' (GPL).
5263         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
5264         (License): Change to LGPLv2+.
5265         * modules/xconcat-filename: New file.
5266         * lib/concat-filename.h (concatenated_filename): Change specification.
5267         (xconcatenated_filename): New declaration.
5268         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
5269         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
5270         memory situations.
5271         * lib/xconcat-filename.c: New file.
5272         * NEWS: Mention the change.
5273         * lib/findprog.c: Include concat-filename.h, not filename.h.
5274         (find_in_path): Use xconcatenated_filename instead of
5275         concatenated_filename.
5276         * lib/javacomp.c: Include concat-filename.h, not filename.h.
5277         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
5278         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
5279         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
5280         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
5281         instead of concatenated_filename.
5282         * lib/javaexec.c: Include concat-filename.h, not filename.h.
5283         (execute_java_class): Use xconcatenated_filename instead of
5284         concatenated_filename.
5285         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
5286         * modules/javacomp (Depends-on): Likewise.
5287         * modules/javaexec (Depends-on): Likewise.
5288
5289 2008-09-01  Bruno Haible  <bruno@clisp.org>
5290
5291         Split module 'filename' into 'filename' and 'concat-filename'.
5292         * modules/filename: Keep only lib/filename.h.
5293         (License): Change to LGPLv2+.
5294         * modules/concat-filename: New file, extracted from modules/filename.
5295         * lib/filename.h (concatenated_filename): Remove declaration.
5296         * lib/concat-filename.h: New file, extracted from lib/filename.h.
5297         * lib/concat-filename.c: Include concat-filename.h.
5298         * NEWS: Mention the change.
5299
5300 2008-09-01  Simon Josefsson  <simon@josefsson.org>
5301
5302         * lib/bitrotate.h (rotl8, rotr8): Add.
5303
5304         * modules/bitrotate (configure.ac): Need
5305         AC_REQUIRE([AC_C_INLINE]).
5306         (Description): Mention stdint.h.  Reported by Bruno Haible
5307         <bruno@clisp.org>.
5308
5309         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
5310         Paolo Bonzini <bonzini@gnu.org>.
5311
5312 2008-08-31  Bruno Haible  <bruno@clisp.org>
5313
5314         Assume Solaris specific bi-arch conventions on Solaris systems.
5315         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
5316         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
5317         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
5318         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
5319         like acl_libdirstem.
5320         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
5321         acl_libdirstem.
5322         * NEWS: Mention the change.
5323         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
5324
5325 2008-08-31  Jim Meyering  <meyering@redhat.com>
5326
5327         * lib/strftime.h: Add comments describing the two added arguments.
5328
5329         remove duplicate #include directives
5330         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
5331         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
5332
5333 2008-08-31  Bruno Haible  <bruno@clisp.org>
5334
5335         New module 'sigpipe-die'.
5336         * modules/sigpipe-die: New file.
5337         * lib/sigpipe-die.h: New file.
5338         * lib/sigpipe-die.c: New file.
5339         * MODULES.html.sh (Signal handling): Add sigpipe-die.
5340
5341 2008-08-31  Bruno Haible  <bruno@clisp.org>
5342
5343         Don't override previously installed signal handlers.
5344         * lib/fatal-signal.c (saved_sigactions): New variable.
5345         (uninstall_handlers): Reset the signal to the saved handler, not
5346         to SIG_DFL (except when ignored).
5347         (install_handlers): Save the previous handlers.
5348
5349 2008-08-30  Bruno Haible  <bruno@clisp.org>
5350
5351         * gnulib-tool (func_reset_sigpipe): New function.
5352         (func_get_automake_snippet, func_modules_transitive_closure,
5353         func_import): Invoke it before a join command that reads from stdin,
5354         to avoid "echo: write error: Broken pipe" error messages on stderr.
5355         Reported by Sam Steingold <sds@gnu.org>.
5356
5357 2008-08-30  Bruno Haible  <bruno@clisp.org>
5358
5359         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
5360         Code copied from m4/open.m4.
5361         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
5362         access and the filename ends in a slash. Code copied from lib/open.c.
5363         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
5364         * tests/test-fopen.c (main): Check against bug with trailing slash.
5365
5366 2008-08-29  Bruno Haible  <bruno@clisp.org>
5367
5368         Avoid some "gcc -pedantic" warnings.
5369         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
5370         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
5371         * lib/dirent.in.h: Likewise.
5372         * lib/fcntl.in.h: Likewise.
5373         * lib/float.in.h: Likewise.
5374         * lib/iconv.in.h: Likewise.
5375         * lib/inttypes.in.h: Likewise.
5376         * lib/locale.in.h: Likewise.
5377         * lib/math.in.h: Likewise.
5378         * lib/netinet_in.in.h: Likewise.
5379         * lib/search.in.h: Likewise.
5380         * lib/signal.in.h: Likewise.
5381         * lib/stdarg.in.h: Likewise.
5382         * lib/stdint.in.h: Likewise.
5383         * lib/stdio.in.h: Likewise.
5384         * lib/stdlib.in.h: Likewise.
5385         * lib/string.in.h: Likewise.
5386         * lib/strings.in.h: Likewise.
5387         * lib/sys_select.in.h: Likewise.
5388         * lib/sys_socket.in.h: Likewise.
5389         * lib/sys_stat.in.h: Likewise.
5390         * lib/sys_time.in.h: Likewise.
5391         * lib/sysexits.in.h: Likewise.
5392         * lib/time.in.h: Likewise.
5393         * lib/unistd.in.h: Likewise.
5394         * lib/wchar.in.h: Likewise.
5395         * lib/wctype.in.h: Likewise.
5396         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
5397         * modules/fchdir (Makefile.am): Likewise.
5398         * modules/fcntl (Makefile.am): Likewise.
5399         * modules/float (Makefile.am): Likewise.
5400         * modules/iconv_open (Makefile.am): Likewise.
5401         * modules/inttypes (Makefile.am): Likewise.
5402         * modules/locale (Makefile.am): Likewise.
5403         * modules/math (Makefile.am): Likewise.
5404         * modules/netinet_in (Makefile.am): Likewise.
5405         * modules/search (Makefile.am): Likewise.
5406         * modules/signal (Makefile.am): Likewise.
5407         * modules/stdarg (Makefile.am): Likewise.
5408         * modules/stdint (Makefile.am): Likewise.
5409         * modules/stdio (Makefile.am): Likewise.
5410         * modules/stdlib (Makefile.am): Likewise.
5411         * modules/string (Makefile.am): Likewise.
5412         * modules/strings (Makefile.am): Likewise.
5413         * modules/sys_select (Makefile.am): Likewise.
5414         * modules/sys_socket (Makefile.am): Likewise.
5415         * modules/sys_stat (Makefile.am): Likewise.
5416         * modules/sys_time (Makefile.am): Likewise.
5417         * modules/sysexits (Makefile.am): Likewise.
5418         * modules/time (Makefile.am): Likewise.
5419         * modules/unistd (Makefile.am): Likewise.
5420         * modules/wchar (Makefile.am): Likewise.
5421         * modules/wctype (Makefile.am): Likewise.
5422         Reported by Reuben Thomas <rrt@sc3d.org>.
5423
5424 2008-08-29  Bruno Haible  <bruno@clisp.org>
5425
5426         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
5427         any more.
5428
5429 2008-08-29  Simon Josefsson  <simon@josefsson.org>
5430
5431         * MODULES.html.sh (Misc): Add bitrotate.
5432
5433         * modules/bitrotate: New file.
5434
5435         * lib/bitrotate.h: New file.
5436
5437         * modules/bitrotate-tests: New file.
5438
5439         * tests/test-bitrotate.c: New file.
5440
5441         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
5442         on the bitrotate module.
5443
5444         * lib/arctwo.c: Use new bitrotate module.
5445
5446 2008-08-29  Jim Meyering  <meyering@redhat.com>
5447
5448         bootstrap: merge changes from coreutils
5449         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
5450         of copied files.  Remove a kludge, now that this is fixed.
5451         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
5452         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
5453         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
5454
5455 2008-08-29  Bruno Haible  <bruno@clisp.org>
5456
5457         * MODULES.html.sh: Remove --cvs-urls option.
5458
5459 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
5460
5461         maint.mk: adjust to file name change
5462         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
5463
5464 2008-08-28  Jim Meyering  <meyering@redhat.com>
5465
5466         * modules/getndelim2 (License): Relicense to LGPLv2+.
5467         Approved by Richard Stallman for the version of 1995, and by
5468         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
5469
5470 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
5471
5472         * lib/getdelim.c (flockfile, funlockfile): Make all of them
5473         dummy if one is not available.  Do not touch them if
5474         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
5475         (getc_maybe_unlocked): New.
5476         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
5477
5478 2008-08-26  Eric Blake  <ebb9@byu.net>
5479
5480         doc/INSTALL: resync from autoconf
5481         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
5482         (INSTALL_PRELUDE): Delete; this is done more efficiently by
5483         moving...
5484         * install.texi [!autoconf]: ...here.  Resync from autoconf.
5485         * INSTALL: Regenerate.
5486         * INSTALL.ISO: New file.
5487         * INSTALL.UTF-8: Likewise.
5488
5489 2008-08-26  Jim Meyering  <meyering@redhat.com>
5490
5491         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
5492         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
5493         these definitions conditional, so that they may be overridden, too.
5494
5495 2008-08-26  Bruno Haible  <bruno@clisp.org>
5496
5497         Generate INSTALL file variants with prettier quotes.
5498         * doc/Makefile (INSTALL_PRELUDE): New macro.
5499         (INSTALL): Use it.
5500         (INSTALL.ISO, INSTALL.UTF-8): New rules.
5501
5502 2008-08-26  Bruno Haible  <bruno@clisp.org>
5503
5504         Run makeinfo in an English locale.
5505         * doc/Makefile (MAKEINFO): New variable.
5506
5507 2008-08-26  Bruno Haible  <bruno@clisp.org>
5508
5509         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
5510         Suggested by Eric Blake.
5511
5512 2008-08-25  Bruno Haible  <bruno@clisp.org>
5513
5514         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
5515
5516 2008-08-25  Eric Blake  <ebb9@byu.net>
5517
5518         c-stack: test that stack overflow can be caught
5519         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
5520         that platform allows handling stack overflow; at least OS/2 EMX
5521         has sigaltstack, but crashes before transferring control to
5522         handler on stack overflow.
5523         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
5524         check for HAVE_STACK_OVERFLOW_HANDLING.
5525         Reported by Elbert Pol.
5526
5527 2008-08-25  Bruno Haible  <bruno@clisp.org>
5528
5529         * doc/posix-functions/strftime.texi: Fix description of strftime
5530         module.
5531
5532 2008-08-24  Bruno Haible  <bruno@clisp.org>
5533
5534         * tests/uniwidth/test-uc_width2.c: New file.
5535         * tests/uniwidth/test-uc_width2.sh: New file.
5536         * modules/uniwidth/width-tests (Files): Add the new files.
5537         (TESTS): Add uniwidth/test-uc_width2.sh.
5538         (TESTS_ENVIRONMENT): New variable.
5539         (check_PROGRAMS): Add test-uc_width2.
5540         (test_uc_width2_SOURCES): New variable.
5541
5542         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
5543         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
5544         not 0x00AB.
5545         Reported by Alexander V. Lukyanov <lav@netis.ru>.
5546
5547 2008-08-22  Eric Blake  <ebb9@byu.net>
5548
5549         test-lock, test-tls: mention why a test is skipped
5550         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
5551         skipped.
5552         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
5553
5554         count-one-bits: relax license
5555         * modules/count-one-bits (License): Relicense to LGPLv2+.
5556         Suggested by Ludovic Courtès, approved by Ben Pfaff.
5557
5558 2008-08-22  Andreas Schwab  <schwab@suse.de>
5559
5560         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
5561         Remove spurious space in assignment.
5562
5563 2008-08-21  Simon Josefsson  <simon@josefsson.org>
5564
5565         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
5566         Paul Eggert <eggert@CS.UCLA.EDU>.
5567
5568 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
5569
5570         * modules/gettext: Add m4/threadlib.m4.
5571
5572 2008-08-19  Eric Blake  <ebb9@byu.net>
5573
5574         test-c-stack: fix compilation failure on FreeBSD 5.0
5575         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
5576         headers before <sys/resource.h>.
5577         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
5578         the bug.
5579         Reported by Nelson H. F. Beebe.
5580
5581         strverscmp: migrate from "strverscmp.h" to <string.h>
5582         * modules/string (Makefile.am): Add new hooks.
5583         * modules/strverscmp (Files): Remove strverscmp.h.
5584         (Depends-on): Add string.
5585         (configure.ac): Add indicator.
5586         (Include): Mention new header.
5587         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
5588         defaults.
5589         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
5590         results.
5591         * lib/strverscmp.h: Delete.
5592         * lib/string.in.h (strverscmp): Provide declaration, when needed.
5593         * tests/test-strverscmp.c (includes): Adjust client.
5594         * lib/check-version.c (includes): Likewise.
5595         * NEWS: Document the change.
5596
5597         strverscmp: add unit test
5598         * modules/strverscmp-tests: New file.
5599         * tests/test-strverscmp.c: Likewise.
5600
5601 2008-08-19  Simon Josefsson  <simon@josefsson.org>
5602
5603         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
5604         regarding Windows crypto stuff, from Mono.
5605
5606 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
5607
5608         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
5609         if present, for intel RND.  Return error on failures.
5610
5611 2008-08-18  Ben Pfaff  <blp@gnu.org>
5612
5613         gitlog-to-changelog: give better diagnostic for failed pipe-open
5614         * build-aux/gitlog-to-changelog: Improve error message: suggest
5615         that the version of Git may be too old.
5616
5617 2008-08-18  Simon Josefsson  <simon@josefsson.org>
5618
5619         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
5620         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
5621
5622 2008-08-18  Bruno Haible  <bruno@clisp.org>
5623
5624         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
5625         pthread_in_use().
5626
5627 2008-08-18  Bruno Haible  <bruno@clisp.org>
5628
5629         * lib/glthread/threadlib.c: Include <pthread.h>.
5630
5631 2008-08-18  Bruno Haible  <bruno@clisp.org>
5632
5633         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
5634         glthread_recursive_lock_* macros.
5635         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
5636         Fix syntax error.
5637
5638 2008-08-18  Bruno Haible  <bruno@clisp.org>
5639
5640         * lib/glthread/thread.c: Avoid forcing a context switch right after
5641         thread creation.
5642
5643 2008-08-17  Bruno Haible  <bruno@clisp.org>
5644
5645         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
5646         * lib/glthread/thread.h: Provide Win32 specific implementation.
5647         * modules/thread (Files): Add lib/glthread/thread.c.
5648         (Depends-on): Add lock.
5649         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
5650
5651 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5652
5653         New module 'yield'.
5654         * modules/yield: New file.
5655         * lib/glthread/yield.h: New file.
5656         * m4/yield.m4: New file.
5657         * MODULES.html.sh (Multithreading): Add yield.
5658
5659 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5660
5661         New module 'thread'.
5662         * modules/thread: New file.
5663         * lib/glthread/thread.h: New file.
5664         * m4/thread.m4: New file.
5665         * MODULES.html.sh (Multithreading): Add thread.
5666
5667 2008-08-17  Bruno Haible  <bruno@clisp.org>
5668
5669         * lib/glthread/lock.h: Include <stdlib.h> always.
5670         * lib/glthread/tls.h: Likewise.
5671         * lib/glthread/cond.h: Likewise.
5672
5673 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5674
5675         New module 'cond'.
5676         * modules/cond: New file.
5677         * lib/glthread/cond.h: New file.
5678         * lib/glthread/cond.c: New file.
5679         * m4/cond.m4: New file.
5680         * MODULES.html.sh (Multithreading): Add cond.
5681
5682 2008-08-16  Eric Blake  <ebb9@byu.net>
5683
5684         c-stack: fix regression on Irix 5.3 from 2008-06-21
5685         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
5686         sa_sigaction...
5687         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
5688         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
5689         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
5690         * modules/signal (Makefile.am): Use the value.
5691         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
5692         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
5693         * doc/posix-headers/signal.texi (signal.h): Document this
5694         portability issue.
5695         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
5696         Reported by Tom G. Christensen.
5697
5698 2008-08-17  Bruno Haible  <bruno@clisp.org>
5699
5700         New module 'threadlib'.
5701         * modules/threadlib: New file.
5702         * lib/glthread/threadlib.c: New file, extracted from
5703         lib/glthread/lock.c.
5704         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
5705         functions.
5706         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
5707         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
5708         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
5709         macros.
5710         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
5711         (gl_DISABLE_THREADS): Remove macro.
5712         * modules/lock (Files): Remove build-aux/config.rpath.
5713         (Depends-on): Remove havelib. Add threadlib.
5714         (configure.ac-early): Remove section.
5715         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
5716         * modules/tls (Depends-on): Remove lock. Add threadlib.
5717         (Link): New section, copied from threadlib.
5718         * MODULES.html.sh (Multithreading): Add threadlib.
5719
5720 2008-08-14  Bruno Haible  <bruno@clisp.org>
5721
5722         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
5723         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
5724         glthread_rwlock_unlock, glthread_rwlock_destroy,
5725         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
5726         glthread_recursive_lock_destroy): Define as macros always.
5727         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
5728         glthread_lock_lock.
5729         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
5730         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
5731         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
5732         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
5733         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
5734         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
5735         (glthread_recursive_lock_lock_func): Renamed from
5736         glthread_recursive_lock_lock.
5737         (glthread_recursive_lock_unlock_func): Renamed from
5738         glthread_recursive_lock_unlock.
5739         (glthread_recursive_lock_destroy_func): Renamed from
5740         glthread_recursive_lock_destroy.
5741
5742 2008-08-14  Bruno Haible  <bruno@clisp.org>
5743
5744         * lib/glthread/lock.h: Renamed from lib/lock.h.
5745         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
5746         * lib/glthread/tls.h: Renamed from lib/tls.h.
5747         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
5748         * lib/fstrcmp.c: Update includes.
5749         * lib/strsignal.c: Update includes.
5750         * modules/lock (Files, Makefile.am): Update.
5751         (Include): Change to "glthread/lock.h".
5752         * modules/tls (Files, Makefile.am): Update.
5753         (Include): Change to "glthread/tls.h".
5754         * tests/test-lock.c: Update includes.
5755         * tests/test-tls.c: Update includes.
5756         * NEWS: Mention the renamed header files.
5757
5758 2008-08-11  Jim Meyering  <meyering@redhat.com>
5759
5760         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
5761
5762 2008-08-11  Eric Blake  <ebb9@byu.net>
5763
5764         test-c-stack: avoid C99-ism
5765         * tests/test-c-stack.c (main): Fix whitespace, move declaration
5766         before statement.
5767         Reported by Alain Guibert.
5768
5769 2008-08-10  Jim Meyering  <meyering@redhat.com>
5770
5771         ensure that return value of uinttostr et al are not ignored
5772         * lib/inttostr.h (__GNUC_PREREQ): Define.
5773         (__attribute_warn_unused_result__): Define.
5774         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
5775
5776 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
5777
5778         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
5779         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
5780
5781 2008-08-07  Jim Meyering  <meyering@redhat.com>
5782
5783         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
5784
5785         * modules/mkstemp (License): Relicense under LGPLv2+.
5786         * modules/tempname (License): Likewise.
5787
5788 2008-08-06  Bruno Haible  <bruno@clisp.org>
5789
5790         * lib/poll.c (poll): Further micro-optimization.
5791
5792 2008-08-06  Jim Meyering  <meyering@redhat.com>
5793
5794         inet_pton.c: use locale-independent tolower
5795         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
5796         (inet_pton6): Use c_tolower rather than tolower.
5797         * modules/inet_pton (Depends-on): Add c-ctype.
5798
5799 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
5800
5801         * lib/poll.c (poll): Avoid division when timeout is 0, cache
5802         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
5803
5804 2008-08-06  Jim Meyering  <meyering@redhat.com>
5805
5806         * modules/inet_pton (License): Relicense under LGPLv2+.
5807
5808 2008-08-03  Bruno Haible  <bruno@clisp.org>
5809
5810         Additional non-aborting API for lock and tls.
5811         * lib/lock.h: Include <errno.h>.
5812         (glthread_lock_init): New macro/function.
5813         (gl_lock_init): Define as wrapper around glthread_lock_init.
5814         (glthread_lock_lock): New macro/function.
5815         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
5816         (glthread_lock_unlock): New macro/function.
5817         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
5818         (glthread_lock_destroy): New macro/function.
5819         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
5820         (glthread_rwlock_init): New macro/function.
5821         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
5822         (glthread_rwlock_rdlock): New macro/function.
5823         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
5824         (glthread_rwlock_wrlock): New macro/function.
5825         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
5826         (glthread_rwlock_unlock): New macro/function.
5827         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
5828         (glthread_rwlock_destroy): New macro/function.
5829         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
5830         (glthread_recursive_lock_init): New macro/function.
5831         (gl_recursive_lock_init): Define as wrapper around
5832         glthread_recursive_lock_init.
5833         (glthread_recursive_lock_lock): New macro/function.
5834         (gl_recursive_lock_lock): Define as wrapper around
5835         glthread_recursive_lock_lock.
5836         (glthread_recursive_lock_unlock): New macro/function.
5837         (gl_recursive_lock_unlock): Define as wrapper around
5838         glthread_recursive_lock_unlock.
5839         (glthread_recursive_lock_destroy): New macro/function.
5840         (gl_recursive_lock_destroy): Define as wrapper around
5841         glthread_recursive_lock_destroy.
5842         (glthread_once): New macro/function.
5843         (gl_once): Define as wrapper around glthread_once.
5844         Update function declarations.
5845         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
5846         glthread_rwlock_init. Return error code.
5847         (glthread_rwlock_rdlock_multithreaded): Renamed from
5848         glthread_rwlock_rdlock. Return error code.
5849         (glthread_rwlock_wrlock_multithreaded): Renamed from
5850         glthread_rwlock_wrlock. Return error code.
5851         (glthread_rwlock_unlock_multithreaded): Renamed from
5852         glthread_rwlock_unlock. Return error code.
5853         (glthread_rwlock_destroy_multithreaded): Renamed from
5854         glthread_rwlock_destroy. Return error code.
5855         (glthread_recursive_lock_init_multithreaded): Renamed from
5856         glthread_recursive_lock_init. Return error code.
5857         (glthread_recursive_lock_lock_multithreaded): Renamed from
5858         glthread_recursive_lock_lock. Return error code.
5859         (glthread_recursive_lock_unlock_multithreaded): Renamed from
5860         glthread_recursive_lock_unlock. Return error code.
5861         (glthread_recursive_lock_destroy_multithreaded): Renamed from
5862         glthread_recursive_lock_destroy. Return error code.
5863         (glthread_once_call): Make static.
5864         (glthread_once_multithreaded): Renamed from glthread_once.
5865         * lib/tls.h: Include <errno.h>.
5866         (glthread_tls_key_init): New macro/function.
5867         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
5868         (glthread_tls_set): New macro/function.
5869         (gl_tls_set): Define as wrapper around glthread_tls_set.
5870         (glthread_tls_key_destroy): New macro/function.
5871         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
5872         Update function declarations.
5873         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
5874         glthread_tls_get.
5875         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
5876
5877 2008-08-04  Eric Blake  <ebb9@byu.net>
5878
5879         gnumakefile: use space, not TAB, outside of targets
5880         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
5881
5882 2008-08-02  Jim Meyering  <meyering@redhat.com>
5883
5884         getdate.y: avoid locale-dependent date parsing failure
5885         In Turkish locales, getdate would fail to recognize keywords
5886         containing a lowercase "i".  The solution is not to rely on
5887         locale-sensitive case-conversion.
5888         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
5889         (lookup_word): Use c_toupper in place of toupper.
5890         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
5891         Reported by Vefa Bicakci <bicave@superonline.com> in
5892         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
5893         * modules/getdate (Depends-on): Add c-ctype.
5894
5895 2008-08-02  Bruno Haible  <bruno@clisp.org>
5896
5897         * gnulib-tool (func_import): When updating or creating a .gitignore
5898         file, prepend each added line with a slash, and ignore leading slashes
5899         from the existing lines.
5900         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
5901
5902 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5903
5904         Portability fix for GNU make 3.79.1.
5905         * top/GNUmakefile: Avoid 'else COND', which older GNU make
5906         versions do not understand.
5907
5908 2008-08-01  Bruno Haible  <bruno@clisp.org>
5909
5910         Work around bug of HP-UX 10.20 cc with -0.0 literal.
5911         * tests/test-isnanf.h (zero): New variable.
5912         (main): Avoid literal -0.0f.
5913         * tests/test-isnand.h (zero): New variable.
5914         (main): Avoid literal -0.0.
5915         * tests/test-isnanl.h (zero): New variable.
5916         (main): Avoid literal -0.0L.
5917         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
5918         (test_float, test_double, test_long_double): Avoid literals -0.0f,
5919         -0.0, -0.0L.
5920         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
5921         (test_signbitd): Avoid literal -0.0.
5922         (test_signbitl): Avoid literal -0.0L.
5923         * tests/test-ceilf1.c (zero): New variable.
5924         (main): Avoid literal -0.0f.
5925         * tests/test-ceill.c (zero): New variable.
5926         (main): Avoid literal -0.0L.
5927         * tests/test-floorf1.c (zero): New variable.
5928         (main): Avoid literal -0.0f.
5929         * tests/test-floorl.c (zero): New variable.
5930         (main): Avoid literal -0.0L.
5931         * tests/test-roundf1.c (zero): New variable.
5932         (main): Avoid literal -0.0f.
5933         * tests/test-round1.c (zero): New variable.
5934         (main): Avoid literal -0.0.
5935         * tests/test-roundl.c (zero): New variable.
5936         (main): Avoid literal -0.0L.
5937         * tests/test-truncf1.c (zero): New variable.
5938         (main): Avoid literal -0.0f.
5939         * tests/test-trunc1.c (zero): New variable.
5940         (main): Avoid literal -0.0.
5941         * tests/test-truncl.c (zero): New variable.
5942         (main): Avoid literal -0.0L.
5943         * tests/test-frexp.c (zero): New variable.
5944         (main): Avoid literal -0.0.
5945         * tests/test-frexpl.c (zero): New variable.
5946         (main): Avoid literal -0.0L.
5947         * tests/test-ldexpl.c (zero): New variable.
5948         (main): Avoid literal -0.0L.
5949         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
5950         (zerod, zerol): New variables.
5951         (test_function): Avoid literals -0.0, -0.0L.
5952         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
5953         (zerod, zerol): New variables.
5954         (test_function): Avoid literals -0.0, -0.0L.
5955         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
5956         (zerod, zerol): New variables.
5957         (test_function): Avoid literals -0.0, -0.0L.
5958         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
5959         (zerod, zerol): New variables.
5960         (test_function): Avoid literals -0.0, -0.0L.
5961         * tests/test-strtod.c (zero): New variable.
5962         (main): Avoid literal -0.0.
5963         Reported by Jonathan C. Patschke <jp@centtech.com>.
5964
5965 2008-07-31  Jim Meyering  <meyering@redhat.com>
5966
5967         sha256.h: correct definition of SHA224_DIGEST_SIZE
5968         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
5969         Reported by Paulie Pena IV <paulie4@gmail.com>.
5970         Define as 224 / 8, rather than as a literal.
5971         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
5972         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
5973         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
5974
5975 2008-07-31  Bruno Haible  <bruno@clisp.org>
5976
5977         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
5978         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
5979         Reported by Jonathan Patschke <jp@centtech.com>.
5980
5981 2008-07-31  Bruno Haible  <bruno@clisp.org>
5982
5983         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
5984         Reported by Paolo Bonzini <bonzini@gnu.org>.
5985
5986 2008-07-30  Eric Blake  <ebb9@byu.net>
5987
5988         test-strtod: allow compilation without -lm
5989         * tests/test-strtod.c (main): Avoid link dependence on fabs.
5990         Reported by Dennis Clarke <blastwave@gmail.com>.
5991
5992 2008-07-28  Jim Meyering  <meyering@redhat.com>
5993
5994         bootstrap: work also when there are no .po files in po/
5995         * build-aux/bootstrap (update_po_files): Complete the change
5996         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
5997
5998 2008-07-27  Jim Meyering  <meyering@redhat.com>
5999
6000         * users.txt: Add zile.
6001
6002 2008-07-26  Ben Pfaff  <blp@gnu.org>
6003
6004         Add missing dependencies on new m4/exponent[fdl].m4 files.
6005         * modules/isnanf-nolibm: Add m4/exponentf.m4.
6006         * modules/isnand-nolibm: Add m4/exponentd.m4.
6007         * modules/isnanl-nolibm: Add m4/exponentl.m4.
6008         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
6009         m4/isnan[fdl].m4, because the macros actually used moved.
6010         Reported by Jim Meyering.
6011
6012 2008-07-14  Ben Pfaff  <blp@gnu.org>
6013
6014         Add isinf module.
6015         * lib/isinf.c: New file.
6016         * lib/math.in.h: Define isinf macro if we have decided to replace
6017         it.
6018         * m4/isinf.m4: New file.
6019         * m4/math_h.m4: Initialize and substitute variables for isinf
6020         module.
6021         * modules/isinf: New file.
6022         * modules/isinf-tests: New file.
6023         * modules/math: Add substitutions for new module.
6024         * tests/test-isinf.c: New file.
6025         * doc/posix-functions/isinf.texi: Mention new module.
6026         * MODULES.html.sh: Mention new module.
6027
6028 2008-07-14  Ben Pfaff  <blp@gnu.org>
6029
6030         Factor out some macros for use by additional modules.
6031         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
6032         exponentf.m4.
6033         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
6034         exponentd.m4.
6035         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
6036         file exponentl.m4.
6037         * m4/exponentf.m4: New file.
6038         * m4/exponentd.m4: New file.
6039         * m4/exponentl.m4: New file.
6040         * modules/isnanf: Use new file m4/exponentf.m4.
6041         * modules/isnand: Use new file m4/exponentd.m4.
6042         * modules/isnanl: Use new file m4/exponentl.m4.
6043
6044 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
6045
6046         mktime.c: normalize tp->tm_isdst value to -1/0/1.
6047         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
6048         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
6049         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
6050
6051         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
6052         readlink on platforms without PATH_MAX.
6053
6054 2008-07-21  Eric Blake  <ebb9@byu.net>
6055
6056         Warn, not fail, on stale version.
6057         * top/GNUmakefile (_curr-ver): Tone down previous patch.
6058
6059         Don't allow installation with stale devel version number.
6060         * top/GNUmakefile (_is-install-target): New macro.
6061         (_curr-ver): Forbid installation with stale version number.
6062
6063 2008-07-20  Bruno Haible  <bruno@clisp.org>
6064
6065         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
6066         TESTS_ENVIRONMENT.
6067         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
6068
6069 2008-07-20  Bruno Haible  <bruno@clisp.org>
6070
6071         * lib/c-stack.h (c_stack_action): Add documentation.
6072         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
6073
6074 2008-07-20  Bruno Haible  <bruno@clisp.org>
6075
6076         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
6077         * modules/readlink (License): Likewise.
6078
6079 2008-07-17  Eric Blake  <ebb9@byu.net>
6080
6081         * modules/c-stack (Link): Fix typo.
6082
6083         Make c-stack use libsigsegv, when available.
6084         * modules/c-stack (Depends-on): Add libsigsegv.
6085         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
6086         needed.
6087         * lib/c-stack.c (SIGSTKSZ): Define fallback.
6088         (segv_handler, overflow_handler, c_stack_action)
6089         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
6090         implementation when libsigsegv is available, but only when using
6091         the library is necessary.
6092         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
6093         comment, explaining why XSI check fails on Linux.
6094         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
6095         * tests/test-c-stack2.sh: Tweak skip message.
6096         * NEWS: Document new link-time requirements.
6097
6098 2008-07-16  Eric Blake  <ebb9@byu.net>
6099
6100         c-stack: Expose false positives when not using libsigsegv.
6101         * modules/c-stack-tests (Files): Expand test.
6102         * tests/test-c-stack.c (main): Add means to conditionally trigger
6103         non-overflow SIGSEGV.
6104         * tests/test-c-stack2.sh: New file.
6105
6106 2008-07-14  Bruno Haible  <bruno@clisp.org>
6107
6108         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
6109         Reported by Eric Blake.
6110
6111 2008-07-14  Sam Steingold  <sds@gnu.org>
6112             Bruno Haible  <bruno@clisp.org>
6113
6114         New module libsigsegv.
6115         * modules/libsigsegv: New file.
6116         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
6117         modifications.
6118         * MODULES.html.sh (Signal handling): New section.
6119
6120 2008-07-14  Bruno Haible  <bruno@clisp.org>
6121
6122         * modules/unictype/ctype-* (Description): Add the word "function".
6123         Improves the resulting doc in MODULES.html.
6124
6125 2008-07-12  Ben Pfaff  <blp@gnu.org>
6126
6127         Add longlong module.
6128         * modules/longlong: New file.
6129
6130 2008-07-12  Bruno Haible  <bruno@clisp.org>
6131
6132         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
6133         to empty.
6134
6135 2008-07-10  Ben Pfaff  <blp@gnu.org>
6136
6137         Add isnan module.
6138         * doc/posix-functions/isnan.texi: Mention new module.
6139         * lib/math.in.h: Define isnan macro if we have decided to replace
6140         it.
6141         * m4/isnan.m4: New file.
6142         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
6143         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
6144         also.
6145         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
6146         redundancy.
6147         * m4/math_h.m4: Initialize and substitute variables for isnan
6148         module.
6149         * modules/isnan: New file.
6150         * modules/isnan-tests: New file.
6151         * modules/math: Add substitutions for new module.
6152         * tests/test-isnan.c: New file.
6153         * MODULES.html.sh: Mention new module.
6154
6155 2008-07-10  Ben Pfaff  <blp@gnu.org>
6156
6157         Add isnanf module.
6158         * lib/isnanf.m4: New file.
6159         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
6160         (gl_HAVE_ISNANF_IN_LIBM): New macro.
6161         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
6162         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
6163         * modules/isnanf: New file.
6164         * modules/isnanf-tests: New file.
6165         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
6166         files.
6167         * tests/test-isnanf-nolibm.c: factored most of its contents into
6168         new file tests/test-isnanf.h.
6169         * tests/test-isnanf.h: New file.
6170         * tests/test-isnanf.c: New file.
6171         * MODULES.html.sh: Mention new module.
6172         * doc/glibc-functions/isnanf.texi: Mention new module.
6173
6174 2008-07-10  Ben Pfaff  <blp@gnu.org>
6175
6176         Add isnand module.
6177         * lib/isnand.h: New file.
6178         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
6179         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
6180         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
6181         functionality also.
6182         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
6183         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
6184         (gl_HAVE_ISNAND_IN_LIBM): New macro.
6185         * modules/isnand: New file.
6186         * modules/isnand-tests: New file.
6187         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
6188         files.
6189         * tests/test-isnand-nolibm.c: factored most of its contents into
6190         new file tests/test-isnand.h.
6191         * tests/test-isnand.h: New file.
6192         * tests/test-isnand.c: New file.
6193         * MODULES.html.sh: Mention new module.
6194
6195 2008-07-10  Ben Pfaff  <blp@gnu.org>
6196
6197         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
6198         * lib/isnand.h: Rename lib/isnand-nolibm.h.
6199         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
6200         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
6201         * modules/isnanf-nolibm: Update references to renamed files.
6202         * modules/isnand-nolibm: Likewise.
6203         * modules/isnanf-nolibm-tests: Likewise.
6204         * modules/isnand-nolibm-tests: Likewise.
6205         * lib/frexp.c: Likewise.
6206         * lib/isfinite.c: Likewise.
6207         * lib/signbitd.c: Likewise.
6208         * lib/signbitf.c: Likewise.
6209         * lib/vasnprintf.c: Likewise.
6210         * tests/test-ceilf1.c: Likewise.
6211         * tests/test-ceilf2.c: Likewise.
6212         * tests/test-floorf1.c: Likewise.
6213         * tests/test-floorf2.c: Likewise.
6214         * tests/test-frexp.c: Likewise.
6215         * tests/test-round1.c: Likewise.
6216         * tests/test-round2.c: Likewise.
6217         * tests/test-roundf1.c: Likewise.
6218         * tests/test-strtod.c: Likewise.
6219         * tests/test-trunc1.c: Likewise.
6220         * tests/test-trunc2.c: Likewise.
6221         * tests/test-truncf1.c: Likewise.
6222         * tests/test-truncf2.c: Likewise.
6223         * NEWS: Mention the renamed header files.
6224
6225 2008-07-11  Jim Meyering  <meyering@redhat.com>
6226
6227         vc-list-files: make the last-resort awk code more portable
6228         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
6229         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
6230         does not support it.
6231
6232 2008-07-10  Eric Blake  <ebb9@byu.net>
6233
6234         Work with tar's bootstrap.
6235         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
6236         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
6237         an m4 comment.
6238
6239 2008-07-09  Jim Meyering  <meyering@redhat.com>
6240
6241         posix-shell.m4: fix typo that made this test malfunction
6242         * m4/posix-shell.m4: Remove capitalization in variable name.
6243
6244 2008-07-08  Bruno Haible  <bruno@clisp.org>
6245
6246         * m4/onceonly.m4: Update comments.
6247         Reported by Ben Pfaff <blp@cs.stanford.edu>.
6248
6249 2008-07-04  Jim Meyering  <meyering@redhat.com>
6250
6251         * users.txt: Add vc-dwim.
6252         (bison, coreutils): Use the gitweb URL.
6253
6254 2008-07-03  Jim Meyering  <meyering@redhat.com>
6255
6256         * users.txt: Add libffcall.  From Sam Steingold.
6257
6258 2008-07-03  OndÅ™ej Vašík  <ovasik@redhat.com>
6259
6260         getdate.y: do not ignore TZ with relative day, month or year offset
6261         * lib/getdate.y (get_date): Move the tz-handling block to follow the
6262         relative-date-handling, since otherwise, the latter would clobber the
6263         sole output (an updated Start value) of the tz-handling block.
6264         * tests/test-getdate.c: Tests for the fix
6265
6266 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6267
6268         Recognize 'foo_LIBRARIES += libgnu.a'.
6269         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
6270         makefile snippet has already specified an installation location,
6271         also using '+='.
6272
6273 2008-07-02  OndÅ™ej Vašík  <ovasik@redhat.com>
6274
6275         getdate.y: factor out common actions
6276         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
6277         Use them in place of open-coded actions.
6278
6279 2008-07-01  Simon Josefsson  <simon@josefsson.org>
6280
6281         Add self-test for getdate module.
6282         * modules/getdate-tests: New file.
6283         * tests/test-getdate.c: New file.
6284
6285 2008-06-29  Bruno Haible  <bruno@clisp.org>
6286
6287         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
6288         .gitignore.
6289         Reported by Sylvain Beucler <beuc@beuc.net>.
6290
6291 2008-06-29  Bruno Haible  <bruno@clisp.org>
6292
6293         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
6294         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
6295
6296 2008-06-29  Bruno Haible  <bruno@clisp.org>
6297
6298         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
6299         EXTRA_DIST.
6300         Reported by Sylvain Beucler <beuc@beuc.net>.
6301
6302 2008-06-26  Jim Meyering  <meyering@redhat.com>
6303
6304         make several modules depend on the "open" module
6305         This provides slightly increased consistency when opening-for-write
6306         the name of a non-directory spelled with a trailing slash.
6307         * modules/chdir-safer: Likewise.
6308         * modules/chown: Likewise.
6309         * modules/clean-temp: Likewise.
6310         * modules/copy-file: Likewise.
6311         * modules/fchdir: Likewise.
6312         * modules/fcntl-safer: Likewise.
6313         * modules/pipe: Likewise.
6314         * modules/utime: Likewise.
6315         Prompted by Eric Blake and Bruno Haible.
6316
6317 2008-06-24  Andreas Schwab  <schwab@suse.de>
6318
6319         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
6320         literals can be used as initializers for global variables.
6321
6322 2008-06-23  Eric Blake  <ebb9@byu.net>
6323
6324         Make gnulib-cache.m4 easier to diff.
6325         * gnulib-tool (func_import): Allow newlines when reading cached
6326         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
6327
6328 2008-06-23  Bruno Haible  <bruno@clisp.org>
6329
6330         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
6331         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
6332         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
6333         m4/signalblocking.m4.
6334         (gl_PREREQ_SIGACTION): Don't invoke it.
6335         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
6336         gl_PREREQ_SIG_HANDLER_H.
6337         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
6338         Don't check for sigaction here.
6339
6340 2008-06-23  Bruno Haible  <bruno@clisp.org>
6341
6342         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
6343         (install_handlers): Don't set the SA_RESETHAND flag.
6344
6345 2008-06-23  Bruno Haible  <bruno@clisp.org>
6346
6347         * m4/sigaction.m4: Comment fixes.
6348         * lib/signal.in.h: Likewise.
6349
6350 2008-06-23  Eric Blake  <ebb9@byu.net>
6351
6352         Fix typo.
6353         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
6354
6355         Avoid SA_ namespace.
6356         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
6357         Reported by Ralf Wildenhues.
6358
6359         Avoid test failure due to SA_RESTORER.
6360         * tests/test-sigaction.c (SA_MASK): New macro.
6361         (main): Avoid failing due to extension flags being set.
6362         Reported by Jim Meyering.
6363
6364         Revert use of sig-handler.h in sigprocmask.c.
6365         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
6366         it requires the existence of struct sigaction.
6367         * lib/sigprocmask.c (handler_t): Restore typedef.
6368         (rpl_signal, old_handlers): Use local type.
6369
6370 2008-06-22  Bruno Haible  <bruno@clisp.org>
6371
6372         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
6373         conditionally.
6374         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6375
6376 2008-06-22  Bruno Haible  <bruno@clisp.org>
6377
6378         * doc/posix-functions/siginterrupt.texi: Move note.
6379
6380         * lib/signal.in.h (SA_RESTART): New macro.
6381         * lib/sigaction.c: Update comment.
6382
6383         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
6384
6385         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
6386         (gl_PREREQ_SIGPROCMASK): Invoke it.
6387         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
6388
6389         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
6390
6391         * lib/sigprocmask.c: Update a comment.
6392
6393 2008-06-21  Eric Blake  <ebb9@byu.net>
6394
6395         Use sigaction module rather than signal().
6396         * modules/c-stack (Depends-on): Add sigaction.
6397         * modules/fatal-signal (Depends-on): Likewise.
6398         * modules/nanosleep (Depends-on): Likewise.
6399         * modules/sigprocmask (Files): Add sig-handler.h.
6400         * modules/sigaction (Files): Likewise.
6401         * lib/sig-handler.h (get_handler): New file, suggested by Paul
6402         Eggert.
6403         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
6404         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
6405         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
6406         (init_fatal_signals): Likewise.
6407         * lib/nanosleep.c (rpl_nanosleep): Likewise.
6408         (siginterrupt): Delete fallback.
6409         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
6410         instead.
6411         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
6412         siginterrupt.
6413
6414         New module sigaction, for mingw.
6415         * modules/sigaction: New module...
6416         * modules/sigaction-tests: ...and its test.
6417         * m4/sigaction.m4: New file.
6418         * lib/sigaction.c: Likewise.
6419         * tests/test-sigaction.c: Likewise.
6420         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
6421         * modules/signal (Makefile.am): Likewise.
6422         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
6423         needed.
6424         * doc/posix-headers/signal.texi (signal.h): Mention provided
6425         types.
6426         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
6427         that sigaction is preferable.
6428         * doc/posix-functions/sigaction.texi (sigaction): Mention new
6429         module.
6430         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
6431         sigaction.
6432
6433         Improve robustness of sigprocmask by overriding signal.
6434         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
6435         is in use.
6436         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
6437         (SIGKILL, SIGSTOP): Provide fallbacks.
6438         (rpl_signal): Implement.
6439         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
6440         signal can be called inside handlers.
6441
6442         Fix nanosleep module on mingw.
6443         * modules/nanosleep (Depends-on): Add sys_select.
6444         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
6445
6446         Fix licensing of sigprocmask.
6447         * modules/raise (License): Relicense as LGPL.
6448
6449 2008-06-21  Bruno Haible  <bruno@clisp.org>
6450
6451         * lib/propername.c (proper_name_utf8): Don't use the transliterated
6452         result if it contains question marks.
6453         Reported by Michael Geng <linux@michaelgeng.de>.
6454
6455 2008-06-19  Bruno Haible  <bruno@clisp.org>
6456
6457         Fix CVS-ism.
6458         * doc/gnulib.texi: Include updated-stamp.texi.
6459         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
6460         (updated-stamp.texi): New rule.
6461         (gnulib.info): Depend on it.
6462         * doc/.gitignore: Add updated-stamp.texi.
6463         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
6464
6465 2008-06-19  Bruno Haible  <bruno@clisp.org>
6466
6467         * doc/Makefile (gnulib.info): Update and simplify dependencies.
6468         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
6469
6470 2008-06-19  Eric Blake  <ebb9@byu.net>
6471
6472         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
6473         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
6474         Reported by Stepan Kasal.
6475
6476 2008-06-18  Bruno Haible  <bruno@clisp.org>
6477
6478         * lib/fatal-signal.c (init_fatal_signals): Add comment.
6479         Reported by Eric Blake.
6480
6481 2008-06-18  Eric Blake  <ebb9@byu.net>
6482
6483         Work around cygwin 1.5.25 strsignal bug.
6484         * tests/test-strsignal.c: Allow for const char *.
6485         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
6486
6487 2008-06-18  Simon Josefsson  <simon@josefsson.org>
6488
6489         * users.txt: Update URL to article and add author/date
6490         information.
6491
6492 2008-06-17  Bruno Haible  <bruno@clisp.org>
6493
6494         New macro gl_DISABLE_THREADS.
6495         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
6496         if the user did not pass --enable-threads or --disable-threads option.
6497         (gl_DISABLE_THREADS): New macro.
6498         Reported by Eric Blake <ebb9@byu.net>.
6499
6500 2008-06-17  Bruno Haible  <bruno@clisp.org>
6501
6502         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
6503         when the macro ignores it.
6504         Based on a patch by Eric Blake <ebb9@byu.net>.
6505
6506 2008-06-17  Bruno Haible  <bruno@clisp.org>
6507
6508         * modules/tls (License): Change to LGPLv2+.
6509         Reported by Eric Blake.
6510
6511 2008-06-17  Eric Blake  <ebb9@byu.net>
6512
6513         Simplify c-stack prerequisites.
6514         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
6515         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
6516         no longer requires <ucontext.h> to exist.  Optimize setrlimit
6517         check.
6518         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
6519         <sys/resource.h>.
6520
6521         Move c-stack test into testsuite.
6522         * modules/c-stack-tests: New file.
6523         * lib/c-stack.c [DEBUG]: Move test program...
6524         * tests/test-c-stack.c: ...into this new file.  Skip rather than
6525         fail test if sigaltstack is lacking.
6526         * tests/test-c-stack.sh: New driver file.
6527
6528 2008-06-16  Eric Blake  <ebb9@byu.net>
6529
6530         Use raise module consistently.
6531         * modules/fatal-signal (Depends-on): Add raise.
6532         * modules/sigprocmask (Depends-on): Likewise.
6533         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
6534         * lib/sigprocmask.c (sigprocmask): Likewise.
6535         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
6536         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
6537
6538         Fix compliance bug in sigpending.
6539         * lib/sigprocmask.c (sigpending): Return pending array via
6540         parameter, not return value.
6541
6542 2008-06-14  Eric Blake  <ebb9@byu.net>
6543
6544         Improve obstack-printf test code.
6545         * tests/test-obstack-printf.c (test_function): Fix comment, and
6546         simplify usage of obstack_* in macros.  Add a test for coverage.
6547         Reported by Bruno Haible.
6548
6549 2008-06-14  Bruno Haible  <bruno@clisp.org>
6550
6551         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
6552         array size as a constant, not as a const variable.
6553         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
6554         AC_USE_SYSTEM_EXTENSIONS.
6555         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
6556         Test whether the obstack_printf function actually exists.
6557         * modules/obstack-printf (Depends-on): Add extensions.
6558         (Include): Remove obstack.h.
6559         * modules/obstack-printf-posix (Depends-on): Add extensions.
6560         (Include): Remove obstack.h.
6561
6562 2008-06-13  Eric Blake  <ebb9@byu.net>
6563
6564         Add obstack-printf and obstack-printf-posix modules.
6565         * modules/obstack-printf: New file.
6566         * modules/obstack-printf-posix: Likewise.
6567         * MODULES.html.sh (Misc): Mention them.
6568         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
6569         Likewise.
6570         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
6571         Likewise.
6572         * modules/stdio (Makefile.am): Accomodate new modules.
6573         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
6574         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
6575         Declare.
6576         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
6577         functions.
6578         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
6579         (gl_REPLACE_OBSTACK_PRINTF): New macros
6580         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
6581         * tests/test-obstack-printf.c: New file.
6582         * modules/obstack-printf-tests: Likewise.
6583         * modules/obstack-printf-posix-tests: Likewise.
6584
6585 2008-06-11  Bruno Haible  <bruno@clisp.org>
6586
6587         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
6588         * lib/open.c: Include errno.h.
6589         (open): Fail when attempting to write to a file that has a trailing
6590         slash.
6591         * tests/test-open.c (main): Test against trailing slash bug.
6592         * doc/posix-functions/open.texi: Mention the trailing slash bug.
6593
6594 2008-06-10  Bruno Haible  <bruno@clisp.org>
6595
6596         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
6597         for $? to work inside the trap command, with various /bin/sh-s.
6598         * tests/test-vc-list-files-cvs.sh: Likewise.
6599
6600 2008-06-10  Bruno Haible  <bruno@clisp.org>
6601
6602         * lib/acl-internal.h: Don't include gettext.h here.
6603         * lib/set-mode-acl.c: Include gettext.h here.
6604         * lib/copy-acl.c: Likewise.
6605
6606 2008-06-10  Bruno Haible  <bruno@clisp.org>
6607
6608         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
6609         * lib/wait-process.c (wait_subprocess): Likewise.
6610         * lib/execute.h (execute): Add termsigp argument.
6611         * lib/execute.c (execute): Likewise.
6612         * lib/csharpcomp.c (compile_csharp_using_pnet,
6613         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
6614         * lib/csharpexec.c (execute_csharp_using_pnet,
6615         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
6616         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
6617         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
6618         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
6619         is_jikes_present): Update.
6620         * lib/javaexec.c (execute_java_class): Update.
6621         * lib/javaversion.c (execute_and_read_line): Update.
6622         * NEWS: Document the changes.
6623         Reported by Eric Blake.
6624
6625 2008-06-10  Eric Blake  <ebb9@byu.net>
6626
6627         Add missing include.
6628         * tests/test-strstr.c (includes): Add <signal.h>.
6629         * tests/test-strcasestr.c (includes): Likewise.
6630         * tests/test-memmem.c (includes): Likewise.
6631
6632 2008-06-10  Bruno Haible  <bruno@clisp.org>
6633
6634         * lib/wait-process.c (wait_subprocess): Add an assertion.
6635
6636 2008-06-10  Bruno Haible  <bruno@clisp.org>
6637
6638         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
6639
6640 2008-06-10  Bruno Haible  <bruno@clisp.org>
6641
6642         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
6643         using alarm().
6644         * tests/test-strcasestr.c (main): Likewise.
6645         * tests/test-strstr.c (main): Likewise.
6646
6647 2008-06-09  Bruno Haible  <bruno@clisp.org>
6648
6649         Work around the Solaris 10 ACE ACLs ABI change.
6650         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
6651         declare if ACL_NO_TRIVIAL is present.
6652         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
6653         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
6654         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
6655         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
6656         define if ACL_NO_TRIVIAL is present.
6657         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
6658         and use the current ABI.
6659         (file_has_acl): Use same #if condition as elsewhere.
6660         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
6661         in use, and use the current ABI.
6662         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
6663         Reported by Jim Meyering.
6664
6665 2008-06-09  Eric Blake  <ebb9@byu.net>
6666
6667         Work around environments that (stupidly) ignore SIGALRM.
6668         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
6669         before using alarm().
6670         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
6671         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
6672         Reported by Ian Beckwith <ianb@erislabs.net>.
6673
6674         Produce autobuild blurb earlier in log.
6675         * modules/autobuild (configure.ac-early): Move AB_INIT here.
6676
6677 2008-06-09  Jim Meyering  <meyering@redhat.com>
6678         and OndÅ™ej Vašík  <ovasik@redhat.com>
6679
6680         utimens.c: correct kernel bug work-around
6681         OndÅ™ej Vašík found that the invalid return value of 280 indicates
6682         failure, not success, and the kernel bug we're trying to work
6683         around affects not just the utimensat call, but also the fallback
6684         futimens call.
6685         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
6686         not success.
6687         [HAVE_FUTIMENS]: Use the same work-around, here.
6688
6689 2008-06-09  Jim Meyering  <meyering@redhat.com>
6690
6691         add more guards around definition of ACE_-related code
6692         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
6693         ALLOW and ACE_OWNER are also defined.
6694
6695 2008-06-08  Bruno Haible  <bruno@clisp.org>
6696
6697         * lib/acl-internal.h: Add me as co-author.
6698         * lib/file-has-acl.c: Likewise.
6699         * lib/set-mode-acl.c: Likewise.
6700         * lib/copy-acl.c: Likewise.
6701
6702 2008-06-08  Bruno Haible  <bruno@clisp.org>
6703
6704         Add support for AIX ACLs.
6705         * lib/acl-internal.h (acl_nontrivial): New declaration.
6706         * lib/file-has-acl.c (acl_nontrivial): New function.
6707         (file_has_acl): Add implementation using AIX 4 ACL API.
6708         * lib/set-mode-acl.c (qset_acl): Likewise.
6709         * lib/copy-acl.c (qcopy_acl): Likewise.
6710
6711 2008-06-08  Bruno Haible  <bruno@clisp.org>
6712
6713         Add support for HP-UX ACLs.
6714         * lib/acl-internal.h (acl_nontrivial): New declaration.
6715         * lib/file-has-acl.c (acl_nontrivial): New function.
6716         (file_has_acl): Add implementation using HP-UX 11 ACL API.
6717         * lib/set-mode-acl.c (qset_acl): Likewise.
6718         * lib/copy-acl.c (qcopy_acl): Likewise.
6719
6720 2008-06-08  Bruno Haible  <bruno@clisp.org>
6721
6722         Add support for Cygwin ACLs.
6723         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
6724         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
6725         the chmod_or_fchmod call.
6726         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
6727
6728 2008-06-08  Bruno Haible  <bruno@clisp.org>
6729
6730         Fix bug with setuid modes in Solaris 10+ code.
6731         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
6732         succeeded, when the mode contains some special bits.
6733
6734 2008-06-08  Bruno Haible  <bruno@clisp.org>
6735
6736         Add support for Solaris 7..10 ACLs.
6737         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
6738         declarations.
6739         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
6740         functions.
6741         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
6742         * lib/set-mode-acl.c (qset_acl): Likewise.
6743         * lib/copy-acl.c (qcopy_acl): Likewise.
6744
6745 2008-06-08  Bruno Haible  <bruno@clisp.org>
6746
6747         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
6748         declaration.
6749         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
6750         (acl_access_nontrivial): Remove MacOS X case.
6751         (file_has_acl): Use acl_extended_nontrivial.
6752         * lib/copy-acl.c (qcopy_acl): Likewise.
6753
6754 2008-06-08  Bruno Haible  <bruno@clisp.org>
6755
6756         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
6757
6758 2008-06-08  Jim Meyering  <meyering@redhat.com>
6759
6760         * modules/acl (Maintainer): Add Bruno Haible.
6761
6762 2008-06-07  Bruno Haible  <bruno@clisp.org>
6763
6764         Improve support for Tru64 ACLs.
6765         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
6766         ACL on OSF/1.
6767
6768 2008-06-07  Bruno Haible  <bruno@clisp.org>
6769
6770         Add support for MacOS X ACLs.
6771         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
6772         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
6773         * lib/set-mode-acl.c (qset_acl): Likewise.
6774         * lib/copy-acl.c (qcopy_acl): Likewise.
6775
6776 2008-06-07  Bruno Haible  <bruno@clisp.org>
6777
6778         Fix memory leak introduced on 2008-05-22.
6779         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
6780         use.
6781
6782 2008-06-07  Bruno Haible  <bruno@clisp.org>
6783
6784         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
6785         to construct an empty ACL.
6786
6787 2008-06-07  Bruno Haible  <bruno@clisp.org>
6788
6789         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
6790         precisely.
6791         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
6792
6793 2008-06-07  Bruno Haible  <bruno@clisp.org>
6794
6795         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
6796         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
6797
6798 2008-06-07  Bruno Haible  <bruno@clisp.org>
6799
6800         * doc/posix-functions/_setjmp.texi: Explain the use of this function
6801         regardless of POSIX.
6802         * doc/posix-functions/_longjmp.texi: Likewise.
6803         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
6804         SystemV platform in this case.
6805
6806 2008-06-06  Eric Blake  <ebb9@byu.net>
6807
6808         Document abort() bugs.
6809         * doc/posix-functions/abort.texi (abort): Mention anomalies.
6810
6811         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
6812         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
6813         sigsetjmp.
6814         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
6815         siglongjmp, but only as a macro.
6816         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
6817         is obsolete.
6818         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
6819
6820         Tweak documentation to cover cygwin argz bugs.
6821         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
6822         argz bug fix; no code change needed since no cygwin releases
6823         occurred between the last fix and the bug being tested.
6824         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
6825         module and recently fixed cygwin bugs.
6826         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
6827         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
6828         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
6829         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
6830         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
6831         Likewise.
6832         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
6833         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
6834         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
6835         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
6836         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
6837         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
6838         Likewise.
6839
6840         Avoid gcc warning on cygwin.
6841         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
6842         !ACL_NO_TRIVIAL]: Avoid unused variable.
6843
6844 2008-06-05  Eric Blake  <ebb9@byu.net>
6845
6846         Be tolerant of UNKNOWN version in gnulib-tool test dir.
6847         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
6848         git-version-gen fails to come up with a version.
6849         Reported by Simon Josefsson.
6850
6851 2008-06-05  Jim Meyering  <meyering@redhat.com>
6852             Paul Eggert  <eggert@cs.ucla.edu>
6853
6854         utimens.c: work around a probable Linux kernel bug
6855         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
6856         appears to be a kernel bug that causes utimensat to return 280
6857         instead of 0, indicating success.
6858
6859 2008-06-04  Bruno Haible  <bruno@clisp.org>
6860
6861         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
6862         2008-06-01 commit.
6863
6864 2008-06-04  Bruno Haible  <bruno@clisp.org>
6865
6866         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
6867         * lib/file-has-acl.c (acl_access_nontrivial): New function.
6868         (file_has_acl): Use it. Save errno afterwards.
6869         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
6870
6871 2008-06-03  Bruno Haible  <bruno@clisp.org>
6872
6873         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
6874         draft code. Simplify #ifs.
6875         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
6876         Put Solaris code after POSIX-draft code. Fix comments regarding
6877         Solaris 10, HP-UX. Mention Cygwin.
6878         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
6879
6880 2008-06-03  Eric Blake  <ebb9@byu.net>
6881
6882         Provide fallback for older kernels.
6883         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
6884         Provide runtime fallback if kernel lacks support.
6885         Reported by Mike Frysinger.
6886
6887 2008-06-02  Bruno Haible  <bruno@clisp.org>
6888
6889         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
6890         it exists.
6891
6892 2008-06-02  Bruno Haible  <bruno@clisp.org>
6893
6894         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
6895         * lib/copy-acl.c (qcopy_acl): Update comment.
6896
6897 2008-06-02  Bruno Haible  <bruno@clisp.org>
6898
6899         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
6900         like ACL APIs.
6901
6902 2008-06-02  Bruno Haible  <bruno@clisp.org>
6903
6904         * tests/test-file-has-acl.sh: Use different code for Cygwin.
6905         * tests/test-set-mode-acl.sh: Likewise.
6906         * tests/test-copy-acl.sh: Likewise.
6907         * tests/test-copy-file.sh: Likewise.
6908
6909 2008-06-02  Bruno Haible  <bruno@clisp.org>
6910
6911         * tests/test-file-has-acl.sh: Remove unused code.
6912
6913 2008-06-01  Bruno Haible  <bruno@clisp.org>
6914
6915         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
6916         (copy_acl): Just a wrapper around qcopy_acl that emits the error
6917         messages.
6918         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
6919
6920 2008-06-01  Bruno Haible  <bruno@clisp.org>
6921
6922         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
6923         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
6924         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
6925         APIs.
6926         * modules/acl-tests (configure.ac): Remove tests now contained in
6927         m4/acl.m4.
6928
6929 2008-06-02  Jim Meyering  <meyering@redhat.com>
6930
6931         announce-gen: use a better key-server host name
6932         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
6933         it may be more consistently reliable.  Suggested by Werner Koch
6934         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
6935
6936 2008-06-01  Bruno Haible  <bruno@clisp.org>
6937
6938         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
6939         Reported by Voroskoi Andras <voroskoi@gmail.com>.
6940
6941 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
6942
6943         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
6944
6945 2008-06-01  Bruno Haible  <bruno@clisp.org>
6946
6947         New ACL tests.
6948         * tests/test-file-has-acl.sh: New file.
6949         * tests/test-file-has-acl.c: New file.
6950         * tests/test-set-mode-acl.sh: New file.
6951         * tests/test-set-mode-acl.c: New file.
6952         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
6953         * tests/test-copy-acl.c: New file.
6954         * modules/acl-tests: New file, based on modules/copy-file-tests.
6955         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
6956         (Depends-on): Add acl-tests.
6957         (configure.ac): Remove checks.
6958         (Makefile.am): Don't create test-sameacls program here any more.
6959
6960 2008-06-01  Bruno Haible  <bruno@clisp.org>
6961
6962         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
6963         * tests/test-sameacls.c: Include progname.h.
6964         (main): Invoke set_program_name. Portability fixes for MacOS X,
6965         Solaris, HP-UX.
6966
6967 2008-06-01  Bruno Haible  <bruno@clisp.org>
6968
6969         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
6970         function.
6971         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
6972
6973 2008-06-01  Bruno Haible  <bruno@clisp.org>
6974
6975         * modules/rpmatch (Depends-on): Add strdup.
6976
6977 2008-06-01  Bruno Haible  <bruno@clisp.org>
6978
6979         * lib/pipe.c: Include unistd-safer.h.
6980         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
6981         * modules/pipe (Depends-on): Add unistd-safer.
6982
6983 2008-05-30  Simon Josefsson  <simon@josefsson.org>
6984
6985         * modules/autobuild (configure.ac): Call AB_INIT.
6986
6987 2008-05-30  Simon Josefsson  <simon@josefsson.org>
6988
6989         * tests/test-getaddrinfo.c: Don't print debug messages by default.
6990         Suggested by Bruno Haible <bruno@clisp.org>.
6991
6992 2008-05-30  Simon Josefsson  <simon@josefsson.org>
6993
6994         * tests/test-base64.c: Cast size_t to unsigned long when invoking
6995         printf.  Use %lu instead of %d.  Reported by Bruno Haible
6996         <bruno@clisp.org>.
6997
6998 2008-05-29  Eric Blake  <ebb9@byu.net>
6999
7000         Prefer new POSIX 200x interfaces over futimesat.
7001         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
7002         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
7003         when available.
7004         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
7005
7006 2008-05-28  Bruno Haible  <bruno@clisp.org>
7007
7008         * modules/stpcpy (License): Change to LGPLv2+.
7009         Requested by David Lutterkort <dlutter@redhat.com>.
7010
7011 2008-05-27  Bruno Haible  <bruno@clisp.org>
7012
7013         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
7014         current mingw.
7015         Reported by Jose E. Marchesi <jemarch@gnu.org>.
7016
7017 2008-05-27  Bruno Haible  <bruno@clisp.org>
7018
7019         * modules/iconv_open (Link): New section, from module 'iconv'.
7020         * modules/striconv (Link): Likewise.
7021         * modules/striconveh (Link): Likewise.
7022         * modules/xstriconv (Link): Likewise.
7023         * modules/unicodeio (Link): Likewise.
7024         * modules/propername (Link): Likewise.
7025         Reported by Jim Meyering.
7026
7027 2008-05-26  Jim Meyering  <meyering@redhat.com>
7028
7029         sha256: do not artificially restrict buffer length to be < 2^32
7030         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
7031         uint32_t to size_t.
7032         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
7033         to match.
7034
7035         avoid unaligned access errors, e.g., on sparc
7036         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
7037         direct access through a possibly-unaligned uint64* pointer.
7038         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
7039         direct access through a possibly-unaligned uint32* pointer.
7040         Prompted by this patch from Tom "spot" Callaway:
7041         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
7042
7043         sha512.c: fix typo in comment
7044         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
7045
7046 2008-05-25  Bruno Haible  <bruno@clisp.org>
7047
7048         * lib/set-mode-acl.c: Renamed from lib/acl.c.
7049         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
7050         (Makefile.am): Update lib_SOURCES.
7051
7052 2008-05-25  Bruno Haible  <bruno@clisp.org>
7053
7054         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
7055
7056 2008-05-25  Jim Meyering  <meyering@redhat.com>
7057
7058         useless-if-before-free: freed expr may have white-space differences
7059         * build-aux/useless-if-before-free: Recognize cases in which the
7060         freed expression differs from the tested one in embedded white
7061         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
7062         $1 was used, so we can't make any regexp shy.  Improved tests now
7063         detect this.
7064
7065         useless-if-before-free: accept white space in the expression.
7066         * build-aux/useless-if-before-free: For now, any white space
7067         in the expression must be identical in the free argument.
7068
7069         useless-if-before-free: efficiency tweak
7070         * build-aux/useless-if-before-free: Make the expression-matching
7071         regexp "shy".
7072         Make the *outer* regexp shy, not the expr-matching one.
7073
7074         update code-in-comment to accept cast of free arg
7075         * build-aux/useless-if-before-free: Update regexp.
7076
7077 2008-05-25  Bruno Haible  <bruno@clisp.org>
7078
7079         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
7080         * modules/copy-file-tests (Files, Makefile.am): Update.
7081         * tests/test-copy-file.c (func_test_copy): Update.
7082
7083 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
7084
7085         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
7086
7087 2008-05-23  Bruno Haible  <bruno@clisp.org>
7088
7089         Improve support for ACLs on OSF/1.
7090         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
7091         Remove fallback for unknown flavors of ACLs.
7092
7093 2008-05-22  Bruno Haible  <bruno@clisp.org>
7094
7095         Add support for ACLs on OSF/1.
7096         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
7097         replacements.
7098         (acl_free_text): New macro fallback.
7099         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
7100         acl_free.
7101         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
7102         acl_free_text function. Require AC_C_INLINE.
7103
7104 2008-05-22  Bruno Haible  <bruno@clisp.org>
7105
7106         Make copy_acl work on MacOS X 10.5.
7107         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
7108         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
7109         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
7110         If MODE_INSIDE_ACL, don't assume that every system has the same text
7111         representation for ACLs as FreeBSD.
7112         * lib/copy-acl.c (copy_acl): Add support for platforms with
7113         !MODE_INSIDE_ACL.
7114         * lib/file-has-acl.c (file_has_acl): Likewise.
7115         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
7116         FreeBSD, MacOS X, or IRIX, respectively.
7117
7118 2008-05-22  Bruno Haible  <bruno@clisp.org>
7119
7120         * lib/acl.h: Don't include <sys/acl.h>.
7121         (GETACLCNT): Move fallback to lib/acl-internal.h.
7122         * lib/acl-internal.h: Include <sys/acl.h> here.
7123         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
7124
7125 2008-05-22  Bruno Haible  <bruno@clisp.org>
7126
7127         Split off copy_acl function to separate file.
7128         * lib/copy-acl.c: New file, extracted from lib/acl.c.
7129         * lib/acl.c (copy_acl): Moved function to separate file.
7130         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
7131         * modules/acl (Files): Add lib/copy-acl.c.
7132         (Makefiles.am): Augment lib_SOURCES.
7133
7134 2008-05-22  Bruno Haible  <bruno@clisp.org>
7135
7136         * modules/copy-file-tests: New file.
7137         * tests/test-copy-file.sh: New file.
7138         * tests/test-copy-file.c: New file.
7139         * tests/test-copy-file-sameacls.c: New file.
7140
7141 2008-05-22  Eric Blake  <ebb9@byu.net>
7142
7143         Avoid gcc warning.
7144         * tests/test-memcmp.c (main): Pass NULL indirectly.
7145
7146 2008-05-21  Bruno Haible  <bruno@clisp.org>
7147
7148         Add reference doc about ACLs.
7149         * doc/acl-resources.txt: New file.
7150         * doc/acl-cygwin.txt: New file.
7151
7152 2008-05-21  Bruno Haible  <bruno@clisp.org>
7153
7154         Avoid one more warning from gcc.
7155         * lib/vasnprintf.c (IF_LINT): Update comments.
7156         (VASNPRINTF): Use it also for the 'prefix' array initializer.
7157
7158 2008-05-21  Jim Meyering  <meyering@redhat.com>
7159
7160         avoid a warning from gcc
7161         * lib/vasnprintf.c (IF_LINT): Define.
7162         (scale10_round_decimal_long_double):
7163         Use it to avoid a "may be used uninitialized" warning.
7164         (scale10_round_decimal_double): Likewise.
7165
7166 2008-05-21  Simon Josefsson  <simon@josefsson.org>
7167
7168         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
7169         declared.
7170
7171 2008-05-20  Bruno Haible  <bruno@clisp.org>
7172
7173         * tests/test-memcmp.c (main): Test also the sign of the result. Test
7174         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
7175
7176 2008-05-20  Simon Josefsson  <simon@josefsson.org>
7177
7178         * modules/memcmp-tests: New file.
7179         * tests/test-memcmp.c: New file.
7180
7181 2008-05-19  Bruno Haible  <bruno@clisp.org>
7182
7183         * modules/propername (Notice, configure.ac): Put quoted "..." into
7184         --keyword option.
7185         * lib/propername.h: Update comments accordingly.
7186         Reported by Eric Blake.
7187
7188 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
7189
7190         * modules/getpass-gnu (Depends-on): Add fseeko.
7191
7192 2008-05-19  Simon Josefsson  <simon@josefsson.org>
7193
7194         * modules/base64-tests: New file.
7195
7196 2008-05-19  Bo Borgerson <gigabo@gmail.com>
7197
7198         * lib/base64.c (base64_decode_ctx): If a decode context structure
7199         was passed in use it to ignore newlines.  If a context structure
7200         was _not_ passed in, continue to treat newlines as garbage (this
7201         is the historical behavior).  Formerly base64_decode.
7202         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
7203         takes a decode context structure.
7204         * lib/base64.h (base64_decode): Macro for four-argument calls.
7205         (base64_decode_alloc): Likewise.
7206         * lib/base64.c (base64_decode_ctx): If a decode context structure
7207         was passed in use it to ignore newlines.  If a context structure
7208         was _not_ passed in, continue to treat newlines as garbage (this
7209         is the historical behavior).  Formerly base64_decode.
7210         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
7211         takes a decode context structure.
7212         * lib/base64.h (base64_decode): Macro for four-argument calls.
7213         (base64_decode_alloc): Likewise.
7214
7215 2008-05-19  Jim Meyering  <meyering@redhat.com>
7216
7217         avoid a warning from gcc
7218         * lib/trim.c (IF_LINT): Define.
7219         (trim2): Use it to avoid a "may be used uninitialized" warning.
7220
7221         Fix doc typo.
7222         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
7223
7224 2008-05-19  Bruno Haible  <bruno@clisp.org>
7225
7226         * doc/glibc-functions/getpass.texi: Document limits of other
7227         implementations.
7228
7229 2008-05-19  Simon Josefsson  <simon@josefsson.org>
7230             Bruno Haible <bruno@clisp.org>
7231
7232         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
7233
7234 2008-05-18  Bruno Haible  <bruno@clisp.org>
7235
7236         * modules/propername: New file, from GNU gettext.
7237         * lib/propername.h: New file, from GNU gettext.
7238         * lib/propername.c: New file, from GNU gettext.
7239         * MODULES.html.sh (Internationalization functions): Add propername.
7240
7241 2008-05-16  Jim Meyering  <meyering@redhat.com>
7242             Bruno Haible  <bruno@clisp.org>
7243
7244         Avoid some warnings from "gcc -Wshadow".
7245         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
7246
7247 2008-05-15  Eric Blake  <ebb9@byu.net>
7248
7249         Extend previous patch to cygwin 1.7.0.
7250         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
7251         fast implementation in cygwin >= 1.7.0.
7252         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
7253         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
7254
7255 2008-05-15  Bruno Haible  <bruno@clisp.org>
7256
7257         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
7258         implementation in glibc >= 2.9.
7259         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
7260         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
7261
7262 2008-05-15  Bruno Haible  <bruno@clisp.org>
7263
7264         * MODULES.html.sh (Internationalization functions): Remove linebreak.
7265         (Unicode string functions): Add unilbrk/*.
7266         Reported by Karl Berry.
7267
7268 2008-05-15  Eric Blake  <ebb9@byu.net>
7269
7270         Fix violation of <stdbool.h> replacement in regex.
7271         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
7272         * lib/regexec.c (re_search_internal): Likewise.
7273         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
7274
7275 2008-05-15  Jim Meyering  <meyering@redhat.com>
7276
7277         avoid distracting test output when git or cvs is not found
7278         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
7279         * tests/test-vc-list-files-git.sh: Likewise.
7280
7281 2008-05-15  Eric Blake  <ebb9@byu.net>
7282
7283         Glibc finally accepted the memmem speedup code, bugzilla #5514.
7284         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
7285         glibc version.
7286         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
7287         * doc/posix-functions/strstr.texi (strstr): Likewise.
7288         * lib/str-two-way.h (MAX): Sychronize with glibc.
7289
7290 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
7291
7292         * lib/regcomp.c (optimize_utf8): Add a note on why we test
7293         opr.ctx_type.
7294         (calc_first): Initialize constraint field.
7295         (duplicate_node_closure): Use it instead of special casing ANCHORS.
7296         Fix grammar.
7297         (duplicate_node): Merge constraint field for all node types.
7298         (calc_eclosure_iter): Look at constraint field for all node types.
7299         * lib/regex_internal.c (create_cd_newstate): Don't look at
7300         opr.ctx_type.
7301
7302 2008-05-14  Bruno Haible  <bruno@clisp.org>
7303
7304         Help GCC to do better code generation.
7305         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
7306         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
7307         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
7308         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
7309         Declare with attribute 'malloc' if supported.
7310
7311 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
7312
7313         use "echo STR|wc -c" rather than unportable "expr length STR"
7314         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
7315         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
7316
7317 2008-05-14  Jim Meyering  <meyering@redhat.com>
7318
7319         use dd ibs=$n count=1 ... rather than less-portable head -c$n
7320         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
7321         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
7322         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
7323         via Collin Lasse.
7324
7325 2008-05-14  Eric Blake  <ebb9@byu.net>
7326
7327         Avoid quadratic growth in gl_LIBSOURCES.
7328         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
7329         Suggested by Bruno Haible.
7330
7331         Test xmemdup0.
7332         * modules/xmemdup0-tests: New file.
7333         * tests/test-xmemdup0.c: Likewise.
7334
7335 2008-05-13  Eric Blake  <ebb9@byu.net>
7336
7337         Split xmemdup0 into its own module.
7338         * modules/xmemdup0: New file.
7339         * lib/xmemdup0.h: Likewise.
7340         * lib/xmemdup0.c: Likewise.
7341         * MODULES.html.sh (Memory management functions): Add xmemdup0.
7342         * lib/xalloc.h (xmemdup0): Remove.
7343         * lib/xmalloc.c (xmemdup0): Likewise.
7344
7345 2008-05-13  Eric Blake  <ebb9@byu.net>
7346             Bruno Haible  <bruno@clisp.org>
7347
7348         Reduce number of forks required during autoconf.
7349         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
7350         and gl_LIBSOURCES_DIR.
7351         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
7352         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
7353         m4_syscmd per file.
7354         <m4_foreach_w>: Move...
7355         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
7356
7357 2008-05-13  Eric Blake  <ebb9@byu.net>
7358
7359         * gnulib-tool: Fix various comment typos.
7360
7361 2008-05-12  Bruno Haible  <bruno@clisp.org>
7362
7363         Tailor the linebreaking algorithm.
7364         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
7365
7366 2008-05-12  Bruno Haible  <bruno@clisp.org>
7367
7368         Update to Unicode 5.0.0.
7369         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
7370         LBP_JV, LBP_JT. Redistribute values.
7371         (unilbrk_table): Change size.
7372         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
7373         Unicode TR#14 rev. 22.
7374         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
7375         LBP_JV, LBP_JT. Redistribute values.
7376         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
7377         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
7378         Update.
7379         * lib/unilbrk/lbrkprop1.h: Regenerated.
7380         * lib/unilbrk/lbrkprop2.h: Regenerated.
7381         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
7382         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
7383         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
7384         Likewise.
7385         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
7386         Likewise.
7387         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
7388         result.
7389         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
7390         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
7391         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
7392         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
7393         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
7394         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
7395
7396 2008-05-11  Bruno Haible  <bruno@clisp.org>
7397
7398         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
7399
7400 2008-05-11  Bruno Haible  <bruno@clisp.org>
7401
7402         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
7403         * modules/unilbrk/gen-lbrk: New file.
7404
7405 2008-05-11  Bruno Haible  <bruno@clisp.org>
7406
7407         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
7408         * m4/sha512.m4 (gl_SHA512): Likewise.
7409
7410 2008-05-11  Jim Meyering  <meyering@redhat.com>
7411
7412         New modules: crypto/sha256, crypto/sha512 (from coreutils)
7413         * modules/crypto/sha256: New file.
7414         * modules/crypto/sha512: Likewise.
7415         * lib/sha256.c: Likewise.
7416         * lib/sha256.h: Likewise.
7417         * lib/sha512.c: Likewise.
7418         * lib/sha512.h: Likewise.
7419         * lib/u64.h: Likewise.
7420         * m4/sha256.m4: Likewise.
7421         * m4/sha512.m4: Likewise.
7422         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
7423
7424 2008-05-10  Bruno Haible  <bruno@clisp.org>
7425
7426         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
7427         (Input/Output <stdio.h>): Add xprintf.
7428         (Signal handling <signal.h>): Add strsignal.
7429         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
7430         (Core language properties): Add func.
7431         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
7432         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
7433         strings.
7434         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
7435         (Input/output): New section.
7436         (File system functions): Add openat-die, stat-macros.
7437         (Networking functions): Add sockets.
7438         (Unicode string functions): Add unictype/*.
7439         (Support for building libraries and executables): Add gperf.
7440         (Support for building documentation): Add agpl-3.0.
7441         (Misc): Add nocrash.
7442
7443 2008-05-10  Bruno Haible  <bruno@clisp.org>
7444
7445         * modules/unictype/gen-ctype: New file.
7446
7447 2008-05-10  Jim Meyering  <meyering@redhat.com>
7448
7449         Make chdir-safer.c more efficient on a system with no symlinks.
7450         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
7451         also if ELOOP is zero.  Suggested by Bruno Haible.
7452
7453         Make chdir-safer.c slightly safer.
7454         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
7455         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
7456
7457         Avoid compile failure on systems without ELOOP (like mingw).
7458         * lib/chdir-safer.c (ELOOP): Define if not already defined.
7459         Reported by Bruno Haible.
7460
7461 2008-05-10  Bruno Haible  <bruno@clisp.org>
7462
7463         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
7464         (is_utf8_encoding): Use a case-insensitive comparison.
7465         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
7466         streq.
7467
7468 2008-05-10  Bruno Haible  <bruno@clisp.org>
7469
7470         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
7471         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
7472         * lib/unilbrk/ulc-common.h (iconv_string_length,
7473         iconv_string_keeping_offsets): Remove declarations.
7474         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
7475         Don't include <iconv.h>, streq.h, xsize.h.
7476         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
7477         conversion.
7478         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
7479         <iconv.h>, streq.h, xsize.h.
7480         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
7481         conversion.
7482         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
7483         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
7484         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
7485         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
7486
7487 2008-05-10  Bruno Haible  <bruno@clisp.org>
7488
7489         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
7490         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
7491
7492         * modules/unilbrk/u32-width-linebreaks-tests: New file.
7493         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
7494
7495         * modules/unilbrk/u16-width-linebreaks-tests: New file.
7496         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
7497
7498         * modules/unilbrk/u8-width-linebreaks-tests: New file.
7499         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
7500
7501         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
7502         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
7503
7504         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
7505         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
7506
7507         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
7508         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
7509
7510         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
7511         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
7512
7513 2008-05-10  Bruno Haible  <bruno@clisp.org>
7514
7515         Split up 'linebreak' module.
7516         * lib/unilbrk.h: New file, based on lib/linebreak.h.
7517         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
7518         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
7519         modifications.
7520         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
7521         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
7522         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
7523         lib/linebreak.c.
7524         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
7525         lib/linebreak.c.
7526         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
7527         lib/linebreak.c.
7528         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
7529         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
7530         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
7531         lib/linebreak.c.
7532         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
7533         lib/linebreak.c.
7534         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
7535         lib/linebreak.c.
7536         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
7537         lib/linebreak.c.
7538         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
7539         lib/linebreak.c.
7540         * modules/unilbrk/base: New file.
7541         * modules/unilbrk/tables: New file.
7542         * modules/unilbrk/u8-possible-linebreaks: New file.
7543         * modules/unilbrk/u16-possible-linebreaks: New file.
7544         * modules/unilbrk/u32-possible-linebreaks: New file.
7545         * modules/unilbrk/ulc-common: New file.
7546         * modules/unilbrk/ulc-possible-linebreaks: New file.
7547         * modules/unilbrk/u8-width-linebreaks: New file.
7548         * modules/unilbrk/u16-width-linebreaks: New file.
7549         * modules/unilbrk/u32-width-linebreaks: New file.
7550         * modules/unilbrk/ulc-width-linebreaks: New file.
7551         * lib/linebreak.h: Remove file.
7552         * lib/linebreak.c: Remove file.
7553         * m4/linebreak.m4: Remove file.
7554         * modules/linebreak: Remove file.
7555         * NEWS: Mention the changes.
7556
7557 2008-05-09  Eric Blake  <ebb9@byu.net>
7558
7559         Add xmemdup0.
7560         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
7561         implementation.
7562         * lib/xmalloc.c (xmemdup0): New C implementation.
7563
7564 2008-05-08  Bruno Haible  <bruno@clisp.org>
7565
7566         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
7567
7568 2008-05-07  Eric Blake  <ebb9@byu.net>
7569
7570         Support cross-compilation of <wctype.h>.
7571         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
7572         AC_CACHE_CHECK.
7573
7574 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
7575
7576         * build-aux/vc-list-files: Add support for bzr.
7577
7578 2008-05-03  Jim Meyering  <meyering@redhat.com>
7579
7580         avoid failed assertion with tight malloc
7581         * tests/test-getndelim2.c: Correct an off-by-one assertion.
7582
7583 2008-05-03  Simon Josefsson  <simon@josefsson.org>
7584
7585         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
7586         are needed from arpa/inet.h.
7587         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
7588         Reported by Bruno Haible.
7589
7590 2008-05-02  Jim Meyering  <meyering@redhat.com>
7591
7592         avoid compilation error on FreeBSD 6
7593         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
7594
7595 2008-05-01  Jim Meyering  <meyering@redhat.com>
7596
7597         useless-if-before-free: correct --help's exit status description
7598         * build-aux/useless-if-before-free (usage): Like grep, exit 0
7599         for one or more matches, etc.  Reported by Bruno Haible.
7600
7601         vc-list-files: make the stand-alone gnulib test work
7602         * modules/vc-list-files-tests (configure.ac):
7603         Define and AC_SUBST abs_aux_dir.
7604         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
7605         $(abs_top_srcdir) to each script and having each of them
7606         duplicate the work of setting PATH, set PATH here, using
7607         the new variable, abs_aux_dir instead.
7608         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
7609         * tests/test-vc-list-files-git.sh: Likewise.
7610         Reported by Bruno Haible.
7611
7612 2008-05-01  Bruno Haible  <bruno@clisp.org>
7613
7614         * lib/getndelim2.c (getndelim2): Fix newsize computation during
7615         reallocation. Rename 'done' to 'found_delimiter'.
7616
7617 2008-05-01  Jim Meyering  <meyering@redhat.com>
7618
7619         vc-list-files: accommodate /bin/sh like the one from Solaris 10
7620         * build-aux/vc-list-files: Use `...`, not $(...).
7621
7622 2008-04-30  Jim Meyering  <meyering@redhat.com>
7623
7624         add tests for vc-list-files
7625         * modules/vc-list-files-tests: New module.
7626         * tests/test-vc-list-files-cvs.sh: New file.
7627         * tests/test-vc-list-files-git.sh: New file.
7628
7629         avoid a warning from gcc
7630         * lib/getndelim2.c (IF_LINT): Define.
7631         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
7632
7633         vc-list-files: work properly with build-aux/cvsu, too
7634         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
7635         to all cvs-based clauses.
7636
7637         vc-list-files: work properly in the CVS+awk case, too
7638         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
7639
7640         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
7641         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
7642         take more than one file argument, so .  Add quotes, just in case $dir
7643         ever contains a shell meta-character.  Prompted by Soren Hansen in
7644         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
7645
7646 2008-04-29  Eric Blake  <ebb9@byu.net>
7647
7648         Optimize getndelim2 to use block operations when possible.
7649         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
7650         freadseek, and memchr2.
7651         * lib/getndelim2.c (getndelim2): Use them for block reads.
7652
7653 2008-04-29  Bruno Haible  <bruno@clisp.org>
7654
7655         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
7656         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
7657         * modules/inet_ntop (Depends-on): Add extensions.
7658         * modules/inet_pton (Depends-on): Likewise.
7659         Reported by Simon Josefsson.
7660
7661 2008-04-29  Jim Meyering  <meyering@redhat.com>
7662
7663         When the is more than one match in a block, match all of them.
7664         * build-aux/useless-if-before-free: Iterate through each block
7665         until there are no more matches.
7666
7667         Fix broken useless-if-before-free script.
7668         * build-aux/useless-if-before-free: Fix typo: missing "?" after
7669         the expression to match cast of argument to free-like function.
7670
7671 2008-04-29  Eric Blake  <ebb9@byu.net>
7672
7673         Use new header.
7674         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
7675
7676 2008-04-29  Jim Meyering  <meyering@redhat.com>
7677
7678         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
7679         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
7680         by gnulib to exist and to declare e.g., inet_ntop.
7681         Don't include "inet_ntop.h", now removed.
7682
7683         * m4/arpa_inet_h.m4: Remove trailing blanks.
7684
7685 2008-04-29  Eric Blake  <ebb9@byu.net>
7686
7687         Silence valgrind on safe reads beyond potential array bounds.
7688         * lib/rawmemchr.valgrind: New file.
7689         * lib/strchrnul.valgrind: Likewise.
7690         * modules/rawmemchr (Files): Distribute new file.
7691         * modules/strchrnul (Files): Likewise.
7692         Suggested by Bruno Haible.
7693
7694 2008-04-29  Bruno Haible  <bruno@clisp.org>
7695
7696         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
7697         (inet_ntop, inet_pton): Change portability warning's wording.
7698         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
7699         Invoke gl_CHECK_NEXT_HEADERS.
7700         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
7701         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
7702         set ARPA_INET_H.
7703         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
7704         * modules/arpa_inet (Description): No longer only for systems that
7705         lack it.
7706         (Depends-on): Add include_next.
7707         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
7708         HAVE_ARPA_INET_H.
7709
7710 2008-04-29  Jim Meyering  <meyering@redhat.com>
7711
7712         * modules/mkdir (License): Re-license as LGPLv2+.
7713
7714 2008-04-29  Bruno Haible  <bruno@clisp.org>
7715
7716         * modules/rawmemchr (Maintainer): Set to Eric.
7717         * modules/strchrnul (Maintainer): Likewise.
7718
7719 2008-04-29  Simon Josefsson  <simon@josefsson.org>
7720
7721         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
7722         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
7723
7724         * modules/arpa_inet (arpa/inet.h): Use them.
7725
7726 2008-04-28  Eric Blake  <ebb9@byu.net>
7727
7728         Test getndelim2.
7729         * modules/getndelim2-tests: New file.
7730         * tests/test-getndelim2.c: Likewise.
7731         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
7732         stream.
7733         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
7734
7735         * MODULES.html.sh: Document new module.
7736
7737 2008-04-20  Bruno Haible  <bruno@clisp.org>
7738
7739         * lib/c-stack.c (die): Use raise.
7740         * modules/c-stack (Depends-on): Add raise.
7741
7742 2008-04-28  Bruno Haible  <bruno@clisp.org>
7743
7744         Expect rpmatch to be declared.
7745         * lib/yesno.c (rpmatch): Remove declaration.
7746
7747         Declare rpmatch.
7748         * lib/stdlib.in.h (rpmatch): New declaration.
7749         * lib/rpmatch.c: Include <stdlib.h> first.
7750         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
7751         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
7752         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
7753         HAVE_RPMATCH.
7754         * modules/rpmatch (Depends-on): Add stdlib, extensions.
7755         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7756         (Include): Set to <stdlib.h>.
7757         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
7758         HAVE_RPMATCH.
7759         * NEWS: Document the change.
7760
7761 2008-04-28  Bruno Haible  <bruno@clisp.org>
7762
7763         Change rpmatch to use nl_langinfo when appropriate.
7764         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
7765         (N_): New macro.
7766         (localized_pattern): New function/macro.
7767         (try): Remove match, nomatch arguments. Copy the pattern into safe
7768         memory before caching it.
7769         (rpmatch): Use localized_pattern. Add translator comments.
7770         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
7771         Suggested by Eric Blake.
7772         * modules/rpmatch (Depends-on): Add stdbool.
7773
7774 2008-04-28  Eric Blake  <ebb9@byu.net>
7775
7776         Add rawmemchr module, matching glibc.
7777         * modules/string (Makefile.am): New indicator.
7778         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
7779         * lib/string.in.h (rawmemchr): Declare when appropriate.
7780         * modules/rawmemchr: New file.
7781         * m4/rawmemchr.m4: Likewise.
7782         * lib/rawmemchr.c: Likewise.
7783         * modules/rawmemchr-tests: Likewise.
7784         * tests/test-rawmemchr.c: Likewise.
7785         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
7786         module.
7787         * modules/strchrnul (Depends-on): Add rawmemchr.
7788         * lib/strchrnul.c (strchrnul): Optimize a corner case.
7789
7790         Whitespace cleanup.
7791         * tests/test-strchrnul.c: Reindent.
7792         * lib/strchrnul.c: Likewise.
7793
7794         Optimize and test strchrnul.
7795         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
7796         * modules/strchrnul-tests: New file.
7797         * tests/test-strchrnul.c: Likewise.
7798
7799         Remove intprops dependency.
7800         * modules/memchr (Depends-on): Remove intprops.
7801         * modules/memrchr (Depends-on): Likewise.
7802         * modules/memchr2 (Depends-on): Likewise.
7803         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
7804         * lib/memrchr.c (__memrchr): Likewise.
7805         * lib/memrchr2.c (memchr2): Likewise.
7806         Reported by Simon Josefsson.
7807
7808 2008-04-28  Simon Josefsson  <simon@josefsson.org>
7809
7810         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
7811         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7812
7813 2008-04-28  Simon Josefsson  <simon@josefsson.org>
7814
7815         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
7816
7817         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
7818
7819         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
7820
7821         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
7822         declarations.
7823         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
7824
7825         * m4/inet_pton.m4: Don't check for header files.
7826
7827         * m4/inet_ntop.m4: Don't check for header files.
7828
7829 2008-04-28  Simon Josefsson  <simon@josefsson.org>
7830
7831         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
7832         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
7833         trigger for cygwin).
7834         Reported by Bruno Haible  <bruno@clisp.org>.
7835
7836 2008-04-28  Bruno Haible  <bruno@clisp.org>
7837
7838         * doc/posix-functions/strdup.texi: Mention mingw problem.
7839
7840 2008-04-27  Bruno Haible  <bruno@clisp.org>
7841
7842         * modules/stat-time-tests (Depends-on): Add sleep.
7843         * tests/test-stat-time.c (force_unlink): New function.
7844         (cleanup): Use it.
7845         (test_mtime): Remove the ctime related tests.
7846         (test_ctime): New function, containing the ctime related tests.
7847         (main): Call test_ctime, except on native Windows platforms.
7848
7849 2008-04-27  Bruno Haible  <bruno@clisp.org>
7850
7851         * lib/rpmatch.c (rpmatch): Add some comments.
7852         Reported by James Youngman <jay@gnu.org>.
7853
7854 2008-04-27  Bruno Haible  <bruno@clisp.org>
7855
7856         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
7857         quiet NaNs.
7858
7859 2008-04-27  Bruno Haible  <bruno@clisp.org>
7860
7861         Make test-yesno.sh work on mingw.
7862         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
7863         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
7864         (main): Set stdin to binary mode.
7865         * modules/yesno-tests (Depends-on): Add binary-io.
7866
7867 2008-04-27  Bruno Haible  <bruno@clisp.org>
7868
7869         Fix 'isfinite' on x86, x86_64, ia64 platforms.
7870         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
7871         argument that lie outside the IEEE 854 domain.
7872         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
7873         (gl_ISFINITE): Use it.
7874         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
7875
7876 2008-04-27  Bruno Haible  <bruno@clisp.org>
7877
7878         Allow local renaming in config.h.
7879         * lib/memrchr.c (memrchr): Don't undefine outside libc.
7880
7881 2008-04-27  Bruno Haible  <bruno@clisp.org>
7882
7883         * lib/memchr.c (__memchr): Change type of 'i'.
7884         * lib/memchr2.c (memchr2): Likewise.
7885
7886 2008-04-26  Eric Blake  <ebb9@byu.net>
7887         and Bruno Haible  <bruno@clisp.org>
7888
7889         Optimize and test memrchr.
7890         * modules/memrchr (Depends-on): Add intprops.
7891         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
7892         * modules/memrchr-tests: New file.
7893         * tests/test-memrchr.c: New file.
7894
7895 2008-04-26  Bruno Haible  <bruno@clisp.org>
7896
7897         Add tentative support for DragonFly BSD.
7898         * lib/stdio-impl.h: Add macros for DragonFly BSD.
7899         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
7900         fp.
7901         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
7902         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
7903         * lib/fpurge.c (fpurge): Likewise.
7904         * lib/freadable.c (freaadable): Likewise.
7905         * lib/freadahead.c (freadahead): Likewise.
7906         * lib/freading.c (freading): Likewise.
7907         * lib/freadptr.c (freadptr): Likewise.
7908         * lib/freadseek.c (freadptrinc): Likewise.
7909         * lib/fseeko.c (fseeko): Likewise.
7910         * lib/fseterr.c (fseterr): Likewise.
7911         * lib/fwritable.c (fwritable): Likewise.
7912         * lib/fwriting.c (fwriting): Likewise.
7913
7914 2008-04-26  Bruno Haible  <bruno@clisp.org>
7915
7916         * lib/stdio-impl.h: New file.
7917         * lib/fbufmode.c: Include stdio-impl.h.
7918         (fbufmode): Use fp_, remove redundant #defines.
7919         * lib/fflush.c: Include stdio-impl.h.
7920         (clear_ungetc_buffer): Remove redundant #defines.
7921         * lib/fpurge.c: Include stdio-impl.h.
7922         (fpurge): Remove redundant #defines.
7923         * lib/freadable.c: Include stdio-impl.h.
7924         (freadable): Remove redundant #defines.
7925         * lib/freadahead.c: Include stdio-impl.h.
7926         (freadahead): Remove redundant #defines.
7927         * lib/freading.c: Include stdio-impl.h.
7928         (freading): Remove redundant #defines.
7929         * lib/freadptr.c: Include stdio-impl.h.
7930         (freadptr): Remove redundant #defines.
7931         * lib/freadseek.c: Include stdio-impl.h.
7932         (freadptrinc): Remove redundant #defines.
7933         * lib/fseeko.c: Include stdio-impl.h.
7934         (rpl_fseeko): Remove redundant #defines.
7935         * lib/fseterr.c: Include stdio-impl.h.
7936         (fseterr): Remove redundant #defines.
7937         * lib/fwritable.c: Include stdio-impl.h.
7938         (fwritable: Remove redundant #defines.
7939         * lib/fwriting.c: Include stdio-impl.h.
7940         (fwriting): Remove redundant #defines.
7941         * modules/fbufmode (Files): Add lib/stdio-impl.h.
7942         * modules/fflush (Files): Likewise.
7943         * modules/fpurge (Files): Likewise.
7944         * modules/freadable (Files): Likewise.
7945         * modules/freadahead (Files): Likewise.
7946         * modules/freading (Files): Likewise.
7947         * modules/freadptr (Files): Likewise.
7948         * modules/freadseek (Files): Likewise.
7949         * modules/fseeko (Files): Likewise.
7950         * modules/fseterr (Files): Likewise.
7951         * modules/fwritable (Files): Likewise.
7952         * modules/fwriting (Files): Likewise.
7953
7954 2008-04-26  Bruno Haible  <bruno@clisp.org>
7955
7956         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
7957         restore_seek_optimization, update_fpos_cache): New functions, extracted
7958         from rpl_fflush.
7959         (rpl_fflush): Use them.
7960         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
7961         (gl_REPLACE_FFLUSH): Use it.
7962
7963 2008-04-26  Bruno Haible  <bruno@clisp.org>
7964
7965         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
7966         on Solaris.
7967         * tests/test-xstrtoimax.sh: Likewise.
7968         * tests/test-xstrtoumax.sh: Likewise.
7969         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7970
7971 2008-04-26  Bruno Haible  <bruno@clisp.org>
7972
7973         * modules/memchr-tests: New file.
7974         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
7975
7976 2008-04-26  Eric Blake  <ebb9@byu.net>
7977             Bruno Haible  <bruno@clisp.org>
7978
7979         * lib/memchr.c: Include intprops.h.
7980         (__memchr): Optimize parallel detection of matching bytes. Rename local
7981         variables. Add explanatory comments.
7982
7983 2008-04-26  Bruno Haible  <bruno@clisp.org>
7984
7985         Fix module 'memchr', broken since 2000-10-28.
7986         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
7987
7988 2008-04-26  Bruno Haible  <bruno@clisp.org>
7989
7990         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
7991         comments.
7992
7993 2008-04-25  Eric Blake  <ebb9@byu.net>
7994
7995         Use native fstatat on cygwin 1.7.0.
7996         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
7997         first.
7998
7999 2008-04-23  Eric Blake  <ebb9@byu.net>
8000
8001         Improve memchr2 performance.
8002         * lib/memchr2.c (memchr2): Further optimize parallel detection of
8003         NUL bytes.
8004         * modules/memchr2 (Depends-on): Use intprops.h.
8005
8006 2008-04-23  Simon Josefsson  <simon@josefsson.org>
8007
8008         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
8009         an inline function instead of a CPP macro.  Patch by Ben Pfaff
8010         <blp@cs.stanford.edu>.
8011
8012 2008-04-23  Simon Josefsson  <simon@josefsson.org>
8013
8014         * lib/arpa_inet.in.h: New file.
8015
8016         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
8017         (Makefile.am): Sed in substitute header file.
8018
8019         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
8020         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
8021
8022         * modules/inet_ntop (configure.ac): Use
8023         gl_ARPA_INET_MODULE_INDICATOR.
8024
8025         * modules/inet_pton (configure.ac): Use
8026         gl_ARPA_INET_MODULE_INDICATOR.
8027
8028 2008-04-22  Jim Meyering  <meyering@redhat.com>
8029
8030         * modules/verify (License): Re-license as LGPLv2+.
8031
8032 2008-04-22  Simon Josefsson  <simon@josefsson.org>
8033
8034         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
8035         parameter to void* as per POSIX standard (MinGW uses char*).
8036
8037 2008-04-21  Bruno Haible  <bruno@clisp.org>
8038
8039         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
8040         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
8041         Define to replacements if REPLACE_ISWCNTRL is 1.
8042         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
8043         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
8044         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
8045         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
8046         what it fixes.
8047         * doc/posix-functions/iswalpha.texi: Likewise.
8048         * doc/posix-functions/iswblank.texi: Likewise.
8049         * doc/posix-functions/iswcntrl.texi: Likewise.
8050         * doc/posix-functions/iswdigit.texi: Likewise.
8051         * doc/posix-functions/iswgraph.texi: Likewise.
8052         * doc/posix-functions/iswlower.texi: Likewise.
8053         * doc/posix-functions/iswprint.texi: Likewise.
8054         * doc/posix-functions/iswpunct.texi: Likewise.
8055         * doc/posix-functions/iswspace.texi: Likewise.
8056         * doc/posix-functions/iswupper.texi: Likewise.
8057         * doc/posix-functions/iswxdigit.texi: Likewise.
8058         Reported by Alain Guibert.
8059
8060 2008-04-21  Bruno Haible  <bruno@clisp.org>
8061
8062         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
8063         Patch by Alain Guibert.
8064
8065 2008-04-21  Bruno Haible  <bruno@clisp.org>
8066
8067         Fix test failures on mingw.
8068         * tests/test-xstrtol.c (print_no_progname): New function.
8069         (main): Install it in error_print_progname hook.
8070         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
8071         * tests/test-xstrtoimax.sh: Likewise.
8072         * tests/test-xstrtoumax.sh: Likewise.
8073
8074 2008-04-21  Bruno Haible  <bruno@clisp.org>
8075
8076         Fix test failure on mingw.
8077         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
8078
8079 2008-04-21  Bruno Haible  <bruno@clisp.org>
8080
8081         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
8082         Actually assign a value.
8083
8084 2008-04-20  Bruno Haible  <bruno@clisp.org>
8085
8086         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
8087         take 2.
8088         * lib/canonicalize.c (canonicalize_file_name): Elide if the
8089         'canonicalize-lgpl' module is also used.
8090         * lib/canonicalize-lgpl.c: Undo last change.
8091         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
8092
8093 2008-04-20  Bruno Haible  <bruno@clisp.org>
8094
8095         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
8096         config.h. Provide _mkdir based fallback for mingw.
8097         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
8098         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
8099         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
8100         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
8101         rather than defining mkdir in config.h.
8102         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
8103         (gl_SYS_STAT_H_DEFAULTS): New macro.
8104         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
8105         HAVE_IO_H any more.
8106         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
8107         HAVE_DECL_MKDIR and HAVE_IO_H.
8108
8109 2008-04-20  Bruno Haible  <bruno@clisp.org>
8110
8111         * lib/isapipe.c: Port to native Windows platforms.
8112
8113 2008-04-20  Bruno Haible  <bruno@clisp.org>
8114
8115         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
8116
8117 2008-04-21  Eric Blake  <ebb9@byu.net>
8118
8119         Work around preprocessors that don't handle UINTMAX_MAX.
8120         * lib/memchr2.c (memchr2): Avoid embedded #if.
8121         Reported by Alain Guibert, fix suggested by Bruno Haible.
8122
8123 2008-04-21  Simon Josefsson  <simon@josefsson.org>
8124
8125         * doc/posix-functions/strftime.texi (strftime): Explain better
8126         Windows incompatibility.  Suggested by Micah Cowan
8127         <micah@cowan.name>.
8128
8129 2008-04-20  Bruno Haible  <bruno@clisp.org>
8130
8131         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
8132         unistr/u8-mblen.
8133
8134 2008-04-20  Bruno Haible  <bruno@clisp.org>
8135
8136         Fix test failure on platforms with non-GNU iconv.
8137         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
8138         (U_TO_U8): Use it, rather than u16_to_u8.
8139         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
8140         units at the end of the input string.
8141         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
8142
8143 2008-04-20  Bruno Haible  <bruno@clisp.org>
8144
8145         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
8146         when the resulting length is 0.
8147         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
8148
8149 2008-04-20  Bruno Haible  <bruno@clisp.org>
8150
8151         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
8152         works.
8153         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
8154
8155 2008-04-20  Bruno Haible  <bruno@clisp.org>
8156
8157         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
8158         * modules/tsearch-tests (configure.ac): Test for initstate function.
8159
8160 2008-04-20  Bruno Haible  <bruno@clisp.org>
8161
8162         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
8163         for nlink_t if missing.
8164         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
8165
8166 2008-04-19  Bruno Haible  <bruno@clisp.org>
8167
8168         Work around snprintf bug on Linux libc5.
8169         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
8170         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
8171         gl_SNPRINTF_SIZE1.
8172         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
8173         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
8174         that test failed.
8175         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
8176         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
8177         * modules/snprintf (Files): Add m4/printf.m4.
8178         * modules/vsnprintf (Files): Likewise.
8179         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
8180         * doc/posix-functions/vsnprintf.texi: Likewise.
8181
8182 2008-04-19  Bruno Haible  <bruno@clisp.org>
8183
8184         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
8185         from 0.0058 to less than 10^-7.
8186
8187 2008-04-19  Bruno Haible  <bruno@clisp.org>
8188
8189         Fix rounding when a precision is given.
8190         * lib/vasnprintf.c (is_borderline): New function.
8191         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
8192         9...9x.
8193         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
8194         %e, %g.
8195         * tests/test-vasprintf-posix.c (test_function): Likewise.
8196         * tests/test-snprintf-posix.h (test_function): Likewise.
8197         * tests/test-sprintf-posix.h (test_function): Likewise.
8198         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
8199         * tests/test-printf-posix.h (test_function): Likewise.
8200         * tests/test-printf-posix.output: Update.
8201         Reported by John Darrington <john@darrington.wattle.id.au> via
8202         Ben Pfaff <blp@cs.stanford.edu>.
8203
8204 2008-04-18  Simon Josefsson  <simon@josefsson.org>
8205
8206         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
8207         Suggested by Bruno Haible <bruno@clisp.org>.
8208
8209 2008-04-17  Bruno Haible  <bruno@clisp.org>
8210
8211         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
8212         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
8213         implementation.
8214         Patch by Bruce Merry <bmerry@gmail.com>.
8215
8216 2008-04-17  Simon Josefsson  <simon@josefsson.org>
8217
8218         * doc/posix-functions/strftime.texi (strftime): Mention that %e
8219         doesn't work under Windows.
8220
8221 2008-04-16  Bruno Haible  <bruno@clisp.org>
8222
8223         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
8224         New macros.
8225         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
8226         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
8227         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
8228         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
8229         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
8230         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
8231         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
8232         macros.
8233         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
8234         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
8235         Northern Sotho, Uighur.
8236
8237 2008-04-16  Bruno Haible  <bruno@clisp.org>
8238
8239         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
8240         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
8241         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
8242         Reported by Daniel Bergström <daniel@octocode.com>.
8243
8244 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
8245             Bruno Haible  <bruno@clisp.org>
8246
8247         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
8248         function.
8249         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
8250         New functions, mostly extracted from gl_locale_name_default.
8251         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
8252
8253 2008-04-16  Eric Blake  <ebb9@byu.net>
8254
8255         Adjust strtod detection to catch glibc 2.7 bug.
8256         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
8257         Reported by John Gatewood Ham.
8258
8259 2008-04-16  Bruno Haible  <bruno@clisp.org>
8260
8261         Add tentative support for Linux libc5.
8262         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
8263         * lib/fpurge.c (fpurge): Likewise.
8264         * lib/freadable.c (freadable): Likewise.
8265         * lib/freadahead.c (freadahead): Likewise.
8266         * lib/freading.c (freading): Likewise.
8267         * lib/freadptr.c (freadptr): Likewise.
8268         * lib/freadseek.c (freadptrinc): Likewise.
8269         * lib/fseeko.c (rpl_fseeko): Likewise.
8270         * lib/fseterr.c (fseterr): Likewise.
8271         * lib/fwritable.c (fwritable): Likewise.
8272         * lib/fwriting.c (fwriting): Likewise.
8273         Reported by Alain Guibert <alguibert+bts@free.fr>.
8274
8275 2008-04-15  Bruno Haible  <bruno@clisp.org>
8276
8277         * modules/mathl (configure.ac): Define module indicator.
8278
8279 2008-04-15  Bruno Haible  <bruno@clisp.org>
8280
8281         * lib/logl.c (logl): Remove unused variables.
8282
8283 2008-04-15  Bruno Haible  <bruno@clisp.org>
8284
8285         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
8286         fails.
8287
8288 2008-04-15  Bruno Haible  <bruno@clisp.org>
8289
8290         * lib/trim.c (trim2): Fix argument of isspace() macro.
8291
8292 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
8293
8294         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
8295         to 0.
8296         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
8297
8298 2008-04-14  Bruno Haible  <bruno@clisp.org>
8299
8300         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
8301         AC_LANG_PROGRAM argument.
8302         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
8303         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
8304         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
8305         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
8306         * m4/math_h.m4 (gl_MATH_H): Likewise.
8307         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
8308         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
8309         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
8310         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
8311         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
8312         * m4/regex.m4 (gl_REGEX): Likewise.
8313         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
8314         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
8315         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8316         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
8317         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
8318         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
8319         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
8320         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
8321
8322 2008-04-14  Jim Meyering  <meyering@redhat.com>
8323
8324         test-strtod: fix typos: s/abs/fabs/
8325         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
8326
8327 2008-04-13  Bruno Haible  <bruno@clisp.org>
8328
8329         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
8330         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
8331         module is also used and while not building the reloc-wrapper.
8332
8333 2008-04-13  Bruno Haible  <bruno@clisp.org>
8334
8335         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
8336
8337 2008-04-13  Bruno Haible  <bruno@clisp.org>
8338
8339         Fix AIX compilation failure introduced on 2008-04-02.
8340         * tests/test-frexp.c (exp): Undefine before redefining.
8341         * tests/test-frexpl.c (exp): Likewise.
8342
8343 2008-04-13  Bruno Haible  <bruno@clisp.org>
8344
8345         Work around a HP-UX stdio bug.
8346         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
8347         * tests/test-ftello.c (main): Likewise.
8348         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
8349         * doc/posix-functions/ftello.texi: Likewise.
8350
8351 2008-04-13  Bruno Haible  <bruno@clisp.org>
8352
8353         Make test-signbit pass on HP-UX/hppa.
8354         * tests/test-signbit.c (minus_zerol): New variable.
8355         (test_signbitl): Use it.
8356
8357 2008-04-13  Bruno Haible  <bruno@clisp.org>
8358
8359         Make truncl work on OSF/1 4.0.
8360         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
8361         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
8362         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
8363         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
8364         HAVE_DECL_TRUNCL.
8365         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
8366         HAVE_DECL_TRUNCL.
8367         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
8368
8369 2008-04-13  Bruno Haible  <bruno@clisp.org>
8370
8371         * lib/unictype.h: Remove trailing comma from enumeration definitions.
8372
8373 2008-04-13  Bruno Haible  <bruno@clisp.org>
8374
8375         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
8376         expression, so as to avoid HP-UX 11 cc compiler bug.
8377
8378 2008-04-13  Bruno Haible  <bruno@clisp.org>
8379
8380         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
8381
8382 2008-04-13  Bruno Haible  <bruno@clisp.org>
8383
8384         * lib/git-merge-changelog.c: Remove empty declaration outside of
8385         functions.
8386
8387 2008-04-13  Bruno Haible  <bruno@clisp.org>
8388
8389         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
8390
8391 2008-04-13  Bruno Haible  <bruno@clisp.org>
8392
8393         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
8394         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
8395         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
8396         also if it exists but lacks definitions of the SHUT_* macros.
8397         * modules/sys_socket (Description): Update.
8398         Reported by Elbert Pol <e.pol@chello.nl>.
8399
8400 2008-04-13  Bruno Haible  <bruno@clisp.org>
8401
8402         * lib/localcharset.c (OS2): Don't redefine if already defined.
8403         Reported by Elbert Pol <e.pol@chello.nl>.
8404
8405 2008-04-13  Bruno Haible  <bruno@clisp.org>
8406
8407         * lib/binary-io.h [__EMX__]: Include <io.h>.
8408         Reported by Elbert Pol <e.pol@chello.nl>.
8409
8410 2008-04-12  Bruno Haible  <bruno@clisp.org>
8411
8412         * lib/fpucw.h: Enable the definitions also for x86_64.
8413         Needed for NetBSD/x86_64.
8414         Reported by Thomas Klausner <tk@giga.or.at>.
8415
8416 2008-04-12  Bruno Haible  <bruno@clisp.org>
8417
8418         * tests/test-strtod.c: Include isnand.h.
8419         (main): Use isnand instead of isnan.
8420         Reported by Jim Meyering.
8421
8422 2008-04-12  Bruno Haible  <bruno@clisp.org>
8423
8424         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
8425         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
8426
8427 2008-04-12  Jim Meyering  <meyering@redhat.com>
8428
8429         * m4/math_h.m4 (gl_MATH_H): Fix typos.
8430
8431 2008-04-12  Bruno Haible  <bruno@clisp.org>
8432
8433         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
8434         Reported by Elbert Pol <e.pol@chello.nl>.
8435
8436 2008-04-12  Eric Blake  <ebb9@byu.net>
8437
8438         Work around Solaris 10 math.h bug.
8439         * m4/math_h.m4 (gl_MATH_H): Check for bug.
8440         (gl_MATH_H_DEFAULTS): Set up default.
8441         * modules/math (Makefile.am): Replace new indicators.
8442         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
8443         * tests/test-math.c (main): Test this.
8444         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
8445         * doc/posix-headers/math.texi (math.h): Mention bug.
8446         Reported by Nelson H. F. Beebe and Jim Meyering.
8447
8448 2008-04-11  Bruno Haible  <bruno@clisp.org>
8449
8450         Adapt to future versions of Apple GCC.
8451         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
8452         Reported by Peter O'Gorman <peter@pogma.com>.
8453
8454 2008-04-11  Bruno Haible  <bruno@clisp.org>
8455
8456         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
8457
8458 2008-04-11  Bruno Haible  <bruno@clisp.org>
8459
8460         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
8461
8462         * modules/getaddrinfo-tests (Makefile.am): Define
8463         test_getaddrinfo_LDADD.
8464
8465 2008-04-11  Bruno Haible  <bruno@clisp.org>
8466
8467         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
8468         (init): Fix syntax error.
8469         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
8470         is declared.
8471
8472 2008-04-11  Bruno Haible  <bruno@clisp.org>
8473
8474         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
8475         * modules/glob (Depends-on): Add stdbool.
8476
8477 2008-04-11  Bruno Haible  <bruno@clisp.org>
8478
8479         * lib/trim.c: Include <string.h>.
8480
8481 2008-04-11  Eric Blake  <ebb9@byu.net>
8482
8483         Avoid compile failure on OS/2.
8484         * lib/regex_internal.h (internal_function): Disable optimization
8485         on OS/2 (__EMX__), where it caused compiler error.
8486         Reported by Elbert Pol.
8487
8488 2008-04-11  Bruno Haible  <bruno@clisp.org>
8489
8490         Flush the standard error stream before aborting. Needed on mingw.
8491         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
8492         * tests/test-array_list.c (ASSERT): Likewise.
8493         * tests/test-array_oset.c (ASSERT): Likewise.
8494         * tests/test-avltree_list.c (ASSERT): Likewise.
8495         * tests/test-avltree_oset.c (ASSERT): Likewise.
8496         * tests/test-avltreehash_list.c (ASSERT): Likewise.
8497         * tests/test-binary-io.c (ASSERT): Likewise.
8498         * tests/test-byteswap.c (ASSERT): Likewise.
8499         * tests/test-c-ctype.c (ASSERT): Likewise.
8500         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
8501         * tests/test-c-strcasestr.c (ASSERT): Likewise.
8502         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
8503         * tests/test-c-strstr.c (ASSERT): Likewise.
8504         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
8505         * tests/test-canonicalize.c (ASSERT): Likewise.
8506         * tests/test-carray_list.c (ASSERT): Likewise.
8507         * tests/test-ceilf1.c (ASSERT): Likewise.
8508         * tests/test-ceilf2.c (ASSERT): Likewise.
8509         * tests/test-ceill.c (ASSERT): Likewise.
8510         * tests/test-count-one-bits.c (ASSERT): Likewise.
8511         * tests/test-fbufmode.c (ASSERT): Likewise.
8512         * tests/test-fflush2.c (ASSERT): Likewise.
8513         * tests/test-floorf1.c (ASSERT): Likewise.
8514         * tests/test-floorf2.c (ASSERT): Likewise.
8515         * tests/test-floorl.c (ASSERT): Likewise.
8516         * tests/test-fopen.c (ASSERT): Likewise.
8517         * tests/test-fpending.c (ASSERT): Likewise.
8518         * tests/test-fprintf-posix.c (ASSERT): Likewise.
8519         * tests/test-fpurge.c (ASSERT): Likewise.
8520         * tests/test-freadable.c (ASSERT): Likewise.
8521         * tests/test-freadahead.c (ASSERT): Likewise.
8522         * tests/test-freading.c (ASSERT): Likewise.
8523         * tests/test-freadptr.c (ASSERT): Likewise.
8524         * tests/test-freadptr2.c (ASSERT): Likewise.
8525         * tests/test-freadseek.c (ASSERT): Likewise.
8526         * tests/test-freopen.c (ASSERT): Likewise.
8527         * tests/test-frexp.c (ASSERT): Likewise.
8528         * tests/test-frexpl.c (ASSERT): Likewise.
8529         * tests/test-fseek.c (ASSERT): Likewise.
8530         * tests/test-fseeko.c (ASSERT): Likewise.
8531         * tests/test-fstrcmp.c (ASSERT): Likewise.
8532         * tests/test-ftell.c (ASSERT): Likewise.
8533         * tests/test-ftello.c (ASSERT): Likewise.
8534         * tests/test-func.c (ASSERT): Likewise.
8535         * tests/test-fwritable.c (ASSERT): Likewise.
8536         * tests/test-fwriting.c (ASSERT): Likewise.
8537         * tests/test-getdelim.c (ASSERT): Likewise.
8538         * tests/test-getline.c (ASSERT): Likewise.
8539         * tests/test-i-ring.c (ASSERT): Likewise.
8540         * tests/test-iconv-utf.c (ASSERT): Likewise.
8541         * tests/test-iconv.c (ASSERT): Likewise.
8542         * tests/test-isfinite.c (ASSERT): Likewise.
8543         * tests/test-isnand.c (ASSERT): Likewise.
8544         * tests/test-isnanf.c (ASSERT): Likewise.
8545         * tests/test-isnanl.h (ASSERT): Likewise.
8546         * tests/test-ldexpl.c (ASSERT): Likewise.
8547         * tests/test-linked_list.c (ASSERT): Likewise.
8548         * tests/test-linkedhash_list.c (ASSERT): Likewise.
8549         * tests/test-localename.c (ASSERT): Likewise.
8550         * tests/test-lseek.c (ASSERT): Likewise.
8551         * tests/test-mbscasecmp.c (ASSERT): Likewise.
8552         * tests/test-mbscasestr1.c (ASSERT): Likewise.
8553         * tests/test-mbscasestr2.c (ASSERT): Likewise.
8554         * tests/test-mbscasestr3.c (ASSERT): Likewise.
8555         * tests/test-mbscasestr4.c (ASSERT): Likewise.
8556         * tests/test-mbschr.c (ASSERT): Likewise.
8557         * tests/test-mbscspn.c (ASSERT): Likewise.
8558         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
8559         * tests/test-mbspbrk.c (ASSERT): Likewise.
8560         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
8561         * tests/test-mbsrchr.c (ASSERT): Likewise.
8562         * tests/test-mbsspn.c (ASSERT): Likewise.
8563         * tests/test-mbsstr1.c (ASSERT): Likewise.
8564         * tests/test-mbsstr2.c (ASSERT): Likewise.
8565         * tests/test-mbsstr3.c (ASSERT): Likewise.
8566         * tests/test-memchr2.c (ASSERT): Likewise.
8567         * tests/test-memmem.c (ASSERT): Likewise.
8568         * tests/test-open.c (ASSERT): Likewise.
8569         * tests/test-printf-frexp.c (ASSERT): Likewise.
8570         * tests/test-printf-frexpl.c (ASSERT): Likewise.
8571         * tests/test-printf-posix.c (ASSERT): Likewise.
8572         * tests/test-quotearg.c (ASSERT): Likewise.
8573         * tests/test-rbtree_list.c (ASSERT): Likewise.
8574         * tests/test-rbtree_oset.c (ASSERT): Likewise.
8575         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
8576         * tests/test-round1.c (ASSERT): Likewise.
8577         * tests/test-roundf1.c (ASSERT): Likewise.
8578         * tests/test-roundl.c (ASSERT): Likewise.
8579         * tests/test-signbit.c (ASSERT): Likewise.
8580         * tests/test-sleep.c (ASSERT): Likewise.
8581         * tests/test-snprintf-posix.c (ASSERT): Likewise.
8582         * tests/test-snprintf.c (ASSERT): Likewise.
8583         * tests/test-sprintf-posix.c (ASSERT): Likewise.
8584         * tests/test-stat-time.c (ASSERT): Likewise.
8585         * tests/test-strcasestr.c (ASSERT): Likewise.
8586         * tests/test-strerror.c (ASSERT): Likewise.
8587         * tests/test-striconv.c (ASSERT): Likewise.
8588         * tests/test-striconveh.c (ASSERT): Likewise.
8589         * tests/test-striconveha.c (ASSERT): Likewise.
8590         * tests/test-strsignal.c (ASSERT): Likewise.
8591         * tests/test-strstr.c (ASSERT): Likewise.
8592         * tests/test-strtod.c (ASSERT): Likewise.
8593         * tests/test-trunc1.c (ASSERT): Likewise.
8594         * tests/test-trunc2.c (ASSERT): Likewise.
8595         * tests/test-truncf1.c (ASSERT): Likewise.
8596         * tests/test-truncf2.c (ASSERT): Likewise.
8597         * tests/test-truncl.c (ASSERT): Likewise.
8598         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
8599         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
8600         * tests/test-vasnprintf.c (ASSERT): Likewise.
8601         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
8602         * tests/test-vasprintf.c (ASSERT): Likewise.
8603         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
8604         * tests/test-vprintf-posix.c (ASSERT): Likewise.
8605         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
8606         * tests/test-vsnprintf.c (ASSERT): Likewise.
8607         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
8608         * tests/test-wcwidth.c (ASSERT): Likewise.
8609         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
8610         * tests/test-xprintf-posix.c (ASSERT): Likewise.
8611         * tests/test-xvasprintf.c (ASSERT): Likewise.
8612         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
8613         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
8614         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
8615         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
8616         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
8617         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
8618         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
8619         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
8620         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
8621         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
8622         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
8623         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
8624         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
8625         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
8626         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
8627         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
8628         * tests/unictype/test-block_list.c (ASSERT): Likewise.
8629         * tests/unictype/test-block_of.c (ASSERT): Likewise.
8630         * tests/unictype/test-block_test.c (ASSERT): Likewise.
8631         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
8632         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
8633         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
8634         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
8635         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
8636         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
8637         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
8638         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
8639         * tests/unictype/test-combining.c (ASSERT): Likewise.
8640         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
8641         * tests/unictype/test-digit.c (ASSERT): Likewise.
8642         * tests/unictype/test-mirror.c (ASSERT): Likewise.
8643         * tests/unictype/test-numeric.c (ASSERT): Likewise.
8644         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
8645         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
8646         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
8647         * tests/unictype/test-scripts.c (ASSERT): Likewise.
8648         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
8649         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
8650         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
8651         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
8652         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
8653         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
8654         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
8655         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
8656         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
8657         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
8658         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
8659         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
8660         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
8661         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
8662         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
8663         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
8664         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
8665         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
8666         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
8667         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
8668         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
8669         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
8670         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
8671         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
8672         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
8673         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
8674         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
8675         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
8676         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
8677         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
8678         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
8679         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
8680         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
8681         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
8682         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
8683         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
8684         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
8685         Reported by Eric Blake.
8686
8687 2008-04-11  Bruno Haible  <bruno@clisp.org>
8688
8689         * lib/wchar.in.h: Tweak comment.
8690
8691 2008-04-11  Bruno Haible  <bruno@clisp.org>
8692
8693         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
8694         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
8695         gl_COMMON.
8696         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
8697
8698 2008-04-11  Bruno Haible  <bruno@clisp.org>
8699
8700         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
8701
8702 2008-04-11  Simon Josefsson  <simon@josefsson.org>
8703
8704         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
8705         of attempting to use non-existing /dev/*random.  Based on patch
8706         from Adam Strzelecki <ono@java.pl> in
8707         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
8708
8709 2008-04-08  Bruno Haible  <bruno@clisp.org>
8710
8711         Add tentative support for emx+gcc.
8712         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
8713         * lib/fpurge.c (fpurge): Likewise.
8714         * lib/freadable.c (freadable): Likewise.
8715         * lib/freadahead.c (freadahead): Likewise.
8716         * lib/freading.c (freading): Likewise.
8717         * lib/freadptr.c (freadptr): Likewise.
8718         * lib/freadseek.c (freadptrinc): Likewise.
8719         * lib/fseeko.c (rpl_fseeko): Likewise.
8720         * lib/fseterr.c (fseterr): Likewise.
8721         * lib/fwritable.c (fwritable): Likewise.
8722         * lib/fwriting.c (fwriting): Likewise.
8723         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
8724
8725 2008-04-09  Eric Blake  <ebb9@byu.net>
8726
8727         Avoid some autoconf warnings.
8728         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
8729         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
8730         * m4/afs.m4 (gl_AFS): Likewise.
8731         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
8732         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
8733         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
8734         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
8735         (gl_INTEGER_TYPE_SUFFIX): Likewise.
8736         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
8737         (AC_CHECK_DECLS_ONCE): Likewise.
8738         Rename file...
8739         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
8740         gnulib-tool requires autoconf 2.59 or better.
8741         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
8742
8743 2008-04-08  Eric Blake  <ebb9@byu.net>
8744
8745         Use 'git describe --match' if present (added in git 1.5.5).
8746         * build-aux/git-version-gen: Limit result to tags that match 'v*'
8747         if possible.
8748
8749 2008-04-08  Bruno Haible  <bruno@clisp.org>
8750
8751         Add tentative support for OpenServer.
8752         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
8753         _ptr, _cnt.
8754         * lib/fpurge.c (fpurge): Likewise.
8755         * lib/freadable.c (freadable): Likewise.
8756         * lib/freadahead.c (freadahead): Likewise.
8757         * lib/freading.c (freading): Likewise.
8758         * lib/freadptr.c (freadptr): Likewise.
8759         * lib/freadseek.c (freadptrinc): Likewise.
8760         * lib/fseeko.c (rpl_fseeko): Likewise.
8761         * lib/fseterr.c (fseterr): Likewise.
8762         * lib/fwritable.c (fwritable): Likewise.
8763         * lib/fwriting.c (fwriting): Likewise.
8764         Reported by Roger Cornelius <rac@tenzing.org> and
8765         Brian K. White <brian@aljex.com>.
8766
8767 2008-04-06  Jim Meyering  <meyering@redhat.com>
8768
8769         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
8770
8771 2008-04-06  Bruno Haible  <bruno@clisp.org>
8772
8773         Avoid possible error with non-ASCII bytes in UTF-8 locales.
8774         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
8775         * tests/test-printf-posix.sh: Likewise.
8776         * tests/test-vfprintf-posix.sh: Likewise.
8777         * tests/test-vprintf-posix.sh: Likewise.
8778         * tests/test-xprintf-posix.sh: Likewise.
8779
8780 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8781
8782         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
8783         hide error from 'ls', needed on OS/2.
8784         Report by Elbert Pol <elbert.pol@gmail.com>.
8785
8786 2008-04-04  Eric Blake  <ebb9@byu.net>
8787
8788         Make test-fseeko.c failures meaningful.
8789         * tests/test-fseeko.c: Print line number on failure.
8790         * tests/test-fseek.c: Likewise.
8791         Reported by Nelson H. F. Beebe.
8792
8793         Improve strtod bug detection check.
8794         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
8795         required for Solaris 10.
8796         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
8797
8798 2008-04-04  Bruno Haible  <bruno@clisp.org>
8799
8800         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
8801         by m4/setenv.m4.
8802
8803 2008-04-03  Eric Blake  <ebb9@byu.net>
8804
8805         Ensure sane .version contents.
8806         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
8807         version string.
8808         * build-aux/git-version-gen: Improve documentation.
8809
8810         Make GNU make output nicer.
8811         * top/GNUmakefile [!_have-Makefile]: Add dependency on
8812         MAKECMDGOALS to enforce message for all command line targets.  Set
8813         srcdir for use in maint.mk.
8814
8815         Another maintainer tweak.
8816         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
8817         a target that regenerates version.
8818
8819 2008-04-03  Jim Meyering  <meyering@redhat.com>
8820
8821         vc-list-files: don't cause coreutils "make po-check" failure
8822         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
8823
8824 2008-04-03  Eric Blake  <ebb9@byu.net>
8825
8826         Allow VPATH usage of vc-list-files.
8827         * build-aux/vc-list-files (scriptversion): Add timestamp.
8828         (options): Add --help, --version, -C.
8829         (CVS): Support installed cvsu.
8830
8831 2008-04-02  Bruno Haible  <bruno@clisp.org>
8832
8833         Avoid some "statement with no effect" warnings from gcc.
8834         * tests/test-wctype.c (main): Explicitly ignore unused values.
8835         Reported by Jim Meyering.
8836
8837 2008-04-02  Jim Meyering  <meyering@redhat.com>
8838
8839         Avoid some warnings from "gcc -Wshadow".
8840         * tests/test-frexp.c (exp): Define to a different identifier.
8841         * tests/test-frexpl.c (exp): Likewise.
8842
8843 2008-04-03  Jim Meyering  <meyering@redhat.com>
8844
8845         bootstrap: remove dangling *.[ch] symlinks from lib
8846         * build-aux/bootstrap [dangling symlink removal]: Move find's
8847         -depth option to precede all others, to avoid a warning.
8848         Remove *.[ch] files too, and from "$source_base" (usually lib/).
8849
8850 2008-04-02  Bruno Haible  <bruno@clisp.org>
8851
8852         Avoid some warnings from "gcc -Wshadow".
8853         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
8854         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
8855         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
8856         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
8857         Reported by Jim Meyering.
8858
8859 2008-04-01  Bruno Haible  <bruno@clisp.org>
8860
8861         Fix test to work on IRIX 6.5 with cc.
8862         * tests/test-math.c (numeric_equal): New function.
8863         (main): Use it.
8864
8865 2008-04-01  Bruno Haible  <bruno@clisp.org>
8866
8867         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
8868
8869 2008-04-01  Bruno Haible  <bruno@clisp.org>
8870
8871         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
8872         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
8873         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
8874         (Depends-on): Remove math.
8875
8876         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
8877         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
8878         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
8879         (Depends-on): Remove math.
8880
8881         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
8882         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
8883         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
8884         (Depends-on): Remove math.
8885         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
8886         (Depends-on): Remove math.
8887
8888         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
8889         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
8890         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
8891         (Depends-on): Remove math.
8892         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
8893         (Depends-on): Remove math.
8894
8895         * tests/test-round1.c: Include nan.h.
8896         (main): Use NaNd instead of NAN.
8897         * modules/round-tests (Files): Add tests/nan.h.
8898
8899         * tests/test-trunc1.c: Include nan.h.
8900         (main): Use NaNd instead of NAN.
8901         * modules/trunc-tests (Files): Add tests/nan.h.
8902
8903         * tests/test-roundf1.c: Include nan.h.
8904         (main): Use NaNf instead of NAN.
8905         * modules/roundf-tests (Files): Add tests/nan.h.
8906
8907         * tests/test-truncf1.c: Include nan.h.
8908         (main): Use NaNf instead of NAN.
8909         * modules/truncf-tests (Files): Add tests/nan.h.
8910
8911         * tests/test-ceilf1.c: Include nan.h.
8912         (main): Use NaNf instead of NAN.
8913         * modules/ceilf-tests (Files): Add tests/nan.h.
8914
8915         * tests/test-floorf1.c: Include nan.h.
8916         (main): Use NaNf instead of NAN.
8917         * modules/floorf-tests (Files): Add tests/nan.h.
8918
8919         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
8920         (main): Use NaNf instead of NAN.
8921         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
8922
8923         * tests/test-isnand.c: Include nan.h instead of <math.h>.
8924         (main): Use NaNd instead of NAN.
8925         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
8926
8927         * tests/test-frexp.c: Include nan.h.
8928         (main): Use NaNd instead of NAN.
8929         * modules/frexp-tests (Files): Add tests/nan.h.
8930
8931         * lib/isnan.c: Don't include <math.h>.
8932         (FUNC): Don't use NAN macro.
8933         * modules/isnand-nolibm (Depends-on): Remove math.
8934         * modules/isnanf-nolibm (Depends-on): Remove math.
8935         * modules/isnanl (Depends-on): Remove math.
8936         * modules/isnanl-nolibm (Depends-on): Remove math.
8937
8938         * tests/nan.h: New file.
8939
8940 2008-04-01  Eric Blake  <ebb9@byu.net>
8941
8942         Fix typos.
8943         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
8944         values to be the right type.
8945
8946         For now, cater to gnulib strtod inaccuracies.
8947         * tests/test-strtod.c (main): Allow 1-ulp error on expected
8948         fractional results.  While not as nice from a QoI perspective, it
8949         is a quicker patch than correctly implementing decimal to binary
8950         rounding.
8951
8952 2008-03-31  Eric Blake  <ebb9@byu.net>
8953
8954         Guarantee a definition of NAN.
8955         * lib/math.in.h (NAN): Define if missing.
8956         * tests/test-math.c (main): Test it.
8957         * doc/posix-headers/math.texi (math.h): Document this.
8958         * lib/isnan.c (rpl_isnand): Use it.
8959         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
8960         * tests/test-floorf1.c (NaN): Likewise.
8961         * tests/test-frexp.c (NaN): Likewise.
8962         * tests/test-isnand.c (NaN): Likewise.
8963         * tests/test-isnanf.c (NaN): Likewise.
8964         * tests/test-round1.c (NaN): Likewise.
8965         * tests/test-roundf1.c (NaN): Likewise.
8966         * tests/test-snprintf-posix.h (NaN): Likewise.
8967         * tests/test-sprintf-posix.h (NaN): Likewise.
8968         * tests/test-trunc1.c (NaN): Likewise.
8969         * tests/test-truncf1.c (NaN): Likewise.
8970         * tests/test-vasnprintf-posix.c (NaN): Likewise.
8971         * tests/test-vasprintf-posix.c (NaN): Likewise.
8972         * modules/isnand-nolibm (Depends-on): Add math.
8973         * modules/isnanf-nolibm (Depends-on): Likewise.
8974         * modules/isnanl (Depends-on): Likewise.
8975         * modules/isnanl-nolibm (Depends-on): Likewise.
8976         * modules/snprintf-posix-tests (Depends-on): Likewise.
8977         * modules/sprintf-posix-tests (Depends-on): Likewise.
8978         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
8979         * modules/vsprintf-posix-tests (Depends-on): Likewise.
8980         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
8981         * modules/vasprintf-posix-tests (Depends-on): Likewise.
8982
8983 2008-03-31  Bruno Haible  <bruno@clisp.org>
8984
8985         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
8986         * doc/posix-functions/strtod.texi: Likewise.
8987
8988 2008-03-31  Bruno Haible  <bruno@clisp.org>
8989
8990         * tests/test-strtod.c (main): Don't use C99 syntax.
8991
8992 2008-03-31  Bruno Haible  <bruno@clisp.org>
8993
8994         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
8995         Reported by Eric Blake.
8996
8997 2008-03-31  Jim Meyering  <meyering@redhat.com>
8998
8999         Don't compare actual signbit return values.
9000         * tests/test-strtod.c (main): Rather, compare only their
9001         zero/non-zero nature.
9002
9003 2008-03-31  Eric Blake  <ebb9@byu.net>
9004
9005         More strtod documentation.
9006         * doc/posix-functions/strtod.texi (strtod): Interpret more test
9007         failures as distinct bugs.
9008
9009 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
9010
9011         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
9012         Problem reported by Erik Benada in
9013         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
9014
9015 2008-03-30  Bruno Haible  <bruno@clisp.org>
9016
9017         * tests/test-strtod.c: Add comments about which assertion fails on which
9018         platform.
9019         * doc/posix-functions/strtod.texi: Add info about many more platforms.
9020
9021 2008-03-30  Eric Blake  <ebb9@byu.net>
9022
9023         Test signbit behavior on zeros.
9024         * tests/test-signbit.c (test_signbitf): Add tests for zero.
9025         (test_signbitd, test_signbitl): Likewise.
9026
9027         More strtod touchups.
9028         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
9029         sign of negative underflow, for now.  Use .5, not .1.
9030         * doc/posix-functions/strtod.texi (strtod): Mention these
9031         limitations.
9032         Reported by Jim Meyering.
9033
9034 2008-03-30  Bruno Haible  <bruno@clisp.org>
9035
9036         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
9037         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
9038
9039 2008-03-30  Bruno Haible  <bruno@clisp.org>
9040
9041         Avoid failure when attempting to return empty iconv results on some
9042         platforms.
9043         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
9044         allocation, don't report ENOMEM when the resulting string is empty.
9045
9046 2008-03-30  Bruno Haible  <bruno@clisp.org>
9047
9048         Fix buffer overrun.
9049         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
9050         Don't consider the width for tmp_length. Check count against tmp_length
9051         before doing the padding. Ensure enough allocation during padding.
9052
9053 2008-03-30  Eric Blake  <ebb9@byu.net>
9054
9055         strtod touchups.
9056         * lib/strtod.c (strtod): Avoid compiler warnings.
9057         Reported by Jim Meyering.
9058
9059 2008-03-30  Bruno Haible  <bruno@clisp.org>
9060
9061         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
9062         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
9063         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
9064         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
9065         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
9066         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
9067         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
9068         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
9069
9070         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
9071         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
9072         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
9073         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
9074         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
9075         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
9076         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
9077         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
9078
9079         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
9080         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
9081         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
9082         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
9083         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
9084         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
9085         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
9086         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
9087
9088         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
9089         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
9090
9091         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
9092         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
9093
9094         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
9095         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
9096
9097         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
9098         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
9099         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
9100
9101         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
9102         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
9103         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
9104
9105         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
9106         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
9107         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
9108
9109         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
9110         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
9111         * modules/vasprintf (Depends-on): Add EOVERFLOW.
9112
9113         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
9114         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
9115         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
9116         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
9117         (Depends-on): Add EOVERFLOW.
9118         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
9119         (Depends-on): Add EOVERFLOW.
9120         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
9121         (Depends-on): Add EOVERFLOW.
9122         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
9123         (Depends-on): Add EOVERFLOW.
9124         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
9125         (Depends-on): Add EOVERFLOW.
9126         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
9127         (Depends-on): Add EOVERFLOW.
9128         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
9129         (Depends-on): Add EOVERFLOW.
9130         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
9131         (Depends-on): Add EOVERFLOW.
9132
9133         * lib/sprintf.c (EOVERFLOW): Remove fallback.
9134         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
9135         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
9136
9137         * lib/snprintf.c (EOVERFLOW): Remove fallback.
9138         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
9139         * modules/snprintf (Depends-on): Add EOVERFLOW.
9140
9141         * lib/poll.c (EOVERFLOW): Remove fallback.
9142         * modules/poll (Depends-on): Add EOVERFLOW.
9143
9144         * lib/getugroups.c (EOVERFLOW): Remove fallback.
9145         * modules/getugroups (Depends-on): Add EOVERFLOW.
9146
9147         * lib/getdelim.c (EOVERFLOW): Remove fallback.
9148         * modules/getdelim (Depends-on): Add EOVERFLOW.
9149
9150         * lib/ftell.c (EOVERFLOW): Remove fallback.
9151         * modules/ftell (Depends-on): Add EOVERFLOW.
9152
9153         * lib/fprintf.c (EOVERFLOW): Remove fallback.
9154         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
9155         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
9156
9157         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
9158
9159         * modules/EOVERFLOW-tests: New file.
9160         * tests/test-EOVERFLOW.c: New file.
9161
9162         * modules/EOVERFLOW: New file.
9163         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
9164
9165 2008-03-30  Bruno Haible  <bruno@clisp.org>
9166
9167         Fix bug introduced on 2007-06-10.
9168         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
9169         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
9170
9171 2008-03-30  Bruno Haible  <bruno@clisp.org>
9172
9173         Improve freadseek's efficiency after ungetc.
9174         * lib/freadseek.c: Include freadahead.h.
9175         (freadptrinc): New function, extracted from freadseek.
9176         (freadseek): Use it in a loop. Use freadahead to determine the number
9177         of loop iterations.
9178         * modules/freadseek (Depends-on): Add freadahead.
9179         (configure.ac): Require AC_C_INLINE.
9180
9181 2008-03-30  Bruno Haible  <bruno@clisp.org>
9182
9183         * lib/freadseek.c (freadseek): Don't ignore the return value of
9184         freadptr.
9185
9186 2008-03-29  Eric Blake  <ebb9@byu.net>
9187
9188         Add hex float support.
9189         * modules/strtod (Depends-on): Add c-ctype.
9190         (Link): Mention POW_LIB.
9191         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
9192         whitespace between 'e' and exponent.
9193         * tests/test-strtod.c (main): Enable hex float tests.
9194         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
9195         now provides.
9196
9197         Document various strtod bugs, with some fixes.
9198         * doc/posix-functions/strtod.texi (strtod): Document bugs with
9199         "-0x", "inf", "nan", and hex constants.
9200         * doc/posix-functions/atof.texi (atof): Likewise.
9201         * modules/stdlib (Makefile.am): Support strtod.
9202         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
9203         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
9204         detect additional strtod bugs.
9205         * lib/stdlib.in.h (rpl_strtod): Add declarations.
9206         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
9207         bool where appropriate.  Parse 'inf' and 'nan'.
9208         * tests/test-strtod.c: New file.
9209         * modules/strtod (Depends-on): Add stdbool, stdlib.
9210         (configure.ac): Turn on module indicator.
9211         * modules/strtod-tests: New module.
9212
9213 2008-03-29  Eric Blake  <ebb9@byu.net>
9214
9215         Fix ftell on mingw.
9216         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
9217         * modules/ftell-tests (Depends-on): Add binary-io.
9218         * modules/ftello-tests (Depends-on): Likewise.
9219         * tests/test-ftell.c (main): Enhance test to cover behavior after
9220         ungetc.  Enforce binary mode.
9221         * tests/test-ftello.c (main): Likewise.
9222
9223         Pass test-freadseek on cygwin.
9224         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
9225         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
9226         ungetc buffer.
9227
9228         * tests/test-fflush2.c (main): Fix typo.
9229
9230 2008-03-29  Bruno Haible  <bruno@clisp.org>
9231
9232         * tests/test-fflush2.c (main): Temporarily disable the contents of
9233         this test.
9234         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
9235         Reported by Eric Blake.
9236
9237 2008-03-28  Simon Josefsson  <simon@josefsson.org>
9238
9239         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
9240         (GC_SHA224_DIGEST_SIZE): Add.
9241
9242         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
9243         (gc_hash_digest_length): Likewise.
9244         (gc_hash_buffer): Likewise.
9245
9246 2008-03-25  Bruno Haible  <bruno@clisp.org>
9247
9248         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
9249         detail which gettext release to use.
9250         Reported by Simon Josefsson.
9251
9252 2008-03-26  Jim Meyering  <meyering@redhat.com>
9253
9254         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
9255         * modules/gnumakefile (clean-GNUmakefile): Also, use
9256         test ... && ... || : syntax rather than if-then ... fi.
9257
9258         gnumakefile: Don't double-quote-expand $(VPATH) value.
9259         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
9260
9261 2008-03-24  Eric Blake  <ebb9@byu.net>
9262
9263         Alter GNUmakefile to install into top directory.
9264         * modules/maintainer-makefile: Split, and add dependency...
9265         * modules/gnumakefile: to this new module.
9266         * build-aux/GNUmakefile: Move...
9267         * top/GNUmakefile: ...here.
9268         * build-aux/maint.mk: Move...
9269         * top/maint.mk: ...here.
9270         * MODULES.html.sh (Support for maintaining...): Document new
9271         module.
9272
9273 2008-03-23  Bruno Haible  <bruno@clisp.org>
9274
9275         * gnulib-tool: New options --vc-files, --no-vc-files.
9276         (func_usage): Document them.
9277         (vc_files): New variable.
9278         (func_import): Consider vc_files.
9279         (func_create_testdir): Set vc_files to empty.
9280         Suggested by Jim Meyering and Karl Berry.
9281
9282 2008-03-23  Bruno Haible  <bruno@clisp.org>
9283
9284         Fix regex compilation error on HP-UX 11.
9285         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
9286         * modules/regex (Files): Add m4/mbstate_t.m4.
9287         Reported by Ton Voon <ton.voon@altinity.com>.
9288
9289 2008-03-23  Bruno Haible  <bruno@clisp.org>
9290
9291         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
9292
9293 2008-03-23  Eric Blake  <ebb9@byu.net>
9294             Bruno Haible  <bruno@clisp.org>
9295
9296         Install files from top/ in the destination directory.
9297         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
9298         augmentation also for the files from top/.
9299         (func_import, func_create_testdir): Rewrite file names:
9300         top/filename -> filename.
9301
9302 2008-03-23  Bruno Haible  <bruno@clisp.org>
9303
9304         Tweak "gnulib --version" output.
9305         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
9306
9307 2008-03-23  Bruno Haible  <bruno@clisp.org>
9308
9309         Tweak "gnulib --version" output.
9310         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
9311         rather than contents of ChangeLog, when possible.
9312
9313 2008-03-21  Eric Blake  <ebb9@byu.net>
9314
9315         More --version tweaks.
9316         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
9317         date of last ChangeLog entry.
9318
9319 2008-03-21  Jim Meyering  <meyering@redhat.com>
9320
9321         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
9322
9323 2008-03-20  Eric Blake  <ebb9@byu.net>
9324
9325         VPATH fix.
9326         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
9327
9328 2008-03-20  Simon Josefsson  <simon@josefsson.org>
9329
9330         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
9331         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
9332
9333 2008-03-20  Eric Blake  <ebb9@byu.net>
9334
9335         Sync GNUmakefile with coreutils.
9336         * build-aux/GNUmakefile (have-Makefile): Rename...
9337         (_have-Makefile): ...to this, for namespace consideration.
9338         (GNUmakefile.cfg): Include, if present.
9339         (_autoreconf): Define a default.
9340         (_is-dist-target): New rule for rebuilds to pick up intra-release
9341         version.
9342         (maint-cfg.mk): Rename...
9343         (cfg.mk): ...to this.
9344
9345 2008-03-18  Jim Meyering  <meyering@redhat.com>
9346
9347         New script and module: mktempd
9348         * MODULES.html.sh (maint+release support): Add mktempd.
9349         * build-aux/mktempd: New file.
9350         * modules/mktempd: New file.
9351
9352 2008-03-15  Jim Meyering  <meyering@redhat.com>
9353
9354         Undo last change.
9355         * lib/sha1.c, lib/md5.c: 63 != ~63.
9356         Reported by Andreas Schwab.
9357
9358         sha1.c, md5.c: Hoist a redundant expression.
9359         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
9360         "ctx->buflen" only once, before calling *_process_block.
9361         * lib/md5.c (md5_process_bytes): Likewise.
9362
9363 2008-03-14  Eric Blake  <ebb9@byu.net>
9364
9365         Bump copyright year in files generated by gnulib-tool.
9366         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
9367         gnulib-tool, rather than hard-coding it.
9368
9369         Fix 'gnulib-tool --version' output to work with git.
9370         * gnulib-tool (func_gnulib_dir): New function, extracted from...
9371         (startup): ...here.
9372         (func_version): Use it to invoke git-version-gen, rather than
9373         relying on CVS keyword expansion.  Modernize wording.
9374         (cvsdatestamp, last_checkin_date, version): Kill unused
9375         variables.
9376
9377 2008-03-12  Jim Meyering  <meyering@redhat.com>
9378
9379         Recognize optional cast of the argument to free.
9380         * build-aux/useless-if-before-free: Update regexps.
9381
9382         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
9383
9384 2008-03-11  Bruno Haible  <bruno@clisp.org>
9385
9386         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
9387         by a single package.
9388         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
9389         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
9390         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
9391         Reported by Sam Steingold <sds@gnu.org>.
9392
9393 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
9394
9395         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
9396         repositories.
9397
9398 2008-03-11  Bruno Haible  <bruno@clisp.org>
9399
9400         Avoid conflicts between local macro definitions.
9401         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
9402         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
9403
9404 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
9405             Bruno Haible  <bruno@clisp.org>
9406
9407         Make va_copy work with some version of xlc on AIX 5.1.
9408         * lib/stdarg.in.h: New file.
9409         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
9410         On AIX, use a <stdarg.h> file substitute.
9411         * modules/stdarg (Files): Add lib/stdarg.in.h.
9412         (Depends-on): Add include_next.
9413         (Makefile.am): Build a stdarg.h substitute if requested.
9414         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
9415
9416 2008-03-10  Bruno Haible  <bruno@clisp.org>
9417
9418         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
9419         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
9420         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
9421
9422 2008-03-10  Bruno Haible  <bruno@clisp.org>
9423
9424         * modules/stdlib (Depends-on): Add include_next, remove
9425         absolute-header.
9426
9427 2008-03-09  Bruno Haible  <bruno@clisp.org>
9428
9429         * lib/freadahead.h (freadahead): Document more precisely.
9430         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
9431         the sum of both buffer sizes.
9432         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
9433         * NEWS: Document the change.
9434
9435 2008-03-09  Bruno Haible  <bruno@clisp.org>
9436
9437         Extend freadptr to return also the buffer size.
9438         * lib/freadptr.h (freadptr): Add sizep argument.
9439         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
9440         (freadptr): Add sizep argument. Determine buffer size like freadahead
9441         does.
9442         * tests/test-freadptr.c: Don't include freadahead.h.
9443         (main): Adapt for new calling convention of freadptr.
9444         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
9445         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
9446         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
9447         tests/test-freadptr2.sh.
9448         (Depends): Remove freadahead.
9449         (TESTS): Add test-freadptr2.sh.
9450         (check_PROGRAMS): Add test-freadptr2.
9451
9452 2008-03-09  Bruno Haible  <bruno@clisp.org>
9453
9454         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
9455         Report and solution by Simon Josefsson.
9456
9457 2008-03-06  Bruno Haible  <bruno@clisp.org>
9458
9459         Make fflush after ungetc work on BSD platforms.
9460         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
9461         * tests/test-fflush2.c: New file.
9462         * tests/test-fflush2.sh: New file.
9463         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
9464         tests/test-fflush2.c.
9465         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
9466         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
9467
9468 2008-03-06  Eric Blake  <ebb9@byu.net>
9469
9470         Likewise for ftello.
9471         * modules/ftello (Dependencies): Add extensions.
9472         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
9473
9474 2008-03-06  Bruno Haible  <bruno@clisp.org>
9475
9476         * modules/fseeko (Dependencies): Add extensions.
9477         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
9478         Needed on glibc systems.
9479
9480 2008-03-06  Bruno Haible  <bruno@clisp.org>
9481
9482         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
9483         email address.
9484         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
9485
9486 2008-03-06  Bruno Haible  <bruno@clisp.org>
9487
9488         * users.txt: Add libgnupdf.
9489
9490 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
9491
9492         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
9493         (Header File Substitutes, Function Substitutes,
9494         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
9495         (Build robot for gnulib): Fix typo.
9496
9497 2008-03-06  Bruno Haible  <bruno@clisp.org>
9498
9499         * doc/gnulib-tool.texi (VCS Issues): Small updates.
9500         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
9501
9502 2008-03-06  Bruno Haible  <bruno@clisp.org>
9503
9504         * doc/func.texi: New file, extracted from doc/gnulib.texi.
9505         * doc/gnulib.texi: Include it.
9506
9507 2008-03-06  Simon Josefsson  <simon@josefsson.org>
9508
9509         * modules/func (License): Change license to unlimited; there was
9510         no LGPL parts in the module anyway.
9511
9512 2008-03-06  Simon Josefsson  <simon@josefsson.org>
9513
9514         * modules/__func__: Renamed to modules/func.
9515         * modules/__func__-tests: Renamed to modules/func-tests.
9516         * tests/test-__func__.c: Renamed to tests/test-func.c.
9517         * m4/__func__.m4: Renamed to m4/func.m4.
9518         * doc/gnulib.texi (__func__): Section renamed to func.
9519         Suggested by Eric Blake <ebb9@byu.net>.
9520
9521 2008-03-06  Simon Josefsson  <simon@josefsson.org>
9522
9523         * doc/gnulib.texi (__func__): Use C99 terminology when talking
9524         about __func__.  Make example self-contained.  Suggested by Eric
9525         Blake <ebb9@byu.net>.
9526
9527         * tests/test-__func__.c (main): Avoid extraneous () around __func.
9528         Suggested by Eric Blake <ebb9@byu.net>.
9529
9530 2008-03-06  Simon Josefsson  <simon@josefsson.org>
9531
9532         * modules/__func__: New file.
9533         * modules/__func__-tests: New file.
9534         * tests/test-__func__.c: New file.
9535         * m4/__func__.m4: New file.
9536         * doc/gnulib.texi (__func__): Document __func__ module.
9537
9538 2008-03-05  Simon Josefsson  <simon@josefsson.org>
9539
9540         * modules/byteswap (License): Re-license as LGPLv2+.
9541
9542 2008-03-05  Simon Josefsson  <simon@josefsson.org>
9543
9544         * doc/Makefile: Add pdf target.
9545
9546 2008-03-05  Simon Josefsson  <simon@josefsson.org>
9547
9548         * modules/inline (License): Use 'unlimited', since there are only
9549         *.m4 files in this module.
9550
9551 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
9552             Bruno Haible  <bruno@clisp.org>
9553
9554         Add support for HP C 7.1 on OpenVMS 8.3.
9555         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
9556
9557 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
9558
9559         Update VMS specifics.
9560         * lib/getopt.c [VMS]: Remove include of unixlib.h.
9561
9562 2008-03-02  Jim Meyering  <meyering@redhat.com>
9563
9564         Remove the last dependency on the "free" module.
9565         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
9566         Reported by Bob Proulx.
9567
9568         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
9569
9570         Remove useless "if" tests before free.  Deprecate "free" module.
9571         * doc/posix-functions/free.texi: Mention that this
9572         module is no longer useful.
9573         * modules/free (Notice): Say this module is obsolete.
9574         * modules/readutmp (Depends-on): Remove free.
9575         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
9576         * lib/putenv.c (putenv): Likewise.
9577         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
9578         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
9579         * tests/test-c-strcasestr.c (main): Likewise.
9580         * tests/test-c-strstr.c (main): Likewise.
9581         * tests/test-mbscasestr1.c (main): Likewise.
9582         * tests/test-mbscasestr2.c (main): Likewise.
9583         * tests/test-mbsstr1.c (main): Likewise.
9584         * tests/test-mbsstr2.c (main): Likewise.
9585         * tests/test-memmem.c (main): Likewise.
9586         * tests/test-strcasestr.c (main): Likewise.
9587         * tests/test-striconv.c (main): Likewise.
9588         * tests/test-striconveh.c (main): Likewise.
9589         * tests/test-striconveha.c (main): Likewise.
9590         * tests/test-strstr.c (main): Likewise.
9591
9592         * build-aux/git-version-gen: Adjust a comment and the Usage string.
9593
9594         bootstrap: sync from coreutils again
9595         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
9596
9597 2008-03-01  Jim Meyering  <meyering@redhat.com>
9598
9599         bootstrap: sync from coreutils
9600         * build-aux/bootstrap (update_po_files): Copy a .po file into place
9601         also when the target doesn't exist.
9602
9603 2008-03-01  Eric Blake  <ebb9@byu.net>
9604
9605         Fix bugs in last patch.
9606         * lib/memchr2.c (memchr2): Fix typo.
9607         * tests/test-memchr2.c: Test previous bug, and don't use GNU
9608         extension.
9609         Reported by Bruce Korb.
9610
9611         New module 'memchr2'.
9612         * modules/memchr2: New file.
9613         * modules/memchr2-tests: Likewise.
9614         * lib/memchr2.h: Likewise.
9615         * lib/memchr2.c: Likewise, based on memchr.c.
9616         * tests/test-memchr2.c: New test.
9617         * MODULES.html.sh (String handling): Add memchr2.
9618
9619 2008-02-29  Bruno Haible  <bruno@clisp.org>
9620
9621         * modules/freadseek-tests: New file.
9622         * tests/test-freadseek.sh: New file.
9623         * tests/test-freadseek.c: New file.
9624
9625         New module 'freadseek'.
9626         * modules/freadseek: New file.
9627         * lib/freadseek.h: New file.
9628         * lib/freadseek.c: New file.
9629         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
9630
9631 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
9632
9633         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
9634         wydawca.
9635
9636         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
9637         program_invocation_name and program_invocation_short_name are
9638         present.
9639
9640 2008-02-28  Bruno Haible  <bruno@clisp.org>
9641
9642         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
9643         * tests/test-freadptr.sh: Also test non-seekable stdin.
9644
9645 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
9646
9647         * build-aux/bootstrap (source_base, m4_base)
9648         (doc_base, tests_base): New variables.
9649         (gnulib_tool_options): Do not hardcode base directories, use
9650         the above variables instead.
9651
9652 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
9653
9654         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
9655
9656 2008-02-28  Bruno Haible  <bruno@clisp.org>
9657
9658         * modules/freadptr-tests: New file.
9659         * tests/test-freadptr.sh: New file.
9660         * tests/test-freadptr.c: New file.
9661
9662         New module 'freadptr'.
9663         * modules/freadptr: New file.
9664         * lib/freadptr.h: New file.
9665         * lib/freadptr.c: New file.
9666         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
9667
9668 2008-02-26  Karl Berry  <karl@freefriends.org>
9669
9670         Sync from Libtool:
9671         * libltdl/argz.c (argz_add, argz_count): New functions.
9672         * libltdl/argz.in.h: Declare them.
9673         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
9674
9675 2008-02-22  Bruno Haible  <bruno@clisp.org>
9676
9677         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
9678         is a pointer type.  Needed for HP-UX 10.
9679         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
9680         * doc/posix-functions/gmtime_r.texi: Likewise.
9681         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
9682
9683 2008-02-24  Bruno Haible  <bruno@clisp.org>
9684
9685         * modules/environ-tests: New file.
9686         * tests/test-environ.c: New file.
9687
9688         New module 'environ'.
9689         * modules/environ: New file.
9690         * lib/unistd.in.h (environ): New declaration.
9691         * m4/environ.m4: New file.
9692         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
9693         after use.
9694         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
9695         HAVE_DECL_ENVIRON.
9696         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
9697         HAVE_DECL_ENVIRON.
9698         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
9699         wrong claim that 'environ' is missing on some systems.
9700         * modules/execute (Depends-on): Add environ.
9701         * lib/execute.c (environ): Remove fallback declaration.
9702         * modules/pipe (Depends-on): Add environ.
9703         * lib/pipe.c (environ): Remove fallback declaration.
9704         * modules/setenv (Depends-on): Add environ.
9705         * lib/setenv.c (environ): Remove fallback declaration.
9706         * modules/unsetenv (Depends-on): Add environ.
9707         * lib/unsetenv.c (environ): Remove fallback declaration.
9708         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
9709         m4/environ.m4.
9710         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
9711         (gl_PREREQ_UNSETENV): Likewise.
9712
9713 2008-02-24  Bruno Haible  <bruno@clisp.org>
9714
9715         * doc/posix-functions/environ.texi: Document the MacOS X problem.
9716
9717 2008-02-20  Bob Proulx  <bob@proulx.com>
9718
9719         Enable use of older two part flavor 'git describe'.
9720         * build-aux/git-version-gen: If using the older two part flavor of
9721         git version then recreate the third part now present in the
9722         newer three part flavor of git describe.
9723
9724 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
9725
9726         * lib/fts.c (fts_build): Typo correction to comment.
9727
9728 2008-02-17  Bruno Haible  <bruno@clisp.org>
9729
9730         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
9731         generating no-op conflicts.
9732
9733 2008-02-17  Bruno Haible  <bruno@clisp.org>
9734
9735         Speed up by 10%.
9736         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
9737         result_entries, rather than an index-based loop.
9738
9739 2008-02-17  Bruno Haible  <bruno@clisp.org>
9740
9741         Speed up by 25%.
9742         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
9743         'hashcode_cached'.
9744         (entry_create): New function.
9745         (entry_hashcode): Use the cached hashcode if possible.
9746         (read_changelog_file, try_split_merged_entry): Use entry_create.
9747
9748 2008-02-17  Bruno Haible  <bruno@clisp.org>
9749
9750         Speed up from O(n^2) to O(n) for long ChangeLog files.
9751         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
9752         (read_changelog_file): Change implementation of entries_reversed list
9753         to rbtreehash.
9754         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
9755
9756 2008-02-17  Bruno Haible  <bruno@clisp.org>
9757
9758         New option --split-merged-entry.
9759         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
9760         (find_paragraph_end, try_split_merged_entry): New functions.
9761         (long_options): Add option --split-merged-entry.
9762         (usage): Document option --split-merged-entry.
9763         (main): Implement option --split-merged-entry.
9764         Reported by Eric Blake.
9765
9766 2008-02-17  Bruno Haible  <bruno@clisp.org>
9767
9768         * lib/git-merge-changelog.c: Include c-strstr.h.
9769         (main): Support the "git pull --rebase" situation.
9770         * modules/git-merge-changelog (Depends-on): Add c-strstr.
9771         Reported by Eric Blake.
9772
9773 2008-02-16  Eric Blake  <ebb9@byu.net>
9774
9775         Avoid doubling \ in common case of "c-maybe" quoting style.
9776         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
9777         eliding outer quotes.
9778         * lib/quotearg.h: Document this.
9779         * tests/test-quotearg.c (result_strings, inputs, results_g)
9780         (flag_results, locale_results): Test it by adding a new string to
9781         each test group.
9782         (compare_strings): Test new string.
9783
9784 2008-02-13  Eric Blake  <ebb9@byu.net>
9785
9786         Avoid trigraph quoting in default output.
9787         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
9788         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
9789         unless explicitly requested.
9790         * tests/test-quotearg.c (flag_results, main): Add additional tests.
9791
9792 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
9793
9794         Don't rely on signed integer overflowing to negative value.
9795         * lib/getugroups.c (getugroups): Include <limits.h>.
9796         Instead, compare against INT_MAX, and increment only if the test passes.
9797
9798 2008-02-13  Jim Meyering  <meyering@redhat.com>
9799         and Eric Blake  <ebb9@byu.net>
9800
9801         Avoid shadowing warning and compile errors on Linux.
9802         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
9803         forwarding macros on Linux.
9804         (dcgettext): Define a stub, for Linux.
9805         (results_g, main): Avoid warnings.
9806
9807 2008-02-12  Eric Blake  <ebb9@byu.net>
9808
9809         Silence warning in last patch.
9810         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
9811
9812         Quotearg part 4: add tests, fix c-maybe colon quoting.
9813         * lib/quotearg.h: Improve documentation.
9814         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
9815         escapes when adding outer quotes.  When quoting trigraphs, use
9816         valid C notation.  When quoting NUL, omit extra characters if next
9817         character is not digit.  Alter prototype.
9818         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
9819         callers.
9820         * modules/quotearg-tests: New module.
9821         * tests/test-quotearg.c: New test.
9822
9823 2008-02-07  Eric Blake  <ebb9@byu.net>
9824
9825         Quotearg part 3: add flag to control outer quote elision.
9826         * lib/quotearg.h (c_maybe_quoting_style): New style.
9827         (enum quoting_flags): Better documentation of flags.
9828         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
9829         c-maybe style.
9830         (quotearg_buffer_restyled): Handle new flag to elide outer
9831         quotes.
9832
9833         Quotearg part 2: add flag that can control NUL elision.
9834         * lib/quotearg.h (set_quoting_flags): New prototype.
9835         * lib/quotearg.c (struct quoting_options): Add flag field.
9836         (set_quoting_flags): New function.
9837         (quotearg_buffer_restyled): Add flags parameter.
9838         (quotearg_alloc_mem): Set the flag if length cannot be returned.
9839         (quotearg_n_options): Set the flag, since length cannot be
9840         returned.
9841         (quoting_options_from_style): Default flags correctly.
9842
9843         Quotearg part 1: more wrappers, restore quotearg_char state.
9844         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
9845         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
9846         (quotearg_colon_mem): New wrappers.
9847         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
9848         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
9849         functions.
9850         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
9851         (quotearg_colon_mem): New functions.
9852
9853 2008-02-11  Bruno Haible  <bruno@clisp.org>
9854
9855         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
9856         library in the current directory: it does not work with parallel make.
9857         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
9858
9859 2008-02-11  Bruno Haible  <bruno@clisp.org>
9860
9861         * .gitattributes: New file.
9862
9863 2008-02-11  Jim Meyering  <meyering@redhat.com>
9864
9865         useless-if-before-free: Fix reversed exit values.
9866         * build-aux/useless-if-before-free: Use correct values
9867         for EXIT_MATCH and EXIT_NO_MATCH.
9868
9869         * build-aux/useless-if-before-free: Close stdout carefully.
9870
9871 2008-02-10  Bruno Haible  <bruno@clisp.org>
9872
9873         New module 'git-merge-changelog'.
9874         * modules/git-merge-changelog: New file.
9875         * lib/git-merge-changelog.c: New file.
9876
9877 2008-02-10  Jim Meyering  <meyering@redhat.com>
9878
9879         useless-if-before-free: New option: --list (-l).
9880
9881         useless-if-before-free: Don't exit immediately upon open failure.
9882         * build-aux/useless-if-before-free: Exit 2 for errors.
9883         Upon failure to open a file, don't exit immediately.
9884         Rather, just warn and continue with any remaining files.
9885
9886 2008-02-10  Bruno Haible  <bruno@clisp.org>
9887
9888         New abstract list operation 'node_set_value'.
9889         * lib/gl_list.h (gl_list_node_set_value): New function.
9890         (struct gl_list_implementation): New field node_set_value.
9891         * lib/gl_list.c (gl_list_node_set_value): New function.
9892         * lib/gl_array_list.c (gl_array_node_set_value): New function.
9893         (gl_array_list_implementation): Update.
9894         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
9895         (gl_carray_list_implementation): Update.
9896         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
9897         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
9898         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
9899         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
9900         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
9901         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
9902         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
9903         Update.
9904         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
9905         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
9906         (gl_sublist_list_implementation): Update.
9907
9908 2008-02-10  Bruno Haible  <bruno@clisp.org>
9909
9910         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
9911         Needed when ELEMENT is #defined to 'some_type *'.
9912
9913 2008-02-10  Jim Meyering  <meyering@redhat.com>
9914
9915         New script and module: useless-if-before-free
9916         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
9917         * build-aux/useless-if-before-free: New file.
9918         * modules/useless-if-before-free: New file.
9919
9920         * build-aux/gitlog-to-changelog: Use committer date, not author date.
9921
9922         xstrtol_error: Fix typo.
9923         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
9924         s/exit_failure/exit_status/.
9925
9926 2008-02-09  Jim Meyering  <meyering@redhat.com>
9927
9928         New script and module: gitlog-to-changelog
9929         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
9930         * modules/gitlog-to-changelog: New file.
9931         * build-aux/gitlog-to-changelog: New file.
9932
9933 2008-02-08  Jim Meyering  <meyering@redhat.com>
9934
9935         Avoid two "parameter unused" warnings.
9936         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
9937         Mark "st" as used.
9938
9939         Use "git COMMAND", not "git-COMMAND".
9940         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
9941         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
9942         * build-aux/git-version-gen: Use "git status", not "git-status".
9943
9944 2008-02-07  Bruno Haible  <bruno@clisp.org>
9945
9946         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
9947         Avoids a crash on Windows Vista.
9948         Reported by Adam Strzelecki <ono@java.pl> via
9949         Simon Josefsson <simon@josefsson.org>.
9950
9951 2008-02-06  Bruno Haible  <bruno@clisp.org>
9952
9953         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
9954         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
9955         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
9956         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
9957         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
9958         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
9959         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
9960         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
9961         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
9962         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
9963         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
9964         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
9965         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
9966         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
9967         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
9968         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
9969         left-adjust flag.
9970         * tests/test-snprintf-posix.h (test_function): Likewise.
9971         * tests/test-sprintf-posix.h (test_function): Likewise.
9972         * tests/test-vasprintf-posix.c (test_function): Likewise.
9973         * doc/posix-functions/fprintf.texi: Update.
9974         * doc/posix-functions/printf.texi: Update.
9975         * doc/posix-functions/snprintf.texi: Update.
9976         * doc/posix-functions/sprintf.texi: Update.
9977         * doc/posix-functions/vfprintf.texi: Update.
9978         * doc/posix-functions/vprintf.texi: Update.
9979         * doc/posix-functions/vsnprintf.texi: Update.
9980         * doc/posix-functions/vsprintf.texi: Update.
9981         Reported by Peter Fales <psfales@alcatel-lucent.com>.
9982
9983 2008-02-06  Bruno Haible  <bruno@clisp.org>
9984
9985         Fix bug introduced on 2008-01-26.
9986         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
9987
9988 2008-02-06  Bruno Haible  <bruno@clisp.org>
9989
9990         Fix bug introduced on 2007-06-10.
9991         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
9992         !NEED_PRINTF_FLAG_ZERO.
9993
9994 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
9995
9996         getloadavg: use libperfstat on AIX5
9997         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
9998
9999 2008-02-03  Bruno Haible  <bruno@clisp.org>
10000
10001         * lib/diffseq.h: Add comments about required #includes.
10002         Reported by Michael Biggs <gnulib@doubleplum.net>.
10003
10004 2008-02-01  Bruno Haible  <bruno@clisp.org>
10005
10006         * users.txt: Add gnuit.
10007
10008 2008-01-31  Bruno Haible  <bruno@clisp.org>
10009
10010         * lib/md4.c (set_uint32): Mark as inline.
10011         * lib/md5.c (set_uint32): Likewise.
10012         * lib/sha1.c (set_uint32): Likewise.
10013         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
10014         * m4/md5.m4 (gl_MD5): Likewise.
10015         * m4/sha1.m4 (gl_SHA1): Likewise.
10016
10017 2008-01-31  Jim Meyering  <meyering@redhat.com>
10018
10019         Use "sizeof VAR", rather than a literal "4".
10020         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
10021         * lib/md4.c (md4_read_ctx): Likewise.
10022         * lib/sha1.c (sha1_read_ctx): Likewise.
10023
10024 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10025
10026         * tests/test-sha1.c: New file, based on test-md5.c.
10027
10028         * modules/crypto/sha1-tests: New file.
10029
10030 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10031
10032         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
10033
10034 2008-01-31  Jim Meyering  <meyering@redhat.com>
10035
10036         Prefer "sizeof v" over the equivalent "4".
10037         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
10038         * lib/md5.c (set_uint32): Likewise.
10039         * lib/sha1.c (set_uint32): Likewise.
10040
10041 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10042
10043         * lib/sha1.c (set_uint32): Mark function as static.
10044
10045 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10046
10047         md2: clarify comments to say that alignment is not required.
10048         * lib/md2.h: Remove warning about alignment in comment.
10049         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
10050         never been required.
10051
10052 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10053
10054         md4: adapt alignment constraint fix from sha1.
10055         * lib/md4.c (set_uint32): New function, from sha1.c
10056         (md4_read_ctx): Use it.
10057         (md4_finish_ctx): Doc fix.
10058         * lib/md4.h: Doc fix.
10059
10060 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10061
10062         md5: adapt alignment constraint fix from sha1.
10063         * lib/md5.c (set_uint32): New function, from sha1.c
10064         (md5_read_ctx): Use it.
10065         (md5_finish_ctx): Doc fix.
10066         * lib/md5.h: Doc fix.
10067
10068 2008-01-30  Peter Palfrader  <weasel@debian.org>
10069
10070         sha1: remove the result buffer alignment constraint
10071         * lib/sha1.c (set_uint32): New function.
10072         (sha1_read_ctx): Rewrite to remove the result buffer alignment
10073         constraint.
10074         (sha1_finish_ctx): Remove comment warning about alignment constraint.
10075         * lib/sha1.h: Likewise.
10076
10077 2008-01-30  Andreas Schwab  <schwab@suse.de>
10078             Bruno Haible  <bruno@clisp.org>
10079
10080         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
10081         correct definition of LDBL_MIN_EXP.
10082
10083 2008-01-30  Karl Berry  <karl@gnu.org>
10084
10085         * config/srclist-update: try to preserve x bit on updates.
10086         * config/srclistvars.sh: update for karl.
10087
10088 2008-01-29  Jim Meyering  <meyering@redhat.com>
10089
10090         vasnprintf.c: Avoid warning about unused label
10091         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
10092         "overflow" label definition and associated code with the
10093         same cpp condition that guards the sole use of that label.
10094
10095 2008-01-26  Bruno Haible  <bruno@clisp.org>
10096
10097         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
10098         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
10099         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
10100         * lib/isnanl-nolibm.h (isnanl): Likewise.
10101         Reported by Paul Eggert <eggert@cs.ucla.edu>.
10102
10103 2008-01-26  Bruno Haible  <bruno@clisp.org>
10104
10105         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
10106         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
10107
10108 2008-01-26  Bruno Haible  <bruno@clisp.org>
10109
10110         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
10111         GCC >= 4.0 built-in.
10112         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
10113
10114 2008-01-26  Bruno Haible  <bruno@clisp.org>
10115
10116         Rename isnan, applicable to 'double' only, to isnand.
10117         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
10118         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
10119         (configure.ac): Update.
10120         (Include): Replace "isnan.h" with "isnand.h".
10121         * m4/isnand.m4: Renamed from m4/isnan.m4.
10122         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
10123         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
10124         instead of isnan.c.
10125         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
10126         instead of HAVE_ISNAN_IN_LIBC.
10127         (isnand): Renamed from isnan.
10128         * lib/isnand.c: New file.
10129         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
10130         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
10131         (Makefile.am): Update.
10132         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
10133         Include isnand.h instead of isnan.h.
10134         (main): Test isnand instead of isnan.
10135         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
10136         isnan-nolibm.
10137         * modules/frexp (Depends-on): Likewise.
10138         * modules/frexp-tests (Depends-on): Likewise.
10139         * modules/frexp-nolibm (Depends-on): Likewise.
10140         * modules/frexp-nolibm-tests (Depends-on): Likewise.
10141         * modules/isfinite (Depends-on): Likewise.
10142         * modules/round-tests (Depends-on): Likewise.
10143         * modules/signbit (Depends-on): Likewise.
10144         * modules/signbit-tests (Depends-on): Likewise.
10145         * modules/snprintf-posix (Depends-on): Likewise.
10146         * modules/sprintf-posix (Depends-on): Likewise.
10147         * modules/trunc-tests (Depends-on): Likewise.
10148         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
10149         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
10150         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
10151         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
10152         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
10153         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
10154         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
10155         * modules/vasnprintf-posix (Depends-on): Likewise.
10156         * modules/vasprintf-posix (Depends-on): Likewise.
10157         * modules/vfprintf-posix (Depends-on): Likewise.
10158         * modules/vsnprintf-posix (Depends-on): Likewise.
10159         * modules/vsprintf-posix (Depends-on): Likewise.
10160         * lib/frexp.c: Include isnand.h instead of isnan.h.
10161         (ISNAN): Set to isnand instead of isnan.
10162         * lib/isfinite.c: Include isnand.h instead of isnan.h.
10163         (gl_isfinited): Use isnand instead of isnan.
10164         * lib/signbitd.c: Include isnand.h instead of isnan.h.
10165         (gl_signbitd): Use isnand instead of isnan.
10166         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
10167         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
10168         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
10169         (main): Use isnand instead of isnan.
10170         * tests/test-round1.c: Include isnand.h.
10171         (main): Use isnand instead of isnan.
10172         * tests/test-round2.c: Include isnand.h instead of isnan.h.
10173         (ISNAN): Set to isnand instead of isnan.
10174         * tests/test-trunc1.c: Include isnand.h.
10175         (main): Use isnand instead of isnan.
10176         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
10177         (equal): Use isnand instead of isnan.
10178         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
10179         isnand-nolibm.
10180         * NEWS: Mention the change.
10181
10182 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10183             Bruno Haible  <bruno@clisp.org>
10184
10185         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
10186         the GCC builtins for signbits are present and set
10187         REPLACE_SIGNBIT_USING_GCC if so.
10188         * lib/math.in.h (signbit): Define using GCC builtins if
10189         REPLACE_SIGNBIT_USING_GCC is set.
10190         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
10191         REPLACE_SIGNBIT_USING_GCC.
10192         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
10193
10194 2008-01-25  Jim Meyering  <meyering@redhat.com>
10195
10196         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
10197         * lib/poll.c: Include <config.h>, not "config.h".
10198         * tests/test-getaddrinfo.c: Likewise.
10199
10200 2008-01-25  Simon Josefsson  <simon@josefsson.org>
10201
10202         * modules/sockets-tests: New file.
10203
10204 2008-01-24  Simon Josefsson  <simon@josefsson.org>
10205
10206         * modules/sockets: New module, can be used to call WSA_Startup and
10207         WSA_Cleanup when needed.
10208
10209         * lib/sockets.h, lib/sockets.c: New files.
10210
10211         * m4/sockets.m4: New file.
10212
10213         * tests/test-sockets.c: New file.
10214
10215 2008-01-19  Bruno Haible  <bruno@clisp.org>
10216
10217         * doc/posix-headers: Renamed from doc/headers.
10218         * doc/posix-functions: Renamed from doc/functions.
10219         * doc/gnulib.texi: Update.
10220
10221 2008-01-19  Bruno Haible  <bruno@clisp.org>
10222
10223         * doc/glibc-functions/strcasestr.texi: Include contents of
10224         doc/functions/strcasestr.texi, fixing the list of platforms.
10225         * doc/functions/strcasestr.texi: Remove file.
10226
10227 2008-01-19  Bruno Haible  <bruno@clisp.org>
10228
10229         * doc/glibc-functions/memmem.texi: Include contents of
10230         doc/functions/memmem.texi.
10231         * doc/functions/memmem.texi: Remove file.
10232
10233 2008-01-18  Bruno Haible  <bruno@clisp.org>
10234
10235         * doc/glibc-functions/*.texi: New files.
10236         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
10237         to use the new files.
10238
10239 2008-01-17  Bruno Haible  <bruno@clisp.org>
10240
10241         * tests/test-gethostname.c (main): Fix printf statement.
10242
10243 2008-01-17  Simon Josefsson  <simon@josefsson.org>
10244
10245         * modules/gethostname-tests: New file.
10246
10247         * tests/test-gethostname.c: New file.
10248
10249 2008-01-17  Simon Josefsson  <simon@josefsson.org>
10250
10251         * lib/gethostname.c: Include string.h unconditionally, strncpy is
10252         used by the UNAME case.  Reported by Bruno Haible
10253         <bruno@clisp.org>.
10254
10255 2008-01-17  Eric Blake  <ebb9@byu.net>
10256
10257         Convert c-strcasestr to be more efficient.
10258         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
10259         (Depends-on): Add c-strcase, remove malloca, strnlen.
10260         * tests/test-c-strcasestr.c (main): Enhance test.
10261         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
10262
10263 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
10264
10265         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
10266         Use it in creating po/Makevars.
10267
10268 2008-01-15  Simon Josefsson  <simon@josefsson.org>
10269
10270         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
10271         Applications that requires it should initialize libgcrypt
10272         manually.
10273
10274 2008-01-16  Simon Josefsson  <simon@josefsson.org>
10275
10276         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
10277
10278 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
10279
10280         Fix problem with getdate on mingw32 reported by Simon Josefsson
10281         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
10282         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
10283         tzname", when deciding whether to declare tzname.
10284         * lib/strftime.c (tzname): Likewise.
10285
10286 2008-01-15  Bruno Haible  <bruno@clisp.org>
10287
10288         Work around a MacOS X 10.5 bug in frexpl().
10289         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
10290         * doc/functions/frexpl.texi: Document the bug.
10291         Reported by Elias Pipping <pipping@gentoo.org>.
10292
10293 2008-01-14  Eric Blake  <ebb9@byu.net>
10294
10295         Touch up previous patch.
10296         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
10297         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
10298
10299         Convert strcasestr module to use Two-Way algorithm.
10300         * modules/strcasestr-simple: New module, based on the old
10301         strcasestr, but with Two-Way rather than KMP.
10302         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
10303         * lib/string.in.h (rpl_strcasestr): Declare.
10304         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
10305         performance.
10306         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
10307         * modules/string (Makefile.am): Support strcasestr.
10308         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
10309         * modules/strcasestr-tests (Depends-on): Check for alarm.
10310         * tests/test-strcasestr.c: Augment test.
10311         * lib/str-two-way.h: Clean up stray macro.
10312         * NEWS: Document new module.
10313         * MODULES.html.sh (string handling): Likewise.
10314         * doc/functions/strcasestr.texi: New file.
10315         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
10316         here, since it is not a POSIX function.
10317
10318 2008-01-14  Colin Watson  <cjwatson@debian.org>
10319             Bruno Haible  <bruno@clisp.org>
10320
10321         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
10322         works fine; if not, set REPLACE_STRSIGNAL.
10323         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
10324         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
10325         REPLACE_STRSIGNAL.
10326         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
10327         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
10328         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
10329
10330 2008-01-14  Bruno Haible  <bruno@clisp.org>
10331
10332         * modules/strsignal (Include): Change to <string.h>.
10333
10334 2008-01-14  Colin Watson  <cjwatson@debian.org>
10335
10336         * modules/argp (Notice): Add a notice recommending to change
10337         XGETTEXT_OPTIONS.
10338         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
10339
10340 2008-01-13  Colin Watson  <cjwatson@debian.org>
10341
10342         * modules/strsignal-tests: New file.
10343         * tests/test-strsignal.c: New file.
10344
10345         * lib/strsignal.c: New file, from glibc with modifications.
10346         * lib/siglist.h: New file, from glibc with modifications.
10347         * lib/string.in.h (strsignal): New declaration.
10348         * m4/strsignal.m4: New file.
10349         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
10350         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
10351         * modules/strsignal: New file.
10352         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
10353         HAVE_DECL_STRSIGNAL.
10354
10355 2008-01-13  Bruno Haible  <bruno@clisp.org>
10356
10357         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
10358         locale encoding is not ASCII. Needed for OpenBSD 4.0.
10359         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
10360         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
10361
10362 2008-01-13  Bruno Haible  <bruno@clisp.org>
10363
10364         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
10365         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
10366         * lib/argp.h (__attribute__): Likewise.
10367         * lib/c-stack.c (__attribute__): Likewise.
10368         * lib/error.h (__attribute__): Likewise.
10369         * lib/fts.c (__attribute__): Likewise.
10370         * lib/openat.h (__attribute__): Likewise.
10371         * lib/stdio.in.h (__attribute__): Likewise.
10372         * lib/string.in.h (__attribute__): Likewise.
10373         * lib/utimens.c (__attribute__): Likewise.
10374         * lib/vasnprintf.h (__attribute__): Likewise.
10375         * lib/xalloc.h (__attribute__): Likewise.
10376         * lib/xprintf.h (__attribute__): Likewise.
10377         * lib/xstrtol.h (__attribute__): Likewise.
10378         * lib/xvasprintf.h (__attribute__): Likewise.
10379
10380 2008-01-12  Bruno Haible  <bruno@clisp.org>
10381
10382         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
10383         * doc/glibc-headers/a.out.texi: New file.
10384         * doc/glibc-headers/aliases.texi: New file.
10385         * doc/glibc-headers/alloca.texi: New file.
10386         * doc/glibc-headers/ar.texi: New file.
10387         * doc/glibc-headers/argp.texi: New file.
10388         * doc/glibc-headers/argz.texi: New file.
10389         * doc/glibc-headers/byteswap.texi: New file.
10390         * doc/glibc-headers/crypt.texi: New file.
10391         * doc/glibc-headers/endian.texi: New file.
10392         * doc/glibc-headers/envz.texi: New file.
10393         * doc/glibc-headers/err.texi: New file.
10394         * doc/glibc-headers/error.texi: New file.
10395         * doc/glibc-headers/execinfo.texi: New file.
10396         * doc/glibc-headers/fpu_control.texi: New file.
10397         * doc/glibc-headers/fstab.texi: New file.
10398         * doc/glibc-headers/fts.texi: New file.
10399         * doc/glibc-headers/getopt.texi: New file.
10400         * doc/glibc-headers/ieee754.texi: New file.
10401         * doc/glibc-headers/ifaddrs.texi: New file.
10402         * doc/glibc-headers/libintl.texi: New file.
10403         * doc/glibc-headers/mcheck.texi: New file.
10404         * doc/glibc-headers/mntent.texi: New file.
10405         * doc/glibc-headers/obstack.texi: New file.
10406         * doc/glibc-headers/paths.texi: New file.
10407         * doc/glibc-headers/printf.texi: New file.
10408         * doc/glibc-headers/pty.texi: New file.
10409         * doc/glibc-headers/resolv.texi: New file.
10410         * doc/glibc-headers/shadow.texi: New file.
10411         * doc/glibc-headers/sysexits.texi: New file.
10412         * doc/glibc-headers/ttyent.texi: New file.
10413
10414 2008-01-12  Jim Meyering  <meyering@redhat.com>
10415
10416         announce-gen: emit Gnulib's git-based version string.
10417         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
10418         New option --gnulib-version=V, where V is expected to be
10419         the output of running git describe in the gnulib directory.
10420         (get_tool_versions): Request feedback on xdelta.  I suspect it's
10421         not useful, and plan to stop publishing an xdelta file with each
10422         coreutils release.
10423
10424         * build-aux/announce-gen: Also check for lzma-compressed files.
10425
10426 2008-01-11  Bruno Haible  <bruno@clisp.org>
10427
10428         * tests/test-memmem.c (main): Increase maximum allowed time.
10429         * tests/test-strstr.c (main): Likewise.
10430
10431 2008-01-11  Bruno Haible  <bruno@clisp.org>
10432
10433         * doc/functions/memmem.texi: Add more precisions about platforms.
10434         * doc/functions/strstr.texi: Likewise.
10435
10436 2008-01-10  Eric Blake  <ebb9@byu.net>
10437
10438         * m4/strstr.m4: Delete cruft from copy-n-paste.
10439         Reported by Bruno Haible.
10440
10441 2008-01-10  Bruno Haible  <bruno@clisp.org>
10442
10443         Make c-strstr rely on strstr.
10444         * lib/c-strstr.c: Don't include str-kmp.h.
10445         (c_strstr): Define in terms of strstr.
10446         * modules/c-strstr (Files): Remove lib/str-kmp.h.
10447         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
10448
10449 2008-01-10  Bruno Haible  <bruno@clisp.org>
10450
10451         * doc/gnulib.texi (String Functions in C Locale): New section.
10452         * doc/c-ctype.texi: New file.
10453         * doc/c-strcase.texi: New file.
10454         * doc/c-strcaseeq.texi: New file.
10455         * doc/c-strcasestr.texi: New file.
10456         * doc/c-strstr.texi: New file.
10457         * doc/c-strtod.texi: New file.
10458         * doc/c-strtold.texi: New file.
10459
10460 2008-01-10  Eric Blake  <ebb9@byu.net>
10461
10462         * lib/relocatable.h: Fix a comment.
10463
10464 2008-01-10  Eric Blake  <ebb9@byu.net>
10465
10466         Share two-way algorithm.
10467         * lib/str-two-way.h: New file, merged from...
10468         * lib/memmem.c: ...here...
10469         * lib/strstr.c: ...and here.
10470         * modules/memmem (Files): Use it.
10471         * modules/strstr (Files): Likewise.
10472
10473         Avoid quadratic strstr implementations.
10474         * lib/strstr.c: New file.
10475         * m4/strstr.m4: Likewise.
10476         * modules/strstr: Likewise.
10477         * modules/strstr-tests: Likewise.
10478         * tests/test-strstr.c: Likewise.
10479         * lib/string.in.h (rpl_strstr): Declare.
10480         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
10481         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
10482         * modules/string (Makefile.am): Likewise.
10483         * MODULES.html.sh (string handling): Mention new module.
10484         * doc/functions/strstr.texi (strstr): Document the bug.
10485
10486 2008-01-10  Bruno Haible  <bruno@clisp.org>
10487
10488         * lib/relocatable.h (relocate): State whether result is freshly
10489         allocated or not.
10490         * lib/relocatable.c (relocate): Return a freshly allocated string
10491         instead of a pointer to a privately held string.
10492         Reported by Sylvain Beucler <beuc@gnu.org>.
10493
10494 2008-01-10  Colin Watson  <cjwatson@debian.org>
10495
10496         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
10497         s/S_ISNLK/S_ISLNK/.
10498
10499 2008-01-09  Bruno Haible  <bruno@clisp.org>
10500
10501         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
10502         and other files.
10503         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
10504         if it's only a guess.
10505         * modules/memmem: Simplify by depending on memmem-simple.
10506
10507 2008-01-09  Bruno Haible  <bruno@clisp.org>
10508
10509         Work around OpenBSD 4.0 tdelete() bug.
10510         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
10511         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
10512         macros and don't redefine the enum values.
10513         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
10514         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
10515         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
10516
10517 2008-01-09  Bruno Haible  <bruno@clisp.org>
10518
10519         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
10520         (main): Don't perform the tests if setlocale did not install a UTF-8
10521         locale. Needed on OpenBSD 4.0.
10522         * modules/wcwidth-tests (Depends-on): Add localcharset.
10523
10524 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
10525
10526         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
10527         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
10528         * NEWS: announce this.
10529         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
10530
10531 2008-01-09  Simon Josefsson  <simon@josefsson.org>
10532         and Eric Blake  <ebb9@byu.net>
10533
10534         Add memmem-simple module.
10535         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
10536         (gl_FUNC_MEMMEM): Separate performance from presence checks.
10537         * modules/memmem-simple: New file.
10538         * modules/memmem (Description): Tweak.
10539         * MODULES.html.sh (string handling): Mention new module.
10540         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
10541         addressed by memmem-simple.
10542         * NEWS: Document the difference.
10543
10544 2008-01-09  Eric Blake  <ebb9@byu.net>
10545
10546         Give gcc some memmem optimization hints.
10547         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
10548         (strcasestr): Declare as pure.
10549         * modules/memmem (Maintainer): Claim my implementation.
10550
10551 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10552
10553         Support AIX 6.1 and higher.
10554         * build-aux/config.libpath: Likewise.
10555         * build-aux/config.rpath: Likewise.
10556
10557 2008-01-08  Jim Meyering  <meyering@redhat.com>
10558             Bruno Haible  <bruno@clisp.org>
10559
10560         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
10561         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
10562         Reported by Peter Fales in
10563         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
10564
10565 2008-01-08  Bruno Haible  <bruno@clisp.org>
10566
10567         * modules/unictype/category-of (Depends-on): Add
10568         unictype/category-none.
10569         * modules/unictype/category-and-tests (Depends-on): Add
10570         unictype/category-{L,N,Lu,Nd}.
10571         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
10572         * modules/unictype/category-or-tests (Depends-on): Add
10573         unictype/category-{L,N}.
10574         * modules/unictype/category-name-tests (Depends-on): Add
10575         unictype/category-{Z,Nl}.
10576         Reported by Simon Josefsson.
10577
10578 2008-01-08  Bruno Haible  <bruno@clisp.org>
10579
10580         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
10581         convention better.
10582         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
10583         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
10584         Reported by Peter Miller <millerp@canb.auug.org.au>.
10585
10586 2008-01-08  Eric Blake  <ebb9@byu.net>
10587
10588         Rewrite memmem to guarantee linear complexity without malloc.
10589         * lib/memmem.c (memmem): Use Two-Way rather than
10590         Knuth-Morris-Pratt, to allow O(1) space usage.
10591         (critical_factorization, two_way_short_needle)
10592         (two_way_long_needle): New functions.
10593         (knuth_morris_pratt): Delete.
10594         * modules/memmem (Depends-on): No longer need malloca or stdbool.
10595         Add stdint.
10596         * tests/test-memmem.c (main): Add tests for periodic needle and
10597         sublinear performance.
10598         * doc/functions/memmem.texi (memmem): Document other deficiencies
10599         in cygwin and older glibc.
10600
10601 2008-01-08  Bruno Haible  <bruno@clisp.org>
10602
10603         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
10604         augmentation.
10605
10606 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
10607
10608         Add a configure time option: --disable-acl.
10609         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
10610         AC_ARG_ENABLE(acl).
10611
10612 2008-01-06  Simon Josefsson  <simon@josefsson.org>
10613
10614         * tests/test-localename.c: Don't include obsolete "setenv.h".
10615
10616         * modules/localename-tests (Depends-on): Need unsetenv.
10617
10618 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10619
10620         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
10621
10622 2008-01-06  Colin Watson  <cjwatson@debian.org>
10623
10624         * users.txt: Add man-db.
10625
10626 2008-01-07  Bruno Haible  <bruno@clisp.org>
10627
10628         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
10629         previous section name.
10630
10631 2008-01-07  Bruno Haible  <bruno@clisp.org>
10632
10633         * lib/progname.c (set_program_name): Don't strip off a leading
10634         "lt-" prefix outside a .libs directory.
10635         Suggested by Paul Eggert.
10636
10637 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
10638             Bruno Haible  <bruno@clisp.org>
10639
10640         Improve memory cleanup in 'relocatable' module.
10641         * lib/relocatable.h (compute_curr_prefix): Change return type to
10642         'char *'.
10643         * lib/relocatable.c (compute_curr_prefix): Change return type to
10644         'char *'. Free curr_installdir after use.
10645         (relocate): Free curr_prefix_better after use.
10646         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
10647
10648 2008-01-01  Bruno Haible  <bruno@clisp.org>
10649
10650         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
10651         failure on older glibc systems.
10652         Reported by Peter Fales <psfales@alcatel-lucent.com>.
10653
10654 2008-01-05  Eric Blake  <ebb9@byu.net>
10655
10656         Avoid quadratic system memmem.
10657         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
10658         Reported by Ralf Wildenhues.
10659
10660         Fix memmem test for mingw.
10661         * modules/memmem-tests (configure.ac): Check for alarm.
10662         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
10663         it.
10664         * doc/functions/memmem.texi: New file.
10665         * doc/gnulib.texi (Function Substitutes): Add memmem.
10666         Reported by Bruno Haible.
10667
10668 2008-01-04  Bruno Haible  <bruno@clisp.org>
10669
10670         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
10671         Require gl_HEADER_STRINGS_H_DEFAULTS, not
10672         gl_HEADER_STRING_H_DEFAULTS.
10673
10674 2008-01-04  Eric Blake  <ebb9@byu.net>
10675
10676         Shorten duration of memmem test.
10677         * tests/test-memmem.c (main): Use alarm to declare failure if test
10678         is taking too long.
10679         Reported by Ralf Wildenhues.
10680
10681 2007-12-21  Simon Josefsson  <simon@josefsson.org>
10682
10683         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
10684         string, needed by strerror.
10685
10686 2008-01-03  Colin Watson  <cjwatson@debian.org>
10687             Bruno Haible  <bruno@clisp.org>
10688
10689         * doc/gnulib-tool.texi (Localization): New section.
10690
10691 2008-01-02  Bruno Haible  <bruno@clisp.org>
10692
10693         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
10694         variables to 'unsigned char *' type.
10695         Reported by Paul Eggert.
10696
10697 2008-01-02  Jim Meyering  <jim@meyering.net>
10698
10699         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
10700
10701 2007-12-31  Jim Meyering  <jim@meyering.net>
10702
10703         Avoid use of private FTS type name.
10704         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
10705
10706 2007-12-30  Karl Berry  <karl@gnu.org>
10707
10708         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
10709         work around defect in Texinfo and/or the standalone Info browser.
10710
10711 2007-12-30  Bruno Haible  <bruno@clisp.org>
10712
10713         Unify 5 copies of the KMP code.
10714         * lib/str-kmp.h: New file.
10715         * lib/c-strcasestr.c: Include str-kmp.h.
10716         (knuth_morris_pratt): Remove function.
10717         (c_strcasestr): Update.
10718         * lib/c-strstr.c: Include str-kmp.h.
10719         (knuth_morris_pratt): Remove function.
10720         (c_strcasestr): Update.
10721         * lib/mbscasestr.c: Include str-kmp.h.
10722         (knuth_morris_pratt_unibyte): Remove function.
10723         * lib/mbsstr.c: Include str-kmp.h.
10724         (knuth_morris_pratt_unibyte): Remove function.
10725         * lib/strcasestr.c: Include str-kmp.h.
10726         (knuth_morris_pratt): Remove function.
10727         (strcasestr): Update.
10728         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
10729         * modules/c-strstr (Files): Likewise.
10730         * modules/mbscasestr (Files): Likewise.
10731         * modules/mbsstr (Files): Likewise.
10732         * modules/strcasestr (Files): Likewise.
10733         Suggested by Paul Eggert.
10734
10735 2007-12-30  Bruno Haible  <bruno@clisp.org>
10736
10737         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
10738         defined.
10739
10740 2007-12-30  Bruno Haible  <bruno@clisp.org>
10741
10742         * lib/xmalloca.h: Include xalloc.h.
10743         (xnmalloca): New macro.
10744
10745 2007-12-30  Bruno Haible  <bruno@clisp.org>
10746
10747         * lib/malloca.h (nmalloca): New macro.
10748         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
10749         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
10750         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
10751         knuth_morris_pratt_multibyte): Likewise.
10752         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
10753         knuth_morris_pratt_multibyte): Likewise.
10754         * lib/memmem.c (knuth_morris_pratt): Likewise.
10755         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
10756
10757 2007-12-25  Bruno Haible  <bruno@clisp.org>
10758
10759         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
10760         * lib/glob.c: Don't include openat.h.
10761         (link_exists2_p): Add back the code that deals with the
10762         !GLOB_ALTDIRFUNC case.
10763         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
10764         let it do the filename concatenation.
10765         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
10766         * modules/glob (Depends-on): Remove openat.
10767
10768 2007-12-31  Bruno Haible  <bruno@clisp.org>
10769
10770         * modules/dirfd (License): Change to LGPLv2+.
10771         Approved by Jim Meyering.
10772
10773 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
10774
10775         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
10776         when multiplying M by sizeof (size_t).
10777
10778 2007-12-10  Martin Lambers  <marlam@marlam.de>
10779
10780         Override getpagesize on mingw.
10781         * lib/getpagesize.c: New file.
10782         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
10783         * modules/getpagesize (Files): Add lib/getpagesize.c.
10784         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
10785         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
10786         REPLACE_GETPAGESIZE.
10787         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
10788
10789 2007-12-25  Bruno Haible  <bruno@clisp.org>
10790
10791         * modules/localcharset (Notice): New field.
10792         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
10793         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
10794
10795 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
10796             Bruno Haible  <bruno@clisp.org>
10797
10798         Avoid using the syntax symbol() in formatted documentation.
10799         * MODULES.html.sh (func_module): When replacing symbol() with a
10800         hyperlink, remove the parentheses. Show an error if some remain.
10801         Recognize and render the '...' syntax.
10802         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
10803         Rework. Add paragraph about GCC's inlining.
10804         * doc/alloca.texi: Likewise.
10805         * doc/error.texi: Remove parentheses from symbol reference.
10806         * doc/gnulib-intro.texi: Likewise.
10807         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
10808         * modules/fnmatch (Description): Reword to say "the ... function".
10809         * modules/full-read (Description): Likewise.
10810         * modules/full-write (Description): Likewise.
10811         * modules/safe-read (Description): Likewise.
10812         * modules/safe-write (Description): Likewise.
10813         * modules/strchrnul (Description): Likewise.
10814         * modules/trim (Description): Likewise.
10815         * modules/error (Description): Remove parentheses from symbol
10816         references.
10817         * modules/verror (Description): Likewise.
10818         Reported by Karl Berry.
10819
10820 2007-12-25  Bruno Haible  <bruno@clisp.org>
10821
10822         Fixup after 2007-10-16 commit.
10823         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
10824
10825 2007-12-24  Bruno Haible  <bruno@clisp.org>
10826
10827         Make --enable-relocatable work with DESTDIR.
10828         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
10829         to compute installdir from destprog.
10830         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
10831         also set the RELOC_DESTDIR variable.
10832         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
10833
10834 2007-12-24  Bruno Haible  <bruno@clisp.org>
10835
10836         Fix link error due to xalloc_die().
10837         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
10838         of xreadlink.
10839         * lib/relocwrapper.c: Update comments.
10840         * build-aux/install-reloc: Remove xreadlink.c from file list.
10841         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
10842         xreadlink.c.
10843         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
10844
10845 2007-12-24  Bruno Haible  <bruno@clisp.org>
10846
10847         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
10848         * lib/setenv.h: Remove file.
10849         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
10850         lib/setenv.h.
10851         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
10852         (Depends-on): Add stdlib.
10853         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
10854         gl_FUNC_UNSETENV.
10855         (Include): Replace setenv.h with <stdlib.h>.
10856         * modules/unsetenv: New file.
10857         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
10858         * lib/unsetenv.c: Include <stdlib.h> first.
10859         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
10860         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
10861         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
10862         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
10863         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
10864         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
10865         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
10866         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
10867         * doc/functions/unsetenv.texi: Update.
10868         * modules/xsetenv (Depends-on): Add unsetenv.
10869         * modules/getdate (Depends-on): Likewise.
10870         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
10871         * lib/xsetenv.c: Don't include setenv.h.
10872         * lib/getdate.y: Likewise.
10873         * lib/relocwrapper.c: Likewise.
10874         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
10875         (Depends-on): Add stdlib.
10876         * NEWS: Mention the changes.
10877         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
10878
10879 2007-12-23  Bruno Haible  <bruno@clisp.org>
10880
10881         * lib/memmem.c (memmem): Use lowercase variable names. Tab
10882         indentation.
10883
10884 2007-12-23  Bruno Haible  <bruno@clisp.org>
10885
10886         * lib/c-strcasestr.c: Add more comments.
10887         * lib/c-strstr.c: Likewise.
10888         * lib/mbscasestr.c: Likewise.
10889         * lib/mbsstr.c: Likewise.
10890         * lib/strcasestr.c: Likewise.
10891         * lib/memmem.c: Likewise.
10892
10893 2007-12-23  Bruno Haible  <bruno@clisp.org>
10894
10895         * tests/test-memmem.c: Include <string.h> first.
10896
10897 2007-12-22  Bruno Haible  <bruno@clisp.org>
10898
10899         * gnulib-tool (func_create_testdir): Change $auxdir while generating
10900         the contents of $testsbase.
10901         Reported by Ralf Wildenhues.
10902
10903 2007-12-22  Bruno Haible  <bruno@clisp.org>
10904
10905         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
10906         two variables local_ldadd_before, local_ldadd_last.
10907
10908 2007-12-20  Eric Blake  <ebb9@byu.net>
10909
10910         Work around circular library issue when cross-compiling.
10911         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
10912         that progname.o does not need to pull in rpl_memcmp.
10913
10914 2007-12-19  Eric Blake  <ebb9@byu.net>
10915
10916         Fix memmem to avoid O(n^2) worst-case complexity.
10917         * lib/memmem.c (knuth_morris_pratt): New function.
10918         (memmem): Use it if first few naive iterations fail.
10919         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
10920         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
10921         * modules/memchr (License): Likewise.
10922         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
10923         malloca.
10924         * tests/test-memmem.c: Rewrite, borrowing ideas from
10925         test-mbsstr1.c; the old version wouldn't even compile!
10926         * modules/memmem-tests: New file.
10927         * lib/string.in.h (rpl_memmem): Add declaration.
10928         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
10929         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
10930         REPLACE_MEMMEM.
10931
10932 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
10933
10934         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
10935         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
10936         before any system include files, and undef after them all.  This
10937         should fix a problem on VMS reported by John E. Malmberg in
10938         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
10939
10940 2007-12-17  Eric Blake  <ebb9@byu.net>
10941
10942         Revert addition of verify, for BSD/OS.
10943         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
10944         can't handle large files, for the sake of obsolete platforms.
10945         * modules/fseeko (Depends-on): Remove verify.
10946         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
10947         * doc/functions/ftello.texi (ftello): Likewise.
10948         * doc/functions/fgetpos.texi (fgetpos): Likewise.
10949         Reported by Larry Jones.
10950
10951 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
10952
10953         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
10954         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
10955
10956 2007-12-17  Jim Meyering  <meyering@redhat.com>
10957
10958         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
10959         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
10960         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
10961         * modules/getcwd (Depends-on): Add openat.
10962         Reported by Petr Salinger.
10963
10964 2007-12-17  Bruno Haible  <bruno@clisp.org>
10965
10966         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
10967         avoid a segmentation fault of the configure test on x86_64 systems.
10968
10969 2007-12-15  Jim Meyering  <meyering@redhat.com>
10970
10971         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
10972
10973 2007-12-13  Eric Blake  <ebb9@byu.net>
10974
10975         Another fseek test.
10976         * tests/test-fseek.c (main): Also test ungetc handling.
10977         * tests/test-fseeko.c (main): Likewise.
10978         * modules/fseeko (Depends-on): Add verify.
10979         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
10980         large.
10981         Reported by Larry Jones.
10982
10983         Fix fseeko on mingw.
10984         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
10985         seek.
10986
10987         Beef up fseek tests.
10988         * tests/test-fseek.c (main): Also test eof handling.
10989         * tests/test-fseeko.c (main): Likewise.
10990         Reported by Larry Jones.
10991
10992 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
10993
10994         Fix fseeko on BSD-based platforms.
10995         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
10996         successful seek.
10997
10998 2007-12-12  Eric Blake  <ebb9@byu.net>
10999
11000         Allow circular dependency of separate libtests.a
11001         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
11002         when use_libtests.
11003
11004 2007-12-11  Eric Blake  <ebb9@byu.net>
11005
11006         Fix bug with -0.0L in previous patch.
11007         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
11008         * tests/test-isnan.c (main): Also test on zeroes.
11009         * tests/test-isnanf.c (main): Likewise.
11010         * tests/test-isnanl.h (main): Likewise.
11011
11012         Detect pseudo-denormals on x86 even when cross-compiling.
11013         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
11014         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
11015         invalid bit patterns that happen to satisfy ==.
11016
11017         Avoid link failures with separate libtests.a.
11018         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
11019         last, to satisfy circular dependencies.
11020
11021 2007-12-11  Eric Blake  <ebb9@byu.net>
11022         and Bruno Haible  <bruno@clisp.org>
11023
11024         Fix OpenBSD 4.0 <float.h> handling of long double.
11025         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
11026         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
11027         * doc/headers/float.texi (float.h): Document OpenBSD bug.
11028
11029 2007-12-11  Jim Meyering  <meyering@redhat.com>
11030
11031         * users.txt: Add libvirt.
11032
11033         Support versions of autoconf prior to 2.59c.
11034         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
11035         if it is not already defined.
11036
11037 2007-12-09  Bruno Haible  <bruno@clisp.org>
11038
11039         Let 'gnulib-tool --import' collect sources needed for the tests in
11040         tests/ rather than in lib/.
11041         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
11042         argument. If true, add rules to generate libtests.a, and put libtests.a
11043         into $(LDADD). Consider source files in subdirectories and set
11044         uses_subdirs.
11045         (func_emit_initmacro_start, func_emit_initmacro_end,
11046         func_emit_initmacro_done): Pass all arguments explicitly.
11047         (func_import): Determine two module lists main_modules,
11048         testsrelated_modules. Determine use_libtests. Determine two variables
11049         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
11050         instead of just sed_transform_lib_file. Determine two variables
11051         main_files and testsrelated_files. Compute 'files' as the union of
11052         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
11053         func_add_or_update. In the generated gnulib-comp.m4, collect the
11054         object files for tests/ in different variables than those for lib/.
11055         Substitute LIBTESTS_LIBDEPS.
11056         (func_create_testdir): Combine the uses_subdirs results from
11057         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
11058
11059 2007-12-09  Bruno Haible  <bruno@clisp.org>
11060
11061         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
11062         the build-aux directory.
11063
11064 2007-12-09  Bruno Haible  <bruno@clisp.org>
11065
11066         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
11067         introduced on 2006-09-09.
11068
11069 2007-12-07  Jim Meyering  <meyering@redhat.com>
11070
11071         Let these macros work also with autoconf-2.59.
11072         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
11073         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
11074         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
11075
11076 2007-12-06  Jim Meyering  <meyering@redhat.com>
11077
11078         Avoid a configure-time syntax error in gl_FUNC_ACL.
11079         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
11080         function in each branch, before testing the cache variable.
11081
11082 2007-12-04  Eric Blake  <ebb9@byu.net>
11083
11084         Make scripts executable.
11085         * build-aux/config.guess: Add execute permissions.
11086         * build-aux/config.sub: Likewise.
11087         * build-aux/gendocs.sh: Likewise.
11088
11089         Fix frexp on mingw.
11090         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
11091         cross-compiling.
11092         * doc/functions/frexp.texi (frexp): Document the bug.
11093
11094         Make cygwin fseeko check more reliable.
11095         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
11096         version numbers, rather than unrelated feature check.
11097         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
11098         * doc/functions/ftello.texi (ftello): Likewise.
11099         Reported by Bruno Haible.
11100
11101         * m4/strerror.m4: Bump version number.
11102
11103 2007-12-03  Bruno Haible  <bruno@clisp.org>
11104
11105         * doc/functions/mprotect.texi: Mention the mingw problem.
11106
11107 2007-12-03  Eric Blake  <ebb9@byu.net>
11108
11109         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
11110         REPLACE_STRERROR is initialized before this macro.
11111
11112 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
11113
11114         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
11115         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
11116         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
11117         put -lsec in even for programs other than 'ls'.  This fixes a problem
11118         for gettext reported by Bruno Haible in
11119         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
11120         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
11121         Add support for Solaris 10.  This isn't efficient, but should get the
11122         job done for now.
11123
11124 2007-12-03  James Youngman  <jay@gnu.org>
11125
11126         * doc/regexprops-generic.texi: change "an close-group" to "a
11127         close-group" and "illegal" to "not allowed".
11128
11129 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11130
11131         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
11132         pr_byname.h. Needed for the rare case when the maintainer has done
11133         "make maintainer-clean" in the source directory and then attempts a
11134         build outside the source directory.
11135         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
11136         scripts_byname.h.
11137
11138 2007-12-02  Martin Lambers <marlam@marlam.de>
11139             Bruno Haible  <bruno@clisp.org>
11140
11141         * lib/getpagesize.h: Remove file.
11142         * lib/unistd.in.h: Include declaration of getpagesize here.
11143         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
11144         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
11145         HAVE_SYS_PARAM_H.
11146         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
11147         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
11148         * modules/getpagesize (Files): Remove lib/getpagesize.h.
11149         (Depends-on): Add unistd.
11150         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
11151         (Include): Use <unistd.h> instead of getpagesize.h.
11152         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
11153         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
11154         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
11155         gl_GETPAGESIZE invocation, already handled by module dependency.
11156         * lib/pagealign_alloc.c: Don't include getpagesize.h.
11157
11158 2007-12-02  Bruno Haible  <bruno@clisp.org>
11159
11160         * modules/strings-tests: New file.
11161         * tests/test-strings.c: New file.
11162
11163         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
11164         * lib/strings.in.h: New file.
11165         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
11166         * m4/strings_h.m4: New file.
11167         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
11168         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
11169         * modules/strings: New file.
11170         * modules/string (Makefile.am): Update.
11171         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
11172         Reported by Karl Berry.
11173
11174 2007-12-01  Eric Blake  <ebb9@byu.net>
11175
11176         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
11177         accomodate fix in cygwin 1.5.25.
11178
11179 2007-12-01  Jim Meyering  <meyering@redhat.com>
11180
11181         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
11182         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
11183         that would inhibit utf8-optimization of a regexp containing line-
11184         or buffer-anchors, e.g., `^', `$'.
11185
11186 2007-11-30  Bruno Haible  <bruno@clisp.org>
11187
11188         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
11189         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
11190         glthread_recursive_lock_init.
11191         * lib/lock.c (glthread_recursive_lock_init)
11192         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
11193         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
11194
11195 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
11196
11197         New function qset_acl, like set_acl but with syscall semantics.
11198         * lib/acl.h (qset_acl): New decl.
11199         * lib/acl.c (qset_acl): New function.
11200         (set_acl): Use new function.  Use more-consistent diagnostics.
11201
11202 2007-11-28  Jim Meyering  <meyering@redhat.com>
11203
11204         * modules/physmem (License): Change from GPL to LGPLv2+.
11205
11206 2007-11-26  Bruno Haible  <bruno@clisp.org>
11207
11208         * lib/vasnprintf.c (decode_long_double): Don't abort if the
11209         'long double' type has excess precision.
11210         Reported by Jim Meyering in
11211         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
11212
11213 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11214
11215         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
11216         Sync from <http://gnu.org/licenses>.
11217         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
11218         with license text from same location.
11219         * doc/maintain.texi, doc/standards.texi:  Sync from
11220         <http://savannah.gnu.org/projects/gnustandards>.
11221
11222 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
11223         and Jim Meyering  <meyering@redhat.com>
11224
11225         Adjust getdate' grammar to accept a slightly more regular language.
11226         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
11227         Before, the former was rejected.
11228         * lib/getdate.y (digits_to_date_time): New function, factored
11229         out of ...
11230         (number): ...here.  Just call digits_to_date_time.
11231         (hybrid): New non-terminal to handle an <unsigned number,
11232         signed relative offset> sequence consistently.
11233
11234 2007-11-18  Jim Meyering  <meyering@redhat.com>
11235
11236         Pull my changes from coreutils:
11237         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
11238         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
11239         use of $gnulib_tool_option_extras, so that it's separated from the
11240         preceding argument.
11241
11242         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
11243         * build-aux/bootstrap (cp_mark_as_generated): Create any required
11244         parent destination directories before copying a file into place.
11245
11246 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
11247
11248         bootstrap: work also with 4-argument variant of AC_INIT
11249         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
11250
11251 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11252
11253         Port test-getaddrinfo to Solaris.
11254         Problem reported by Bruno Haible in
11255         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
11256         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
11257         explanation of setting 'hints'.
11258         Don't reject an implementation merely because it returns EAI_SERVICE.
11259         (EAI_SERVICE): Define to 0 if not defined.
11260
11261 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
11262
11263         The license of gnu-make and posix-shell is now "GPLed build tool".
11264         * modules/gnu-make (License): Likewise.
11265         * modules/posix-shell (License): Likewise.
11266
11267         New module posix-shell, for determining a POSIX shell
11268         or perhaps something that is close enough to a POSIX shell.
11269         * m4/posix-shell.m4: New file.
11270         * modules/posix-shell: New file.
11271
11272         * MODULES.html.sh: Mention new module.
11273
11274         New module gnu-make, for determining whether we're using GNU Make.
11275         * m4/gnu-make.m4: New file.
11276         * modules/gnu-make: New file.
11277         * MODULES.html.sh: Mention new module.
11278
11279 2007-11-14  Jim Meyering  <meyering@redhat.com>
11280
11281         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
11282         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
11283         use this macro to create a function _definition_.
11284         Remove useless "#undef ARGMATCH_DIE".
11285
11286 2007-11-14  Bruno Haible  <bruno@clisp.org>
11287
11288         * lib/config.charset: Update for OpenBSD 4.1.
11289         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
11290
11291 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
11292
11293         Document 64-bit #if problems in stdint.texi.
11294         * doc/headers/stdint.texi (stdint.h): Mention problems with
11295         64-bit-#if, and how to work around them.
11296
11297         Don't insist on 'long long int' support in the preprocessor.  It
11298         breaks too many things.  For example, PRIdMAX still uses a 'long
11299         long int' format with the latest Sun compiler, even though
11300         HAVE_LONG_LONG_INT isn't defined due to that compiler's
11301         preprocessor problem.  This causes the latest coreutils to dump
11302         core on Solaris 10 sparc with the Sun C compiler.
11303         Instead, fix the 2007-10-16 problem in a different way, by evaluating
11304         the troublesome expressions at configure-time, not at #if-time.
11305         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
11306         preprocessor.
11307         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
11308         compile-time C checks, done at 'configure'-time.
11309         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
11310         * modules/inttypes (Makefile): Substitute the new symbols that
11311         gl_INTTYPES_H now generates.
11312         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
11313
11314 2007-11-12  Bruno Haible  <bruno@clisp.org>
11315
11316         Tests for Unicode character classification functions.
11317
11318         * modules/unictype/bidicategory-byname-tests: New file.
11319         * modules/unictype/bidicategory-name-tests: New file.
11320         * modules/unictype/bidicategory-of-tests: New file.
11321         * modules/unictype/bidicategory-test-tests: New file.
11322         * modules/unictype/block-list-tests: New file.
11323         * modules/unictype/block-of-tests: New file.
11324         * modules/unictype/block-test-tests: New file.
11325         * modules/unictype/category-C-tests: New file.
11326         * modules/unictype/category-Cc-tests: New file.
11327         * modules/unictype/category-Cf-tests: New file.
11328         * modules/unictype/category-Cn-tests: New file.
11329         * modules/unictype/category-Co-tests: New file.
11330         * modules/unictype/category-Cs-tests: New file.
11331         * modules/unictype/category-L-tests: New file.
11332         * modules/unictype/category-Ll-tests: New file.
11333         * modules/unictype/category-Lm-tests: New file.
11334         * modules/unictype/category-Lo-tests: New file.
11335         * modules/unictype/category-Lt-tests: New file.
11336         * modules/unictype/category-Lu-tests: New file.
11337         * modules/unictype/category-M-tests: New file.
11338         * modules/unictype/category-Mc-tests: New file.
11339         * modules/unictype/category-Me-tests: New file.
11340         * modules/unictype/category-Mn-tests: New file.
11341         * modules/unictype/category-N-tests: New file.
11342         * modules/unictype/category-Nd-tests: New file.
11343         * modules/unictype/category-Nl-tests: New file.
11344         * modules/unictype/category-No-tests: New file.
11345         * modules/unictype/category-P-tests: New file.
11346         * modules/unictype/category-Pc-tests: New file.
11347         * modules/unictype/category-Pd-tests: New file.
11348         * modules/unictype/category-Pe-tests: New file.
11349         * modules/unictype/category-Pf-tests: New file.
11350         * modules/unictype/category-Pi-tests: New file.
11351         * modules/unictype/category-Po-tests: New file.
11352         * modules/unictype/category-Ps-tests: New file.
11353         * modules/unictype/category-S-tests: New file.
11354         * modules/unictype/category-Sc-tests: New file.
11355         * modules/unictype/category-Sk-tests: New file.
11356         * modules/unictype/category-Sm-tests: New file.
11357         * modules/unictype/category-So-tests: New file.
11358         * modules/unictype/category-Z-tests: New file.
11359         * modules/unictype/category-Zl-tests: New file.
11360         * modules/unictype/category-Zp-tests: New file.
11361         * modules/unictype/category-Zs-tests: New file.
11362         * modules/unictype/category-and-not-tests: New file.
11363         * modules/unictype/category-and-tests: New file.
11364         * modules/unictype/category-byname-tests: New file.
11365         * modules/unictype/category-name-tests: New file.
11366         * modules/unictype/category-none-tests: New file.
11367         * modules/unictype/category-of-tests: New file.
11368         * modules/unictype/category-or-tests: New file.
11369         * modules/unictype/category-test-withtable-tests: New file.
11370         * modules/unictype/combining-class-tests: New file.
11371         * modules/unictype/ctype-alnum-tests: New file.
11372         * modules/unictype/ctype-alpha-tests: New file.
11373         * modules/unictype/ctype-blank-tests: New file.
11374         * modules/unictype/ctype-cntrl-tests: New file.
11375         * modules/unictype/ctype-digit-tests: New file.
11376         * modules/unictype/ctype-graph-tests: New file.
11377         * modules/unictype/ctype-lower-tests: New file.
11378         * modules/unictype/ctype-print-tests: New file.
11379         * modules/unictype/ctype-punct-tests: New file.
11380         * modules/unictype/ctype-space-tests: New file.
11381         * modules/unictype/ctype-upper-tests: New file.
11382         * modules/unictype/ctype-xdigit-tests: New file.
11383         * modules/unictype/decimal-digit-tests: New file.
11384         * modules/unictype/digit-tests: New file.
11385         * modules/unictype/mirror-tests: New file.
11386         * modules/unictype/numeric-tests: New file.
11387         * modules/unictype/property-alphabetic-tests: New file.
11388         * modules/unictype/property-ascii-hex-digit-tests: New file.
11389         * modules/unictype/property-bidi-arabic-digit-tests: New file.
11390         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
11391         * modules/unictype/property-bidi-block-separator-tests: New file.
11392         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
11393         * modules/unictype/property-bidi-common-separator-tests: New file.
11394         * modules/unictype/property-bidi-control-tests: New file.
11395         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
11396         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
11397         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
11398         * modules/unictype/property-bidi-european-digit-tests: New file.
11399         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
11400         * modules/unictype/property-bidi-left-to-right-tests: New file.
11401         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
11402         * modules/unictype/property-bidi-other-neutral-tests: New file.
11403         * modules/unictype/property-bidi-pdf-tests: New file.
11404         * modules/unictype/property-bidi-segment-separator-tests: New file.
11405         * modules/unictype/property-bidi-whitespace-tests: New file.
11406         * modules/unictype/property-byname-tests: New file.
11407         * modules/unictype/property-combining-tests: New file.
11408         * modules/unictype/property-composite-tests: New file.
11409         * modules/unictype/property-currency-symbol-tests: New file.
11410         * modules/unictype/property-dash-tests: New file.
11411         * modules/unictype/property-decimal-digit-tests: New file.
11412         * modules/unictype/property-default-ignorable-code-point-tests: New file.
11413         * modules/unictype/property-deprecated-tests: New file.
11414         * modules/unictype/property-diacritic-tests: New file.
11415         * modules/unictype/property-extender-tests: New file.
11416         * modules/unictype/property-format-control-tests: New file.
11417         * modules/unictype/property-grapheme-base-tests: New file.
11418         * modules/unictype/property-grapheme-extend-tests: New file.
11419         * modules/unictype/property-grapheme-link-tests: New file.
11420         * modules/unictype/property-hex-digit-tests: New file.
11421         * modules/unictype/property-hyphen-tests: New file.
11422         * modules/unictype/property-id-continue-tests: New file.
11423         * modules/unictype/property-id-start-tests: New file.
11424         * modules/unictype/property-ideographic-tests: New file.
11425         * modules/unictype/property-ids-binary-operator-tests: New file.
11426         * modules/unictype/property-ids-trinary-operator-tests: New file.
11427         * modules/unictype/property-ignorable-control-tests: New file.
11428         * modules/unictype/property-iso-control-tests: New file.
11429         * modules/unictype/property-join-control-tests: New file.
11430         * modules/unictype/property-left-of-pair-tests: New file.
11431         * modules/unictype/property-line-separator-tests: New file.
11432         * modules/unictype/property-logical-order-exception-tests: New file.
11433         * modules/unictype/property-lowercase-tests: New file.
11434         * modules/unictype/property-math-tests: New file.
11435         * modules/unictype/property-non-break-tests: New file.
11436         * modules/unictype/property-not-a-character-tests: New file.
11437         * modules/unictype/property-numeric-tests: New file.
11438         * modules/unictype/property-other-alphabetic-tests: New file.
11439         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
11440         * modules/unictype/property-other-grapheme-extend-tests: New file.
11441         * modules/unictype/property-other-id-continue-tests: New file.
11442         * modules/unictype/property-other-id-start-tests: New file.
11443         * modules/unictype/property-other-lowercase-tests: New file.
11444         * modules/unictype/property-other-math-tests: New file.
11445         * modules/unictype/property-other-uppercase-tests: New file.
11446         * modules/unictype/property-paired-punctuation-tests: New file.
11447         * modules/unictype/property-paragraph-separator-tests: New file.
11448         * modules/unictype/property-pattern-syntax-tests: New file.
11449         * modules/unictype/property-pattern-white-space-tests: New file.
11450         * modules/unictype/property-private-use-tests: New file.
11451         * modules/unictype/property-punctuation-tests: New file.
11452         * modules/unictype/property-quotation-mark-tests: New file.
11453         * modules/unictype/property-radical-tests: New file.
11454         * modules/unictype/property-sentence-terminal-tests: New file.
11455         * modules/unictype/property-soft-dotted-tests: New file.
11456         * modules/unictype/property-space-tests: New file.
11457         * modules/unictype/property-terminal-punctuation-tests: New file.
11458         * modules/unictype/property-test-tests: New file.
11459         * modules/unictype/property-titlecase-tests: New file.
11460         * modules/unictype/property-unassigned-code-value-tests: New file.
11461         * modules/unictype/property-unified-ideograph-tests: New file.
11462         * modules/unictype/property-uppercase-tests: New file.
11463         * modules/unictype/property-variation-selector-tests: New file.
11464         * modules/unictype/property-white-space-tests: New file.
11465         * modules/unictype/property-xid-continue-tests: New file.
11466         * modules/unictype/property-xid-start-tests: New file.
11467         * modules/unictype/property-zero-width-tests: New file.
11468         * modules/unictype/scripts-tests: New file.
11469         * modules/unictype/syntax-c-ident-tests: New file.
11470         * modules/unictype/syntax-c-whitespace-tests: New file.
11471         * modules/unictype/syntax-java-ident-tests: New file.
11472         * modules/unictype/syntax-java-whitespace-tests: New file.
11473         * tests/unictype/test-bidi_byname.c: New file.
11474         * tests/unictype/test-bidi_name.c: New file.
11475         * tests/unictype/test-bidi_of.c: New file.
11476         * tests/unictype/test-bidi_test.c: New file.
11477         * tests/unictype/test-block_list.c: New file.
11478         * tests/unictype/test-block_of.c: New file.
11479         * tests/unictype/test-block_test.c: New file.
11480         * tests/unictype/test-categ_and.c: New file.
11481         * tests/unictype/test-categ_and_not.c: New file.
11482         * tests/unictype/test-categ_byname.c: New file.
11483         * tests/unictype/test-categ_name.c: New file.
11484         * tests/unictype/test-categ_none.c: New file.
11485         * tests/unictype/test-categ_of.c: New file.
11486         * tests/unictype/test-categ_or.c: New file.
11487         * tests/unictype/test-categ_test_withtable.c: New file.
11488         * tests/unictype/test-combining.c: New file.
11489         * tests/unictype/test-decdigit.c: New file.
11490         * tests/unictype/test-digit.c: New file.
11491         * tests/unictype/test-mirror.c: New file.
11492         * tests/unictype/test-numeric.c: New file.
11493         * tests/unictype/test-pr_byname.c: New file.
11494         * tests/unictype/test-pr_test.c: New file.
11495         * tests/unictype/test-predicate-part1.h: New file.
11496         * tests/unictype/test-predicate-part2.h: New file.
11497         * tests/unictype/test-scripts.c: New file.
11498         * tests/unictype/test-sy_c_ident.c: New file.
11499         * tests/unictype/test-sy_java_ident.c: New file.
11500
11501         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
11502         for Unicode 5.0.0.
11503         * tests/unictype/test-categ_Cc.c: Likewise.
11504         * tests/unictype/test-categ_Cf.c: Likewise.
11505         * tests/unictype/test-categ_Cn.c: Likewise.
11506         * tests/unictype/test-categ_Co.c: Likewise.
11507         * tests/unictype/test-categ_Cs.c: Likewise.
11508         * tests/unictype/test-categ_L.c: Likewise.
11509         * tests/unictype/test-categ_Ll.c: Likewise.
11510         * tests/unictype/test-categ_Lm.c: Likewise.
11511         * tests/unictype/test-categ_Lo.c: Likewise.
11512         * tests/unictype/test-categ_Lt.c: Likewise.
11513         * tests/unictype/test-categ_Lu.c: Likewise.
11514         * tests/unictype/test-categ_M.c: Likewise.
11515         * tests/unictype/test-categ_Mc.c: Likewise.
11516         * tests/unictype/test-categ_Me.c: Likewise.
11517         * tests/unictype/test-categ_Mn.c: Likewise.
11518         * tests/unictype/test-categ_N.c: Likewise.
11519         * tests/unictype/test-categ_Nd.c: Likewise.
11520         * tests/unictype/test-categ_Nl.c: Likewise.
11521         * tests/unictype/test-categ_No.c: Likewise.
11522         * tests/unictype/test-categ_P.c: Likewise.
11523         * tests/unictype/test-categ_Pc.c: Likewise.
11524         * tests/unictype/test-categ_Pd.c: Likewise.
11525         * tests/unictype/test-categ_Pe.c: Likewise.
11526         * tests/unictype/test-categ_Pf.c: Likewise.
11527         * tests/unictype/test-categ_Pi.c: Likewise.
11528         * tests/unictype/test-categ_Po.c: Likewise.
11529         * tests/unictype/test-categ_Ps.c: Likewise.
11530         * tests/unictype/test-categ_S.c: Likewise.
11531         * tests/unictype/test-categ_Sc.c: Likewise.
11532         * tests/unictype/test-categ_Sk.c: Likewise.
11533         * tests/unictype/test-categ_Sm.c: Likewise.
11534         * tests/unictype/test-categ_So.c: Likewise.
11535         * tests/unictype/test-categ_Z.c: Likewise.
11536         * tests/unictype/test-categ_Zl.c: Likewise.
11537         * tests/unictype/test-categ_Zp.c: Likewise.
11538         * tests/unictype/test-categ_Zs.c: Likewise.
11539         * tests/unictype/test-ctype_alnum.c: Likewise.
11540         * tests/unictype/test-ctype_alpha.c: Likewise.
11541         * tests/unictype/test-ctype_blank.c: Likewise.
11542         * tests/unictype/test-ctype_cntrl.c: Likewise.
11543         * tests/unictype/test-ctype_digit.c: Likewise.
11544         * tests/unictype/test-ctype_graph.c: Likewise.
11545         * tests/unictype/test-ctype_lower.c: Likewise.
11546         * tests/unictype/test-ctype_print.c: Likewise.
11547         * tests/unictype/test-ctype_punct.c: Likewise.
11548         * tests/unictype/test-ctype_space.c: Likewise.
11549         * tests/unictype/test-ctype_upper.c: Likewise.
11550         * tests/unictype/test-ctype_xdigit.c: Likewise.
11551         * tests/unictype/test-decdigit.h: Likewise.
11552         * tests/unictype/test-digit.h: Likewise.
11553         * tests/unictype/test-numeric.h: Likewise.
11554         * tests/unictype/test-pr_alphabetic.c: Likewise.
11555         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
11556         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
11557         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
11558         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
11559         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
11560         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
11561         * tests/unictype/test-pr_bidi_control.c: Likewise.
11562         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
11563         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
11564         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
11565         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
11566         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
11567         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
11568         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
11569         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
11570         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
11571         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
11572         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
11573         * tests/unictype/test-pr_combining.c: Likewise.
11574         * tests/unictype/test-pr_composite.c: Likewise.
11575         * tests/unictype/test-pr_currency_symbol.c: Likewise.
11576         * tests/unictype/test-pr_dash.c: Likewise.
11577         * tests/unictype/test-pr_decimal_digit.c: Likewise.
11578         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
11579         * tests/unictype/test-pr_deprecated.c: Likewise.
11580         * tests/unictype/test-pr_diacritic.c: Likewise.
11581         * tests/unictype/test-pr_extender.c: Likewise.
11582         * tests/unictype/test-pr_format_control.c: Likewise.
11583         * tests/unictype/test-pr_grapheme_base.c: Likewise.
11584         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
11585         * tests/unictype/test-pr_grapheme_link.c: Likewise.
11586         * tests/unictype/test-pr_hex_digit.c: Likewise.
11587         * tests/unictype/test-pr_hyphen.c: Likewise.
11588         * tests/unictype/test-pr_id_continue.c: Likewise.
11589         * tests/unictype/test-pr_id_start.c: Likewise.
11590         * tests/unictype/test-pr_ideographic.c: Likewise.
11591         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
11592         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
11593         * tests/unictype/test-pr_ignorable_control.c: Likewise.
11594         * tests/unictype/test-pr_iso_control.c: Likewise.
11595         * tests/unictype/test-pr_join_control.c: Likewise.
11596         * tests/unictype/test-pr_left_of_pair.c: Likewise.
11597         * tests/unictype/test-pr_line_separator.c: Likewise.
11598         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
11599         * tests/unictype/test-pr_lowercase.c: Likewise.
11600         * tests/unictype/test-pr_math.c: Likewise.
11601         * tests/unictype/test-pr_non_break.c: Likewise.
11602         * tests/unictype/test-pr_not_a_character.c: Likewise.
11603         * tests/unictype/test-pr_numeric.c: Likewise.
11604         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
11605         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
11606         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
11607         * tests/unictype/test-pr_other_id_continue.c: Likewise.
11608         * tests/unictype/test-pr_other_id_start.c: Likewise.
11609         * tests/unictype/test-pr_other_lowercase.c: Likewise.
11610         * tests/unictype/test-pr_other_math.c: Likewise.
11611         * tests/unictype/test-pr_other_uppercase.c: Likewise.
11612         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
11613         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
11614         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
11615         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
11616         * tests/unictype/test-pr_private_use.c: Likewise.
11617         * tests/unictype/test-pr_punctuation.c: Likewise.
11618         * tests/unictype/test-pr_quotation_mark.c: Likewise.
11619         * tests/unictype/test-pr_radical.c: Likewise.
11620         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
11621         * tests/unictype/test-pr_soft_dotted.c: Likewise.
11622         * tests/unictype/test-pr_space.c: Likewise.
11623         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
11624         * tests/unictype/test-pr_titlecase.c: Likewise.
11625         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
11626         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
11627         * tests/unictype/test-pr_uppercase.c: Likewise.
11628         * tests/unictype/test-pr_variation_selector.c: Likewise.
11629         * tests/unictype/test-pr_white_space.c: Likewise.
11630         * tests/unictype/test-pr_xid_continue.c: Likewise.
11631         * tests/unictype/test-pr_xid_start.c: Likewise.
11632         * tests/unictype/test-pr_zero_width.c: Likewise.
11633         * tests/unictype/test-sy_c_whitespace.c: Likewise.
11634         * tests/unictype/test-sy_java_whitespace.c: Likewise.
11635
11636 2007-11-12  Bruno Haible  <bruno@clisp.org>
11637
11638         Unicode character classification functions.
11639         * lib/unictype.h: New file.
11640         * modules/unictype/base: New file.
11641         * modules/unictype/category-L: New file.
11642         * modules/unictype/category-Lu: New file.
11643         * modules/unictype/category-Ll: New file.
11644         * modules/unictype/category-Lt: New file.
11645         * modules/unictype/category-Lm: New file.
11646         * modules/unictype/category-Lo: New file.
11647         * modules/unictype/category-M: New file.
11648         * modules/unictype/category-Mn: New file.
11649         * modules/unictype/category-Mc: New file.
11650         * modules/unictype/category-Me: New file.
11651         * modules/unictype/category-N: New file.
11652         * modules/unictype/category-Nd: New file.
11653         * modules/unictype/category-Nl: New file.
11654         * modules/unictype/category-No: New file.
11655         * modules/unictype/category-P: New file.
11656         * modules/unictype/category-Pc: New file.
11657         * modules/unictype/category-Pd: New file.
11658         * modules/unictype/category-Ps: New file.
11659         * modules/unictype/category-Pe: New file.
11660         * modules/unictype/category-Pi: New file.
11661         * modules/unictype/category-Pf: New file.
11662         * modules/unictype/category-Po: New file.
11663         * modules/unictype/category-S: New file.
11664         * modules/unictype/category-Sm: New file.
11665         * modules/unictype/category-Sc: New file.
11666         * modules/unictype/category-Sk: New file.
11667         * modules/unictype/category-So: New file.
11668         * modules/unictype/category-Z: New file.
11669         * modules/unictype/category-Zs: New file.
11670         * modules/unictype/category-Zl: New file.
11671         * modules/unictype/category-Zp: New file.
11672         * modules/unictype/category-C: New file.
11673         * modules/unictype/category-Cc: New file.
11674         * modules/unictype/category-Cf: New file.
11675         * modules/unictype/category-Cs: New file.
11676         * modules/unictype/category-Co: New file.
11677         * modules/unictype/category-Cn: New file.
11678         * modules/unictype/category-or: New file.
11679         * modules/unictype/category-of: New file.
11680         * modules/unictype/category-test: New file.
11681         * modules/unictype/category-test-withtable: New file.
11682         * modules/unictype/category-byname: New file.
11683         * modules/unictype/category-none: New file.
11684         * modules/unictype/category-and: New file.
11685         * modules/unictype/category-and-not: New file.
11686         * modules/unictype/category-name: New file.
11687         * modules/unictype/combining-class: New file.
11688         * modules/unictype/category-all: New file.
11689         * modules/unictype/bidicategory-all: New file.
11690         * modules/unictype/bidicategory-byname: New file.
11691         * modules/unictype/bidicategory-name: New file.
11692         * modules/unictype/bidicategory-of: New file.
11693         * modules/unictype/bidicategory-test: New file.
11694         * modules/unictype/decimal-digit: New file.
11695         * modules/unictype/digit: New file.
11696         * modules/unictype/numeric: New file.
11697         * modules/unictype/mirror: New file.
11698         * modules/unictype/property-white-space: New file.
11699         * modules/unictype/property-alphabetic: New file.
11700         * modules/unictype/property-other-alphabetic: New file.
11701         * modules/unictype/property-not-a-character: New file.
11702         * modules/unictype/property-default-ignorable-code-point: New file.
11703         * modules/unictype/property-other-default-ignorable-code-point: New
11704         file.
11705         * modules/unictype/property-deprecated: New file.
11706         * modules/unictype/property-logical-order-exception: New file.
11707         * modules/unictype/property-variation-selector: New file.
11708         * modules/unictype/property-private-use: New file.
11709         * modules/unictype/property-unassigned-code-value: New file.
11710         * modules/unictype/property-uppercase: New file.
11711         * modules/unictype/property-other-uppercase: New file.
11712         * modules/unictype/property-lowercase: New file.
11713         * modules/unictype/property-other-lowercase: New file.
11714         * modules/unictype/property-titlecase: New file.
11715         * modules/unictype/property-soft-dotted: New file.
11716         * modules/unictype/property-id-start: New file.
11717         * modules/unictype/property-other-id-start: New file.
11718         * modules/unictype/property-id-continue: New file.
11719         * modules/unictype/property-other-id-continue: New file.
11720         * modules/unictype/property-xid-start: New file.
11721         * modules/unictype/property-xid-continue: New file.
11722         * modules/unictype/property-pattern-white-space: New file.
11723         * modules/unictype/property-pattern-syntax: New file.
11724         * modules/unictype/property-join-control: New file.
11725         * modules/unictype/property-grapheme-base: New file.
11726         * modules/unictype/property-grapheme-extend: New file.
11727         * modules/unictype/property-other-grapheme-extend: New file.
11728         * modules/unictype/property-grapheme-link: New file.
11729         * modules/unictype/property-bidi-control: New file.
11730         * modules/unictype/property-bidi-left-to-right: New file.
11731         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
11732         * modules/unictype/property-bidi-arabic-right-to-left: New file.
11733         * modules/unictype/property-bidi-european-digit: New file.
11734         * modules/unictype/property-bidi-eur-num-separator: New file.
11735         * modules/unictype/property-bidi-eur-num-terminator: New file.
11736         * modules/unictype/property-bidi-arabic-digit: New file.
11737         * modules/unictype/property-bidi-common-separator: New file.
11738         * modules/unictype/property-bidi-block-separator: New file.
11739         * modules/unictype/property-bidi-segment-separator: New file.
11740         * modules/unictype/property-bidi-whitespace: New file.
11741         * modules/unictype/property-bidi-non-spacing-mark: New file.
11742         * modules/unictype/property-bidi-boundary-neutral: New file.
11743         * modules/unictype/property-bidi-pdf: New file.
11744         * modules/unictype/property-bidi-embedding-or-override: New file.
11745         * modules/unictype/property-bidi-other-neutral: New file.
11746         * modules/unictype/property-hex-digit: New file.
11747         * modules/unictype/property-ascii-hex-digit: New file.
11748         * modules/unictype/property-ideographic: New file.
11749         * modules/unictype/property-unified-ideograph: New file.
11750         * modules/unictype/property-radical: New file.
11751         * modules/unictype/property-ids-binary-operator: New file.
11752         * modules/unictype/property-ids-trinary-operator: New file.
11753         * modules/unictype/property-zero-width: New file.
11754         * modules/unictype/property-space: New file.
11755         * modules/unictype/property-non-break: New file.
11756         * modules/unictype/property-iso-control: New file.
11757         * modules/unictype/property-format-control: New file.
11758         * modules/unictype/property-dash: New file.
11759         * modules/unictype/property-hyphen: New file.
11760         * modules/unictype/property-punctuation: New file.
11761         * modules/unictype/property-line-separator: New file.
11762         * modules/unictype/property-paragraph-separator: New file.
11763         * modules/unictype/property-quotation-mark: New file.
11764         * modules/unictype/property-sentence-terminal: New file.
11765         * modules/unictype/property-terminal-punctuation: New file.
11766         * modules/unictype/property-currency-symbol: New file.
11767         * modules/unictype/property-math: New file.
11768         * modules/unictype/property-other-math: New file.
11769         * modules/unictype/property-paired-punctuation: New file.
11770         * modules/unictype/property-left-of-pair: New file.
11771         * modules/unictype/property-combining: New file.
11772         * modules/unictype/property-composite: New file.
11773         * modules/unictype/property-decimal-digit: New file.
11774         * modules/unictype/property-numeric: New file.
11775         * modules/unictype/property-diacritic: New file.
11776         * modules/unictype/property-extender: New file.
11777         * modules/unictype/property-ignorable-control: New file.
11778         * modules/unictype/property-test: New file.
11779         * modules/unictype/property-byname: New file.
11780         * modules/unictype/property-all: New file.
11781         * modules/unictype/scripts: New file.
11782         * modules/unictype/scripts-all: New file.
11783         * modules/unictype/block-of: New file.
11784         * modules/unictype/block-test: New file.
11785         * modules/unictype/block-list: New file.
11786         * modules/unictype/block-all: New file.
11787         * modules/unictype/syntax-c-whitespace: New file.
11788         * modules/unictype/syntax-java-whitespace: New file.
11789         * modules/unictype/syntax-c-ident: New file.
11790         * modules/unictype/syntax-java-ident: New file.
11791         * modules/unictype/ctype-alnum: New file.
11792         * modules/unictype/ctype-alpha: New file.
11793         * modules/unictype/ctype-cntrl: New file.
11794         * modules/unictype/ctype-digit: New file.
11795         * modules/unictype/ctype-graph: New file.
11796         * modules/unictype/ctype-lower: New file.
11797         * modules/unictype/ctype-print: New file.
11798         * modules/unictype/ctype-punct: New file.
11799         * modules/unictype/ctype-space: New file.
11800         * modules/unictype/ctype-upper: New file.
11801         * modules/unictype/ctype-xdigit: New file.
11802         * modules/unictype/ctype-blank: New file.
11803         * lib/unictype/bidi_byname.c: New file.
11804         * lib/unictype/bidi_name.c: New file.
11805         * lib/unictype/bidi_of.c: New file.
11806         * lib/unictype/bidi_test.c: New file.
11807         * lib/unictype/bitmap.h: New file.
11808         * lib/unictype/block_test.c: New file.
11809         * lib/unictype/blocks.c: New file.
11810         * lib/unictype/categ_C.c: New file.
11811         * lib/unictype/categ_Cc.c: New file.
11812         * lib/unictype/categ_Cf.c: New file.
11813         * lib/unictype/categ_Cn.c: New file.
11814         * lib/unictype/categ_Co.c: New file.
11815         * lib/unictype/categ_Cs.c: New file.
11816         * lib/unictype/categ_L.c: New file.
11817         * lib/unictype/categ_Ll.c: New file.
11818         * lib/unictype/categ_Lm.c: New file.
11819         * lib/unictype/categ_Lo.c: New file.
11820         * lib/unictype/categ_Lt.c: New file.
11821         * lib/unictype/categ_Lu.c: New file.
11822         * lib/unictype/categ_M.c: New file.
11823         * lib/unictype/categ_Mc.c: New file.
11824         * lib/unictype/categ_Me.c: New file.
11825         * lib/unictype/categ_Mn.c: New file.
11826         * lib/unictype/categ_N.c: New file.
11827         * lib/unictype/categ_Nd.c: New file.
11828         * lib/unictype/categ_Nl.c: New file.
11829         * lib/unictype/categ_No.c: New file.
11830         * lib/unictype/categ_P.c: New file.
11831         * lib/unictype/categ_Pc.c: New file.
11832         * lib/unictype/categ_Pd.c: New file.
11833         * lib/unictype/categ_Pe.c: New file.
11834         * lib/unictype/categ_Pf.c: New file.
11835         * lib/unictype/categ_Pi.c: New file.
11836         * lib/unictype/categ_Po.c: New file.
11837         * lib/unictype/categ_Ps.c: New file.
11838         * lib/unictype/categ_S.c: New file.
11839         * lib/unictype/categ_Sc.c: New file.
11840         * lib/unictype/categ_Sk.c: New file.
11841         * lib/unictype/categ_Sm.c: New file.
11842         * lib/unictype/categ_So.c: New file.
11843         * lib/unictype/categ_Z.c: New file.
11844         * lib/unictype/categ_Zl.c: New file.
11845         * lib/unictype/categ_Zp.c: New file.
11846         * lib/unictype/categ_Zs.c: New file.
11847         * lib/unictype/categ_and.c: New file.
11848         * lib/unictype/categ_and_not.c: New file.
11849         * lib/unictype/categ_byname.c: New file.
11850         * lib/unictype/categ_name.c: New file.
11851         * lib/unictype/categ_none.c: New file.
11852         * lib/unictype/categ_of.c: New file.
11853         * lib/unictype/categ_or.c: New file.
11854         * lib/unictype/categ_test.c: New file.
11855         * lib/unictype/combining.c: New file.
11856         * lib/unictype/ctype_alnum.c: New file.
11857         * lib/unictype/ctype_alpha.c: New file.
11858         * lib/unictype/ctype_blank.c: New file.
11859         * lib/unictype/ctype_cntrl.c: New file.
11860         * lib/unictype/ctype_digit.c: New file.
11861         * lib/unictype/ctype_graph.c: New file.
11862         * lib/unictype/ctype_lower.c: New file.
11863         * lib/unictype/ctype_print.c: New file.
11864         * lib/unictype/ctype_punct.c: New file.
11865         * lib/unictype/ctype_space.c: New file.
11866         * lib/unictype/ctype_upper.c: New file.
11867         * lib/unictype/ctype_xdigit.c: New file.
11868         * lib/unictype/decdigit.c: New file.
11869         * lib/unictype/digit.c: New file.
11870         * lib/unictype/identsyntaxmap.h: New file.
11871         * lib/unictype/mirror.c: New file.
11872         * lib/unictype/numeric.c: New file.
11873         * lib/unictype/pr_alphabetic.c: New file.
11874         * lib/unictype/pr_ascii_hex_digit.c: New file.
11875         * lib/unictype/pr_bidi_arabic_digit.c: New file.
11876         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
11877         * lib/unictype/pr_bidi_block_separator.c: New file.
11878         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
11879         * lib/unictype/pr_bidi_common_separator.c: New file.
11880         * lib/unictype/pr_bidi_control.c: New file.
11881         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
11882         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
11883         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
11884         * lib/unictype/pr_bidi_european_digit.c: New file.
11885         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
11886         * lib/unictype/pr_bidi_left_to_right.c: New file.
11887         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
11888         * lib/unictype/pr_bidi_other_neutral.c: New file.
11889         * lib/unictype/pr_bidi_pdf.c: New file.
11890         * lib/unictype/pr_bidi_segment_separator.c: New file.
11891         * lib/unictype/pr_bidi_whitespace.c: New file.
11892         * lib/unictype/pr_byname.c: New file.
11893         * lib/unictype/pr_byname.gperf: New file.
11894         * lib/unictype/pr_combining.c: New file.
11895         * lib/unictype/pr_composite.c: New file.
11896         * lib/unictype/pr_currency_symbol.c: New file.
11897         * lib/unictype/pr_dash.c: New file.
11898         * lib/unictype/pr_decimal_digit.c: New file.
11899         * lib/unictype/pr_default_ignorable_code_point.c: New file.
11900         * lib/unictype/pr_deprecated.c: New file.
11901         * lib/unictype/pr_diacritic.c: New file.
11902         * lib/unictype/pr_extender.c: New file.
11903         * lib/unictype/pr_format_control.c: New file.
11904         * lib/unictype/pr_grapheme_base.c: New file.
11905         * lib/unictype/pr_grapheme_extend.c: New file.
11906         * lib/unictype/pr_grapheme_link.c: New file.
11907         * lib/unictype/pr_hex_digit.c: New file.
11908         * lib/unictype/pr_hyphen.c: New file.
11909         * lib/unictype/pr_id_continue.c: New file.
11910         * lib/unictype/pr_id_start.c: New file.
11911         * lib/unictype/pr_ideographic.c: New file.
11912         * lib/unictype/pr_ids_binary_operator.c: New file.
11913         * lib/unictype/pr_ids_trinary_operator.c: New file.
11914         * lib/unictype/pr_ignorable_control.c: New file.
11915         * lib/unictype/pr_iso_control.c: New file.
11916         * lib/unictype/pr_join_control.c: New file.
11917         * lib/unictype/pr_left_of_pair.c: New file.
11918         * lib/unictype/pr_line_separator.c: New file.
11919         * lib/unictype/pr_logical_order_exception.c: New file.
11920         * lib/unictype/pr_lowercase.c: New file.
11921         * lib/unictype/pr_math.c: New file.
11922         * lib/unictype/pr_non_break.c: New file.
11923         * lib/unictype/pr_not_a_character.c: New file.
11924         * lib/unictype/pr_numeric.c: New file.
11925         * lib/unictype/pr_other_alphabetic.c: New file.
11926         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
11927         * lib/unictype/pr_other_grapheme_extend.c: New file.
11928         * lib/unictype/pr_other_id_continue.c: New file.
11929         * lib/unictype/pr_other_id_start.c: New file.
11930         * lib/unictype/pr_other_lowercase.c: New file.
11931         * lib/unictype/pr_other_math.c: New file.
11932         * lib/unictype/pr_other_uppercase.c: New file.
11933         * lib/unictype/pr_paired_punctuation.c: New file.
11934         * lib/unictype/pr_paragraph_separator.c: New file.
11935         * lib/unictype/pr_pattern_syntax.c: New file.
11936         * lib/unictype/pr_pattern_white_space.c: New file.
11937         * lib/unictype/pr_private_use.c: New file.
11938         * lib/unictype/pr_punctuation.c: New file.
11939         * lib/unictype/pr_quotation_mark.c: New file.
11940         * lib/unictype/pr_radical.c: New file.
11941         * lib/unictype/pr_sentence_terminal.c: New file.
11942         * lib/unictype/pr_soft_dotted.c: New file.
11943         * lib/unictype/pr_space.c: New file.
11944         * lib/unictype/pr_terminal_punctuation.c: New file.
11945         * lib/unictype/pr_test.c: New file.
11946         * lib/unictype/pr_titlecase.c: New file.
11947         * lib/unictype/pr_unassigned_code_value.c: New file.
11948         * lib/unictype/pr_unified_ideograph.c: New file.
11949         * lib/unictype/pr_uppercase.c: New file.
11950         * lib/unictype/pr_variation_selector.c: New file.
11951         * lib/unictype/pr_white_space.c: New file.
11952         * lib/unictype/pr_xid_continue.c: New file.
11953         * lib/unictype/pr_xid_start.c: New file.
11954         * lib/unictype/pr_zero_width.c: New file.
11955         * lib/unictype/scripts.c: New file.
11956         * lib/unictype/sy_c_ident.c: New file.
11957         * lib/unictype/sy_c_whitespace.c: New file.
11958         * lib/unictype/sy_java_ident.c: New file.
11959         * lib/unictype/sy_java_whitespace.c: New file.
11960
11961         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
11962         Unicode 5.0.0.
11963         * lib/unictype/blocks.h: Likewise.
11964         * lib/unictype/categ_C.h: Likewise.
11965         * lib/unictype/categ_Cc.h: Likewise.
11966         * lib/unictype/categ_Cf.h: Likewise.
11967         * lib/unictype/categ_Cn.h: Likewise.
11968         * lib/unictype/categ_Co.h: Likewise.
11969         * lib/unictype/categ_Cs.h: Likewise.
11970         * lib/unictype/categ_L.h: Likewise.
11971         * lib/unictype/categ_Ll.h: Likewise.
11972         * lib/unictype/categ_Lm.h: Likewise.
11973         * lib/unictype/categ_Lo.h: Likewise.
11974         * lib/unictype/categ_Lt.h: Likewise.
11975         * lib/unictype/categ_Lu.h: Likewise.
11976         * lib/unictype/categ_M.h: Likewise.
11977         * lib/unictype/categ_Mc.h: Likewise.
11978         * lib/unictype/categ_Me.h: Likewise.
11979         * lib/unictype/categ_Mn.h: Likewise.
11980         * lib/unictype/categ_N.h: Likewise.
11981         * lib/unictype/categ_Nd.h: Likewise.
11982         * lib/unictype/categ_Nl.h: Likewise.
11983         * lib/unictype/categ_No.h: Likewise.
11984         * lib/unictype/categ_P.h: Likewise.
11985         * lib/unictype/categ_Pc.h: Likewise.
11986         * lib/unictype/categ_Pd.h: Likewise.
11987         * lib/unictype/categ_Pe.h: Likewise.
11988         * lib/unictype/categ_Pf.h: Likewise.
11989         * lib/unictype/categ_Pi.h: Likewise.
11990         * lib/unictype/categ_Po.h: Likewise.
11991         * lib/unictype/categ_Ps.h: Likewise.
11992         * lib/unictype/categ_S.h: Likewise.
11993         * lib/unictype/categ_Sc.h: Likewise.
11994         * lib/unictype/categ_Sk.h: Likewise.
11995         * lib/unictype/categ_Sm.h: Likewise.
11996         * lib/unictype/categ_So.h: Likewise.
11997         * lib/unictype/categ_Z.h: Likewise.
11998         * lib/unictype/categ_Zl.h: Likewise.
11999         * lib/unictype/categ_Zp.h: Likewise.
12000         * lib/unictype/categ_Zs.h: Likewise.
12001         * lib/unictype/categ_of.h: Likewise.
12002         * lib/unictype/combining.h: Likewise.
12003         * lib/unictype/ctype_alnum.h: Likewise.
12004         * lib/unictype/ctype_alpha.h: Likewise.
12005         * lib/unictype/ctype_blank.h: Likewise.
12006         * lib/unictype/ctype_cntrl.h: Likewise.
12007         * lib/unictype/ctype_digit.h: Likewise.
12008         * lib/unictype/ctype_graph.h: Likewise.
12009         * lib/unictype/ctype_lower.h: Likewise.
12010         * lib/unictype/ctype_print.h: Likewise.
12011         * lib/unictype/ctype_punct.h: Likewise.
12012         * lib/unictype/ctype_space.h: Likewise.
12013         * lib/unictype/ctype_upper.h: Likewise.
12014         * lib/unictype/ctype_xdigit.h: Likewise.
12015         * lib/unictype/decdigit.h: Likewise.
12016         * lib/unictype/digit.h: Likewise.
12017         * lib/unictype/mirror.h: Likewise.
12018         * lib/unictype/numeric.h: Likewise.
12019         * lib/unictype/pr_alphabetic.h: Likewise.
12020         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
12021         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
12022         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
12023         * lib/unictype/pr_bidi_block_separator.h: Likewise.
12024         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
12025         * lib/unictype/pr_bidi_common_separator.h: Likewise.
12026         * lib/unictype/pr_bidi_control.h: Likewise.
12027         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
12028         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
12029         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
12030         * lib/unictype/pr_bidi_european_digit.h: Likewise.
12031         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
12032         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
12033         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
12034         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
12035         * lib/unictype/pr_bidi_pdf.h: Likewise.
12036         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
12037         * lib/unictype/pr_bidi_whitespace.h: Likewise.
12038         * lib/unictype/pr_combining.h: Likewise.
12039         * lib/unictype/pr_composite.h: Likewise.
12040         * lib/unictype/pr_currency_symbol.h: Likewise.
12041         * lib/unictype/pr_dash.h: Likewise.
12042         * lib/unictype/pr_decimal_digit.h: Likewise.
12043         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
12044         * lib/unictype/pr_deprecated.h: Likewise.
12045         * lib/unictype/pr_diacritic.h: Likewise.
12046         * lib/unictype/pr_extender.h: Likewise.
12047         * lib/unictype/pr_format_control.h: Likewise.
12048         * lib/unictype/pr_grapheme_base.h: Likewise.
12049         * lib/unictype/pr_grapheme_extend.h: Likewise.
12050         * lib/unictype/pr_grapheme_link.h: Likewise.
12051         * lib/unictype/pr_hex_digit.h: Likewise.
12052         * lib/unictype/pr_hyphen.h: Likewise.
12053         * lib/unictype/pr_id_continue.h: Likewise.
12054         * lib/unictype/pr_id_start.h: Likewise.
12055         * lib/unictype/pr_ideographic.h: Likewise.
12056         * lib/unictype/pr_ids_binary_operator.h: Likewise.
12057         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
12058         * lib/unictype/pr_ignorable_control.h: Likewise.
12059         * lib/unictype/pr_iso_control.h: Likewise.
12060         * lib/unictype/pr_join_control.h: Likewise.
12061         * lib/unictype/pr_left_of_pair.h: Likewise.
12062         * lib/unictype/pr_line_separator.h: Likewise.
12063         * lib/unictype/pr_logical_order_exception.h: Likewise.
12064         * lib/unictype/pr_lowercase.h: Likewise.
12065         * lib/unictype/pr_math.h: Likewise.
12066         * lib/unictype/pr_non_break.h: Likewise.
12067         * lib/unictype/pr_not_a_character.h: Likewise.
12068         * lib/unictype/pr_numeric.h: Likewise.
12069         * lib/unictype/pr_other_alphabetic.h: Likewise.
12070         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
12071         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
12072         * lib/unictype/pr_other_id_continue.h: Likewise.
12073         * lib/unictype/pr_other_id_start.h: Likewise.
12074         * lib/unictype/pr_other_lowercase.h: Likewise.
12075         * lib/unictype/pr_other_math.h: Likewise.
12076         * lib/unictype/pr_other_uppercase.h: Likewise.
12077         * lib/unictype/pr_paired_punctuation.h: Likewise.
12078         * lib/unictype/pr_paragraph_separator.h: Likewise.
12079         * lib/unictype/pr_pattern_syntax.h: Likewise.
12080         * lib/unictype/pr_pattern_white_space.h: Likewise.
12081         * lib/unictype/pr_private_use.h: Likewise.
12082         * lib/unictype/pr_punctuation.h: Likewise.
12083         * lib/unictype/pr_quotation_mark.h: Likewise.
12084         * lib/unictype/pr_radical.h: Likewise.
12085         * lib/unictype/pr_sentence_terminal.h: Likewise.
12086         * lib/unictype/pr_soft_dotted.h: Likewise.
12087         * lib/unictype/pr_space.h: Likewise.
12088         * lib/unictype/pr_terminal_punctuation.h: Likewise.
12089         * lib/unictype/pr_titlecase.h: Likewise.
12090         * lib/unictype/pr_unassigned_code_value.h: Likewise.
12091         * lib/unictype/pr_unified_ideograph.h: Likewise.
12092         * lib/unictype/pr_uppercase.h: Likewise.
12093         * lib/unictype/pr_variation_selector.h: Likewise.
12094         * lib/unictype/pr_white_space.h: Likewise.
12095         * lib/unictype/pr_xid_continue.h: Likewise.
12096         * lib/unictype/pr_xid_start.h: Likewise.
12097         * lib/unictype/pr_zero_width.h: Likewise.
12098         * lib/unictype/scripts.h: Likewise.
12099         * lib/unictype/scripts_byname.gperf: Likewise.
12100         * lib/unictype/sy_c_ident.h: Likewise.
12101         * lib/unictype/sy_c_whitespace.h: Likewise.
12102         * lib/unictype/sy_java_ident.h: Likewise.
12103         * lib/unictype/sy_java_whitespace.h: Likewise.
12104
12105         * lib/unictype/Makefile: New file.
12106         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
12107         glibc.
12108         * lib/unictype/3level.h: New file, copied from glibc.
12109         * lib/unictype/3levelbit.h: New file.
12110
12111 2007-11-11  Bruno Haible  <bruno@clisp.org>
12112
12113         * modules/gperf: New file.
12114         * modules/iconv_open (Depends-on): Add it.
12115         (Makefile.am): Remove the GPERF definition.
12116
12117 2007-11-11  Bruno Haible  <bruno@clisp.org>
12118
12119         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
12120         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
12121
12122 2007-11-11  Bruno Haible  <bruno@clisp.org>
12123
12124         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
12125         (usage): Remove function.
12126
12127 2007-11-11  Bruno Haible  <bruno@clisp.org>
12128
12129         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
12130         gl_FUNC_CEILF_LIBS.
12131         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
12132         gl_FUNC_CEIL_LIBS.
12133         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
12134         gl_FUNC_CEILL_LIBS.
12135         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
12136         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
12137         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
12138
12139 2007-11-11  Bruno Haible  <bruno@clisp.org>
12140
12141         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
12142         roundf were declared but do not exist on functions.
12143         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
12144         roundl were declared but do not exist on functions.
12145         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
12146         HAVE_FLOORL_AND_CEILL, respectively.
12147         Needed for Sun C on Solaris 10.
12148
12149 2007-11-11  Bruno Haible  <bruno@clisp.org>
12150
12151         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
12152         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
12153         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
12154         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
12155         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
12156         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
12157         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
12158         HAVE_DECL_ROUNDF.
12159         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
12160         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
12161         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
12162         of HAVE_DECL_ROUND*.
12163         * modules/math (Makefile.am): Update.
12164
12165 2007-11-10  Bruno Haible  <bruno@clisp.org>
12166
12167         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
12168         ptrdiff_t as m4/intl.m4.
12169
12170 2007-11-10  Jim Meyering  <meyering@redhat.com>
12171
12172         Avoid link failure for the argmatch test.
12173         * tests/test-argmatch.c (usage): Define function to avoid a link
12174         failure: argmatch_die requires a usage function.
12175
12176 2007-11-09  Bruno Haible  <bruno@clisp.org>
12177
12178         * doc/functions/snprintf.texi: Mention BeOS deficiency.
12179         * doc/functions/vsnprintf.texi: Likewise.
12180         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
12181         with a size argument < 2.
12182
12183 2007-11-09  Bruno Haible  <bruno@clisp.org>
12184
12185         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
12186         buffer. Fixes an inefficiency introduced on 2007-11-03.
12187
12188 2007-11-09  Bruno Haible  <bruno@clisp.org>
12189
12190         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
12191         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
12192
12193 2007-11-08  Jim Meyering  <meyering@redhat.com>
12194
12195         Change cache variable name prefix "jm_" to "gl_" everywhere.
12196         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
12197         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
12198         * m4/uptime.m4: s/gl_/jm_/
12199
12200 2007-11-07  Bruno Haible  <bruno@clisp.org>
12201
12202         Update to GNU gettext 0.17.
12203         * m4/intl.m4: Update to GNU gettext 0.17.
12204         * m4/po.m4: Likewise.
12205         * modules/gettext (Files): Remove m4/ulonglong.m4.
12206         (configure.ac): Require gettext infrastructure from version 0.17.
12207
12208 2007-11-06  Bruno Haible  <bruno@clisp.org>
12209
12210         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
12211         symbolic values are not defined in a public header.
12212         * lib/freadable.c (freadable) [QNX]: Likewise.
12213         * lib/freadahead.c (freadahead) [QNX]: Likewise.
12214         * lib/freading.c (freading) [QNX]: Likewise.
12215         * lib/fseterr.c (fseterr) [QNX]: Likewise.
12216         * lib/fwritable.c (fwritable) [QNX]: Likewise.
12217         * lib/fwriting.c (fwriting) [QNX]: Likewise.
12218         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
12219         Reported by Alain Magloire.
12220
12221         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
12222
12223 2007-11-05  Bruno Haible  <bruno@clisp.org>
12224
12225         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
12226         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
12227         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
12228         Reported by Eric Blake.
12229
12230 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12231             Bruno Haible  <bruno@clisp.org>
12232
12233         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
12234         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
12235         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
12236         (malloc): Undefine also before including <stdlib.h>.
12237         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
12238         Needed on OSF/1 4.0.
12239
12240 2007-11-05  Jim Meyering  <meyering@redhat.com>
12241
12242         git-version-gen: sync from coreutils.
12243         * build-aux/git-version-gen: Add comments.
12244         Change the first '-' to '.' in the snapshot version string,
12245         e.g., 6.9-377-08144 -> 6.9.377-08144
12246         Remove first parameter.
12247         Don't declare a version "-dirty" merely because a time
12248         stamp has changed.
12249
12250 2007-11-04  Bruno Haible  <bruno@clisp.org>
12251
12252         * lib/lock.h: Protect all macro definitions containing an 'if'
12253         statement through a "do { ... } while (0)".
12254         * lib/tls.h: Likewise.
12255
12256 2007-11-04  Bruno Haible  <bruno@clisp.org>
12257
12258         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
12259
12260 2007-11-04  Bruno Haible  <bruno@clisp.org>
12261
12262         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
12263         * modules/fprintf-posix (Depends-on): Add nocrash.
12264         * modules/snprintf-posix (Depends-on): Likewise.
12265         * modules/sprintf-posix (Depends-on): Likewise.
12266         * modules/vasnprintf-posix (Depends-on): Likewise.
12267         * modules/vasprintf-posix (Depends-on): Likewise.
12268         * modules/vfprintf-posix (Depends-on): Likewise.
12269         * modules/vsnprintf-posix (Depends-on): Likewise.
12270         * modules/vsprintf-posix (Depends-on): Likewise.
12271         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
12272         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
12273         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
12274         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
12275         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
12276         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
12277         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
12278
12279 2007-11-04  Bruno Haible  <bruno@clisp.org>
12280
12281         * modules/nocrash: New file.
12282         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
12283         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
12284
12285 2007-11-04  Bruno Haible  <bruno@clisp.org>
12286
12287         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
12288         precision handling.
12289         * tests/test-vasprintf-posix.c (test_function): Likewise.
12290         * tests/test-snprintf-posix.h (test_function): Likewise.
12291         * tests/test-sprintf-posix.h (test_function): Likewise.
12292
12293         Fix *printf behaviour for large precisions on mingw and BeOS.
12294         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
12295         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
12296         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
12297         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
12298         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12299         gl_PRINTF_PRECISION and test its result. Invoke
12300         gl_PREREQ_VASNPRINTF_PRECISION.
12301         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12302         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12303         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12304         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12305         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12306         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12307         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12308         * doc/functions/fprintf.texi: Update.
12309         * doc/functions/printf.texi: Update.
12310         * doc/functions/snprintf.texi: Update.
12311         * doc/functions/sprintf.texi: Update.
12312         * doc/functions/vfprintf.texi: Update.
12313         * doc/functions/vprintf.texi: Update.
12314         * doc/functions/vsnprintf.texi: Update.
12315         * doc/functions/vsprintf.texi: Update.
12316
12317 2007-11-04  Bruno Haible  <bruno@clisp.org>
12318
12319         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
12320
12321 2007-11-04  Bruno Haible  <bruno@clisp.org>
12322
12323         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
12324         Reported by Sylvain Beucler <beuc@gnu.org>.
12325
12326 2007-11-03  Bruno Haible  <bruno@clisp.org>
12327
12328         * tests/test-fprintf-posix2.sh: New file.
12329         * tests/test-fprintf-posix2.c: New file.
12330         * modules/fprintf-posix-tests (Files): Add them.
12331         (TESTS): Add test-fprintf-posix2.sh.
12332         (configure.ac): Check for getrlimit and setrlimit.
12333         (check_PROGRAMS): Add test-fprintf-posix2.
12334
12335         * tests/test-printf-posix2.sh: New file.
12336         * tests/test-printf-posix2.c: New file.
12337         * modules/printf-posix-tests (Files): Add them.
12338         (TESTS): Add test-printf-posix2.sh.
12339         (configure.ac): Check for getrlimit and setrlimit.
12340         (check_PROGRAMS): Add test-printf-posix2.
12341
12342         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
12343         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
12344         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
12345         (decode_double): New function, copied from decode_long_double.
12346         (scale10_round_decimal_decoded): New function, extracted from
12347         scale10_round_decimal_long_double.
12348         (scale10_round_decimal_long_double): Use it.
12349         (scale10_round_decimal_double): New function.
12350         (floorlog10): New function.
12351         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
12352         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
12353         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
12354         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12355         gl_PRINTF_ENOMEM and test its result. Invoke
12356         gl_PREREQ_VASNPRINTF_ENOMEM.
12357         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12358         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12359         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12360         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12361         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12362         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12363         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12364         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
12365         * modules/snprintf-posix (Depends-on): Likewise.
12366         * modules/sprintf-posix (Depends-on): Likewise.
12367         * modules/vasnprintf-posix (Depends-on): Likewise.
12368         * modules/vasprintf-posix (Depends-on): Likewise.
12369         * modules/vfprintf-posix (Depends-on): Likewise.
12370         * modules/vsnprintf-posix (Depends-on): Likewise.
12371         * modules/vsprintf-posix (Depends-on): Likewise.
12372         * doc/functions/fprintf.texi: Update.
12373         * doc/functions/printf.texi: Update.
12374         * doc/functions/snprintf.texi: Update.
12375         * doc/functions/sprintf.texi: Update.
12376         * doc/functions/vfprintf.texi: Update.
12377         * doc/functions/vprintf.texi: Update.
12378         * doc/functions/vsnprintf.texi: Update.
12379         * doc/functions/vsprintf.texi: Update.
12380
12381 2007-11-03  Bruno Haible  <bruno@clisp.org>
12382
12383         * modules/frexp-nolibm-tests: New file.
12384
12385         * modules/frexp-nolibm: New file.
12386         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
12387
12388 2007-11-03  Bruno Haible  <bruno@clisp.org>
12389
12390         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
12391         value is C99 compliant.
12392         Needed for OSF/1 5.1.
12393
12394 2007-11-03  Bruno Haible  <bruno@clisp.org>
12395
12396         Fix out-of-memory handling of vasnprintf.
12397         * lib/printf-parse.c: Include <errno.h>.
12398         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
12399         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
12400         is already set.
12401
12402 2007-11-02  Eric Blake  <ebb9@byu.net>
12403
12404         Fix tests on cygwin.
12405         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
12406
12407 2007-11-01  Bruno Haible  <bruno@clisp.org>
12408
12409         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
12410         warning.
12411         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
12412         needed for POSIX compatibility.
12413
12414 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
12415
12416         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
12417         for compatibility with GNU.
12418
12419 2007-11-01  Bruno Haible  <bruno@clisp.org>
12420
12421         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
12422         (putenv): Renamed from rpl_putenv. Change argument type from
12423         'const char *' to 'char *'.
12424         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
12425         of defining putenv in config.h, just set REPLACE_PUTENV.
12426         * modules/putenv (Depends-on): Add stdlib.
12427         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
12428         (Include): Use <stdlib.h>.
12429         * lib/stdlib.in.h (putenv): New declaration.
12430         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
12431         REPLACE_PUTENV.
12432         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
12433         REPLACE_PUTENV.
12434         Needed for MacOS X 10.5.0.
12435         Reported by Peter O'Gorman <peter@pogma.com>.
12436
12437 2007-11-01  Jim Meyering  <meyering@redhat.com>
12438
12439         Treat an empty date string exactly like "0".
12440         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
12441         if the remaining date string (to be parsed) is empty, use "0".
12442         Reported by Mischa Molhoek and discussed in this thread:
12443         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
12444
12445 2007-10-31  Bruno Haible  <bruno@clisp.org>
12446
12447         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
12448         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
12449         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
12450         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
12451         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
12452         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
12453
12454 2007-10-31  Bruno Haible  <bruno@clisp.org>
12455
12456         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
12457         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
12458         (AC_TYPE_LONG_LONG_INT): Use it.
12459         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
12460         it as well.
12461         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
12462         to m4/longlong.m4.
12463         * modules/stdint (Files): Remove m4/ulonglong.m4.
12464         * modules/strtoull (Files): Use m4/longlong.m4 instead of
12465         m4/ulonglong.m4.
12466         * modules/strtoumax (Files): Likewise.
12467
12468 2007-10-30  Bruno Haible  <bruno@clisp.org>
12469
12470         * modules/xvasprintf-posix: New file.
12471         Suggested by Eric Blake.
12472
12473 2007-10-30  Bruno Haible  <bruno@clisp.org>
12474
12475         * modules/xprintf-posix-tests: New file.
12476         * tests/test-xprintf-posix.sh: New file.
12477         * tests/test-xprintf-posix.c: New file.
12478         * tests/test-xfprintf-posix.c: New file.
12479
12480         * modules/xprintf-posix: New file.
12481
12482 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12483
12484         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
12485         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
12486         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
12487
12488 2007-10-29  Bruno Haible  <bruno@clisp.org>
12489
12490         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
12491         contain the special marker '_cv_'.
12492         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
12493         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
12494         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
12495         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
12496         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
12497         Reported by Ralf Wildenhues.
12498
12499 2007-10-29  Bruno Haible  <bruno@clisp.org>
12500
12501         * gnulib-tool (func_import): When --lgpl is not specified, set
12502         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
12503         GPLv3.
12504         Reported by Simon Josefsson.
12505
12506 2007-10-28  Bruno Haible  <bruno@clisp.org>
12507
12508         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
12509         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
12510         HAVE_DECL_ISFINITE.
12511         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
12512         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
12513         HAVE_DECL_ISFINITE.
12514
12515 2007-10-28  Bruno Haible  <bruno@clisp.org>
12516
12517         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
12518         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
12519
12520 2007-10-28  Bruno Haible  <bruno@clisp.org>
12521
12522         Fix link errors with Sun C 5.0 on Solaris 10.
12523         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
12524         function is declared but not present in the compiler's libm.
12525         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
12526         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
12527         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
12528         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
12529         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
12530         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
12531         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
12532         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
12533         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
12534         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
12535         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
12536         HAVE_DECL_FLOORL.
12537
12538 2007-10-28  Bruno Haible  <bruno@clisp.org>
12539
12540         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
12541         gl_FUNC_FLOORL. Cache the result.
12542         (gl_FUNC_FLOORL): Use it.
12543         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
12544         gl_FUNC_CEILL. Cache the result.
12545         (gl_FUNC_CEILL): Use it.
12546
12547         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
12548         gl_FUNC_FLOOR. Cache the result.
12549         (gl_FUNC_FLOOR): Use it.
12550         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
12551         gl_FUNC_CEIL. Cache the result.
12552         (gl_FUNC_CEIL): Use it.
12553
12554         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
12555         gl_FUNC_FLOORF. Cache the result.
12556         (gl_FUNC_FLOORF): Use it.
12557         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
12558         gl_FUNC_CEILF. Cache the result.
12559         (gl_FUNC_CEILF): Use it.
12560
12561 2007-10-28  Bruno Haible  <bruno@clisp.org>
12562
12563         * gnulib-tool: Allow specifying the LGPL version number through
12564         --lgpl=2 or --lgpl=3.
12565         (func_usage): Document --lgpl with argument.
12566         Handle --lgpl=... arguments.
12567         (func_import): Recognize also gl_LGPL calls with an argument. When
12568         --lgpl=2 is used and the module's license is just LGPL, report an
12569         error. Set sed_transform_lib_file according to the lgpl variable. In
12570         the generated files, use --lgpl or gl_LGPL invocations with argument,
12571         if necessary.
12572         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
12573         an LGPv2+ license.
12574         * doc/gnulib-tool.texi (Modified imports): Update explanation of
12575         gl_LGPL macro.
12576
12577 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12578             Bruno Haible  <bruno@clisp.org>
12579
12580         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
12581         (u16_uctomb_aux): Likewise.
12582         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
12583         !HAVE_INLINE.
12584         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
12585
12586 2007-10-28  Bruno Haible  <bruno@clisp.org>
12587
12588         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
12589         Invoke AM_GETTEXT_OPTION if it exists.
12590         * modules/vasprintf: Likewise.
12591         * modules/verror: Likewise.
12592         * modules/xprintf: Likewise.
12593         * modules/xvasprintf: Likewise.
12594
12595 2007-10-27  Ben Pfaff  <blp@gnu.org>
12596
12597         * lib/math.in.h: Define isfinite macro and prototypes for
12598         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
12599         implementations.
12600         * m4/math_h.m4: New substitutions for isfinite module.
12601         * lib/isfinite.c: New file.
12602         * m4/isfinite.m4: New file.
12603         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
12604         * modules/isfinite: New file.
12605         * modules/isfinite-tests: New file.
12606         * tests/tests-isfinite.c: New file.
12607         * doc/functions/isfinite.texi: Mention isfinite module.
12608         * MODULES.html.sh: Mention new module.
12609
12610 2007-10-27  Ben Pfaff  <blp@gnu.org>
12611
12612         Ralf Wildenhues reported that Tru64 4.0D declares the round
12613         functions but does not have definitions.
12614         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
12615         cannot be found in any library, set the output variable to
12616         "missing" instead of "".
12617         * m4/round.m4: Also use our substitute if we cannot find round in
12618         any library, even if it is declared.
12619         * m4/roundf.m4: Likewise for roundf.
12620         * m4/roundl.m4: Likewise for roundl.
12621         * lib/math.in.h: Undefine roundf, round, roundl before defining
12622         their replacements, to allow for hypothetical systems where these
12623         may be defined as macros but not available in libraries.
12624
12625 2007-10-27  Bruno Haible  <bruno@clisp.org>
12626
12627         * doc/gnulib.texi: Invoke @firstparagraphindent.
12628         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
12629         changes in gnulib.
12630         (Source changes): New section.
12631
12632 2007-10-26  Bruno Haible  <bruno@clisp.org>
12633
12634         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
12635         borrowed from autoconf.
12636
12637 2007-10-26  Bruno Haible  <bruno@clisp.org>
12638
12639         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
12640         strerror returned the empty string. Needed on HP-UX 11.00.
12641
12642 2007-10-24  Micah Cowan  <micah@cowan.name>
12643
12644         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
12645         * build-aux/bootstrap: Remove support for now-unnecessary option,
12646         --cvs-user, and envvars CVS_USER, CVS_RSH.
12647
12648 2007-10-24  Jim Meyering  <meyering@redhat.com>
12649
12650         Avoid diagnostics from sha1sum when there is no cached checksum.
12651         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
12652         if the po.s1 file hasn't been created yet.
12653
12654         * build-aux/bootstrap: Sync from coreutils:
12655         2007-10-24  Jim Meyering  <meyering@redhat.com>
12656         Get gnulib from the git repository, not from an obsolete cvs one.
12657         * build-aux/bootstrap: Suggestion from Micah Cowan.
12658         2007-10-04  Jim Meyering  <jim@meyering.net>
12659         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
12660         (update_po_files): Work also when there are no .po files in po/.
12661
12662 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
12663
12664         * README: Append ".git" to git and cg examples.
12665         Problem reported by Benoit Sigoure.
12666
12667 2007-10-23  Micah Cowan  <micah@cowan.name>
12668
12669         * users.txt: Add wget.
12670
12671 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12672
12673         Fix linking of some unistdio tests on FreeBSD.
12674         * modules/unistdio/u16-vsnprintf-tests
12675         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
12676         * modules/unistdio/u16-vsprintf-tests
12677         (test_u16_vsnprintf1_LDADD): Likewise.
12678         * modules/unistdio/u32-vsnprintf-tests
12679         (test_u32_vsnprintf1_LDADD): Likewise.
12680         * modules/unistdio/u32-vsprintf-tests
12681         (test_u32_vsprintf1_LDADD): Likewise.
12682         * modules/unistdio/u8-vsnprintf-tests
12683         (test_u8_vsnprintf1_LDADD): Likewise.
12684         * modules/unistdio/u8-vsprintf-tests
12685         (test_u8_vsprintf1_LDADD): Likewise.
12686         * modules/unistdio/ulc-vsnprintf-tests
12687         (test_ulc_vsnprintf1_LDADD): Likewise.
12688         * modules/unistdio/ulc-vsprintf-tests
12689         (test_ulc_vsprintf1_LDADD): Likewise.
12690
12691         Fix linking of some uniconv tests on FreeBSD.
12692         * modules/uniconv/u16-conv-from-enc-tests
12693         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
12694         * modules/uniconv/u16-conv-to-enc-tests
12695         (test_u16_conv_to_enc_LDADD): Likewise.
12696         * modules/uniconv/u16-strconv-from-enc-tests
12697         (test_u16_strconv_from_enc_LDADD): Likewise.
12698         * modules/uniconv/u16-strconv-to-enc-tests
12699         (test_u16_strconv_to_enc_LDADD): Likewise.
12700         * modules/uniconv/u32-conv-from-enc-tests
12701         (test_u32_conv_from_enc_LDADD): Likewise.
12702         * modules/uniconv/u32-conv-to-enc-tests
12703         (test_u32_conv_to_enc_LDADD): Likewise.
12704         * modules/uniconv/u32-strconv-from-enc-tests
12705         (test_u32_strconv_from_enc_LDADD): Likewise.
12706         * modules/uniconv/u32-strconv-to-enc-tests
12707         (test_u32_strconv_to_enc_LDADD): Likewise.
12708         * modules/uniconv/u8-conv-from-enc-tests
12709         (test_u8_conv_from_enc_LDADD): Likewise.
12710         * modules/uniconv/u8-conv-to-enc-tests
12711         (test_u8_conv_to_enc_LDADD): Likewise.
12712         * modules/uniconv/u8-strconv-from-enc-tests
12713         (test_u8_strconv_from_enc_LDADD): Likewise.
12714         * modules/uniconv/u8-strconv-to-enc-tests
12715         (test_u8_strconv_to_enc_LDADD): Likewise.
12716
12717 2007-10-22  Bruno Haible  <bruno@clisp.org>
12718
12719         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
12720         size.
12721
12722 2007-10-22  Eric Blake  <ebb9@byu.net>
12723
12724         Tweak x*printf documentation.
12725         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
12726         variable name and comments.
12727         Suggested by Bruno Haible.
12728
12729 2007-10-22  Bruno Haible  <bruno@clisp.org>
12730
12731         * lib/acl.c (copy_acl): Fix file name in comment.
12732
12733 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
12734
12735         Fix Tru64 problem with stdbool.h.
12736         * lib/stdbool.in.h (false, true):
12737         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
12738         Don't declare as an enum in this situation; it runs afoul of Tru64.
12739         Problem reported by Steven M. Schweda in
12740         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
12741
12742 2007-10-22  Eric Blake  <ebb9@byu.net>
12743
12744         Also wrap vf?printf.
12745         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
12746         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
12747         (xvprintf, xvfprintf): New functions.
12748
12749 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12750
12751         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
12752         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
12753
12754         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
12755         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
12756
12757 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
12758
12759         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
12760         by Bruno Haible.
12761
12762 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12763
12764         * lib/getloadavg.c
12765         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
12766         Undef `sys' after including sys/table.h, for Tru64 4.0D.
12767
12768         * tests/test-i-ring.c: Work for C89.
12769
12770 2007-10-22  Bruno Haible  <bruno@clisp.org>
12771
12772         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
12773         -1u, in preprocessor expression, so that we don't test for the bug
12774         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
12775         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
12776
12777 2007-10-22  Eric Blake  <ebb9@byu.net>
12778
12779         * tests/test-yesno.sh: Silence stderr during test.
12780
12781 2007-10-22  Simon Josefsson  <simon@josefsson.org>
12782
12783         * modules/crypto/gc-camellia: New file.
12784
12785         * m4/gc-camellia.m4: New file.
12786
12787         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
12788
12789         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
12790
12791 2007-10-22  Simon Josefsson  <simon@josefsson.org>
12792
12793         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
12794         --help to stdout.  Reported by sms@antinode.org (Steven
12795         M. Schweda).
12796
12797 2007-10-22  Simon Josefsson  <simon@josefsson.org>
12798
12799         * users.txt: Fix link to libksba.
12800
12801 2007-10-21  Ben Pfaff  <blp@gnu.org>
12802
12803         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
12804         round.c roundf implementation that depends on floorf and ceilf to
12805         be tested unconditionally.
12806
12807 2007-10-21  Ben Pfaff  <blp@gnu.org>
12808
12809         * m4/check-libm-func.m4: Removed.
12810         * m4/check-math-lib.m4: New file.
12811         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
12812         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
12813         definition and lack of AC_LIBOBJ([roundf]).
12814         * m4/roundl.m4: Ditto, and similarly for roundl.
12815         * modules/round: Reference new m4 file.
12816         * modules/roundf: Ditto.
12817         * modules/roundl: Ditto.
12818         * tests/test-round2.c (main): Use ROUND instead of round.
12819         Bug report from Bruno Haible.
12820
12821 2007-10-21  Bruno Haible  <bruno@clisp.org>
12822
12823         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
12824         context.
12825
12826 2007-10-21  Bruno Haible  <bruno@clisp.org>
12827
12828         * tests/test-wcwidth.c (main): Allow negative result for some control
12829         characters.
12830
12831         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
12832         Needed on OSF/1 5.1.
12833
12834 2007-10-21  Bruno Haible  <bruno@clisp.org>
12835
12836         * tests/test-floorf1.c: Include isnanf.h.
12837         (main): Use isnanf() instead of isnan().
12838         * tests/test-ceilf1.c: Include isnanf.h.
12839         (main): Use isnanf() instead of isnan().
12840         * tests/test-truncf1.c: Include isnanf.h.
12841         (main): Use isnanf() instead of isnan().
12842         * tests/test-roundf1.c: Include isnanf.h.
12843         (main): Use isnanf() instead of isnan().
12844
12845 2007-10-21  Eric Blake  <ebb9@byu.net>
12846
12847         * users.txt: Update URL for m4.
12848
12849 2007-10-21  Bruno Haible  <bruno@clisp.org>
12850
12851         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
12852
12853 2007-10-21  Bruno Haible  <bruno@clisp.org>
12854
12855         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
12856         Git's management files if the CVS files are not present.
12857
12858 2007-10-20  Bruno Haible  <bruno@clisp.org>
12859
12860         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
12861         gcc-3.4.x.
12862
12863 2007-10-20  Ben Pfaff  <blp@gnu.org>
12864
12865         * lib/math.in.h: Declare round, roundf, roundl if we are providing
12866         implementations.
12867         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
12868         * lib/round.c: New file.
12869         * lib/roundf.c: New file.
12870         * lib/roundl.c: New file.
12871         * m4/round.m4: New file.
12872         * m4/roundf.m4: New file.
12873         * m4/roundl.m4: New file.
12874         * m4/check-libm-func-m4: New file.
12875         * modules/math: Replace round, roundf, roundl related @VARS@ in
12876         math.in.h.
12877         * modules/round: New file.
12878         * modules/round-tests: New file.
12879         * modules/roundf: New file.
12880         * modules/roundf-tests: New file.
12881         * modules/roundl: New file.
12882         * modules/roundl-tests: New file.
12883         * tests/test-round1.c: New file.
12884         * tests/test-round2.c: New file.
12885         * tests/test-roundf1.c: New file.
12886         * tests/test-roundf2.c: New file.
12887         * tests/test-roundl.c: New file.
12888         * doc/functions/round.texi: Mention round module.
12889         * doc/functions/roundf.texi: Mention roundf module.
12890         * doc/functions/roundl.texi: Mention roundl module.
12891         * MODULES.html.sh: Mention new modules.
12892         Thanks to Bruno Haible for suggestions.
12893
12894 2007-10-20  Jim Meyering  <meyering@redhat.com>
12895
12896         * lib/xprintf.c: Include <config.h> unconditionally.
12897
12898         Change xprintf's license to GPL.
12899         * modules/xprintf (License): s/LGPL/GPL/, since this module
12900         depends on modules (exit and exitfail) which are GPL.
12901         Suggestion from Bruno Haible.
12902
12903         xprintf fixes.
12904         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
12905         Use a clearer diagnostic.
12906         Patch from Bruno Haible.
12907
12908 2007-10-20  Bruno Haible  <bruno@clisp.org>
12909
12910         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
12911         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
12912         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
12913
12914 2007-10-20  Bruno Haible  <bruno@clisp.org>
12915
12916         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
12917         precision in the comparison result > x - 1 or similar.
12918         * tests/test-ceilf2.c (correct_result_p): Likewise.
12919         * tests/test-truncf2.c (correct_result_p): Likewise.
12920         * tests/test-trunc2.c (correct_result_p): Likewise.
12921         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
12922
12923 2007-10-20  Bruno Haible  <bruno@clisp.org>
12924
12925         * modules/ceil: New file.
12926         * m4/ceil.m4: New file.
12927         * doc/functions/ceil.texi: Mention the 'ceil' module.
12928
12929 2007-10-20  Bruno Haible  <bruno@clisp.org>
12930
12931         * modules/floor: New file.
12932         * m4/floor.m4: New file.
12933         * doc/functions/floor.texi: Mention the 'floor' module.
12934
12935 2007-10-20  Bruno Haible  <bruno@clisp.org>
12936
12937         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
12938         of %a.
12939         * modules/floorf-tests (Depends-on): Likewise.
12940         * modules/truncf-tests (Depends-on): Likewise.
12941         * modules/trunc-tests (Depends-on): Likewise.
12942         Reported by Ben Pfaff.
12943
12944 2007-10-19  Jim Meyering  <meyering@redhat.com>
12945
12946         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
12947         Don't bother testing specific errno values.  Just test ferror.
12948
12949         New module: xprintf
12950         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
12951
12952 2007-10-19  Bruno Haible  <bruno@clisp.org>
12953
12954         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
12955         syntax.
12956         * modules/javaexec (Makefile.am): Likewise.
12957         * modules/relocatable-prog (Makefile.am): Likewise.
12958         Suggested by Jim Meyering.
12959
12960 2007-10-18  Bruno Haible  <bruno@clisp.org>
12961
12962         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
12963         Reported by Jim Meyering.
12964
12965 2007-10-18  Eric Blake  <ebb9@byu.net>
12966
12967         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
12968
12969 2007-10-18  Bruno Haible  <bruno@clisp.org>
12970
12971         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
12972         the format string into writable memory. Needed in Fortify conditions.
12973
12974 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
12975             Bruno Haible  <bruno@clisp.org>
12976
12977         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
12978         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
12979         * modules/trim (Depends-on): Add mbchar.
12980         (configure.ac): Add gl_FUNC_MBRTOWC.
12981         (Makefile.am): Augment lib_SOURCES.
12982
12983 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
12984
12985         Modify glob.c to use fstatat and dirfd, to simplify it.
12986         Suggested by Eric Blake.
12987         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
12988         Don't include <stdbool.h>; not used.
12989         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
12990         (link_exists_p): Simplify implementation, since we can now assume
12991         dirfd and fstatat.
12992         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
12993
12994 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12995
12996         * gnulib-tool (func_get_dependencies): Fix sed script to
12997         match only tests.
12998
12999 2007-10-17  Bruno Haible  <bruno@clisp.org>
13000
13001         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
13002         allow locale names without encoding suffix.
13003         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
13004         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
13005
13006 2007-10-16  Bruno Haible  <bruno@clisp.org>
13007
13008         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
13009         * lib/getgroups.c (getgroups): Likewise.
13010         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
13011
13012 2007-10-16  Bruno Haible  <bruno@clisp.org>
13013
13014         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
13015         * modules/malloc-posix (License): Likewise.
13016         * modules/realloc-posix (License): Likewise.
13017         * modules/calloc-posix (License): Likewise.
13018         * modules/intprops (License): Change from GPL to LGPL, with
13019         Paul Eggert's approval.
13020
13021 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
13022
13023         Merge glibc changes into lib/glob.c.
13024
13025         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
13026         2007-10-15 04:59:03 UTC.  Here are the changes:
13027
13028         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
13029
13030         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
13031
13032         * lib/glob.c: Add some branch prediction throughout.
13033
13034         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
13035
13036         [BZ #5103]
13037         * lib/glob.c (glob): Recognize patterns starting \/.
13038
13039         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
13040
13041         [BZ #3996]
13042         * lib/glob.c (attribute_hidden): Define if not defined.
13043         (glob): Unescape dirname, filename or username when needed and not
13044         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
13045         is NULL.  Handle unescaped [ in pattern without closing ].
13046         Don't pass GLOB_CHECK down to recursive glob for directories.
13047         (__glob_pattern_type): New function.
13048         (__glob_pattern_p): Implement using __glob_pattern_type.
13049         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
13050         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
13051         Remove unreachable code.
13052
13053         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
13054
13055         * lib/glob.c (glob_in_dir): Add some comments and asserts to
13056         explain why there are no leaks.
13057
13058         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
13059
13060         [BZ #3253]
13061         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
13062         time, rather allocate increasingly bigger arrays of pointers, if
13063         possible with alloca, if too large with malloc.
13064
13065 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
13066
13067         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
13068         Problem reported by H.Merijn Brand in
13069         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
13070         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
13071         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
13072
13073 2007-10-15  Bruno Haible  <bruno@clisp.org>
13074
13075         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
13076         with explicit rpl_ prefix.
13077         * lib/fopen.c (fopen): Likewise.
13078         * lib/freopen.c (freopen): Likewise.
13079         * lib/iconv.c (iconv): Likewise.
13080         * lib/iconv_close.c (iconv_close): Likewise.
13081
13082 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13083
13084         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
13085
13086 2007-10-15  Bruno Haible  <bruno@clisp.org>
13087
13088         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
13089         <stddef.h> instead of <stdlib.h> since we only need NULL.
13090         Reported by Ben Pfaff <blp@cs.stanford.edu>.
13091
13092 2007-10-15  Bruno Haible  <bruno@clisp.org>
13093
13094         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
13095         Replace paragraph talking about LIBOBJS.
13096         Reported by Colin Watson <cjwatson@debian.org>.
13097
13098 2007-10-15  Bruno Haible  <bruno@clisp.org>
13099
13100         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
13101         <stdlib.h> before using NULL.
13102
13103 2007-10-15  Simon Josefsson  <simon@josefsson.org>
13104
13105         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
13106         Reported by Albert Chin <china@thewrittenword.com>.
13107
13108 2007-10-14  Bruno Haible  <bruno@clisp.org>
13109
13110         * modules/iconv_open-utf-tests: New file.
13111         * tests/test-iconv-utf.c: New file.
13112
13113         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
13114         * modules/iconv_open-utf: New file.
13115         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
13116         (iconv, iconv_close): New declarations.
13117         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
13118         be defined.
13119         (iconv_open): Add special handling of conversion between UTF-8 and
13120         UTF-{16,32}{BE,LE}.
13121         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
13122         * lib/iconv_close.c: New file.
13123         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
13124         gl_FUNC_ICONV_OPEN.
13125         (gl_FUNC_ICONV_OPEN): Use it.
13126         (gl_FUNC_ICONV_OPEN_UTF): New macro.
13127         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
13128         and REPLACE_ICONV_UTF.
13129         * modules/iconv_open (Depends-on): Add c-strcase.
13130         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
13131         ICONV_CONST.
13132         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
13133
13134 2007-10-13  Albert Chin  <china@thewrittenword.com>
13135             Bruno Haible  <bruno@clisp.org>
13136
13137         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
13138         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
13139
13140 2007-10-13  Bruno Haible  <bruno@clisp.org>
13141
13142         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
13143         defined, use the ISO C99 inline semantics.
13144         * lib/argp.h (ARGP_EI): Likewise.
13145
13146 2007-10-13  Bruno Haible  <bruno@clisp.org>
13147
13148         Handle 'inline' change in gcc 4.3.0.
13149         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
13150         argp_fmtstream_write, argp_fmtstream_set_lmargin,
13151         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
13152         argp_fmtstream_point): Disable 'extern' declaration if the function
13153         definition is going to be provided inline.
13154         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
13155         semantics, not the ISO C99 inline semantics.
13156         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
13157         'extern' declaration if the function definition is going to be provided
13158         inline.
13159         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
13160         the GNU C inline semantics, not the ISO C99 inline semantics. With
13161         GCC 4.2, avoid a warning.
13162
13163 2007-10-13  Bruno Haible  <bruno@clisp.org>
13164
13165         * lib/freading.h (freading): Enable the use of __freading for
13166         glibc >= 2.7.
13167         * lib/freading.c (freading): Likewise.
13168
13169 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
13170
13171         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
13172         "warning: C99 inline functions are not supported; using GNU89".
13173
13174 2007-10-12  Bruno Haible  <bruno@clisp.org>
13175
13176         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
13177         of 2.
13178         * tests/test-ceilf2.c: New file.
13179         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
13180
13181         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
13182         * modules/ceilf-tests: Update.
13183
13184 2007-10-12  Bruno Haible  <bruno@clisp.org>
13185
13186         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
13187         of 2.
13188         * tests/test-floorf2.c: New file.
13189         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
13190
13191         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
13192         * modules/floorf-tests: Update.
13193
13194 2007-10-12  Bruno Haible  <bruno@clisp.org>
13195
13196         * tests/test-trunc2.c: New file.
13197         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
13198
13199         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
13200         * modules/trunc-tests: Update.
13201
13202 2007-10-12  Bruno Haible  <bruno@clisp.org>
13203
13204         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
13205         of 2.
13206         * tests/test-truncf2.c: New file.
13207         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
13208
13209         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
13210         * modules/truncf-tests: Update.
13211
13212 2007-10-11  Eric Blake  <ebb9@byu.net>
13213
13214         Don't claim strerror is broken on Interix.
13215         * doc/functions/strerror.texi (strerror): Known broken systems are
13216         now Solaris 8, and not Interix.
13217         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
13218         Interix on cross-compile.
13219         Reported by Martin Koeppe in
13220         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
13221
13222 2007-10-11  Bruno Haible  <bruno@clisp.org>
13223
13224         * modules/i-ring-tests: New file.
13225         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
13226         instead of assert.
13227
13228 2007-10-11  Bruno Haible  <bruno@clisp.org>
13229
13230         * modules/filenamecat-tests: New file.
13231         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
13232         * lib/filenamecat.c: Remove test code.
13233
13234 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
13235
13236         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
13237
13238         * lib/strerror.c: Include <string.h> always, to test interface,
13239         and to remove the need for the dummy.
13240         Include intprops.h to compute width instead of doing it ourselves
13241         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
13242         (strerror): Define it to return NULL if there's no system strerror.
13243         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
13244         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
13245         ancient pre-strerror Unix systems well any more.  Saying "unknown
13246         system error" is enough.
13247         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
13248         simpler strerror.c implementation.
13249         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
13250         Simplify the tests to reflect the simpler strerror implementation.
13251         * modules/strerror (Depends-on): Add intprops.
13252
13253 2007-10-09  Eric Blake  <ebb9@byu.net>
13254
13255         Silence test-fpending.
13256         * modules/fpending-tests (Files): Add wrapper script.
13257         * tests/test-fpending.sh: New file.
13258
13259 2007-10-09  Bruno Haible  <bruno@clisp.org>
13260
13261         * MODULES.html.sh (func_module): Don't create a hyperlink for
13262         function names like 'printf_frexp'.
13263         (Misc): Add crc, memxor.
13264         (Characteristics of floating types): New section.
13265         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
13266         isnanf-nolibm, signbit, trunc, truncf, truncl.
13267         (Enhancements for ISO C 99 functions): New subsection Input/output.
13268         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
13269         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
13270         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
13271         (Compatibility checks for POSIX:2001 functions): Add clock-time.
13272         (Enhancements for POSIX:2001 functions): Add chdir-long.
13273         (File system functions): Add areadlink, chdir-safer, read-file.
13274         Remove cycle-check.
13275         (File system as inode set): New section.
13276         (Date and time): Add gethrxtime.
13277         (Multithreading): Add openmp.
13278         (Internationalization functions): Add localename.
13279         (Unicode string functions): Add unistr/u*-mbsnlen.
13280         (Support for maintaining and releasing projects): Add git-version-gen.
13281         (Lone files): Remove directories.
13282
13283 2007-10-08  Ben Pfaff  <blp@gnu.org>
13284
13285         * lib/xmalloca.h: Fix typo in comment.
13286
13287 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
13288
13289         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
13290         when avoiding problems with integer overflow.  Use a portable test
13291         instead.
13292
13293 2007-10-08  Simon Josefsson  <simon@josefsson.org>
13294
13295         * modules/dummy (License): Change to LGPLv2+.
13296         * modules/float (License): Likewise
13297         * modules/realloc (License): Likewise
13298         * modules/stdlib (License): Likewise
13299
13300 2007-10-07  Bruno Haible  <bruno@clisp.org>
13301
13302         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
13303         * floor.c (TWO_MANT_DIG): Likewise.
13304         * ceil.c (TWO_MANT_DIG): Likewise.
13305         Reported by Ben Pfaff.
13306
13307 2007-10-07  Bruno Haible  <bruno@clisp.org>
13308
13309         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
13310         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
13311         * lib/frexp.c (FUNC): Likewise.
13312         * lib/printf-frexp.h (printf_frexp): Likewise.
13313         * lib/printf-frexpl.h (printf_frexpl): Likewise.
13314         * lib/printf-frexp.c (FUNC): Likewise.
13315         Suggested by Jim Meyering.
13316
13317 2007-10-07  Jim Meyering  <meyering@redhat.com>
13318
13319         Make xnanosleep's integer overflow test more robust.
13320         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
13321         so that gcc-4.3.0 doesn't optimize away this test for overflow.
13322
13323 2007-10-07  Bruno Haible  <bruno@clisp.org>
13324
13325         * NEWS: Mention the license change.
13326
13327         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
13328         abbreviations in the modules files.
13329
13330         Change copyright notice from GPLv2+ to GPLv3+.
13331         * README: Change copyright notice.
13332         * MODULES.html.sh: Likewise.
13333         * build-aux/bootstrap.conf: Likewise.
13334         * build-aux/config.libpath: Likewise.
13335         * build-aux/csharpcomp.sh.in: Likewise.
13336         * build-aux/csharpexec.sh.in: Likewise.
13337         * build-aux/install-reloc: Likewise.
13338         * build-aux/javacomp.sh.in: Likewise.
13339         * build-aux/javaexec.sh.in: Likewise.
13340         * build-aux/ldd.sh.in: Likewise.
13341         * build-aux/reloc-ldflags: Likewise.
13342         * build-aux/relocatable.sh.in: Likewise.
13343         * build-aux/x-to-1.in: Likewise.
13344         * check-module: Likewise.
13345         * config/srclistvars.sh: Likewise.
13346         * gnulib-tool: Likewise.
13347         * lib/acl-internal.h: Likewise.
13348         * lib/acl.c: Likewise.
13349         * lib/acl.h: Likewise.
13350         * lib/acl_entries.c: Likewise.
13351         * lib/areadlink-with-size.c: Likewise.
13352         * lib/areadlink.c: Likewise.
13353         * lib/areadlink.h: Likewise.
13354         * lib/argmatch.c: Likewise.
13355         * lib/argmatch.h: Likewise.
13356         * lib/argp-ba.c: Likewise.
13357         * lib/argp-eexst.c: Likewise.
13358         * lib/argp-fmtstream.c: Likewise.
13359         * lib/argp-fmtstream.h: Likewise.
13360         * lib/argp-fs-xinl.c: Likewise.
13361         * lib/argp-help.c: Likewise.
13362         * lib/argp-namefrob.h: Likewise.
13363         * lib/argp-parse.c: Likewise.
13364         * lib/argp-pin.c: Likewise.
13365         * lib/argp-pv.c: Likewise.
13366         * lib/argp-pvh.c: Likewise.
13367         * lib/argp-xinl.c: Likewise.
13368         * lib/argp.h: Likewise.
13369         * lib/at-func.c: Likewise.
13370         * lib/atanl.c: Likewise.
13371         * lib/backupfile.c: Likewise.
13372         * lib/backupfile.h: Likewise.
13373         * lib/basename.c: Likewise.
13374         * lib/binary-io.h: Likewise.
13375         * lib/byteswap.in.h: Likewise.
13376         * lib/c-stack.c: Likewise.
13377         * lib/c-stack.h: Likewise.
13378         * lib/c-strcasestr.c: Likewise.
13379         * lib/c-strcasestr.h: Likewise.
13380         * lib/c-strstr.c: Likewise.
13381         * lib/c-strstr.h: Likewise.
13382         * lib/c-strtod.c: Likewise.
13383         * lib/calloc.c: Likewise.
13384         * lib/canon-host.c: Likewise.
13385         * lib/canon-host.h: Likewise.
13386         * lib/canonicalize-lgpl.c: Likewise.
13387         * lib/canonicalize.c: Likewise.
13388         * lib/canonicalize.h: Likewise.
13389         * lib/ceil.c: Likewise.
13390         * lib/ceilf.c: Likewise.
13391         * lib/ceill.c: Likewise.
13392         * lib/chdir-long.c: Likewise.
13393         * lib/chdir-long.h: Likewise.
13394         * lib/chdir-safer.c: Likewise.
13395         * lib/chdir-safer.h: Likewise.
13396         * lib/chown.c: Likewise.
13397         * lib/classpath.c: Likewise.
13398         * lib/classpath.h: Likewise.
13399         * lib/clean-temp.c: Likewise.
13400         * lib/clean-temp.h: Likewise.
13401         * lib/cloexec.c: Likewise.
13402         * lib/close-stream.c: Likewise.
13403         * lib/closein.c: Likewise.
13404         * lib/closein.h: Likewise.
13405         * lib/closeout.c: Likewise.
13406         * lib/closeout.h: Likewise.
13407         * lib/concat-filename.c: Likewise.
13408         * lib/copy-file.c: Likewise.
13409         * lib/copy-file.h: Likewise.
13410         * lib/count-one-bits.h: Likewise.
13411         * lib/crc.c: Likewise.
13412         * lib/crc.h: Likewise.
13413         * lib/creat-safer.c: Likewise.
13414         * lib/csharpcomp.c: Likewise.
13415         * lib/csharpcomp.h: Likewise.
13416         * lib/csharpexec.c: Likewise.
13417         * lib/csharpexec.h: Likewise.
13418         * lib/cycle-check.c: Likewise.
13419         * lib/cycle-check.h: Likewise.
13420         * lib/diacrit.c: Likewise.
13421         * lib/diacrit.h: Likewise.
13422         * lib/diffseq.h: Likewise.
13423         * lib/dirchownmod.c: Likewise.
13424         * lib/dirent.in.h: Likewise.
13425         * lib/dirfd.c: Likewise.
13426         * lib/dirfd.h: Likewise.
13427         * lib/dirname.c: Likewise.
13428         * lib/dirname.h: Likewise.
13429         * lib/dummy.c: Likewise.
13430         * lib/dup-safer.c: Likewise.
13431         * lib/dup2.c: Likewise.
13432         * lib/eealloc.h: Likewise.
13433         * lib/error.c: Likewise.
13434         * lib/error.h: Likewise.
13435         * lib/euidaccess.c: Likewise.
13436         * lib/exclude.c: Likewise.
13437         * lib/exclude.h: Likewise.
13438         * lib/execute.c: Likewise.
13439         * lib/execute.h: Likewise.
13440         * lib/exitfail.c: Likewise.
13441         * lib/exitfail.h: Likewise.
13442         * lib/expl.c: Likewise.
13443         * lib/fatal-signal.c: Likewise.
13444         * lib/fatal-signal.h: Likewise.
13445         * lib/fbufmode.c: Likewise.
13446         * lib/fbufmode.h: Likewise.
13447         * lib/fchdir.c: Likewise.
13448         * lib/fchmodat.c: Likewise.
13449         * lib/fchownat.c: Likewise.
13450         * lib/fcntl--.h: Likewise.
13451         * lib/fcntl-safer.h: Likewise.
13452         * lib/fcntl.in.h: Likewise.
13453         * lib/fd-safer.c: Likewise.
13454         * lib/fflush.c: Likewise.
13455         * lib/file-has-acl.c: Likewise.
13456         * lib/file-set.c: Likewise.
13457         * lib/file-type.c: Likewise.
13458         * lib/file-type.h: Likewise.
13459         * lib/fileblocks.c: Likewise.
13460         * lib/filemode.c: Likewise.
13461         * lib/filemode.h: Likewise.
13462         * lib/filename.h: Likewise.
13463         * lib/filenamecat.c: Likewise.
13464         * lib/filenamecat.h: Likewise.
13465         * lib/findprog.c: Likewise.
13466         * lib/findprog.h: Likewise.
13467         * lib/float.in.h: Likewise.
13468         * lib/floor.c: Likewise.
13469         * lib/floorf.c: Likewise.
13470         * lib/floorl.c: Likewise.
13471         * lib/fopen-safer.c: Likewise.
13472         * lib/fopen.c: Likewise.
13473         * lib/fpending.c: Likewise.
13474         * lib/fpending.h: Likewise.
13475         * lib/fprintf.c: Likewise.
13476         * lib/fprintftime.h: Likewise.
13477         * lib/fpucw.h: Likewise.
13478         * lib/fpurge.c: Likewise.
13479         * lib/fpurge.h: Likewise.
13480         * lib/freadable.c: Likewise.
13481         * lib/freadable.h: Likewise.
13482         * lib/freadahead.c: Likewise.
13483         * lib/freadahead.h: Likewise.
13484         * lib/freading.c: Likewise.
13485         * lib/freading.h: Likewise.
13486         * lib/free.c: Likewise.
13487         * lib/freopen.c: Likewise.
13488         * lib/frexp.c: Likewise.
13489         * lib/frexpl.c: Likewise.
13490         * lib/fseek.c: Likewise.
13491         * lib/fseterr.c: Likewise.
13492         * lib/fseterr.h: Likewise.
13493         * lib/fstatat.c: Likewise.
13494         * lib/fstrcmp.c: Likewise.
13495         * lib/fstrcmp.h: Likewise.
13496         * lib/fsusage.c: Likewise.
13497         * lib/fsusage.h: Likewise.
13498         * lib/ftell.c: Likewise.
13499         * lib/ftello.c: Likewise.
13500         * lib/fts-cycle.c: Likewise.
13501         * lib/fts.c: Likewise.
13502         * lib/fts_.h: Likewise.
13503         * lib/full-read.c: Likewise.
13504         * lib/full-read.h: Likewise.
13505         * lib/full-write.c: Likewise.
13506         * lib/full-write.h: Likewise.
13507         * lib/fwritable.c: Likewise.
13508         * lib/fwritable.h: Likewise.
13509         * lib/fwriteerror.c: Likewise.
13510         * lib/fwriteerror.h: Likewise.
13511         * lib/fwriting.c: Likewise.
13512         * lib/fwriting.h: Likewise.
13513         * lib/gcd.c: Likewise.
13514         * lib/gcd.h: Likewise.
13515         * lib/getcwd.c: Likewise.
13516         * lib/getdate.h: Likewise.
13517         * lib/getdate.y: Likewise.
13518         * lib/getdomainname.c: Likewise.
13519         * lib/getdomainname.h: Likewise.
13520         * lib/getgroups.c: Likewise.
13521         * lib/gethostname.c: Likewise.
13522         * lib/gethrxtime.c: Likewise.
13523         * lib/gethrxtime.h: Likewise.
13524         * lib/getloadavg.c: Likewise.
13525         * lib/getndelim2.c: Likewise.
13526         * lib/getndelim2.h: Likewise.
13527         * lib/getnline.c: Likewise.
13528         * lib/getnline.h: Likewise.
13529         * lib/getopt.c: Likewise.
13530         * lib/getopt.in.h: Likewise.
13531         * lib/getopt1.c: Likewise.
13532         * lib/getopt_int.h: Likewise.
13533         * lib/getpagesize.h: Likewise.
13534         * lib/getsubopt.c: Likewise.
13535         * lib/gettime.c: Likewise.
13536         * lib/getugroups.c: Likewise.
13537         * lib/getugroups.h: Likewise.
13538         * lib/getusershell.c: Likewise.
13539         * lib/gl_anyavltree_list1.h: Likewise.
13540         * lib/gl_anyavltree_list2.h: Likewise.
13541         * lib/gl_anyhash_list1.h: Likewise.
13542         * lib/gl_anyhash_list2.h: Likewise.
13543         * lib/gl_anylinked_list1.h: Likewise.
13544         * lib/gl_anylinked_list2.h: Likewise.
13545         * lib/gl_anyrbtree_list1.h: Likewise.
13546         * lib/gl_anyrbtree_list2.h: Likewise.
13547         * lib/gl_anytree_list1.h: Likewise.
13548         * lib/gl_anytree_list2.h: Likewise.
13549         * lib/gl_anytree_oset.h: Likewise.
13550         * lib/gl_anytreehash_list1.h: Likewise.
13551         * lib/gl_anytreehash_list2.h: Likewise.
13552         * lib/gl_array_list.c: Likewise.
13553         * lib/gl_array_list.h: Likewise.
13554         * lib/gl_array_oset.c: Likewise.
13555         * lib/gl_array_oset.h: Likewise.
13556         * lib/gl_avltree_list.c: Likewise.
13557         * lib/gl_avltree_list.h: Likewise.
13558         * lib/gl_avltree_oset.c: Likewise.
13559         * lib/gl_avltree_oset.h: Likewise.
13560         * lib/gl_avltreehash_list.c: Likewise.
13561         * lib/gl_avltreehash_list.h: Likewise.
13562         * lib/gl_carray_list.c: Likewise.
13563         * lib/gl_carray_list.h: Likewise.
13564         * lib/gl_linked_list.c: Likewise.
13565         * lib/gl_linked_list.h: Likewise.
13566         * lib/gl_linkedhash_list.c: Likewise.
13567         * lib/gl_linkedhash_list.h: Likewise.
13568         * lib/gl_list.c: Likewise.
13569         * lib/gl_list.h: Likewise.
13570         * lib/gl_oset.c: Likewise.
13571         * lib/gl_oset.h: Likewise.
13572         * lib/gl_rbtree_list.c: Likewise.
13573         * lib/gl_rbtree_list.h: Likewise.
13574         * lib/gl_rbtree_oset.c: Likewise.
13575         * lib/gl_rbtree_oset.h: Likewise.
13576         * lib/gl_rbtreehash_list.c: Likewise.
13577         * lib/gl_rbtreehash_list.h: Likewise.
13578         * lib/gl_sublist.c: Likewise.
13579         * lib/gl_sublist.h: Likewise.
13580         * lib/group-member.c: Likewise.
13581         * lib/group-member.h: Likewise.
13582         * lib/hard-locale.c: Likewise.
13583         * lib/hard-locale.h: Likewise.
13584         * lib/hash-pjw.c: Likewise.
13585         * lib/hash-pjw.h: Likewise.
13586         * lib/hash-triple.c: Likewise.
13587         * lib/hash.c: Likewise.
13588         * lib/hash.h: Likewise.
13589         * lib/human.c: Likewise.
13590         * lib/human.h: Likewise.
13591         * lib/i-ring.c: Likewise.
13592         * lib/i-ring.h: Likewise.
13593         * lib/idcache.c: Likewise.
13594         * lib/imaxabs.c: Likewise.
13595         * lib/imaxdiv.c: Likewise.
13596         * lib/inet_pton.c: Likewise.
13597         * lib/inet_pton.h: Likewise.
13598         * lib/intprops.h: Likewise.
13599         * lib/inttostr.c: Likewise.
13600         * lib/inttostr.h: Likewise.
13601         * lib/inttypes.in.h: Likewise.
13602         * lib/isapipe.c: Likewise.
13603         * lib/isdir.c: Likewise.
13604         * lib/isnan.c: Likewise.
13605         * lib/isnan.h: Likewise.
13606         * lib/isnanf.c: Likewise.
13607         * lib/isnanf.h: Likewise.
13608         * lib/isnanl-nolibm.h: Likewise.
13609         * lib/isnanl.c: Likewise.
13610         * lib/isnanl.h: Likewise.
13611         * lib/javacomp.c: Likewise.
13612         * lib/javacomp.h: Likewise.
13613         * lib/javaexec.c: Likewise.
13614         * lib/javaexec.h: Likewise.
13615         * lib/javaversion.c: Likewise.
13616         * lib/javaversion.h: Likewise.
13617         * lib/javaversion.java: Likewise.
13618         * lib/lbrkprop.h: Likewise.
13619         * lib/lchmod.h: Likewise.
13620         * lib/lchown.c: Likewise.
13621         * lib/ldexpl.c: Likewise.
13622         * lib/linebreak.c: Likewise.
13623         * lib/linebreak.h: Likewise.
13624         * lib/linebuffer.c: Likewise.
13625         * lib/linebuffer.h: Likewise.
13626         * lib/locale.in.h: Likewise.
13627         * lib/logl.c: Likewise.
13628         * lib/long-options.c: Likewise.
13629         * lib/long-options.h: Likewise.
13630         * lib/lstat.c: Likewise.
13631         * lib/lstat.h: Likewise.
13632         * lib/math.in.h: Likewise.
13633         * lib/mbchar.c: Likewise.
13634         * lib/mbchar.h: Likewise.
13635         * lib/mbfile.h: Likewise.
13636         * lib/mbiter.h: Likewise.
13637         * lib/mbscasecmp.c: Likewise.
13638         * lib/mbscasestr.c: Likewise.
13639         * lib/mbschr.c: Likewise.
13640         * lib/mbscspn.c: Likewise.
13641         * lib/mbslen.c: Likewise.
13642         * lib/mbsncasecmp.c: Likewise.
13643         * lib/mbsnlen.c: Likewise.
13644         * lib/mbspbrk.c: Likewise.
13645         * lib/mbspcasecmp.c: Likewise.
13646         * lib/mbsrchr.c: Likewise.
13647         * lib/mbssep.c: Likewise.
13648         * lib/mbsspn.c: Likewise.
13649         * lib/mbsstr.c: Likewise.
13650         * lib/mbstok_r.c: Likewise.
13651         * lib/mbswidth.c: Likewise.
13652         * lib/mbswidth.h: Likewise.
13653         * lib/mbuiter.h: Likewise.
13654         * lib/memcasecmp.c: Likewise.
13655         * lib/memcasecmp.h: Likewise.
13656         * lib/memchr.c: Likewise.
13657         * lib/memcmp.c: Likewise.
13658         * lib/memcoll.c: Likewise.
13659         * lib/memcoll.h: Likewise.
13660         * lib/memcpy.c: Likewise.
13661         * lib/memrchr.c: Likewise.
13662         * lib/mkancesdirs.c: Likewise.
13663         * lib/mkdir-p.c: Likewise.
13664         * lib/mkdir-p.h: Likewise.
13665         * lib/mkdir.c: Likewise.
13666         * lib/mkdirat.c: Likewise.
13667         * lib/mkdtemp.c: Likewise.
13668         * lib/mkstemp-safer.c: Likewise.
13669         * lib/mkstemp.c: Likewise.
13670         * lib/modechange.c: Likewise.
13671         * lib/modechange.h: Likewise.
13672         * lib/mountlist.c: Likewise.
13673         * lib/mountlist.h: Likewise.
13674         * lib/mpsort.c: Likewise.
13675         * lib/nanosleep.c: Likewise.
13676         * lib/obstack.c: Likewise.
13677         * lib/obstack.h: Likewise.
13678         * lib/open-safer.c: Likewise.
13679         * lib/open.c: Likewise.
13680         * lib/openat-die.c: Likewise.
13681         * lib/openat-priv.h: Likewise.
13682         * lib/openat-proc.c: Likewise.
13683         * lib/openat.c: Likewise.
13684         * lib/openat.h: Likewise.
13685         * lib/pagealign_alloc.c: Likewise.
13686         * lib/pagealign_alloc.h: Likewise.
13687         * lib/physmem.c: Likewise.
13688         * lib/physmem.h: Likewise.
13689         * lib/pipe-safer.c: Likewise.
13690         * lib/pipe.c: Likewise.
13691         * lib/pipe.h: Likewise.
13692         * lib/posixtm.c: Likewise.
13693         * lib/posixtm.h: Likewise.
13694         * lib/posixver.c: Likewise.
13695         * lib/printf-frexp.c: Likewise.
13696         * lib/printf-frexp.h: Likewise.
13697         * lib/printf-frexpl.c: Likewise.
13698         * lib/printf-frexpl.h: Likewise.
13699         * lib/printf.c: Likewise.
13700         * lib/progname.c: Likewise.
13701         * lib/progname.h: Likewise.
13702         * lib/progreloc.c: Likewise.
13703         * lib/putenv.c: Likewise.
13704         * lib/quote.c: Likewise.
13705         * lib/quote.h: Likewise.
13706         * lib/quotearg.c: Likewise.
13707         * lib/quotearg.h: Likewise.
13708         * lib/raise.c: Likewise.
13709         * lib/readline.c: Likewise.
13710         * lib/readline.h: Likewise.
13711         * lib/readlink.c: Likewise.
13712         * lib/readtokens.c: Likewise.
13713         * lib/readtokens.h: Likewise.
13714         * lib/readtokens0.c: Likewise.
13715         * lib/readtokens0.h: Likewise.
13716         * lib/readutmp.c: Likewise.
13717         * lib/readutmp.h: Likewise.
13718         * lib/realloc.c: Likewise.
13719         * lib/relocwrapper.c: Likewise.
13720         * lib/rename-dest-slash.c: Likewise.
13721         * lib/rename.c: Likewise.
13722         * lib/rmdir.c: Likewise.
13723         * lib/rpmatch.c: Likewise.
13724         * lib/safe-read.c: Likewise.
13725         * lib/safe-read.h: Likewise.
13726         * lib/safe-write.c: Likewise.
13727         * lib/safe-write.h: Likewise.
13728         * lib/same-inode.h: Likewise.
13729         * lib/same.c: Likewise.
13730         * lib/same.h: Likewise.
13731         * lib/save-cwd.c: Likewise.
13732         * lib/save-cwd.h: Likewise.
13733         * lib/savedir.c: Likewise.
13734         * lib/savedir.h: Likewise.
13735         * lib/savewd.c: Likewise.
13736         * lib/savewd.h: Likewise.
13737         * lib/search.in.h: Likewise.
13738         * lib/setenv.c: Likewise.
13739         * lib/setenv.h: Likewise.
13740         * lib/settime.c: Likewise.
13741         * lib/sh-quote.c: Likewise.
13742         * lib/sh-quote.h: Likewise.
13743         * lib/sig2str.c: Likewise.
13744         * lib/sig2str.h: Likewise.
13745         * lib/signal.in.h: Likewise.
13746         * lib/signbitd.c: Likewise.
13747         * lib/signbitf.c: Likewise.
13748         * lib/signbitl.c: Likewise.
13749         * lib/sigprocmask.c: Likewise.
13750         * lib/sincosl.c: Likewise.
13751         * lib/sleep.c: Likewise.
13752         * lib/sprintf.c: Likewise.
13753         * lib/sqrtl.c: Likewise.
13754         * lib/stat-time.h: Likewise.
13755         * lib/stdio--.h: Likewise.
13756         * lib/stdio-safer.h: Likewise.
13757         * lib/stdlib--.h: Likewise.
13758         * lib/stdlib-safer.h: Likewise.
13759         * lib/stdlib.in.h: Likewise.
13760         * lib/stpcpy.c: Likewise.
13761         * lib/stpncpy.c: Likewise.
13762         * lib/strchrnul.c: Likewise.
13763         * lib/strcspn.c: Likewise.
13764         * lib/strerror.c: Likewise.
13765         * lib/strftime.c: Likewise.
13766         * lib/strftime.h: Likewise.
13767         * lib/striconveh.c: Likewise.
13768         * lib/striconveh.h: Likewise.
13769         * lib/striconveha.c: Likewise.
13770         * lib/striconveha.h: Likewise.
13771         * lib/stripslash.c: Likewise.
13772         * lib/strnlen1.c: Likewise.
13773         * lib/strnlen1.h: Likewise.
13774         * lib/strtod.c: Likewise.
13775         * lib/strtoimax.c: Likewise.
13776         * lib/strtok_r.c: Likewise.
13777         * lib/strtol.c: Likewise.
13778         * lib/strtoll.c: Likewise.
13779         * lib/strtoul.c: Likewise.
13780         * lib/strtoull.c: Likewise.
13781         * lib/sysexits.in.h: Likewise.
13782         * lib/tempname.c: Likewise.
13783         * lib/tempname.h: Likewise.
13784         * lib/timespec.h: Likewise.
13785         * lib/tls.c: Likewise.
13786         * lib/tls.h: Likewise.
13787         * lib/tmpdir.c: Likewise.
13788         * lib/tmpdir.h: Likewise.
13789         * lib/tmpfile-safer.c: Likewise.
13790         * lib/tmpfile.c: Likewise.
13791         * lib/trigl.c: Likewise.
13792         * lib/trigl.h: Likewise.
13793         * lib/trim.c: Likewise.
13794         * lib/trim.h: Likewise.
13795         * lib/trunc.c: Likewise.
13796         * lib/truncf.c: Likewise.
13797         * lib/truncl.c: Likewise.
13798         * lib/tsearch.c: Likewise.
13799         * lib/unicodeio.c: Likewise.
13800         * lib/unicodeio.h: Likewise.
13801         * lib/unistd--.h: Likewise.
13802         * lib/unistd-safer.h: Likewise.
13803         * lib/unistdio/ulc-fprintf.c: Likewise.
13804         * lib/unistdio/ulc-vfprintf.c: Likewise.
13805         * lib/unlinkdir.c: Likewise.
13806         * lib/unlinkdir.h: Likewise.
13807         * lib/unlocked-io.h: Likewise.
13808         * lib/unsetenv.c: Likewise.
13809         * lib/userspec.c: Likewise.
13810         * lib/utime.c: Likewise.
13811         * lib/utimecmp.c: Likewise.
13812         * lib/utimecmp.h: Likewise.
13813         * lib/utimens.c: Likewise.
13814         * lib/verify.h: Likewise.
13815         * lib/verror.c: Likewise.
13816         * lib/verror.h: Likewise.
13817         * lib/version-etc-fsf.c: Likewise.
13818         * lib/version-etc.c: Likewise.
13819         * lib/version-etc.h: Likewise.
13820         * lib/vfprintf.c: Likewise.
13821         * lib/vprintf.c: Likewise.
13822         * lib/vsprintf.c: Likewise.
13823         * lib/w32spawn.h: Likewise.
13824         * lib/wait-process.c: Likewise.
13825         * lib/wait-process.h: Likewise.
13826         * lib/wcwidth.c: Likewise.
13827         * lib/write-any-file.c: Likewise.
13828         * lib/xalloc-die.c: Likewise.
13829         * lib/xalloc.h: Likewise.
13830         * lib/xasprintf.c: Likewise.
13831         * lib/xgetcwd.c: Likewise.
13832         * lib/xgetcwd.h: Likewise.
13833         * lib/xgetdomainname.c: Likewise.
13834         * lib/xgetdomainname.h: Likewise.
13835         * lib/xgethostname.c: Likewise.
13836         * lib/xmalloc.c: Likewise.
13837         * lib/xmalloca.c: Likewise.
13838         * lib/xmalloca.h: Likewise.
13839         * lib/xmemcoll.c: Likewise.
13840         * lib/xnanosleep.c: Likewise.
13841         * lib/xreadlink.c: Likewise.
13842         * lib/xreadlink.h: Likewise.
13843         * lib/xsetenv.c: Likewise.
13844         * lib/xsetenv.h: Likewise.
13845         * lib/xstriconv.c: Likewise.
13846         * lib/xstriconv.h: Likewise.
13847         * lib/xstrndup.c: Likewise.
13848         * lib/xstrndup.h: Likewise.
13849         * lib/xstrtod.c: Likewise.
13850         * lib/xstrtod.h: Likewise.
13851         * lib/xstrtol-error.c: Likewise.
13852         * lib/xstrtol.c: Likewise.
13853         * lib/xstrtol.h: Likewise.
13854         * lib/xtime.h: Likewise.
13855         * lib/xvasprintf.c: Likewise.
13856         * lib/xvasprintf.h: Likewise.
13857         * lib/yesno.c: Likewise.
13858         * lib/yesno.h: Likewise.
13859         * posix-modules: Likewise.
13860         * tests/test-alloca-opt.c: Likewise.
13861         * tests/test-arcfour.c: Likewise.
13862         * tests/test-arctwo.c: Likewise.
13863         * tests/test-argmatch.c: Likewise.
13864         * tests/test-argp-2.sh: Likewise.
13865         * tests/test-argp.c: Likewise.
13866         * tests/test-arpa_inet.c: Likewise.
13867         * tests/test-array_list.c: Likewise.
13868         * tests/test-array_oset.c: Likewise.
13869         * tests/test-atexit.c: Likewise.
13870         * tests/test-avltree_list.c: Likewise.
13871         * tests/test-avltree_oset.c: Likewise.
13872         * tests/test-avltreehash_list.c: Likewise.
13873         * tests/test-base64.c: Likewise.
13874         * tests/test-binary-io.c: Likewise.
13875         * tests/test-byteswap.c: Likewise.
13876         * tests/test-c-ctype.c: Likewise.
13877         * tests/test-c-strcasecmp.c: Likewise.
13878         * tests/test-c-strcasestr.c: Likewise.
13879         * tests/test-c-strncasecmp.c: Likewise.
13880         * tests/test-c-strstr.c: Likewise.
13881         * tests/test-canonicalize-lgpl.c: Likewise.
13882         * tests/test-canonicalize.c: Likewise.
13883         * tests/test-carray_list.c: Likewise.
13884         * tests/test-ceilf.c: Likewise.
13885         * tests/test-ceill.c: Likewise.
13886         * tests/test-count-one-bits.c: Likewise.
13887         * tests/test-crc.c: Likewise.
13888         * tests/test-dirname.c: Likewise.
13889         * tests/test-fbufmode.c: Likewise.
13890         * tests/test-fcntl.c: Likewise.
13891         * tests/test-fflush.c: Likewise.
13892         * tests/test-floorf.c: Likewise.
13893         * tests/test-floorl.c: Likewise.
13894         * tests/test-fopen.c: Likewise.
13895         * tests/test-fprintf-posix.c: Likewise.
13896         * tests/test-fprintf-posix.h: Likewise.
13897         * tests/test-fpurge.c: Likewise.
13898         * tests/test-freadable.c: Likewise.
13899         * tests/test-freadahead.c: Likewise.
13900         * tests/test-freading.c: Likewise.
13901         * tests/test-freopen.c: Likewise.
13902         * tests/test-frexp.c: Likewise.
13903         * tests/test-frexpl.c: Likewise.
13904         * tests/test-fseek.c: Likewise.
13905         * tests/test-fseeko.c: Likewise.
13906         * tests/test-fseterr.c: Likewise.
13907         * tests/test-fstrcmp.c: Likewise.
13908         * tests/test-ftell.c: Likewise.
13909         * tests/test-ftello.c: Likewise.
13910         * tests/test-fwritable.c: Likewise.
13911         * tests/test-fwriting.c: Likewise.
13912         * tests/test-getaddrinfo.c: Likewise.
13913         * tests/test-getpass.c: Likewise.
13914         * tests/test-gettimeofday.c: Likewise.
13915         * tests/test-hmac-md5.c: Likewise.
13916         * tests/test-hmac-sha1.c: Likewise.
13917         * tests/test-iconv.c: Likewise.
13918         * tests/test-iconvme.c: Likewise.
13919         * tests/test-inttypes.c: Likewise.
13920         * tests/test-isnan.c: Likewise.
13921         * tests/test-isnanf.c: Likewise.
13922         * tests/test-isnanl-nolibm.c: Likewise.
13923         * tests/test-isnanl.c: Likewise.
13924         * tests/test-isnanl.h: Likewise.
13925         * tests/test-ldexpl.c: Likewise.
13926         * tests/test-linked_list.c: Likewise.
13927         * tests/test-linkedhash_list.c: Likewise.
13928         * tests/test-locale.c: Likewise.
13929         * tests/test-localename.c: Likewise.
13930         * tests/test-lock.c: Likewise.
13931         * tests/test-lseek.c: Likewise.
13932         * tests/test-malloca.c: Likewise.
13933         * tests/test-math.c: Likewise.
13934         * tests/test-mbscasecmp.c: Likewise.
13935         * tests/test-mbscasestr1.c: Likewise.
13936         * tests/test-mbscasestr2.c: Likewise.
13937         * tests/test-mbscasestr3.c: Likewise.
13938         * tests/test-mbscasestr4.c: Likewise.
13939         * tests/test-mbschr.c: Likewise.
13940         * tests/test-mbscspn.c: Likewise.
13941         * tests/test-mbsncasecmp.c: Likewise.
13942         * tests/test-mbspbrk.c: Likewise.
13943         * tests/test-mbspcasecmp.c: Likewise.
13944         * tests/test-mbsrchr.c: Likewise.
13945         * tests/test-mbsspn.c: Likewise.
13946         * tests/test-mbsstr1.c: Likewise.
13947         * tests/test-mbsstr2.c: Likewise.
13948         * tests/test-mbsstr3.c: Likewise.
13949         * tests/test-md5.c: Likewise.
13950         * tests/test-memmem.c: Likewise.
13951         * tests/test-netinet_in.c: Likewise.
13952         * tests/test-open.c: Likewise.
13953         * tests/test-printf-frexp.c: Likewise.
13954         * tests/test-printf-frexpl.c: Likewise.
13955         * tests/test-printf-posix.c: Likewise.
13956         * tests/test-printf-posix.h: Likewise.
13957         * tests/test-rbtree_list.c: Likewise.
13958         * tests/test-rbtree_oset.c: Likewise.
13959         * tests/test-rbtreehash_list.c: Likewise.
13960         * tests/test-read-file.c: Likewise.
13961         * tests/test-rijndael.c: Likewise.
13962         * tests/test-search.c: Likewise.
13963         * tests/test-signbit.c: Likewise.
13964         * tests/test-sleep.c: Likewise.
13965         * tests/test-snprintf-posix.c: Likewise.
13966         * tests/test-snprintf-posix.h: Likewise.
13967         * tests/test-snprintf.c: Likewise.
13968         * tests/test-sprintf-posix.c: Likewise.
13969         * tests/test-sprintf-posix.h: Likewise.
13970         * tests/test-stat-time.c: Likewise.
13971         * tests/test-stdbool.c: Likewise.
13972         * tests/test-stdint.c: Likewise.
13973         * tests/test-stdio.c: Likewise.
13974         * tests/test-stdlib.c: Likewise.
13975         * tests/test-stpncpy.c: Likewise.
13976         * tests/test-strcasestr.c: Likewise.
13977         * tests/test-striconv.c: Likewise.
13978         * tests/test-striconveh.c: Likewise.
13979         * tests/test-striconveha.c: Likewise.
13980         * tests/test-string.c: Likewise.
13981         * tests/test-sys_select.c: Likewise.
13982         * tests/test-sys_socket.c: Likewise.
13983         * tests/test-sys_stat.c: Likewise.
13984         * tests/test-sys_time.c: Likewise.
13985         * tests/test-sysexits.c: Likewise.
13986         * tests/test-time.c: Likewise.
13987         * tests/test-tls.c: Likewise.
13988         * tests/test-trunc.c: Likewise.
13989         * tests/test-truncf.c: Likewise.
13990         * tests/test-truncl.c: Likewise.
13991         * tests/test-unistd.c: Likewise.
13992         * tests/test-vasnprintf-posix.c: Likewise.
13993         * tests/test-vasnprintf-posix2.c: Likewise.
13994         * tests/test-vasnprintf.c: Likewise.
13995         * tests/test-vasprintf-posix.c: Likewise.
13996         * tests/test-vasprintf.c: Likewise.
13997         * tests/test-verify.c: Likewise.
13998         * tests/test-vfprintf-posix.c: Likewise.
13999         * tests/test-vprintf-posix.c: Likewise.
14000         * tests/test-vsnprintf-posix.c: Likewise.
14001         * tests/test-vsnprintf.c: Likewise.
14002         * tests/test-vsprintf-posix.c: Likewise.
14003         * tests/test-wchar.c: Likewise.
14004         * tests/test-wctype.c: Likewise.
14005         * tests/test-wcwidth.c: Likewise.
14006         * tests/test-xstrtol.c: Likewise.
14007         * tests/test-xvasprintf.c: Likewise.
14008         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
14009         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
14010         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
14011         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
14012         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
14013         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
14014         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
14015         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
14016         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
14017         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
14018         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
14019         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
14020         * tests/uniname/test-uninames.c: Likewise.
14021         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
14022         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
14023         * tests/unistdio/test-u16-printf1.h: Likewise.
14024         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
14025         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
14026         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
14027         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
14028         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
14029         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
14030         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
14031         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
14032         * tests/unistdio/test-u32-printf1.h: Likewise.
14033         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
14034         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
14035         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
14036         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
14037         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
14038         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
14039         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
14040         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
14041         * tests/unistdio/test-u8-printf1.h: Likewise.
14042         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
14043         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
14044         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
14045         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
14046         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
14047         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
14048         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
14049         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
14050         * tests/unistdio/test-ulc-printf1.h: Likewise.
14051         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
14052         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
14053         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
14054         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
14055         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
14056         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
14057         * tests/uniwidth/test-u16-strwidth.c: Likewise.
14058         * tests/uniwidth/test-u16-width.c: Likewise.
14059         * tests/uniwidth/test-u32-strwidth.c: Likewise.
14060         * tests/uniwidth/test-u32-width.c: Likewise.
14061         * tests/uniwidth/test-u8-strwidth.c: Likewise.
14062         * tests/uniwidth/test-u8-width.c: Likewise.
14063         * tests/uniwidth/test-uc_width.c: Likewise.
14064         * config/srclist-update: Likewise.
14065         (fixlicense): Update to GPLv3+.
14066
14067         Change copyright notice from LGPLv2.1+ to LGPLv3+.
14068         * tests/test-tsearch.c: Change copyright notice.
14069
14070         Change copyright notice from LGPLv2.0+ to LGPLv3+.
14071         * lib/c-strcaseeq.h: Change copyright notice.
14072         * lib/streq.h: Likewise.
14073         * lib/uniconv.h: Likewise.
14074         * lib/uniconv/u-conv-from-enc.h: Likewise.
14075         * lib/uniconv/u-conv-to-enc.h: Likewise.
14076         * lib/uniconv/u-strconv-from-enc.h: Likewise.
14077         * lib/uniconv/u-strconv-to-enc.h: Likewise.
14078         * lib/uniconv/u16-conv-from-enc.c: Likewise.
14079         * lib/uniconv/u16-conv-to-enc.c: Likewise.
14080         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
14081         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
14082         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
14083         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
14084         * lib/uniconv/u32-conv-from-enc.c: Likewise.
14085         * lib/uniconv/u32-conv-to-enc.c: Likewise.
14086         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
14087         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
14088         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
14089         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
14090         * lib/uniconv/u8-conv-from-enc.c: Likewise.
14091         * lib/uniconv/u8-conv-to-enc.c: Likewise.
14092         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
14093         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
14094         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
14095         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
14096         * lib/uniname.h: Likewise.
14097         * lib/uniname/uniname.c: Likewise.
14098         * lib/unistdio.h: Likewise.
14099         * lib/unistdio/u-asnprintf.h: Likewise.
14100         * lib/unistdio/u-asprintf.h: Likewise.
14101         * lib/unistdio/u-printf-args.c: Likewise.
14102         * lib/unistdio/u-printf-args.h: Likewise.
14103         * lib/unistdio/u-printf-parse.h: Likewise.
14104         * lib/unistdio/u-snprintf.h: Likewise.
14105         * lib/unistdio/u-sprintf.h: Likewise.
14106         * lib/unistdio/u-vasprintf.h: Likewise.
14107         * lib/unistdio/u-vsnprintf.h: Likewise.
14108         * lib/unistdio/u-vsprintf.h: Likewise.
14109         * lib/unistdio/u16-asnprintf.c: Likewise.
14110         * lib/unistdio/u16-asprintf.c: Likewise.
14111         * lib/unistdio/u16-printf-parse.c: Likewise.
14112         * lib/unistdio/u16-snprintf.c: Likewise.
14113         * lib/unistdio/u16-sprintf.c: Likewise.
14114         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
14115         * lib/unistdio/u16-u16-asprintf.c: Likewise.
14116         * lib/unistdio/u16-u16-snprintf.c: Likewise.
14117         * lib/unistdio/u16-u16-sprintf.c: Likewise.
14118         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
14119         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
14120         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
14121         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
14122         * lib/unistdio/u16-vasnprintf.c: Likewise.
14123         * lib/unistdio/u16-vasprintf.c: Likewise.
14124         * lib/unistdio/u16-vsnprintf.c: Likewise.
14125         * lib/unistdio/u16-vsprintf.c: Likewise.
14126         * lib/unistdio/u32-asnprintf.c: Likewise.
14127         * lib/unistdio/u32-asprintf.c: Likewise.
14128         * lib/unistdio/u32-printf-parse.c: Likewise.
14129         * lib/unistdio/u32-snprintf.c: Likewise.
14130         * lib/unistdio/u32-sprintf.c: Likewise.
14131         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
14132         * lib/unistdio/u32-u32-asprintf.c: Likewise.
14133         * lib/unistdio/u32-u32-snprintf.c: Likewise.
14134         * lib/unistdio/u32-u32-sprintf.c: Likewise.
14135         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
14136         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
14137         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
14138         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
14139         * lib/unistdio/u32-vasnprintf.c: Likewise.
14140         * lib/unistdio/u32-vasprintf.c: Likewise.
14141         * lib/unistdio/u32-vsnprintf.c: Likewise.
14142         * lib/unistdio/u32-vsprintf.c: Likewise.
14143         * lib/unistdio/u8-asnprintf.c: Likewise.
14144         * lib/unistdio/u8-asprintf.c: Likewise.
14145         * lib/unistdio/u8-printf-parse.c: Likewise.
14146         * lib/unistdio/u8-snprintf.c: Likewise.
14147         * lib/unistdio/u8-sprintf.c: Likewise.
14148         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
14149         * lib/unistdio/u8-u8-asprintf.c: Likewise.
14150         * lib/unistdio/u8-u8-snprintf.c: Likewise.
14151         * lib/unistdio/u8-u8-sprintf.c: Likewise.
14152         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
14153         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
14154         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
14155         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
14156         * lib/unistdio/u8-vasnprintf.c: Likewise.
14157         * lib/unistdio/u8-vasprintf.c: Likewise.
14158         * lib/unistdio/u8-vsnprintf.c: Likewise.
14159         * lib/unistdio/u8-vsprintf.c: Likewise.
14160         * lib/unistdio/ulc-asnprintf.c: Likewise.
14161         * lib/unistdio/ulc-asprintf.c: Likewise.
14162         * lib/unistdio/ulc-printf-parse.c: Likewise.
14163         * lib/unistdio/ulc-snprintf.c: Likewise.
14164         * lib/unistdio/ulc-sprintf.c: Likewise.
14165         * lib/unistdio/ulc-vasnprintf.c: Likewise.
14166         * lib/unistdio/ulc-vasprintf.c: Likewise.
14167         * lib/unistdio/ulc-vsnprintf.c: Likewise.
14168         * lib/unistdio/ulc-vsprintf.c: Likewise.
14169         * lib/unistr.h: Likewise.
14170         * lib/unistr/u-cpy-alloc.h: Likewise.
14171         * lib/unistr/u-cpy.h: Likewise.
14172         * lib/unistr/u-endswith.h: Likewise.
14173         * lib/unistr/u-move.h: Likewise.
14174         * lib/unistr/u-set.h: Likewise.
14175         * lib/unistr/u-startswith.h: Likewise.
14176         * lib/unistr/u-stpcpy.h: Likewise.
14177         * lib/unistr/u-stpncpy.h: Likewise.
14178         * lib/unistr/u-strcat.h: Likewise.
14179         * lib/unistr/u-strcpy.h: Likewise.
14180         * lib/unistr/u-strcspn.h: Likewise.
14181         * lib/unistr/u-strdup.h: Likewise.
14182         * lib/unistr/u-strlen.h: Likewise.
14183         * lib/unistr/u-strncat.h: Likewise.
14184         * lib/unistr/u-strncpy.h: Likewise.
14185         * lib/unistr/u-strnlen.h: Likewise.
14186         * lib/unistr/u-strpbrk.h: Likewise.
14187         * lib/unistr/u-strspn.h: Likewise.
14188         * lib/unistr/u-strstr.h: Likewise.
14189         * lib/unistr/u-strtok.h: Likewise.
14190         * lib/unistr/u16-check.c: Likewise.
14191         * lib/unistr/u16-chr.c: Likewise.
14192         * lib/unistr/u16-cmp.c: Likewise.
14193         * lib/unistr/u16-cpy-alloc.c: Likewise.
14194         * lib/unistr/u16-cpy.c: Likewise.
14195         * lib/unistr/u16-endswith.c: Likewise.
14196         * lib/unistr/u16-mblen.c: Likewise.
14197         * lib/unistr/u16-mbsnlen.c: Likewise.
14198         * lib/unistr/u16-mbtouc-aux.c: Likewise.
14199         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
14200         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
14201         * lib/unistr/u16-mbtouc.c: Likewise.
14202         * lib/unistr/u16-mbtoucr.c: Likewise.
14203         * lib/unistr/u16-move.c: Likewise.
14204         * lib/unistr/u16-next.c: Likewise.
14205         * lib/unistr/u16-prev.c: Likewise.
14206         * lib/unistr/u16-set.c: Likewise.
14207         * lib/unistr/u16-startswith.c: Likewise.
14208         * lib/unistr/u16-stpcpy.c: Likewise.
14209         * lib/unistr/u16-stpncpy.c: Likewise.
14210         * lib/unistr/u16-strcat.c: Likewise.
14211         * lib/unistr/u16-strchr.c: Likewise.
14212         * lib/unistr/u16-strcmp.c: Likewise.
14213         * lib/unistr/u16-strcpy.c: Likewise.
14214         * lib/unistr/u16-strcspn.c: Likewise.
14215         * lib/unistr/u16-strdup.c: Likewise.
14216         * lib/unistr/u16-strlen.c: Likewise.
14217         * lib/unistr/u16-strmblen.c: Likewise.
14218         * lib/unistr/u16-strmbtouc.c: Likewise.
14219         * lib/unistr/u16-strncat.c: Likewise.
14220         * lib/unistr/u16-strncmp.c: Likewise.
14221         * lib/unistr/u16-strncpy.c: Likewise.
14222         * lib/unistr/u16-strnlen.c: Likewise.
14223         * lib/unistr/u16-strpbrk.c: Likewise.
14224         * lib/unistr/u16-strrchr.c: Likewise.
14225         * lib/unistr/u16-strspn.c: Likewise.
14226         * lib/unistr/u16-strstr.c: Likewise.
14227         * lib/unistr/u16-strtok.c: Likewise.
14228         * lib/unistr/u16-to-u32.c: Likewise.
14229         * lib/unistr/u16-to-u8.c: Likewise.
14230         * lib/unistr/u16-uctomb-aux.c: Likewise.
14231         * lib/unistr/u16-uctomb.c: Likewise.
14232         * lib/unistr/u32-check.c: Likewise.
14233         * lib/unistr/u32-chr.c: Likewise.
14234         * lib/unistr/u32-cmp.c: Likewise.
14235         * lib/unistr/u32-cpy-alloc.c: Likewise.
14236         * lib/unistr/u32-cpy.c: Likewise.
14237         * lib/unistr/u32-endswith.c: Likewise.
14238         * lib/unistr/u32-mblen.c: Likewise.
14239         * lib/unistr/u32-mbsnlen.c: Likewise.
14240         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
14241         * lib/unistr/u32-mbtouc.c: Likewise.
14242         * lib/unistr/u32-mbtoucr.c: Likewise.
14243         * lib/unistr/u32-move.c: Likewise.
14244         * lib/unistr/u32-next.c: Likewise.
14245         * lib/unistr/u32-prev.c: Likewise.
14246         * lib/unistr/u32-set.c: Likewise.
14247         * lib/unistr/u32-startswith.c: Likewise.
14248         * lib/unistr/u32-stpcpy.c: Likewise.
14249         * lib/unistr/u32-stpncpy.c: Likewise.
14250         * lib/unistr/u32-strcat.c: Likewise.
14251         * lib/unistr/u32-strchr.c: Likewise.
14252         * lib/unistr/u32-strcmp.c: Likewise.
14253         * lib/unistr/u32-strcpy.c: Likewise.
14254         * lib/unistr/u32-strcspn.c: Likewise.
14255         * lib/unistr/u32-strdup.c: Likewise.
14256         * lib/unistr/u32-strlen.c: Likewise.
14257         * lib/unistr/u32-strmblen.c: Likewise.
14258         * lib/unistr/u32-strmbtouc.c: Likewise.
14259         * lib/unistr/u32-strncat.c: Likewise.
14260         * lib/unistr/u32-strncmp.c: Likewise.
14261         * lib/unistr/u32-strncpy.c: Likewise.
14262         * lib/unistr/u32-strnlen.c: Likewise.
14263         * lib/unistr/u32-strpbrk.c: Likewise.
14264         * lib/unistr/u32-strrchr.c: Likewise.
14265         * lib/unistr/u32-strspn.c: Likewise.
14266         * lib/unistr/u32-strstr.c: Likewise.
14267         * lib/unistr/u32-strtok.c: Likewise.
14268         * lib/unistr/u32-to-u16.c: Likewise.
14269         * lib/unistr/u32-to-u8.c: Likewise.
14270         * lib/unistr/u32-uctomb.c: Likewise.
14271         * lib/unistr/u8-check.c: Likewise.
14272         * lib/unistr/u8-chr.c: Likewise.
14273         * lib/unistr/u8-cmp.c: Likewise.
14274         * lib/unistr/u8-cpy-alloc.c: Likewise.
14275         * lib/unistr/u8-cpy.c: Likewise.
14276         * lib/unistr/u8-endswith.c: Likewise.
14277         * lib/unistr/u8-mblen.c: Likewise.
14278         * lib/unistr/u8-mbsnlen.c: Likewise.
14279         * lib/unistr/u8-mbtouc-aux.c: Likewise.
14280         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
14281         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
14282         * lib/unistr/u8-mbtouc.c: Likewise.
14283         * lib/unistr/u8-mbtoucr.c: Likewise.
14284         * lib/unistr/u8-move.c: Likewise.
14285         * lib/unistr/u8-next.c: Likewise.
14286         * lib/unistr/u8-prev.c: Likewise.
14287         * lib/unistr/u8-set.c: Likewise.
14288         * lib/unistr/u8-startswith.c: Likewise.
14289         * lib/unistr/u8-stpcpy.c: Likewise.
14290         * lib/unistr/u8-stpncpy.c: Likewise.
14291         * lib/unistr/u8-strcat.c: Likewise.
14292         * lib/unistr/u8-strchr.c: Likewise.
14293         * lib/unistr/u8-strcmp.c: Likewise.
14294         * lib/unistr/u8-strcpy.c: Likewise.
14295         * lib/unistr/u8-strcspn.c: Likewise.
14296         * lib/unistr/u8-strdup.c: Likewise.
14297         * lib/unistr/u8-strlen.c: Likewise.
14298         * lib/unistr/u8-strmblen.c: Likewise.
14299         * lib/unistr/u8-strmbtouc.c: Likewise.
14300         * lib/unistr/u8-strncat.c: Likewise.
14301         * lib/unistr/u8-strncmp.c: Likewise.
14302         * lib/unistr/u8-strncpy.c: Likewise.
14303         * lib/unistr/u8-strnlen.c: Likewise.
14304         * lib/unistr/u8-strpbrk.c: Likewise.
14305         * lib/unistr/u8-strrchr.c: Likewise.
14306         * lib/unistr/u8-strspn.c: Likewise.
14307         * lib/unistr/u8-strstr.c: Likewise.
14308         * lib/unistr/u8-strtok.c: Likewise.
14309         * lib/unistr/u8-to-u16.c: Likewise.
14310         * lib/unistr/u8-to-u32.c: Likewise.
14311         * lib/unistr/u8-uctomb-aux.c: Likewise.
14312         * lib/unistr/u8-uctomb.c: Likewise.
14313         * lib/unitypes.h: Likewise.
14314         * lib/uniwidth.h: Likewise.
14315         * lib/uniwidth/cjk.h: Likewise.
14316         * lib/uniwidth/u16-strwidth.c: Likewise.
14317         * lib/uniwidth/u16-width.c: Likewise.
14318         * lib/uniwidth/u32-strwidth.c: Likewise.
14319         * lib/uniwidth/u32-width.c: Likewise.
14320         * lib/uniwidth/u8-strwidth.c: Likewise.
14321         * lib/uniwidth/u8-width.c: Likewise.
14322         * lib/uniwidth/width.c: Likewise.
14323
14324 2007-10-07  Bruno Haible  <bruno@clisp.org>
14325
14326         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
14327         The file is still under LGPL (see modules/inttypes).
14328
14329 2007-10-06  Bruno Haible  <bruno@clisp.org>
14330
14331         * modules/trunc (Dependencies): Add 'extensions'.
14332         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
14333         Reported by Ben Pfaff <blp@gnu.org>.
14334
14335 2007-10-06  Bruno Haible  <bruno@clisp.org>
14336
14337         * modules/freopen-tests: New file.
14338         * tests/test-freopen.c: New file.
14339
14340         * modules/fopen-tests: New file.
14341         * tests/test-fopen.c: New file.
14342
14343         * modules/fopen: New file.
14344         * lib/fopen.c: New file.
14345         * m4/fopen.m4: New file.
14346         * modules/freopen: New file.
14347         * lib/freopen.c: New file.
14348         * m4/freopen.m4: New file.
14349         * lib/stdio.in.h (fopen, freopen): New declarations.
14350         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
14351         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
14352         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
14353         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
14354         * doc/functions/fopen.texi: Mention the 'fopen' module.
14355         * doc/functions/freopen.texi: Mention the 'freopen' module.
14356
14357 2007-10-06  Bruno Haible  <bruno@clisp.org>
14358
14359         * modules/open-tests: New file.
14360         * tests/test-open.c: New file.
14361
14362         * modules/open: New file.
14363         * lib/open.c: New file.
14364         * m4/open.m4: New file.
14365         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
14366         lib/open.c does.
14367         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
14368         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
14369         macros.
14370         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
14371         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
14372         REPLACE_OPEN.
14373         * doc/functions/open.texi: Mention the 'open' module.
14374
14375 2007-10-04  Bruno Haible  <bruno@clisp.org>
14376
14377         * modules/ceill-tests: New file.
14378         * tests/test-ceill.c: New file.
14379
14380         * modules/ceill: New file.
14381         * lib/ceill.c: Replace entire file.
14382         * m4/ceill.m4: New file.
14383         * lib/math.in.h (ceill): Replace declaration.
14384         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
14385         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
14386         * doc/functions/ceill.texi: Mention the 'ceill' module.
14387         * modules/mathl (Files): Remove lib/ceill.c.
14388         (Depends-on): Add ceill.
14389
14390 2007-10-04  Bruno Haible  <bruno@clisp.org>
14391
14392         * modules/ceilf-tests: New file.
14393         * tests/test-ceilf.c: New file.
14394
14395         * modules/ceilf: New file.
14396         * lib/ceil.c: New file.
14397         * lib/ceilf.c: New file.
14398         * m4/ceilf.m4: New file.
14399         * lib/math.in.h (ceilf): New declaration.
14400         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
14401         HAVE_DECL_CEILF.
14402         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
14403         HAVE_DECL_CEILF.
14404         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
14405
14406 2007-10-04  Bruno Haible  <bruno@clisp.org>
14407
14408         * modules/floorl-tests: New file.
14409         * tests/test-floorl.c: New file.
14410
14411         * modules/floorl: New file.
14412         * lib/floorl.c: Replace entire file.
14413         * m4/floorl.m4: New file.
14414         * lib/math.in.h (floorl): Replace declaration.
14415         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
14416         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
14417         * doc/functions/floorl.texi: Mention the 'floorl' module.
14418         * modules/mathl (Files): Remove lib/floorl.c.
14419         (Depends-on): Add floorl.
14420
14421 2007-10-04  Bruno Haible  <bruno@clisp.org>
14422
14423         * modules/floorf-tests: New file.
14424         * tests/test-floorf.c: New file.
14425
14426         * modules/floorf: New file.
14427         * lib/floor.c: New file.
14428         * lib/floorf.c: New file.
14429         * m4/floorf.m4: New file.
14430         * lib/math.in.h (floorf): New declaration.
14431         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
14432         HAVE_DECL_FLOORF.
14433         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
14434         HAVE_DECL_FLOORF.
14435         * doc/functions/floorf.texi: Mention the 'floorf' module.
14436
14437 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
14438             Bruno Haible  <bruno@clisp.org>
14439
14440         Advertise for the Git server instead of the CVS server.
14441         * doc/gnulib-intro.texi (Steady Development): Mention the Git
14442         repository instead of the CVS one.
14443         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
14444         about all VCS systems generically.
14445         * doc/gnulib.texi (Introduction): Capitalize `Git'.
14446
14447 2007-10-04  Bruno Haible  <bruno@clisp.org>
14448
14449         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
14450         means.
14451         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
14452
14453 2007-10-04  Bruno Haible  <bruno@clisp.org>
14454
14455         * modules/truncl-tests: New file.
14456         * tests/test-truncl.c: New file.
14457
14458         * modules/truncl: New file.
14459         * lib/truncl.c: New file.
14460         * m4/truncl.m4: New file.
14461         * lib/math.in.h (truncl): New declaration.
14462         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
14463         HAVE_DECL_TRUNCL.
14464         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
14465         HAVE_DECL_TRUNCL.
14466         * doc/functions/truncl.texi: Mention the 'truncl' module.
14467
14468 2007-10-04  Bruno Haible  <bruno@clisp.org>
14469
14470         * modules/truncf-tests: New file.
14471         * tests/test-truncf.c: New file.
14472
14473         * modules/truncf: New file.
14474         * lib/trunc.c: Make paramerizable through USE_* macros.
14475         * lib/truncf.c: New file.
14476         * m4/truncf.m4: New file.
14477         * lib/math.in.h (truncf): New declaration.
14478         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
14479         HAVE_DECL_TRUNCF.
14480         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
14481         HAVE_DECL_TRUNCF.
14482         * doc/functions/truncf.texi: Mention the 'truncf' module.
14483
14484 2007-10-03  Bruno Haible  <bruno@clisp.org>
14485
14486         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
14487         augmentation also for tests modules.
14488         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
14489         * modules/atexit-tests (Makefile.am): Likewise.
14490         * modules/binary-io-tests (Makefile.am): Likewise.
14491         * modules/c-strcase-tests (Makefile.am): Likewise.
14492         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
14493         * modules/canonicalize-tests (Makefile.am): Likewise.
14494         * modules/closein-tests (Makefile.am): Likewise.
14495         * modules/fprintf-posix-tests (Makefile.am): Likewise.
14496         * modules/freadahead-tests (Makefile.am): Likewise.
14497         * modules/fseek-tests (Makefile.am): Likewise.
14498         * modules/fseeko-tests (Makefile.am): Likewise.
14499         * modules/ftell-tests (Makefile.am): Likewise.
14500         * modules/ftello-tests (Makefile.am): Likewise.
14501         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
14502         * modules/isnanl-tests (Makefile.am): Likewise.
14503         * modules/lseek-tests (Makefile.am): Likewise.
14504         * modules/mbscasecmp-tests (Makefile.am): Likewise.
14505         * modules/mbscasestr-tests (Makefile.am): Likewise.
14506         * modules/mbschr-tests (Makefile.am): Likewise.
14507         * modules/mbscspn-tests (Makefile.am): Likewise.
14508         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
14509         * modules/mbspbrk-tests (Makefile.am): Likewise.
14510         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
14511         * modules/mbsrchr-tests (Makefile.am): Likewise.
14512         * modules/mbsspn-tests (Makefile.am): Likewise.
14513         * modules/mbsstr-tests (Makefile.am): Likewise.
14514         * modules/printf-posix-tests (Makefile.am): Likewise.
14515         * modules/snprintf-posix-tests (Makefile.am): Likewise.
14516         * modules/sprintf-posix-tests (Makefile.am): Likewise.
14517         * modules/tsearch-tests (Makefile.am): Likewise.
14518         * modules/uniname/uniname-tests (Makefile.am): Likewise.
14519         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
14520         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
14521         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
14522         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
14523         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
14524         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
14525         * modules/vprintf-posix-tests (Makefile.am): Likewise.
14526         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
14527         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
14528         * modules/xstrtoimax-tests (Makefile.am): Likewise.
14529         * modules/xstrtol-tests (Makefile.am): Likewise.
14530         * modules/xstrtoumax-tests (Makefile.am): Likewise.
14531         * modules/yesno-tests (Makefile.am): Likewise.
14532
14533 2007-10-03  Bruno Haible  <bruno@clisp.org>
14534
14535         * modules/trunc-tests: New file.
14536         * tests/test-trunc.c: New file.
14537
14538         * modules/trunc: New file.
14539         * lib/trunc.c: New file.
14540         * m4/trunc.m4: New file.
14541         * lib/math.in.h (trunc): New declaration.
14542         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
14543         HAVE_DECL_TRUNC.
14544         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
14545         HAVE_DECL_TRUNC.
14546         * doc/functions/trunc.texi: Mention the 'trunc' module.
14547
14548 2007-10-03  Bruno Haible  <bruno@clisp.org>
14549
14550         * tests/test-fpending.c: New file, mostly copied
14551         from coreutils/lib/t-fpending.c.
14552         * modules/fpending-tests: New file.
14553
14554 2007-10-03  Bruno Haible  <bruno@clisp.org>
14555
14556         Port the stdio extensions to QNX (untested).
14557         * lib/fseterr.c (fseterr): Add support for QNX.
14558         * lib/fbufmode.c (fbufmode): Likewise.
14559         * lib/freadable.c (freadable): Likewise.
14560         * lib/fwritable.c (fwritable): Likewise.
14561         * lib/freading.c (freading): Likewise.
14562         * lib/fwriting.c (fwriting): Likewise.
14563         * lib/freadahead.c (freadahed): Likewise.
14564         * lib/fpurge.c (fpurge): Likewise.
14565         * lib/fseeko.c (rpl_fseeko): Likewise.
14566
14567 2007-10-03  Bruno Haible  <bruno@clisp.org>
14568             Jim Meyering  <jim@meyering.net>
14569             Eric Blake  <ebb9@byu.net>
14570
14571         * doc/relocatable.texi: Use @command instead of @program.
14572
14573 2007-10-02  Jim Meyering  <jim@meyering.net>
14574
14575         Perform one more "_.h" -> ".in.h" substitution.
14576         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
14577         instead of unistd_.h here, too.
14578
14579 2007-10-01  Bruno Haible  <bruno@clisp.org>
14580
14581         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
14582         Needed for the alloca-opt module.
14583
14584 2007-09-30  Bruno Haible  <bruno@clisp.org>
14585
14586         * lib/alloca.in.h: Renamed from lib/alloca_.h.
14587         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
14588         alloca_.h.
14589         * lib/argz.in.h: Renamed from lib/argz_.h.
14590         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
14591         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
14592         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
14593         byteswap_.h.
14594         * lib/dirent.in.h: Renamed from lib/dirent_.h.
14595         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
14596         dirent_.h.
14597         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
14598         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
14599         fcntl_.h.
14600         * lib/float.in.h: Renamed from lib/float_.h.
14601         * modules/float (Files, Makefile.am): Use float.in.h instead of
14602         float_.h.
14603         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
14604         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
14605         fnmatch_.h.
14606         * lib/getopt.in.h: Renamed from lib/getopt_.h.
14607         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
14608         getopt_.h.
14609         * lib/glob.in.h: Renamed from lib/glob_.h.
14610         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
14611         * lib/iconv.in.h: Renamed from lib/iconv_.h.
14612         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
14613         iconv_.h.
14614         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
14615         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
14616         inttypes_.h.
14617         * lib/locale.in.h: Renamed from lib/locale_.h.
14618         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
14619         locale_.h.
14620         * lib/math.in.h: Renamed from lib/math_.h.
14621         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
14622         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
14623         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
14624         of netinet_in_.h. Add dependency.
14625         * lib/poll.in.h: Renamed from lib/poll_.h.
14626         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
14627         * lib/search.in.h: Renamed from lib/search_.h.
14628         * modules/search (Files, Makefile.am): Use search.in.h instead of
14629         search_.h.
14630         * lib/signal.in.h: Renamed from lib/signal_.h.
14631         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
14632         _signal.h.
14633         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
14634         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
14635         stdbool_.h.
14636         * lib/stdint.in.h: Renamed from lib/stdint_.h.
14637         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
14638         stdint_.h.
14639         * lib/stdio.in.h: Renamed from lib/stdio_.h.
14640         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
14641         stdio_.h.
14642         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
14643         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
14644         stdlib_.h.
14645         * lib/string.in.h: Renamed from lib/string_.h.
14646         * modules/string (Files, Makefile.am): Use string.in.h instead of
14647         string_.h.
14648         * doc/gnulib-tool.texi (Initial import): Update.
14649         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
14650         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
14651         of sys_select_.h. Add dependency.
14652         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
14653         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
14654         of sys_socket_.h.
14655         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
14656         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
14657         sys_stat_.h.
14658         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
14659         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
14660         sys_time_.h.
14661         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
14662         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
14663         sysexits_.h.
14664         * lib/time.in.h: Renamed from lib/time_.h.
14665         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
14666         * lib/unistd.in.h: Renamed from lib/unistd_.h.
14667         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
14668         unistd_.h.
14669         * lib/wchar.in.h: Renamed from lib/wchar_.h.
14670         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
14671         wchar_.h.
14672         * lib/wctype.in.h: Renamed from lib/wctype_.h.
14673         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
14674         wctype_.h.
14675         * build-aux/bootstrap (slurp): Update.
14676         * lib/.cppi-disable: Update.
14677
14678 2007-09-30  Bruno Haible  <bruno@clisp.org>
14679
14680         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
14681         Needed on BeOS.
14682
14683 2007-09-30  Bruno Haible  <bruno@clisp.org>
14684
14685         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
14686
14687 2007-09-29  Bruno Haible  <bruno@clisp.org>
14688
14689         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
14690
14691 2007-09-29  Bruno Haible  <bruno@clisp.org>
14692
14693         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
14694         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
14695         * build-aux/install-reloc: Compile also areadlink.c.
14696         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
14697
14698 2007-09-29  Bruno Haible  <bruno@clisp.org>
14699
14700         * gnulib-tool (func_emit_initmacro_done): Indentation.
14701
14702 2007-09-29  Bruno Haible  <bruno@clisp.org>
14703
14704         * README: Add CVS checkout update instructions.
14705         Info from Bob Proulx <bob@proulx.com>.
14706
14707 2007-09-28  Eric Blake  <ebb9@byu.net>
14708
14709         Provide move-if-change.
14710         * build-aux/move-if-change: New file, based on best practice
14711         rather than any canonical upstream location.
14712
14713 2007-09-28  Jim Meyering  <jim@meyering.net>
14714
14715         Fix canonicalize loop-detection corner case.
14716         Do not attempt to stat the symlink values stored via seen_triple.
14717         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
14718         on linux-2.6.18, (but not 2.6.22).
14719         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
14720         triple_compare.  The former compares dev,ino,filename, while the latter
14721         would actually stat dirname(filename) when dev and ino were equal.
14722         * lib/hash-triple.c: Install <string.h>.
14723         (STREQ): Define.
14724         (triple_compare_ino_str): New function.
14725         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
14726
14727 2007-09-28  Eric Blake  <ebb9@byu.net>
14728
14729         Enforce that AC_REPLACE_FUNCS files exist.
14730         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
14731         override check for typos.
14732
14733         Fix test-closein on Solaris 10.
14734         * tests/test-closein.c (main): Don't assume stdin can be inherited
14735         closed on all systems.
14736         * tests/test-closein.sh: Likewise.
14737         Reported by Piotr Tarnowski.
14738
14739 2007-09-28  Jim Meyering  <jim@meyering.net>
14740
14741         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
14742
14743 2007-09-27  Jim Meyering  <jim@meyering.net>
14744
14745         canonicalize: Avoid a false-positive cycle failure.
14746         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
14747         Sort.  Remove cycle-check.
14748         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
14749         not cycle-check.h.
14750         (seen_triple): New function.
14751         (canonicalize_filename_mode): Use it instead of cycle-check.
14752         * tests/test-canonicalize.c: Add a test for this bug.
14753         * tests/test-canonicalize.sh: Set up and run the test.
14754
14755         New module, file-set, from coreutils.
14756         * modules/file-set: Define it.
14757         * lib/file-set.c, lib/file-set.h: Implement.
14758
14759         New module, hash-triple, from coreutils.
14760         * modules/hash-triple: Define it.
14761         * lib/hash-triple.c, lib/hash-triple.h: Implement.
14762
14763 2007-09-25  Eric Blake  <ebb9@byu.net>
14764
14765         Fix strerror on Interix.
14766         * lib/string_.h (strerror): Declare replacement.
14767         * doc/functions/strerror.texi (strerror): Document the Interix
14768         shortcoming.
14769         * modules/string (Makefile.am): Support new hooks.
14770         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
14771         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
14772         gl_FUNC_STRERROR_SEPARATE.
14773         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
14774         * lib/strerror.c (rpl_strerror): Provide replacement.
14775         * modules/strerror (Depends-on): Add string.
14776         (configure.ac): Detect use of module.
14777         * tests/test-strerror.c: New file.
14778         * modules/strerror-tests: New test module.
14779         * modules/argp (Depends-on): Add strerror.
14780         * modules/error (Depends-on): Likewise.
14781         Reported by Martin Koeppe.
14782
14783 2007-09-24  Bruno Haible  <bruno@clisp.org>
14784
14785         * README: Update git instructions.
14786
14787 2007-09-24  Eric Blake  <ebb9@byu.net>
14788
14789         Revert fpending breakage from 2007-09-08.
14790         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
14791         __fpending.c.
14792
14793 2007-09-24  Jim Meyering  <jim@meyering.net>
14794
14795         filenamecat.c: Add a test.
14796         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
14797         showing how the function works when DIR is the empty string.
14798
14799 2007-09-21  Simon Josefsson  <simon@josefsson.org>
14800
14801         * tests/test-canonicalize.sh: Turn on executable bit.
14802
14803 2007-09-19  Eric Blake  <ebb9@byu.net>
14804
14805         * README: Update CVS instructions.
14806
14807 2007-09-18  Bruno Haible  <bruno@clisp.org>
14808
14809         * modules/areadlink: New file.
14810         * lib/areadlink.h (areadlink): New declaration.
14811         * lib/areadlink.c: New file, based on lib/xreadlink.c.
14812
14813 2007-09-17  Jim Meyering  <jim@meyering.net>
14814
14815         * lib/savewd.c (ESTALE) [!defined]: Define.
14816         Reported to be required on Interix by Martin Koeppe.
14817
14818 2007-09-17  Bruno Haible  <bruno@clisp.org>
14819
14820         * gnulib-tool (func_version): Use $version.
14821
14822 2007-09-16  Bruno Haible  <bruno@clisp.org>
14823
14824         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
14825         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
14826         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
14827         Reported by Greg Schafer <gschafer@zip.com.au>.
14828
14829 2007-09-15  Bruno Haible  <bruno@clisp.org>
14830
14831         * gnulib-tool (sed): Try a little harder to make bash understand the
14832         alias.
14833         Reported by Bruce Korb <bruce.korb@gmail.com>.
14834
14835 2007-09-13  Eric Blake  <ebb9@byu.net>
14836
14837         * ChangeLog: Remove conflict markers.
14838
14839 2007-09-13  Simon Josefsson  <simon@josefsson.org>
14840
14841         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
14842         Reported by Bruno Haible <bruno@clisp.org>.
14843
14844 2007-09-12  Bruno Haible  <bruno@clisp.org>
14845
14846         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
14847         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
14848         is not defined.
14849
14850 2007-09-12  Eric Blake  <ebb9@byu.net>
14851
14852         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
14853         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
14854         Autoconf definition.
14855         * modules/euidaccess (Depends-on): Add extensions, for
14856         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
14857         * modules/fnmatch (Depends-on): Likewise.
14858         * modules/getaddrinfo (Depends-on): Likewise.
14859         * modules/getdelim (Depends-on): Likewise.
14860         * modules/getline (Depends-on): Likewise.
14861         * modules/getsubopt (Depends-on): Likewise.
14862         * modules/gettext (Depends-on): Likewise.
14863         * modules/group-member (Depends-on): Likewise.
14864         * modules/mbchar (Depends-on): Likewise.
14865         * modules/memmem (Depends-on): Likewise.
14866         * modules/mempcpy (Depends-on): Likewise.
14867         * modules/memrchr (Depends-on): Likewise.
14868         * modules/pagealign_alloc (Depends-on): Likewise.
14869         * modules/readutmp (Depends-on): Likewise.
14870         * modules/stpcpy (Depends-on): Likewise.
14871         * modules/stpncpy (Depends-on): Likewise.
14872         * modules/strchrnul (Depends-on): Likewise.
14873         * modules/strndup (Depends-on): Likewise.
14874         * modules/strsep (Depends-on): Likewise.
14875         * modules/strverscmp (Depends-on): Likewise.
14876         * modules/vasprintf (Depends-on): Likewise.
14877         * modules/wcwidth (Depends-on): Likewise.
14878         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
14879         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
14880         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
14881         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
14882         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
14883         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
14884         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
14885         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
14886         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
14887         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
14888         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
14889         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
14890         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
14891         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
14892         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
14893         * m4/readutmp.m4 (gl_READUTMP): Likewise.
14894         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
14895         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
14896         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
14897         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
14898         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
14899         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
14900         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
14901         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
14902         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
14903         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
14904         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
14905         so that lock.m4 can be used in gettext without extensions module.
14906
14907 2007-09-11  Bruno Haible  <bruno@clisp.org>
14908
14909         * m4/isc-posix.m4: Remove file.
14910         Suggested by Eric Blake.
14911
14912 2007-09-11  Eric Blake  <ebb9@byu.net>
14913
14914         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
14915
14916 2007-09-10  Bruno Haible  <bruno@clisp.org>
14917
14918         * posix-modules: Fix typo in error message.
14919         Reported by Matt <mkraai@beckman.com>.
14920
14921 2007-09-09  Bruno Haible  <bruno@clisp.org>
14922
14923         * doc/functions/getdelim.texi: Update list of platforms lacking the
14924         function.
14925         * doc/functions/getline.texi: Likewise.
14926
14927 2007-09-09  Jim Meyering  <jim@meyering.net>
14928
14929         * lib/hash.c (hash_initialize): Detect calloc failure.
14930         Reported by Bruno Haible.
14931
14932 2007-09-09  Bruno Haible  <bruno@clisp.org>
14933
14934         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
14935         malloc or realloc fails.
14936
14937 2007-09-09  Bruno Haible  <bruno@clisp.org>
14938
14939         * modules/getcwd (Depends-on): Add malloc-posix.
14940         * modules/glob (Depends-on): Likewise.
14941         * modules/putenv (Depends-on): Likewise.
14942         * modules/strdup (Depends-on): Likewise.
14943         * modules/getdelim (Depends-on): Add realloc-posix.
14944         * modules/read-file (Depends-on): Likewise.
14945
14946 2007-09-09  Bruno Haible  <bruno@clisp.org>
14947
14948         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
14949         (gl_FUNC_MALLOC_POSIX): Require it.
14950         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
14951         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
14952         * modules/realloc (Files): Add m4/malloc.m4.
14953         * modules/calloc (Files): Likewise.
14954
14955 2007-09-09  Bruno Haible  <bruno@clisp.org>
14956
14957         * modules/malloc-posix: New file.
14958         * modules/malloc (Depends-on): Add malloc-posix.
14959         * lib/malloc.c: Include errno.h.
14960         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
14961         and a POSIX-compatible malloc into a single function. Set ENOMEM
14962         when returning NULL.
14963         * m4/malloc.m4: New file.
14964         * doc/functions/malloc.texi: Mention the malloc-posix module.
14965         * lib/stdlib_.h (malloc): New declaration.
14966         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
14967         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
14968         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
14969         and HAVE_MALLOC_POSIX.
14970
14971 2007-09-09  Bruno Haible  <bruno@clisp.org>
14972
14973         * modules/realloc-posix: New file.
14974         * modules/realloc (Depends-on): Add realloc-posix.
14975         * lib/realloc.c: Include errno.h.
14976         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
14977         and a POSIX-compatible realloc into a single function. Set ENOMEM
14978         when returning NULL.
14979         * m4/realloc.m4: New file.
14980         * doc/functions/realloc.texi: Mention the realloc-posix module.
14981         * lib/stdlib_.h (realloc): New declaration.
14982         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
14983         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
14984         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
14985         and HAVE_REALLOC_POSIX.
14986
14987 2007-09-09  Bruno Haible  <bruno@clisp.org>
14988
14989         * modules/calloc-posix: New file.
14990         * modules/calloc (Depends-on): Add calloc-posix.
14991         * lib/calloc.c: Include errno.h.
14992         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
14993         and a POSIX-compatible calloc into a single function. Set ENOMEM
14994         when returning NULL.
14995         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
14996         * doc/functions/calloc.texi: Mention the calloc-posix module.
14997         * lib/stdlib_.h (calloc): New declaration.
14998         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
14999         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
15000         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
15001         and HAVE_CALLOC_POSIX.
15002
15003 2007-09-09  Bruno Haible  <bruno@clisp.org>
15004
15005         Allow for modules to show an arbitrary notice.
15006         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
15007         * gnulib-tool: New option --extract-notice.
15008         (func_usage): Document it.
15009         (sed_extract_prog): Update.
15010         (func_get_notice): New function.
15011         (func_modules_notice): New function.
15012         (func_import, func_create_testdir): Invoke it.
15013         Suggested by Jim Meyering.
15014
15015 2007-09-09  Bruno Haible  <bruno@clisp.org>
15016
15017         * gnulib-tool: New options --verbose, --quiet.
15018         (func_usage): Document them.
15019         (verbose): New variable.
15020         (func_execute_command): New function.
15021         (func_import): Don't show the module list and the file list if
15022         $verbose < 0.
15023         (func_create_testdir): Likewise. Use func_execute_command.
15024         (func_create_megatestdir): Use func_execute_command.
15025
15026 2007-09-08  Bruno Haible  <bruno@clisp.org>
15027
15028         * gnulib-tool (func_import): Prefer rsync over wget when available,
15029         for fetching the PO files.
15030
15031 2007-09-08  Bruno Haible  <bruno@clisp.org>
15032
15033         * posix-modules: New file. Portions copied from gnulib-tool.
15034         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
15035
15036 2007-09-08  Jim Meyering  <jim@meyering.net>
15037
15038         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
15039         * lib/fpending.h: Rename from __fpending.h.
15040         * lib/fpending.c: Rename from __fpending.c.
15041         Include "fpending.h", not "__fpending.h".
15042         * lib/__fpending.h, lib/__fpending.c: Remove files.
15043         * modules/fpending (Files): Reflect new file names.
15044         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
15045
15046 2007-09-08  Bruno Haible  <bruno@clisp.org>
15047
15048         * m4/inttypes-h.m4: Remove stub file.
15049
15050 2007-09-07  Simon Josefsson  <simon@josefsson.org>
15051
15052         * doc/headers/stdint.texi: Discuss #include_next issue.
15053
15054 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
15055
15056         * build-aux/bootstrap: Remove obsolete comment about wget --help.
15057
15058 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15059
15060         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
15061         in variable name.
15062
15063 2007-09-03  Jim Meyering  <jim@meyering.net>
15064
15065         New module: git-version-gen.
15066         * modules/git-version-gen: New file.
15067
15068         Import changes from coreutils for bootstrap script.
15069
15070         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
15071
15072         bootstrap: uses rsync to download the .po files
15073         * build-aux/bootstrap (po_download_command_format): New global.
15074         (download_po_files): Use rsync.
15075         (update_po_files): Don't remove .po files after download,
15076         so future rsync runs can take advantage of the copies.
15077
15078         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
15079
15080         Solve the unnecessary-.po-file-regeneration problem once and for all.
15081         * build-aux/bootstrap (download_po_files): New function, renamed from
15082         get_translations.  Now, downloads, but doesn't update LINGUAS.
15083         (update_po_files): New function.
15084
15085         bootstrap: Ignore more.
15086         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
15087         uniwidth to e.g., lib/.gitignore.
15088         (slurp): Handle the sys_stat_.h -> sys mapping, too.
15089
15090         * build-aux/bootstrap: New setting: vc_ignore.
15091         (insert_sorted_if_absent): Create $file if absent.
15092         Adapt to new, possibly empty, list: $vc_ignore.
15093
15094         bootstrap: generate more ignorable names
15095         * build-aux/bootstrap (slurp): When generating ignorable names,
15096         also map .sin to .sed, .gperf to .c, and .y to .c.
15097
15098 2007-09-03  Jim Meyering  <jim@meyering.net>
15099
15100         * build-aux/git-version-gen: New file, from coreutils.  For details, see
15101         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
15102
15103 2007-09-02  Bruno Haible  <bruno@clisp.org>
15104
15105         Fix mis-recognition of 'mcs' on QNX 6.
15106         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
15107         output contains the string "Mono".
15108         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
15109         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
15110
15111 2007-09-01  Bruno Haible  <bruno@clisp.org>
15112
15113         Fix collision between uniwidth/* and linebreak modules.
15114         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
15115         u32_width): Remove declarations.
15116         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
15117         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
15118         streq3, streq2, streq1, streq0): Remove functions.
15119         (STREQ): Remove macro.
15120         (is_cjk_encoding): Remove function.
15121         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
15122         (uc_width, u8_width, u16_width, u32_width): Remove functions.
15123         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
15124         * NEWS: Document the change.
15125
15126 2007-09-01  Bruno Haible  <bruno@clisp.org>
15127
15128         * lib/streq.h: Add double-inclusion guard.
15129
15130 2007-09-01  Karl Berry  <karl@gnu.org>
15131
15132         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
15133
15134 2007-08-28  Jim Meyering  <jim@meyering.net>
15135
15136         Rename mreadlink_with_size to areadlink_with_size.
15137         * NEWS: Document the change.
15138         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
15139         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
15140         * lib/mreadlink.h: Rename this to...
15141         * lib/areadlink.h: ...this.
15142         * modules/mreadlink-with-size: Rename this to...
15143         * modules/areadlink-with-size: ...this.
15144         * lib/canonicalize.c: Reflect the renaming.
15145         * modules/canonicalize: Likewise.
15146
15147 2007-08-26  Bruno Haible  <bruno@clisp.org>
15148
15149         * gnulib-tool (func_import): When deciding which files to remove,
15150         consider also dangling symbolic links.
15151         Reported by Eric Blake.
15152
15153 2007-08-26  Bruno Haible  <bruno@clisp.org>
15154
15155         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
15156
15157 2007-08-23  Simon Josefsson  <simon@josefsson.org>
15158
15159         * lib/readline.c: Don't include getline.h, the prototype is now
15160         found in stdio.h.
15161
15162 2007-08-23  Jim Meyering  <jim@meyering.net>
15163
15164         Getdelim touchup.
15165         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
15166         around the funlockfile call, since funlockfile never sets errno.
15167         Don't set errno upon failed realloc.
15168
15169 2007-08-22  Eric Blake  <ebb9@byu.net>
15170
15171         Getline touchups.
15172         * lib/getdelim.c (getdelim): Revert regression that required *n to
15173         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
15174         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
15175         getdelim, rather than whether implementation is missing.
15176         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
15177         * lib/stdio_.h (getline): Also declare if replacement is
15178         required.
15179         * doc/functions/getdelim.texi: New file.
15180         * doc/functions/getline.texi: Likewise.
15181         * doc/gnulib.texi (Function Substitutes): Add new files.
15182         Reported by Bruno Haible.
15183
15184 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
15185
15186         * users.txt: Add Guile.
15187
15188 2007-08-22  Eric Blake  <ebb9@byu.net>
15189
15190         * tests/test-getdelim.c (main): Use remove, not unlink.
15191         * tests/test-getline.c (main): Likewise.
15192
15193         Move getline and getdelim into stdio.h, per POSIX 200x.
15194         * modules/getline (Files): Remove getline.h.
15195         (Depends-on): Add stdio.
15196         (configure.ac): Add module indicator.
15197         * modules/getdelim (Files): Remove getdelim.h.
15198         (Depends-on): Add stdio.
15199         (configure.ac): Add module indicator.
15200         * modules/stdio (Makefile.am): Work with new indicators.
15201         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
15202         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
15203         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
15204         * lib/getdelim.h: Delete.
15205         * lib/getline.h: Delete.
15206         * lib/stdio_.h (getdelim, getline): Declare.
15207         * modules/getdelim-tests: New module.
15208         * modules/getline-tests: Likewise.
15209         * tests/test-getdelim.c: New file.
15210         * tests/test-getline.c: Likewise.
15211         * NEWS: Document the change.
15212         * lib/getline.c: Update choice of header.
15213         * lib/csharpcomp.c: Likewise.
15214         * lib/getpass.c: Likewise.
15215         * lib/javacomp.c: Likewise.
15216         * lib/javaversion.c: Likewise.
15217         * lib/yesno.c: Likewise.
15218         * lib/getdelim.c: Likewise.
15219         (getdelim): Set errno on failure, and avoid memory leak.
15220
15221 2007-08-19  Bruno Haible  <bruno@clisp.org>
15222
15223         * modules/closein (Depends-on): Add freadahead.
15224         * lib/closein.c: Include freadahead.h.
15225         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
15226         is zero.
15227
15228 2007-08-19  Bruno Haible  <bruno@clisp.org>
15229
15230         * modules/freadahead-tests: New file.
15231         * tests/test-freadahead.sh: New file.
15232         * tests/test-freadahead.c: New file.
15233
15234         * modules/freadahead: New file.
15235         * lib/freadahead.h: New file.
15236         * lib/freadahead.c: New file.
15237         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
15238         fbufmode, fpurge, freadable, fwritable.
15239
15240 2007-08-19  Eric Blake  <ebb9@byu.net>
15241
15242         Test yesno in combination with closein.
15243         * lib/yesno.c (yesno): Document use of stdin.
15244         * modules/yesno-tests (Files): New module.
15245         * tests/test-yesno.c (main): New file.
15246         * tests/test-yesno.sh: Likewise.
15247
15248 2007-08-19  Bruno Haible  <bruno@clisp.org>
15249
15250         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
15251         * lib/fseeko.c (rpl_fseeko): Likewise.
15252         * lib/fseterr.c (fseterr): Likewise.
15253
15254 2007-08-19  Bruno Haible  <bruno@clisp.org>
15255
15256         * tests/test-lseek.c (main): Disable a test for BeOS.
15257         * doc/functions/lseek.texi: Document the BeOS bug.
15258
15259 2007-08-19  Bruno Haible  <bruno@clisp.org>
15260             Eric Blake  <ebb9@byu.net>
15261
15262         * lib/lseek.c: Include <sys/stat.h>.
15263         (rpl_lseek): Add workaround code also for Unix platforms.
15264         Needed for BeOS.
15265         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
15266         * doc/functions/lseek.texi: Document BeOS definiency.
15267
15268 2007-08-18  Bruno Haible  <bruno@clisp.org>
15269
15270         * modules/fstrcmp-tests: New file.
15271         * tests/test-fstrcmp.c: New file.
15272
15273 2007-08-18  Bruno Haible  <bruno@clisp.org>
15274
15275         * modules/fstrcmp: New file, from GNU gettext with modifications.
15276         * lib/fstrcmp.h: New file, from GNU gettext.
15277         * lib/fstrcmp.c: New file, from GNU gettext.
15278         * MODULES.html.sh (String handling): Add fstrcmp.
15279
15280 2007-08-18  Bruno Haible  <bruno@clisp.org>
15281
15282         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
15283         'bool'.
15284         (diag, compareseq): Remove const from the ctxt argument.
15285         (USE_HEURISTIC): Undefine at the end.
15286
15287 2007-08-18  Jim Meyering  <jim@meyering.net>
15288
15289         New file: lib/idcache.h
15290         * NEWS: Mention the addition.
15291         * modules/idcache (Files): Add lib/idcache.h
15292         * lib/idcache.c: Include "idcache.h".
15293         Don't include <sys/types.h>.
15294         Add a FIXME comment.
15295         Move file-scoped "static" declarations to the top.
15296         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
15297
15298 2007-08-17  Bruno Haible  <bruno@clisp.org>
15299         and Paul Eggert  <eggert@cs.ucla.edu>
15300
15301         * MODULES.html.sh: Add diffseq.
15302         * modules/diffseq: New file.
15303         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
15304         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
15305
15306 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
15307
15308         Import changes from coreutils for bootstrap script.
15309
15310         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
15311
15312         * build-aux/bootstrap (slurp): Work even in environments where
15313         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
15314         current code does not slurp files whose names start with ".", and
15315         this looks like it might be a troublesome area.
15316
15317         2007-07-11  Jim Meyering  <jim@meyering.net>
15318
15319         If there's a GPL vN copyright comment, require that N == 3.
15320
15321         2007-07-08  Jim Meyering  <jim@meyering.net>
15322
15323         Run the coreutils-specific code only if tests/Makefile.am.in exists.
15324         * build-aux/bootstrap (mam_template): Move definition out of loop.
15325
15326         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
15327
15328         * build-aux/bootstrap (symlink_to_dir): Rename function from
15329         symlink_to_gnulib.  Add a directory parameter.  Update all
15330         callers.
15331         (cp_mark_as_generated): Also check for -- and link to -- files in
15332         gl/.
15333
15334         2007-07-08  Jim Meyering  <jim@meyering.net>
15335
15336         Adapt to deeper hierarchy in gnulib.
15337         * build-aux/bootstrap (symlink_to_dir): If the destination
15338         directory doesn't exist, create it. This is required at least for
15339         "lib/uniwidth/cjk.h".
15340
15341         2007-05-15  Jim Meyering  <jim@meyering.net>
15342
15343         * build-aux/bootstrap: Now that generated Makefile.am files
15344         are no longer under version control, they must be created at
15345         bootstrap time.
15346
15347 2007-08-14  Ben Pfaff  <blp@gnu.org>
15348
15349         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
15350
15351 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
15352
15353         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
15354         given the changes below.
15355         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
15356         even on hosts that have padding bits beyond the supported 64.
15357
15358 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
15359
15360         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
15361         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
15362         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
15363         depends on it.
15364         (xstrtol_error): Remove.
15365         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
15366         but with a different signature.
15367         (ATTRIBUTE_NORETURN, __attribute__): New macros.
15368         * lib/xstrtol-error.c: Include exitfail.h.
15369         (xstrtol_fatal): New function, with a different signature from the
15370         old xstrtol_error, so that the caller need not worry about passing
15371         in an exit status, or about storage management of the option argument.
15372         (xstrtol_error): Now a static function.  Redo signature to
15373         implement xstrtol_fatal.  Output the correct number of hyphens in
15374         front of the option so that the caller need not worry about
15375         storage management.
15376         (N_): New macro.
15377         (_): Remove; not used now.
15378         * modules/xstrtol: Depend on getopt.
15379         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
15380         of old STRTOL_FATAL_ERROR macro.
15381         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
15382         of test program.
15383         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
15384         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
15385
15386 2007-08-08  Eric Blake  <ebb9@byu.net>
15387
15388         * lib/xstrtol-error.c: Add missing include.
15389
15390         Move xstrtol messages into gnulib domain, when --pobase is used.
15391         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
15392         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
15393         * modules/xstrtol (Files): Distribute new file.
15394         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
15395         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
15396         * tests/test-xstrtol.c: ...into new file.
15397         * tests/test-xstrtoul.c: Also test xstrtoul.
15398         * tests/test-xstrtoimax.c: Also test xstrtoimax.
15399         * tests/test-xstrtoumax.c: Also test xstrtoumax.
15400         * tests/test-xstrtol.sh: Drive the tests.
15401         * tests/test-xstrtoimax.sh: Likewise.
15402         * tests/test-xstrtoumax.sh: Likewise.
15403         * modules/xstrtol-tests: New module.
15404         * modules/xstrtoimax-tests: Likewise.
15405         * modules/xstrtoumax-tests: Likewise.
15406
15407 2007-08-08  Jim Meyering  <jim@meyering.net>
15408
15409         New function: mfile_name_concat.
15410         * lib/filenamecat.c (mfile_name_concat): New function, just like
15411         file_name_concat, but return NULL upon failure rather than exiting
15412         with a diagnostic.
15413         * lib/filenamecat.h: Declare it.
15414
15415 2007-08-07  Bruno Haible  <bruno@clisp.org>
15416
15417         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
15418         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
15419         warning from gcc.
15420         Reported by Eric Blake.
15421
15422 2007-08-07  Simon Josefsson  <simon@josefsson.org>
15423
15424         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
15425         * modules/crypto/arcfour (License): Likewise.
15426         * modules/crypto/des-tests (License): Likewise.
15427         * modules/crypto/gc-arctwo-tests (License): Likewise.
15428         * modules/crypto/gc-des-tests (License): Likewise.
15429         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
15430         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
15431         * modules/crypto/gc-md2-tests (License): Likewise.
15432         * modules/crypto/gc-md4-tests (License): Likewise.
15433         * modules/crypto/gc-md5-tests (License): Likewise.
15434         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
15435         * modules/crypto/gc-rijndael-tests (License): Likewise.
15436         * modules/crypto/gc-sha1-tests (License): Likewise.
15437         * modules/crypto/gc-tests (License): Likewise.
15438         * modules/crypto/hmac-md5 (License): Likewise.
15439         * modules/crypto/hmac-sha1 (License): Likewise.
15440         * modules/crypto/md2-tests (License): Likewise.
15441         * modules/crypto/md4-tests (License): Likewise.
15442         * modules/crypto/md5 (License): Likewise.
15443         * modules/crypto/rijndael (License): Likewise.
15444         * modules/crypto/sha1 (License): Likewise.
15445         * modules/memxor (License): Likewise.
15446
15447 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
15448         and Bruno Haible  <bruno@clisp.org>
15449
15450         * NEWS: Describe interface changes to human, xstrtol.
15451         * lib/human.h: Include <xstrtol.h>.
15452         (human_options): Return enum strtol_error, not int.  Remove
15453         bool arg; take int * instead.
15454         * lib/human.c: Don't include "gettext.h".
15455         (_): Remove; no longer used.
15456         Don't include <xstrtol.h>, since human.h does it.
15457         (human_options): Adjust to abovementioned interface changes.
15458         Do not report error to stderr; that's now the caller's
15459         responsibility.
15460         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
15461         interface change.
15462         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
15463         Str, Argument_type_string.  All uses changed.  Put " argument"
15464         in diagnostics to make them clearer.  Change wording of suffix
15465         message for clarity.
15466         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
15467         Argument_type_string.
15468         (STRTOL_FATAL_WARN): Remove; no longer used.
15469         * modules/human (Depends-on): Remove gettext-h.
15470
15471 2007-08-06  Simon Josefsson  <simon@josefsson.org>
15472
15473         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
15474
15475 2007-07-31  Bruno Haible  <bruno@clisp.org>
15476
15477         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
15478         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
15479         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
15480
15481 2007-07-31  Bruno Haible  <bruno@clisp.org>
15482
15483         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
15484         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
15485
15486 2007-07-30  Bruno Haible  <bruno@clisp.org>
15487
15488         * modules/base64 (License): Use the synonymous term "LGPLv2+".
15489         * modules/c-ctype (License): Likewise.
15490         * modules/c-strcase (License): Likewise.
15491         * modules/check-version (License): Likewise.
15492         * modules/iconv (License): Likewise.
15493         * modules/iconv_open (License): Likewise.
15494         * modules/read-file (License): Likewise.
15495         * modules/striconv (License): Likewise.
15496         * modules/strverscmp (License): Likewise.
15497         * modules/vasprintf (License): Likewise.
15498         * modules/crypto/des (License): Likewise.
15499         * modules/crypto/gc (License): Likewise.
15500         * modules/crypto/gc-arcfour (License): Likewise.
15501         * modules/crypto/gc-arctwo (License): Likewise.
15502         * modules/crypto/gc-des (License): Likewise.
15503         * modules/crypto/gc-hmac-md5 (License): Likewise.
15504         * modules/crypto/gc-hmac-sha1 (License): Likewise.
15505         * modules/crypto/gc-md2 (License): Likewise.
15506         * modules/crypto/gc-md4 (License): Likewise.
15507         * modules/crypto/gc-md5 (License): Likewise.
15508         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
15509         * modules/crypto/gc-random (License): Likewise.
15510         * modules/crypto/gc-rijndael (License): Likewise.
15511         * modules/crypto/gc-sha1 (License): Likewise.
15512         * modules/crypto/md2 (License): Likewise.
15513         * modules/crypto/md4 (License): Likewise.
15514
15515 2007-07-30  Jim Meyering  <jim@meyering.net>
15516
15517         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
15518         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
15519         it has valid stat data.  This bug would cause du not to count the
15520         sizes of inaccessible directories.
15521         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
15522         in <http://bugzilla.redhat.com/250077>.
15523
15524 2007-07-25  Peter O'Gorman  <peter@pogma.com>
15525             Bruno Haible  <bruno@clisp.org>
15526
15527         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
15528         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
15529         #include_next, gives a diagnostic about it, but reports no error in
15530         the exit code.
15531         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
15532
15533 2007-07-24  Ben Pfaff  <blp@gnu.org>
15534
15535         Improve name: "count-one-bits" is better than "popcount".
15536         * MODULES.html.sh: Update name.
15537         * lib/popcount.h: Renamed lib/count-one-bits.h.
15538         (popcount): Renamed count_one_bits.
15539         (popcountl): Renamed count_one_bits_l.
15540         (popcountll): Renamed count_one_bits_ll.
15541         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
15542         * modules/popcount: Renamed module/count-one-bits.
15543         * modules/popcount-tests: Renamed module/count-one-bits-tests.
15544         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
15545
15546 2007-07-23  Ben Pfaff  <blp@gnu.org>
15547
15548         * lib/popcount.h (popcount32): Reduce size of constants, to allow
15549         better code generation, and add U to large constants to avoid
15550         warnings, in non-GCC case.
15551         Suggested by Bruno Haible.
15552
15553 2007-07-23  Ben Pfaff  <blp@gnu.org>
15554
15555         * lib/popcount.h: Use verify_true instead of if...abort.
15556         * modules/popcount: Depend on verify module.
15557         Suggested by Jim Meyering.
15558
15559 2007-07-23  Bruno Haible  <bruno@clisp.org>
15560
15561         * gnulib-tool (func_import): Create a .cvsignore file also when the
15562         directory is not yet in CVS but the toplevel directory is. When
15563         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
15564         Reported by Karl Berry.
15565
15566 2007-07-22  Ben Pfaff  <blp@gnu.org>
15567
15568         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
15569         case.
15570         Suggested by Eric Blake.
15571
15572 2007-07-22  Ben Pfaff  <blp@gnu.org>
15573
15574         New module: popcount.
15575         * MODULES.html.sh: Add popcount.
15576         * modules/popcount: New file.
15577         * modules/popcount-tests: New file.
15578         * tests/test-popcount.c: New file.
15579         * lib/popcount.h: New file.
15580         * m4/popcount.m4: New file.
15581
15582 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
15583
15584         * build-aux/announce-gen: Update to GPLv3.
15585
15586         * build-aux/config.guess: Update from config.
15587
15588 2007-07-21  Bruno Haible  <bruno@clisp.org>
15589
15590         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
15591         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
15592
15593 2007-07-20  Jim Meyering  <jim@meyering.net>
15594
15595         * check-module: Diagnose a self-dependency.
15596
15597 2007-07-19  Bruno Haible  <bruno@clisp.org>
15598
15599         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
15600         empty.
15601         Reported by Eric Blake.
15602
15603 2007-07-18  Bruno Haible  <bruno@clisp.org>
15604
15605         * gnulib-tool: New options --po-base, --po-domain.
15606         (func_usage): Document them.
15607         (pobase, po_domain): New variables.
15608         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
15609         DEFAULT_TEXT_DOMAIN.
15610         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
15611         (func_import): Consider pobase and po_domain. Create a po/ directory.
15612         (func_create_testdir): Set pobase and po_domain to empty.
15613         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
15614         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
15615
15616 2007-07-18  Bruno Haible  <bruno@clisp.org>
15617
15618         * gnulib-tool (func_get_automake_snippet): Synthesize also an
15619         EXTRA_DIST augmentation for files in build-aux/.
15620
15621 2007-07-16  Bruno Haible  <bruno@clisp.org>
15622
15623         * modules/lseek (License): Use the synonymous term "LGPLv2+".
15624         * modules/getdelim (License): Likewise.
15625
15626 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15627
15628         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
15629         * modules/d-type (License): Likewise.
15630         * modules/extensions (License): Likewise.
15631         * modules/fnmatch (License): Likewise.
15632         * modules/fseeko (License): Likewise.
15633         * modules/getaddrinfo (License): Likewise.
15634         * modules/getline (License): Likewise.
15635         * modules/getlogin_r (License): Likewise.
15636         * modules/getpass (License): Likewise.
15637         * modules/gettimeofday (License): Likewise.
15638         * modules/glob (License): Likewise.
15639         * modules/inet_ntop (License): Likewise.
15640         * modules/malloc (License): Likewise.
15641         * modules/malloca (License): Likewise.
15642         * modules/memmem (License): Likewise.
15643         * modules/mempcpy (License): Likewise.
15644         * modules/memset (License): Likewise.
15645         * modules/minmax (License): Likewise.
15646         * modules/mktime (License): Likewise.
15647         * modules/netinet_in (License): Likewise.
15648         * modules/pathmax (License): Likewise.
15649         * modules/poll (License): Likewise.
15650         * modules/regex (License): Likewise.
15651         * modules/snprintf (License): Likewise.
15652         * modules/stdbool (License): Likewise.
15653         * modules/stdint (License): Likewise.
15654         * modules/stdio (License): Likewise.
15655         * modules/strcase (License): Likewise.
15656         * modules/strcasestr (License): Likewise.
15657         * modules/strdup (License): Likewise.
15658         * modules/string (License): Likewise.
15659         * modules/strndup (License): Likewise.
15660         * modules/strnlen (License): Likewise.
15661         * modules/strpbrk (License): Likewise.
15662         * modules/strptime (License): Likewise.
15663         * modules/strsep (License): Likewise.
15664         * modules/sys_select (License): Likewise.
15665         * modules/sys_socket (License): Likewise.
15666         * modules/sys_stat (License): Likewise.
15667         * modules/sys_time (License): Likewise.
15668         * modules/time (License): Likewise.
15669         * modules/time_r (License): Likewise.
15670         * modules/timegm (License): Likewise.
15671         * modules/unistd (License): Likewise.
15672         * modules/vsnprintf (License): Likewise.
15673         * modules/wctype (License): Likewise.
15674
15675 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15676
15677         * modules/argz (License): LGPLv2+.
15678
15679 2007-07-15  Karl Berry  <karl@gnu.org>
15680
15681         * doc/gnulib.texi: revise node structure per new fdl.texi.
15682
15683 2007-07-14  Bruno Haible  <bruno@clisp.org>
15684
15685         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
15686         the output file.
15687         * lib/uniname/uninames.h: Regenerated.
15688
15689 2007-07-14  Karl Berry  <karl@gnu.org>
15690
15691         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
15692         omitting sectioning and index commands.
15693
15694 2007-07-13  Bruno Haible  <bruno@clisp.org>
15695
15696         New gnulib-tool option --more-symlinks.
15697         * gnulib-tool (func_usage): Document --more-symlinks.
15698         (do_copyrights): New variable.
15699         Recognize option --more-symlinks.
15700         (func_import): Don't add a copyright notice transform to
15701         sed_transform_lib_file if do_copyrights is empty.
15702
15703 2007-07-13  Bruno Haible  <bruno@clisp.org>
15704
15705         * lib/vasnprintf.c (decimal_point_char): Define also if
15706         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
15707         && !NEED_PRINTF_DIRECTIVE_A.
15708         Reported by Clemens Koller <clemens.koller@anagramm.de> via
15709         Gary V. Vaughan <gary@gnu.org>.
15710
15711 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
15712
15713         * lib/inttypes_.h: Undo previous change, since it was fixed
15714         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
15715
15716 2007-07-13  Bruno Haible  <bruno@clisp.org>
15717
15718         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
15719         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
15720
15721 2007-07-13  Jim Meyering  <jim@meyering.net>
15722
15723         df: Don't fail for Tru64's "file-on-file mount".
15724         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
15725         so we fall through and use statfs instead.  Details here:
15726         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
15727         Reported by Albert Chin.
15728
15729 2007-07-13  Bruno Haible  <bruno@clisp.org>
15730
15731         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
15732         * modules/configmake (License): Likewise.
15733         * modules/gettext (License): Likewise.
15734         * modules/gettext-h (License): Likewise.
15735         * modules/include_next (License): Likewise.
15736         * modules/link-warning (License): Likewise.
15737         * modules/localcharset (License): Likewise.
15738         * modules/localename (License): Likewise.
15739         * modules/lock (License): Likewise.
15740         * modules/relocatable-lib-lgpl (License): Likewise.
15741         * modules/size_max (License): Likewise.
15742         * modules/vasnprintf (License): Likewise.
15743         * modules/wchar (License): Likewise.
15744         * modules/xsize (License): Likewise.
15745
15746 2007-07-13  Bruno Haible  <bruno@clisp.org>
15747
15748         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
15749         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
15750
15751 2007-07-12  Bruno Haible  <bruno@clisp.org>
15752
15753         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
15754         in the modules files.
15755
15756 2007-07-11  Karl Berry  <karl@gnu.org>
15757
15758         * MODULES.html.sh (func_module): use
15759          sed -e '\|^'"${includefile}"'$|d'
15760          instead of /.../d, to avoid errors on $includefile's containing /.
15761
15762 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
15763
15764         * gnulib-tool (func_import): Avoid duplication of --avoid
15765         statements
15766         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
15767         names to `_' in variable names.
15768
15769 2007-07-10  Eric Blake  <ebb9@byu.net>
15770
15771         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
15772         * NEWS: Document this change.
15773
15774 2007-07-08  Bruno Haible  <bruno@clisp.org>
15775
15776         Update to Unicode 5.0.
15777         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
15778         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
15779         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
15780         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
15781         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
15782         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
15783         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
15784         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
15785         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
15786         U+10A3F, U+1D242..U+1D244.
15787         (nonspacing_table_ind): Update.
15788         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
15789         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
15790
15791 2007-07-08  Bruno Haible  <bruno@clisp.org>
15792
15793         Update to Unicode 5.0.
15794         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
15795         code transform. Extend the name index field of unicode_name_to_code and
15796         unicode_code_to_name from 16 to 24 bits.
15797         * lib/uniname/uniname.c (unicode_character_name,
15798         unicode_name_character): Add the range 0x12xxx to the code transform.
15799         * lib/uniname/uninames.h: Regenerated.
15800         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
15801
15802 2007-07-07  Bruno Haible  <bruno@clisp.org>
15803
15804         * modules/wcwidth-tests: New file.
15805         * tests/test-wcwidth.c: New file.
15806
15807         Work around MacOS X wcwidth() bug.
15808         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
15809         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
15810         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
15811         original wcwidth in non-UTF-8 locales.
15812         * modules/wcwidth (Depends-on): Add localcharset, streq,
15813         uniwidth/width.
15814         * doc/functions/wcwidth.texi: Update.
15815
15816 2007-07-07  Bruno Haible  <bruno@clisp.org>
15817
15818         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
15819         (wcwidth): New declaration.
15820         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
15821         macros.
15822         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
15823         here. Prepare for creating <wchar.h> unconditionally.
15824         * modules/wchar (Depends-on): Add link-warning.
15825         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
15826         REPLACE_WCWIDTH, and GL_LINK_WARNING.
15827         * lib/wcwidth.h: Remove file.
15828         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
15829         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
15830         * modules/wcwidth (Files): Remove lib/wcwidth.h.
15831         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
15832         (Include): Replace wcwidth.h with <wchar.h>.
15833         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
15834         * lib/mbchar.h: Don't include wcwidth.h.
15835         * lib/mbswidth.c: Likewise.
15836         * NEWS: Mention the change.
15837
15838 2007-07-07  Bruno Haible  <bruno@clisp.org>
15839
15840         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
15841         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
15842         definition with an external declaration.
15843         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
15844         defined as a function. Remove AC_C_INLINE requirement.
15845         * modules/wcwidth (Files): Add lib/wcwidth.c.
15846         (Makefile.am): Remove redundant statement.
15847
15848 2007-07-07  Bruno Haible  <bruno@clisp.org>
15849
15850         * MODULES.html.sh (Unicode string functions): Add the new modules.
15851
15852         * tests/uniwidth/test-u32-strwidth.c: New file.
15853         * modules/uniwidth/u32-strwidth-tests: New file.
15854
15855         * lib/uniwidth/u32-strwidth.c: New file.
15856         * modules/uniwidth/u32-strwidth: New file.
15857
15858         * tests/uniwidth/test-u16-strwidth.c: New file.
15859         * modules/uniwidth/u16-strwidth-tests: New file.
15860
15861         * lib/uniwidth/u16-strwidth.c: New file.
15862         * modules/uniwidth/u16-strwidth: New file.
15863
15864         * tests/uniwidth/test-u8-strwidth.c: New file.
15865         * modules/uniwidth/u8-strwidth-tests: New file.
15866
15867         * lib/uniwidth/u8-strwidth.c: New file.
15868         * modules/uniwidth/u8-strwidth: New file.
15869
15870         * tests/uniwidth/test-u32-width.c: New file.
15871         * modules/uniwidth/u32-width-tests: New file.
15872
15873         * lib/uniwidth/u32-width.c: New file.
15874         * modules/uniwidth/u32-width: New file.
15875
15876         * tests/uniwidth/test-u16-width.c: New file.
15877         * modules/uniwidth/u16-width-tests: New file.
15878
15879         * lib/uniwidth/u16-width.c: New file.
15880         * modules/uniwidth/u16-width: New file.
15881
15882         * tests/uniwidth/test-u8-width.c: New file.
15883         * modules/uniwidth/u8-width-tests: New file.
15884
15885         * lib/uniwidth/u8-width.c: New file.
15886         * modules/uniwidth/u8-width: New file.
15887
15888         * tests/uniwidth/test-uc_width.c: New file.
15889         * modules/uniwidth/width-tests: New file.
15890
15891         * lib/uniwidth/width.c: New file, from GNU libiconv.
15892         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
15893         * modules/uniwidth/width: New file.
15894
15895         * lib/uniwidth.h: New file, from GNU libiconv.
15896         * modules/uniwidth/base: New file.
15897
15898 2007-07-07  Bruno Haible  <bruno@clisp.org>
15899
15900         * lib/uniname.h: New file, from GNU gettext.
15901         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
15902         * lib/uniname/uninames.h: New file, from GNU gettext.
15903         * lib/uniname/uniname.c: New file, from GNU gettext.
15904         * tests/uniname/test-uninames.sh: New file.
15905         * tests/uniname/test-uninames.c: New file, from GNU gettext.
15906         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
15907         * modules/uniname/base: New file.
15908         * modules/uniname/uniname: New file.
15909         * modules/uniname/uniname-tests: New file.
15910         * MODULES.html.sh (Unicode string functions): Add the new modules.
15911
15912 2007-07-06  Bruno Haible  <bruno@clisp.org>
15913
15914         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
15915
15916 2007-07-06  Bruno Haible  <bruno@clisp.org>
15917
15918         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
15919         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
15920         includes <cygwin/sys_time.h> which includes <sys/select.h> which
15921         include <sys/time.h>.
15922         Reported by Eric Blake.
15923
15924 2007-07-06  Eric Blake  <ebb9@byu.net>
15925
15926         Fix testing canonicalize on cygwin.
15927         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
15928         Revert patch from 2007-06-19.
15929         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
15930         canonicalize module is also in use.
15931         * tests/test-canonicalize.c: New file.
15932         * tests/test-canonicalize.sh: Likewise.
15933         * modules/canonicalize-tests: Likewise.
15934
15935 2007-07-06  Jim Meyering  <jim@meyering.net>
15936
15937         * lib/getugroups.c (getugroups): Detect getgrent failure.
15938         Adjust comment to reflect reality: this function may return -1.
15939
15940 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
15941
15942         * build-aux/bootstrap (TP_URL,get_translations): Update to use
15943         the new TP address.
15944         (usage): Fix typo
15945         (gnulib_mk): New variable.
15946
15947 2007-07-05  Jim Meyering  <jim@meyering.net>
15948
15949         Don't let endgrent clobber errno, no matter how improbable.
15950         * lib/getugroups.c (getugroups): Save and restore errno around
15951         endgrent call.
15952
15953         Close the group DB even when failing with 2^31 or more members.
15954         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
15955
15956 2007-07-04  Jim Meyering  <jim@meyering.net>
15957
15958         * lib/getugroups.h: New file.
15959         * lib/getugroups.c: Include "getugroups.h".
15960         Remove uses of "register" keyword.
15961         Move local variable, "cp", down into scope where used.
15962         Give "username" parameter the "const" attribute.
15963         * modules/getugroups (Files): Add lib/getugroups.h
15964
15965 2007-07-04  Karl Berry  <karl@gnu.org>
15966
15967         * MODULES.html.sh (func_all_modules): Complete rename of
15968         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
15969
15970 2007-07-02  Bruno Haible  <bruno@clisp.org>
15971
15972         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
15973         mode, when inttypes.h comes from gnulib.
15974         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
15975
15976 2007-07-02  Simon Josefsson  <simon@josefsson.org>
15977
15978         * NEWS: Mention lgpl module name change.
15979
15980         * modules/lgpl-2.1: Renamed from lgpl.
15981
15982         * NEWS: Mention gpl module name change.
15983
15984         * modules/gpl-3.0: New file, based on gpl-2.0.
15985
15986         * modules/gpl-2.0: Renamed from gpl.
15987
15988         * modules/gpl: Fix filename, doc/gpl.texi is now found at
15989         doc/gpl-2.0.texi.
15990
15991 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
15992
15993         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
15994         #define __STDC_LIMIT_MACROS temporarily while including
15995         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
15996         Problem reported by Joel E. Denny in
15997         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
15998
15999 2007-07-01  Bruno Haible  <bruno@clisp.org>
16000
16001         * lib/unistdio.h: New file.
16002         * lib/unistdio/u-asnprintf.h: New file.
16003         * lib/unistdio/u-asprintf.h: New file.
16004         * lib/unistdio/u-printf-args.c: New file.
16005         * lib/unistdio/u-printf-args.h: New file.
16006         * lib/unistdio/u-printf-parse.h: New file.
16007         * lib/unistdio/u-snprintf.h: New file.
16008         * lib/unistdio/u-sprintf.h: New file.
16009         * lib/unistdio/u-vasprintf.h: New file.
16010         * lib/unistdio/u-vsnprintf.h: New file.
16011         * lib/unistdio/u-vsprintf.h: New file.
16012         * lib/unistdio/ulc-asnprintf.c: New file.
16013         * lib/unistdio/ulc-asprintf.c: New file.
16014         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
16015         * lib/unistdio/ulc-printf-parse.c: New file.
16016         * lib/unistdio/ulc-snprintf.c: New file.
16017         * lib/unistdio/ulc-sprintf.c: New file.
16018         * lib/unistdio/ulc-vasnprintf.c: New file.
16019         * lib/unistdio/ulc-vasprintf.c: New file.
16020         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
16021         * lib/unistdio/ulc-vsnprintf.c: New file.
16022         * lib/unistdio/ulc-vsprintf.c: New file.
16023         * lib/unistdio/u8-asnprintf.c: New file.
16024         * lib/unistdio/u8-asprintf.c: New file.
16025         * lib/unistdio/u8-printf-parse.c: New file.
16026         * lib/unistdio/u8-snprintf.c: New file.
16027         * lib/unistdio/u8-sprintf.c: New file.
16028         * lib/unistdio/u8-vasnprintf.c: New file.
16029         * lib/unistdio/u8-vasprintf.c: New file.
16030         * lib/unistdio/u8-vsnprintf.c: New file.
16031         * lib/unistdio/u8-vsprintf.c: New file.
16032         * lib/unistdio/u8-u8-asnprintf.c: New file.
16033         * lib/unistdio/u8-u8-asprintf.c: New file.
16034         * lib/unistdio/u8-u8-snprintf.c: New file.
16035         * lib/unistdio/u8-u8-sprintf.c: New file.
16036         * lib/unistdio/u8-u8-vasnprintf.c: New file.
16037         * lib/unistdio/u8-u8-vasprintf.c: New file.
16038         * lib/unistdio/u8-u8-vsnprintf.c: New file.
16039         * lib/unistdio/u8-u8-vsprintf.c: New file.
16040         * lib/unistdio/u16-asnprintf.c: New file.
16041         * lib/unistdio/u16-asprintf.c: New file.
16042         * lib/unistdio/u16-printf-parse.c: New file.
16043         * lib/unistdio/u16-snprintf.c: New file.
16044         * lib/unistdio/u16-sprintf.c: New file.
16045         * lib/unistdio/u16-vasnprintf.c: New file.
16046         * lib/unistdio/u16-vasprintf.c: New file.
16047         * lib/unistdio/u16-vsnprintf.c: New file.
16048         * lib/unistdio/u16-vsprintf.c: New file.
16049         * lib/unistdio/u16-u16-asnprintf.c: New file.
16050         * lib/unistdio/u16-u16-asprintf.c: New file.
16051         * lib/unistdio/u16-u16-snprintf.c: New file.
16052         * lib/unistdio/u16-u16-sprintf.c: New file.
16053         * lib/unistdio/u16-u16-vasnprintf.c: New file.
16054         * lib/unistdio/u16-u16-vasprintf.c: New file.
16055         * lib/unistdio/u16-u16-vsnprintf.c: New file.
16056         * lib/unistdio/u16-u16-vsprintf.c: New file.
16057         * lib/unistdio/u32-asnprintf.c: New file.
16058         * lib/unistdio/u32-asprintf.c: New file.
16059         * lib/unistdio/u32-printf-parse.c: New file.
16060         * lib/unistdio/u32-snprintf.c: New file.
16061         * lib/unistdio/u32-sprintf.c: New file.
16062         * lib/unistdio/u32-vasnprintf.c: New file.
16063         * lib/unistdio/u32-vasprintf.c: New file.
16064         * lib/unistdio/u32-vsnprintf.c: New file.
16065         * lib/unistdio/u32-vsprintf.c: New file.
16066         * lib/unistdio/u32-u32-asnprintf.c: New file.
16067         * lib/unistdio/u32-u32-asprintf.c: New file.
16068         * lib/unistdio/u32-u32-snprintf.c: New file.
16069         * lib/unistdio/u32-u32-sprintf.c: New file.
16070         * lib/unistdio/u32-u32-vasnprintf.c: New file.
16071         * lib/unistdio/u32-u32-vasprintf.c: New file.
16072         * lib/unistdio/u32-u32-vsnprintf.c: New file.
16073         * lib/unistdio/u32-u32-vsprintf.c: New file.
16074         * tests/unistdio/test-ulc-asnprintf1.c: New file.
16075         * tests/unistdio/test-ulc-asnprintf1.h: New file.
16076         * tests/unistdio/test-ulc-printf1.h: New file.
16077         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
16078         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
16079         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
16080         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
16081         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
16082         * tests/unistdio/test-ulc-vasprintf1.c: New file.
16083         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
16084         * tests/unistdio/test-ulc-vsprintf1.c: New file.
16085         * tests/unistdio/test-u8-asnprintf1.c: New file.
16086         * tests/unistdio/test-u8-asnprintf1.h: New file.
16087         * tests/unistdio/test-u8-printf1.h: New file.
16088         * tests/unistdio/test-u8-vasnprintf1.c: New file.
16089         * tests/unistdio/test-u8-vasnprintf2.c: New file.
16090         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
16091         * tests/unistdio/test-u8-vasnprintf3.c: New file.
16092         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
16093         * tests/unistdio/test-u8-vasprintf1.c: New file.
16094         * tests/unistdio/test-u8-vsnprintf1.c: New file.
16095         * tests/unistdio/test-u8-vsprintf1.c: New file.
16096         * tests/unistdio/test-u16-asnprintf1.c: New file.
16097         * tests/unistdio/test-u16-asnprintf1.h: New file.
16098         * tests/unistdio/test-u16-printf1.h: New file.
16099         * tests/unistdio/test-u16-vasnprintf1.c: New file.
16100         * tests/unistdio/test-u16-vasnprintf2.c: New file.
16101         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
16102         * tests/unistdio/test-u16-vasnprintf3.c: New file.
16103         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
16104         * tests/unistdio/test-u16-vasprintf1.c: New file.
16105         * tests/unistdio/test-u16-vsnprintf1.c: New file.
16106         * tests/unistdio/test-u16-vsprintf1.c: New file.
16107         * tests/unistdio/test-u32-asnprintf1.c: New file.
16108         * tests/unistdio/test-u32-asnprintf1.h: New file.
16109         * tests/unistdio/test-u32-printf1.h: New file.
16110         * tests/unistdio/test-u32-vasnprintf1.c: New file.
16111         * tests/unistdio/test-u32-vasnprintf2.c: New file.
16112         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
16113         * tests/unistdio/test-u32-vasnprintf3.c: New file.
16114         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
16115         * tests/unistdio/test-u32-vasprintf1.c: New file.
16116         * tests/unistdio/test-u32-vsnprintf1.c: New file.
16117         * tests/unistdio/test-u32-vsprintf1.c: New file.
16118         * modules/unistdio/base: New file.
16119         * modules/unistdio/u-printf-args: New file.
16120         * modules/unistdio/ulc-asnprintf: New file.
16121         * modules/unistdio/ulc-asprintf: New file.
16122         * modules/unistdio/ulc-fprintf: New file.
16123         * modules/unistdio/ulc-printf-parse: New file.
16124         * modules/unistdio/ulc-snprintf: New file.
16125         * modules/unistdio/ulc-sprintf: New file.
16126         * modules/unistdio/ulc-vasnprintf: New file.
16127         * modules/unistdio/ulc-vasprintf: New file.
16128         * modules/unistdio/ulc-vfprintf: New file.
16129         * modules/unistdio/ulc-vsnprintf: New file.
16130         * modules/unistdio/ulc-vsprintf: New file.
16131         * modules/unistdio/u8-asnprintf: New file.
16132         * modules/unistdio/u8-asprintf: New file.
16133         * modules/unistdio/u8-printf-parse: New file.
16134         * modules/unistdio/u8-snprintf: New file.
16135         * modules/unistdio/u8-sprintf: New file.
16136         * modules/unistdio/u8-vasnprintf: New file.
16137         * modules/unistdio/u8-vasprintf: New file.
16138         * modules/unistdio/u8-vsnprintf: New file.
16139         * modules/unistdio/u8-vsprintf: New file.
16140         * modules/unistdio/u8-u8-asnprintf: New file.
16141         * modules/unistdio/u8-u8-asprintf: New file.
16142         * modules/unistdio/u8-u8-snprintf: New file.
16143         * modules/unistdio/u8-u8-sprintf: New file.
16144         * modules/unistdio/u8-u8-vasnprintf: New file.
16145         * modules/unistdio/u8-u8-vasprintf: New file.
16146         * modules/unistdio/u8-u8-vsnprintf: New file.
16147         * modules/unistdio/u8-u8-vsprintf: New file.
16148         * modules/unistdio/u16-asnprintf: New file.
16149         * modules/unistdio/u16-asprintf: New file.
16150         * modules/unistdio/u16-printf-parse: New file.
16151         * modules/unistdio/u16-snprintf: New file.
16152         * modules/unistdio/u16-sprintf: New file.
16153         * modules/unistdio/u16-vasnprintf: New file.
16154         * modules/unistdio/u16-vasprintf: New file.
16155         * modules/unistdio/u16-vsnprintf: New file.
16156         * modules/unistdio/u16-vsprintf: New file.
16157         * modules/unistdio/u16-u16-asnprintf: New file.
16158         * modules/unistdio/u16-u16-asprintf: New file.
16159         * modules/unistdio/u16-u16-snprintf: New file.
16160         * modules/unistdio/u16-u16-sprintf: New file.
16161         * modules/unistdio/u16-u16-vasnprintf: New file.
16162         * modules/unistdio/u16-u16-vasprintf: New file.
16163         * modules/unistdio/u16-u16-vsnprintf: New file.
16164         * modules/unistdio/u16-u16-vsprintf: New file.
16165         * modules/unistdio/u32-asnprintf: New file.
16166         * modules/unistdio/u32-asprintf: New file.
16167         * modules/unistdio/u32-printf-parse: New file.
16168         * modules/unistdio/u32-snprintf: New file.
16169         * modules/unistdio/u32-sprintf: New file.
16170         * modules/unistdio/u32-vasnprintf: New file.
16171         * modules/unistdio/u32-vasprintf: New file.
16172         * modules/unistdio/u32-vsnprintf: New file.
16173         * modules/unistdio/u32-vsprintf: New file.
16174         * modules/unistdio/u32-u32-asnprintf: New file.
16175         * modules/unistdio/u32-u32-asprintf: New file.
16176         * modules/unistdio/u32-u32-snprintf: New file.
16177         * modules/unistdio/u32-u32-sprintf: New file.
16178         * modules/unistdio/u32-u32-vasnprintf: New file.
16179         * modules/unistdio/u32-u32-vasprintf: New file.
16180         * modules/unistdio/u32-u32-vsnprintf: New file.
16181         * modules/unistdio/u32-u32-vsprintf: New file.
16182         * modules/unistdio/ulc-asnprintf-tests: New file.
16183         * modules/unistdio/ulc-vasnprintf-tests: New file.
16184         * modules/unistdio/ulc-vasprintf-tests: New file.
16185         * modules/unistdio/ulc-vsnprintf-tests: New file.
16186         * modules/unistdio/ulc-vsprintf-tests: New file.
16187         * modules/unistdio/u8-asnprintf-tests: New file.
16188         * modules/unistdio/u8-vasnprintf-tests: New file.
16189         * modules/unistdio/u8-vasprintf-tests: New file.
16190         * modules/unistdio/u8-vsnprintf-tests: New file.
16191         * modules/unistdio/u8-vsprintf-tests: New file.
16192         * modules/unistdio/u16-asnprintf-tests: New file.
16193         * modules/unistdio/u16-vasnprintf-tests: New file.
16194         * modules/unistdio/u16-vasprintf-tests: New file.
16195         * modules/unistdio/u16-vsnprintf-tests: New file.
16196         * modules/unistdio/u16-vsprintf-tests: New file.
16197         * modules/unistdio/u32-asnprintf-tests: New file.
16198         * modules/unistdio/u32-vasnprintf-tests: New file.
16199         * modules/unistdio/u32-vasprintf-tests: New file.
16200         * modules/unistdio/u32-vsnprintf-tests: New file.
16201         * modules/unistdio/u32-vsprintf-tests: New file.
16202         * MODULES.html.sh (Unicode string functions): Add the new modules.
16203
16204 2007-07-01  Bruno Haible  <bruno@clisp.org>
16205
16206         * lib/sprintf.c (sprintf): Limit the available length estimation,
16207         to avoid address wraparound.
16208         * lib/vsprintf.c (vsprintf): Likewise.
16209         * modules/sprintf-posix (Dependencies): Add stdint.
16210         * modules/vsprintf-posix (Dependencies): Likewise.
16211
16212 2007-07-01  Bruno Haible  <bruno@clisp.org>
16213
16214         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
16215         Windows PATH as well. Conservative double-quoting. Comments.
16216
16217 2007-07-01  Bruno Haible  <bruno@clisp.org>
16218             Eric Blake  <ebb9@byu.net>
16219             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16220
16221         * gnulib-tool (self_abspathname): Fix algorithm to cope with
16222         empty components in $PATH, denoting '.'.
16223
16224 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16225
16226         * gnulib-tool: Fix indentation.
16227         (func_create_megatestdir): Likewise.
16228         Report by Bruno Haible.
16229
16230 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16231
16232         Sync from Automake.
16233         * build-aux/gnupload: Fix shell portability issues with for loops.
16234         Report by Karl Berry.
16235
16236 2007-06-29  Simon Josefsson  <simon@josefsson.org>
16237
16238         * build-aux/maint.mk (POURL): Use translationproject.org.
16239
16240 2007-06-27  Simon Josefsson  <simon@josefsson.org>
16241             Bruno Haible  <bruno@clisp.org>
16242
16243         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
16244         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
16245         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
16246         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
16247         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
16248
16249 2007-06-27  Bruno Haible  <bruno@clisp.org>
16250
16251         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
16252         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
16253
16254 2007-06-26  Karl Berry  <karl@gnu.org>
16255
16256         * MODULES.html.sh: remove xreadlink-with-size.
16257
16258 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
16259
16260         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
16261         method that I hope also handles the double-include problem noted
16262         by Bruno Haible in
16263         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
16264
16265 2007-06-23  Bruno Haible  <bruno@clisp.org>
16266
16267         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
16268         Don't let the 'mostlyclean' target fail if the last subdirectory could
16269         not be removed.
16270         Reported by Karl Berry.
16271
16272 2007-06-23  Bruno Haible  <bruno@clisp.org>
16273
16274         * gnulib-tool (echo): Add a speedier workaround for ksh.
16275         * tests/test-echo.sh: Likewise.
16276
16277 2007-06-23  Bruno Haible  <bruno@clisp.org>
16278
16279         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
16280         * tests/test-echo.sh: Likewise.
16281
16282 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16283
16284         * gnulib-tool (IFS): Initialize early, so we don't set it to
16285         empty later.
16286         (self_abspathname): Rewrite algorithm to set it, reindent.
16287         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
16288         (func_create_megatestdir): Merge some sed scripts.
16289
16290 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
16291
16292         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
16293         exposed by Sun Studio 11 cc on Solaris 8.
16294
16295 2007-06-22  Bruno Haible  <bruno@clisp.org>
16296
16297         * gnulib-tool (echo): Ensure the echo primitive does not interpret
16298         backslashes.
16299         * tests/test-echo.sh: New file.
16300
16301 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16302
16303         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
16304         simplify `sed_replace_build_aux' scripts, they are portable but
16305         echoing them with `echo' is not.
16306         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
16307
16308 2007-06-21  Karl Berry  <karl@gnu.org>
16309
16310         * config/srclist.txt: guess we can't handle the licenses via
16311         srclist at the moment.
16312
16313 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
16314
16315         * MODULES.html.sh: Add include_next.
16316         * modules/include_next: New file.
16317
16318 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
16319
16320         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
16321         INCLUDE_NEXT.
16322         (gl_CHECK_NEXT_HEADERS): New macro.
16323         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
16324         the obsolescent gl_ABSOLUTE_HEADER.
16325         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
16326         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
16327         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
16328         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
16329         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
16330         * m4/math_h.m4 (gl_MATH_H): Likewise.
16331         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
16332         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
16333         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
16334         * m4/stdint.m4 (gl_STDINT_H): Likewise.
16335         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
16336         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
16337         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
16338         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
16339         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
16340         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
16341         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
16342         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
16343         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
16344         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
16345         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
16346         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
16347         * m4/inttypes.m4 (gl_INTTYPES_H): Define
16348         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
16349         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
16350         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
16351         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
16352         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
16353         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
16354         * lib/float_.h: Likewise.
16355         * lib/inttypes_.h: Likewise.
16356         * lib/math_.h: Likewise.
16357         * lib/search_.h: Likewise.
16358         * lib/signal_.h: Likewise.
16359         * lib/stdint_.h: Likewise.
16360         * lib/stdio_.h: Likewise.
16361         * lib/stdlib_.h: Likewise.
16362         * lib/string_.h: Likewise.
16363         * lib/sys_stat_.h: Likewise.
16364         * lib/sys_time_.h: Likewise.
16365         * lib/time_.h: Likewise.
16366         * lib/unistd_.h: Likewise.
16367         * lib/wchar_.h: Likewise.
16368         * lib/wctype_.h: Likewise.
16369         * lib/dirent_.h: Likewise.
16370         * lib/iconv_.h: Likewise.
16371         * lib/locale_.h: Likewise.
16372         * lib/netinet_in_.h: Likewise.
16373         * lib/sys_select_.h: Likewise.
16374         * lib/sys_socket_.h: Likewise.
16375         * lib/sysexits_.h: Likewise.
16376         * modules/fcntl (Depends-on): Depend on include_next, not
16377         absolute_header.
16378         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
16379         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
16380         * modules/fchdir: Likewise.
16381         * modules/float: Likewise.
16382         * modules/iconv_open: Likewise.
16383         * modules/inttypes: Likewise.
16384         * modules/locale: Likewise.
16385         * modules/math: Likewise.
16386         * modules/netinet_in: Likewise.
16387         * modules/search: Likewise.
16388         * modules/signal: Likewise.
16389         * modules/stdint: Likewise.
16390         * modules/stdio: Likewise.
16391         * modules/stdlib: Likewise.
16392         * modules/string: Likewise.
16393         * modules/sys_select: Likewise.
16394         * modules/sys_socket: Likewise.
16395         * modules/sys_stat: Likewise.
16396         * modules/sys_time: Likewise.
16397         * modules/sysexits: Likewise.
16398         * modules/time: Likewise.
16399         * modules/unistd: Likewise.
16400         * modules/wchar: Likewise.
16401         * modules/wctype: Likewise.
16402         * modules/sys_stat: Change maintainer to "all".
16403         * modules/unistd: Likewise.
16404
16405 2007-06-20  Karl Berry  <karl@gnu.org>
16406
16407         * config/srclist.txt: track www changes in license files.
16408
16409 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
16410
16411         * build-aux/bootstrap: Remove stray dot.
16412         Make sure build_aux settings are honored when linking
16413         gnulib_extra_files.
16414
16415 2007-06-19  Eric Blake  <ebb9@byu.net>
16416
16417         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
16418         Allow compilation on cygwin.
16419
16420 2007-06-19  Jim Meyering  <jim@meyering.net>
16421
16422         xreadlink-with-size: Remove module.  No longer used.
16423         Ex-callers now use xreadlink or mreadlink-with-size.
16424         * modules/xreadlink-with-size: Remove module.
16425         * lib/xreadlink-with-size.c: Remove file.
16426         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
16427         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
16428         just before the function definition *is* accurate.
16429
16430         Eliminate one way canonicalize_filename_mode could exit.
16431         * lib/canonicalize.c (canonicalize_filename_mode):
16432         Use mreadlink_with_size, not xreadlink_with_size.
16433
16434 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
16435
16436         Detect porting problems to FreeBSD/arm, which has time_t wider than
16437         long int.  Original problem reported for GNU diff by Xin Li in
16438         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
16439         * modules/getdate (Depends-on): Add intprops, verify.
16440         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
16441         is an integer type no wider than long int.
16442
16443 2007-06-18  Jim Meyering  <jim@meyering.net>
16444
16445         New module: mreadlink-with-size.
16446         * MODULES.html.sh: Add mreadlink-with-size.
16447         * modules/mreadlink-with-size: New module
16448         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
16449         not xreadlink-with-size.
16450         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
16451
16452 2007-06-16  Bruno Haible  <bruno@clisp.org>
16453
16454         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
16455         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
16456         Reported by Gary V. Vaughan <gary@gnu.org>.
16457
16458 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
16459
16460         Revamp lchown so that it lives in unistd.h where it belongs.
16461         * lib/lchown.h: Remove.
16462         * lib/dirchownmod.c: Don't include lib/lchown.h.
16463         * lib/fchownat.c: Likewise.
16464         * lib/openat.c: Likewise.
16465         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
16466         does not follow symlinks.
16467         (EOPNOTSUPP): Define if not defined.
16468         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
16469         is defined to 0.
16470         (lchown): New decl.
16471         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
16472         Do not check for lchown decl.
16473         Set REPLACE_LCHOWN.
16474         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
16475         REPLACE_LCHOWN.
16476         * modules/chown: Make it clear it follows symlinks.
16477         * modules/lchown: Make it clear it doesn't follow symlinks.
16478         (Files): Remove lib/lchown.h
16479         (Depends-on): Add unistd.
16480         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
16481         (Include): Include <unistd.h>, not "lchown.h".
16482         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
16483         REPLACE_LCHOWN.
16484
16485 2007-06-15  Jim Meyering  <jim@meyering.net>
16486
16487         Change license (GPL to LGPL) of fsusage and dependents.
16488         * modules/fsusage (License): Change to LGPL.
16489         * modules/full-read (License): Likewise.
16490         * modules/full-write (License): Likewise.
16491         * modules/safe-read (License): Likewise.
16492         * modules/safe-write (License): Likewise.
16493
16494 2007-06-14  Ben Pfaff  <blp@gnu.org>
16495
16496         Missing part of allocsa -> malloca transition.
16497         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
16498         gl_MALLOCA.
16499
16500 2007-06-12  Bruno Haible  <bruno@clisp.org>
16501
16502         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
16503         to ia64, x86_64, i386.
16504         Reported by Eric Blake.
16505
16506 2007-06-12  Bruno Haible  <bruno@clisp.org>
16507
16508         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
16509         cross-compiling to x86_64.
16510
16511 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
16512
16513         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
16514         glitch reported by Ralf Wildenhues in
16515         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
16516
16517         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
16518         Vin Shelton.
16519
16520 2007-06-11  Bruno Haible  <bruno@clisp.org>
16521
16522         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
16523         replacement string.
16524         Reported by Eric Blake.
16525
16526 2007-06-10  Bruno Haible  <bruno@clisp.org>
16527
16528         Prepare vasnprintf code for use with Unicode strings.
16529         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
16530         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
16531         TYPE_U32_STRING.
16532         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
16533         a_u32_string variants.
16534         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
16535         * lib/printf-args.c: Don't include config.h and the specification
16536         header if PRINTF_FETCHARGS is already defined.
16537         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
16538         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
16539         TYPE_U16_STRING, TYPE_U32_STRING.
16540         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
16541         u16_directive, u16_directives, u32_directive, u32_directives): New
16542         types.
16543         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
16544         New declarations.
16545         * lib/printf-parse.c: Don't include config.h and the specification
16546         header if PRINTF_PARSE is already defined. Eliminate the set of
16547         parameters for WIDE_CHAR_VERSION; the user of this file must provide
16548         them now. Include c-ctype.h.
16549         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
16550         directive and CHAR_T_ONLY_ASCII.
16551         * lib/vasnprintf.c: Don't include config.h and the specification header
16552         if VASNPRINTF is already defined.
16553         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
16554         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
16555         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
16556         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
16557         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
16558         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
16559         code accordingly.
16560         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
16561         pad_ourselves also in this case, with the 'c' and 's' directives, and
16562         with a different notion of "width".
16563         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
16564
16565 2007-06-10  Bruno Haible  <bruno@clisp.org>
16566
16567         * modules/unistr/u32-mbsnlen: New file.
16568         * lib/unistr/u32-mbsnlen.c: New file.
16569
16570         * modules/unistr/u16-mbsnlen: New file.
16571         * lib/unistr/u16-mbsnlen.c: New file.
16572
16573         * modules/unistr/u8-mbsnlen: New file.
16574         * lib/unistr/u8-mbsnlen.c: New file.
16575
16576         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
16577         declarations.
16578
16579 2007-06-10  Bruno Haible  <bruno@clisp.org>
16580
16581         * lib/string_.h (mbsnlen): New declaration.
16582         * lib/mbsnlen.c: New file.
16583         * m4/mbsnlen.m4: New file.
16584         * modules/mbsnlen: New file.
16585         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
16586         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
16587         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
16588
16589 2007-06-10  Bruno Haible  <bruno@clisp.org>
16590
16591         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
16592
16593 2007-06-10  Bruno Haible  <bruno@clisp.org>
16594
16595         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
16596         * lib/mbuiter.h: Likewise.
16597
16598 2007-06-10  Bruno Haible  <bruno@clisp.org>
16599
16600         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
16601         declaration.
16602
16603 2007-06-10  Karl Berry  <karl@gnu.org>
16604
16605         * config/srclist.txt: remove gettext entries, Bruno prefers
16606         to update individually.
16607
16608 2007-06-10  Bruno Haible  <bruno@clisp.org>
16609
16610         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
16611         'maxlen'. Ensure only length + width bytes are allocated, not
16612         length + 1 + width.
16613
16614 2007-06-09  Bruno Haible  <bruno@clisp.org>
16615
16616         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
16617         (CHAR_T): Remove macro.
16618         (VASNPRINTF): Update.
16619
16620 2007-06-09  Bruno Haible  <bruno@clisp.org>
16621
16622         * MODULES.html.sh (Unicode string functions): Add the new modules.
16623
16624         * modules/uniconv/u32-conv-to-enc: New file.
16625         * lib/uniconv/u32-conv-to-enc.c: New file.
16626         * modules/uniconv/u32-conv-to-enc-tests: New file.
16627         * tests/uniconv/test-u32-conv-to-enc.c: New file.
16628
16629         * modules/uniconv/u16-conv-to-enc: New file.
16630         * lib/uniconv/u16-conv-to-enc.c: New file.
16631         * lib/uniconv/u-conv-to-enc.h: New file.
16632         * modules/uniconv/u16-conv-to-enc-tests: New file.
16633         * tests/uniconv/test-u16-conv-to-enc.c: New file.
16634
16635         * modules/uniconv/u8-conv-to-enc: New file.
16636         * lib/uniconv/u8-conv-to-enc.c: New file.
16637         * modules/uniconv/u8-conv-to-enc-tests: New file.
16638         * tests/uniconv/test-u8-conv-to-enc.c: New file.
16639
16640         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
16641         u32_conv_to_encoding): New declarations.
16642
16643 2007-06-09  Bruno Haible  <bruno@clisp.org>
16644
16645         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
16646
16647 2007-06-09  Bruno Haible  <bruno@clisp.org>
16648
16649         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
16650         * modules/malloca: Renamed from modules/allocsa, updated.
16651         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
16652         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
16653         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
16654         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
16655         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
16656         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
16657         * modules/xmalloca: Renamed from modules/xallocsa, updated.
16658         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
16659         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
16660         * modules/c-strcasestr (Depends-on): Update.
16661         * lib/c-strcasestr.c: Update.
16662         * modules/c-strstr (Depends-on): Update.
16663         * lib/c-strstr.c: Update.
16664         * modules/canonicalize-lgpl (Depends-on): Update.
16665         * lib/canonicalize-lgpl.c: Update.
16666         * modules/clean-temp (Depends-on): Update.
16667         * lib/clean-temp.c: Update.
16668         * modules/csharpcomp (Depends-on): Update.
16669         * lib/csharpcomp.c: Update.
16670         * modules/csharpexec (Depends-on): Update.
16671         * lib/csharpexec.c: Update.
16672         * modules/javacomp (Depends-on): Update.
16673         * lib/javacomp.c: Update.
16674         * modules/javaexec (Depends-on): Update.
16675         * lib/javaexec.c: Update.
16676         * modules/mbscasestr (Depends-on): Update.
16677         * lib/mbscasestr.c: Update.
16678         * modules/mbsstr (Depends-on): Update.
16679         * lib/mbsstr.c: Update.
16680         * modules/setenv (Depends-on): Update.
16681         * lib/setenv.c: Update.
16682         * modules/strcasestr (Depends-on): Update.
16683         * lib/strcasestr.c: Update.
16684         * modules/striconveha (Depends-on): Update.
16685         * lib/striconveha.c: Update.
16686         * modules/relocatable-prog-wrapper (Files): Update.
16687         * lib/relocwrapper.c: Update.
16688         * build-aux/install-reloc: Update.
16689         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
16690
16691 2007-06-08  Bruno Haible  <bruno@clisp.org>
16692
16693         Port to uClibc.
16694         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
16695         * lib/fpurge.c (fpurge): Likewise.
16696         * lib/freading.c (freading): Likewise.
16697         * lib/fseeko.c (rpl_fseeko): Likewise.
16698         * lib/fseterr.c (fseterr): Likewise.
16699         * lib/fwriting.c (fwriting): Likewise.
16700         * tests/test-fflush.c (main): Avoid a failure on uClibc.
16701
16702 2007-06-08  Bruno Haible  <bruno@clisp.org>
16703
16704         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
16705         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
16706         * modules/gettext (Files): Add m4/intlmacosx.m4.
16707
16708 2007-06-07  Bruno Haible  <bruno@clisp.org>
16709
16710         * modules/localename-tests: New file.
16711         * tests/test-localename.c: New file.
16712
16713         New module 'localename'.
16714         * lib/localename.h: New file.
16715         * lib/localename.c: New file, from GNU gettext.
16716         * m4/localename.m4: New file.
16717         * modules/localename: New file.
16718
16719 2007-06-07  Bruno Haible  <bruno@clisp.org>
16720
16721         Work around the lack of <wchar.h> on some builds of uClibc.
16722         * doc/headers/wchar.texi: Update.
16723         * lib/wchar_.h: Include <wchar.h> only if it exists.
16724         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
16725         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
16726         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
16727         doesn't exist.
16728         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
16729         * modules/mbfile (Depends-on): Add wchar.
16730         * modules/mbiter (Depends-on): Likewise.
16731         * modules/mbuiter (Depends-on): Likewise.
16732         Reported by Simon Josefsson.
16733
16734 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
16735
16736         Work around problem reported by Steven M. Schweda in
16737         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
16738         Tru64 5.1B with the Compaq compiler environment installed declares
16739         an 'isblank' function but does not define it in the C library.
16740         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
16741         * lib/regex_internal.h (isblank): Likewise.
16742         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
16743         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
16744
16745 2007-06-05  Bruno Haible  <bruno@clisp.org>
16746
16747         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
16748         ia64.
16749         * modules/printf-safe: New file.
16750         * modules/fprintf-posix (Depends-on): Add printf-safe.
16751         * modules/printf-posix (Depends-on): Likewise.
16752         * modules/snprintf-posix (Depends-on): Likewise.
16753         * modules/sprintf-posix (Depends-on): Likewise.
16754         * modules/vasnprintf-posix (Depends-on): Likewise.
16755         * modules/vasprintf-posix (Depends-on): Likewise.
16756         * modules/vfprintf-posix (Depends-on): Likewise.
16757         * modules/vprintf-posix (Depends-on): Likewise.
16758         * modules/vsnprintf-posix (Depends-on): Likewise.
16759         * modules/vsprintf-posix (Depends-on): Likewise.
16760         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
16761         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
16762         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
16763         "no" on i386, x86_64, ia64.
16764         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
16765         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
16766         on i386, x86_64, ia64.
16767         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
16768         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
16769         on i386, x86_64, ia64.
16770         * tests/test-vasnprintf-posix.c: Include float.h.
16771         (LDBL80_WORDS): New macro.
16772         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
16773         on i386, x86_64, ia64.
16774         * tests/test-vasprintf-posix.c: Include float.h.
16775         (LDBL80_WORDS): New macro.
16776         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
16777         on i386, x86_64, ia64.
16778         * tests/test-snprintf-posix.c: Include float.h.
16779         * tests/test-sprintf-posix.c: Likewise.
16780         * tests/test-vsnprintf-posix.c: Likewise.
16781         * tests/test-vsprintf-posix.c: Likewise.
16782
16783 2007-06-05  Bruno Haible  <bruno@clisp.org>
16784
16785         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
16786         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
16787         non-IEEE numbers on i386, x86_64, ia64.
16788         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
16789         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
16790         * tests/test-isnanl.h: Include float.h.
16791         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
16792
16793 2007-06-05  Bruno Haible  <bruno@clisp.org>
16794
16795         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
16796         also the %a / %A. Handle the %a / %A code before this extra handling.
16797
16798 2007-06-05  Bruno Haible  <bruno@clisp.org>
16799
16800         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
16801         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
16802
16803 2007-06-05  Bruno Haible  <bruno@clisp.org>
16804
16805         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
16806         typo in variable name.
16807
16808 2007-06-05  Eric Blake  <ebb9@byu.net>
16809
16810         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
16811         Reported by Simon Josefsson.
16812
16813 2007-06-04  Bruno Haible  <bruno@clisp.org>
16814
16815         Avoid test failures on some PowerPC platforms.
16816         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
16817         Define differently for PowerPC.
16818         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
16819         Reported by Gary V. Vaughan <gary@gnu.org>.
16820
16821 2007-06-02  Bruno Haible  <bruno@clisp.org>
16822
16823         Fix test-stdint failure on FreeBSD/ia64.
16824         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
16825         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
16826         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
16827         * doc/headers/stdint.texi: Update.
16828
16829 2007-06-01  Bruno Haible  <bruno@clisp.org>
16830
16831         * tests/test-binary-io.c (main): Pass a third argument to open().
16832         Reported by Gary V. Vaughan <gary@gnu.org>.
16833
16834 2007-06-01  Bruno Haible  <bruno@clisp.org>
16835
16836         * doc/functions/frexpl.texi: Update for mingw.
16837
16838 2007-06-01  Bruno Haible  <bruno@clisp.org>
16839
16840         * tests/test-lseek.c (main): Disable test of errno for invalid third
16841         argument.
16842         * doc/functions/lseek.texi: Update.
16843         Reported by Gary V. Vaughan <gary@gnu.org>.
16844
16845 2007-05-28  Bruno Haible  <bruno@clisp.org>
16846
16847         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
16848
16849 2007-05-31  Eric Blake  <ebb9@byu.net>
16850
16851         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
16852         cross compiling.
16853
16854 2007-05-30  Eric Blake  <ebb9@byu.net>
16855         and Bruno Haible  <bruno@clisp.org>
16856
16857         Work around mingw test failures exposed by m4-1.4.9b.
16858         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
16859         * tests/test-unistd.c: Disable uid_t and git_t tests for the
16860         moment.
16861
16862 2007-05-30  Bruno Haible  <bruno@clisp.org>
16863
16864         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
16865         assuming that they are closed. Needed on HP-UX 11.
16866
16867 2007-05-29  Bruno Haible  <bruno@clisp.org>
16868
16869         Fix a problem with #include_next.
16870         * lib/dirent_.h: Split the double-inclusion guard.
16871         * lib/fcntl_.h: Likewise.
16872         * lib/float_.h: Likewise.
16873         * lib/iconv_.h: Likewise.
16874         * lib/inttypes_.h: Likewise.
16875         * lib/locale_.h: Likewise.
16876         * lib/math_.h: Likewise.
16877         * lib/netinet_in_.h: Likewise.
16878         * lib/search_.h: Likewise.
16879         * lib/signal_.h: Likewise.
16880         * lib/stdint_.h: Likewise.
16881         * lib/stdio_.h: Likewise.
16882         * lib/stdlib_.h: Likewise.
16883         * lib/string_.h: Likewise.
16884         * lib/sys_select_.h: Likewise.
16885         * lib/sys_socket_.h: Likewise.
16886         * lib/sys_stat_.h: Likewise.
16887         * lib/sys_time_.h: Likewise.
16888         * lib/sysexits_.h: Likewise.
16889         * lib/time_.h: Likewise.
16890         * lib/unistd_.h: Likewise.
16891         * lib/wchar_.h: Likewise.
16892         * lib/wctype_.h: Likewise.
16893
16894 2007-05-29  Bruno Haible  <bruno@clisp.org>
16895
16896         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
16897         for the moment.
16898
16899 2007-05-29  Bruno Haible  <bruno@clisp.org>
16900
16901         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
16902         invocation.
16903         Reported by Eric Blake.
16904
16905 2007-05-29  Bruno Haible  <bruno@clisp.org>
16906
16907         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
16908         compiling case.
16909
16910 2007-05-29  Eric Blake  <ebb9@byu.net>
16911             Bruno Haible  <bruno@clisp.org>
16912
16913         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
16914         cross compiles.
16915
16916 2007-05-28  Eric Blake  <ebb9@byu.net>
16917
16918         * modules/closein-tests (test_closein_LDADD): Support test on
16919         cygwin with libtool.
16920
16921 2007-05-28  Bruno Haible  <bruno@clisp.org>
16922
16923         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
16924         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
16925         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
16926         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
16927         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
16928         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
16929         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
16930         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
16931         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
16932
16933 2007-05-28  Eric Blake  <ebb9@byu.net>
16934
16935         Unconditionally include <config.h> in unit tests.
16936         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
16937         * tests/test-allocsa.c, tests/test-arcfour.c,
16938         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
16939         tests/test-array_list.c, tests/test-array_oset.c,
16940         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
16941         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
16942         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
16943         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
16944         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
16945         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
16946         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
16947         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
16948         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
16949         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
16950         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
16951         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
16952         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
16953         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
16954         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
16955         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
16956         test-md5.c, test-memmem.c, test-printf-posix.c,
16957         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
16958         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
16959         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
16960         test-strcasestr.c, test-striconv.c, test-striconveh.c,
16961         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
16962         test-vasnprintf-posix2.c, test-vasnprintf.c,
16963         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
16964         test-vfprintf-posix.c, test-vprintf-posix.c,
16965         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
16966         test-xvasprintf.c: Likewise.
16967
16968 2007-05-28  Bruno Haible  <bruno@clisp.org>
16969
16970         * gnulib-tool (func_import): Remember the --with-tests command-line
16971         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
16972         Reported by Eric Blake.
16973
16974 2007-05-28  Bruno Haible  <bruno@clisp.org>
16975
16976         * modules/ftell-tests: New file.
16977         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
16978         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
16979
16980         * lib/ftell.c: New file.
16981         * modules/ftell: New file.
16982         * m4/ftell.m4: New file.
16983         * doc/functions/ftell.texi: Update.
16984         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
16985         REPLACE_FTELL.
16986         * lib/stdio_.h (rpl_ftell): New declaration.
16987         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
16988         REPLACE_FTELL.
16989
16990 2007-05-28  Eric Blake  <ebb9@byu.net>
16991
16992         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
16993
16994 2007-05-28  Bruno Haible  <bruno@clisp.org>
16995
16996         * modules/fseek-tests: New file.
16997         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
16998         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
16999
17000         * lib/fseek.c: New file.
17001         * modules/fseek: New file.
17002         * m4/fseek.m4: New file.
17003         * doc/functions/fseek.texi: Update.
17004         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
17005         REPLACE_FSEEK.
17006         * lib/stdio_.h (rpl_fseek): New declaration.
17007         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
17008         REPLACE_FSEEK.
17009
17010 2007-05-28  Bruno Haible  <bruno@clisp.org>
17011
17012         * lib/stdio_.h (fflush): More comments.
17013
17014 2007-05-28  Bruno Haible  <bruno@clisp.org>
17015
17016         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
17017         runtime test.
17018
17019 2007-05-28  Eric Blake  <ebb9@byu.net>
17020
17021         Improve lseek module.
17022         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
17023         * lib/unistd_.h (lseek): Scale back link warning message.
17024         * tests/test-lseek.c: Beef up test.
17025         * tests/test-lseek.sh: Exercise more facets of lseek.
17026         Reported by Bruno Haible.
17027
17028 2007-05-28  Bruno Haible  <bruno@clisp.org>
17029
17030         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
17031         to define.
17032
17033 2007-05-27  Bruno Haible  <bruno@clisp.org>
17034
17035         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
17036
17037 2007-05-27  Bruno Haible  <bruno@clisp.org>
17038
17039         * modules/openmp: New file.
17040         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
17041         Noah Misch.
17042
17043 2007-05-26  Bruno Haible  <bruno@clisp.org>
17044
17045         * modules/chdir-long (Depends-on): Add fchdir.
17046         * modules/chdir-safer (Depends-on): Likewise.
17047         * modules/fts (Depends-on): Likewise.
17048         * modules/fts-lgpl (Depends-on): Likewise.
17049         * modules/openat (Depends-on): Likewise.
17050         * modules/savewd (Depends-on): Likewise.
17051
17052 2007-05-24  Eric Blake  <ebb9@byu.net>
17053
17054         Fix lseek on mingw.
17055         * modules/lseek: New module.
17056         * m4/lseek.m4: New file.
17057         * lib/lseek.c: New file.
17058         * modules/lseek-tests: New file.
17059         * tests/test-lseek.c: New file.
17060         * tests/test-lseek.sh: New file.
17061         * MODULES.html.sh: Document lseek module.
17062         * modules/fflush (Depends-on): Add lseek, fseeko.
17063         * modules/fseeko (Depends-on): Likewise.
17064         * modules/ftello (Depends-on): Likewise.
17065         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
17066         broken.
17067         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
17068         broken.
17069         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
17070         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
17071         * lib/ftello.c (rpl_ftello): Likewise.
17072         * tests/test-fseeko.c (main): Test this.
17073         * tests/test-fseeko.sh: Likewise.
17074         * tests/test-ftello.c (main): Likewise.
17075         * tests/test-ftello.sh: Likewise.
17076         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
17077         implies replacing fseek.
17078         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
17079         HAVE_FTELLO.
17080         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
17081         * modules/unistd (Makefile.am): Likewise.
17082         * lib/unistd_.h (lseek): Declare a replacement.
17083         * doc/functions/lseek.texi (lseek): Document this fix.
17084         * doc/functions/fseek.texi (fseek): Likewise.
17085         * doc/functions/ftell.texi (ftell): Likewise.
17086
17087 2007-05-24  Bruno Haible  <bruno@clisp.org>
17088
17089         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
17090         in the printed representation of a NaN.
17091         * tests/test-vasprintf-posix.c (test_function): Likewise.
17092         * tests/test-snprintf-posix.h (test_function): Likewise.
17093         * tests/test-sprintf-posix.h (test_function): Likewise.
17094         Reported by Eric Blake.
17095
17096 2007-05-23  Eric Blake  <ebb9@byu.net>
17097
17098         Fix fseeko/ftello on cygwin 1.5.24.
17099         * doc/functions/fseeko.texi (fseeko): Document the fix.
17100         * doc/functions/ftello.texi (ftello): Document the fix.
17101         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
17102         * doc/functions/stdout.text (stdout): New file.
17103         * doc/functions/stderr.text (stderr): New file.
17104         * doc/gnulib.texi (Function Substitutes): Use new files.
17105         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
17106         prior to 1.7.0.
17107         * tests/test-ftello.c (main): Likewise for ftello.
17108         * tests/test-fseeko.sh: New file.
17109         * tests/test-ftello.sh: New file.
17110         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
17111         with seekable stdin.
17112         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
17113         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
17114         (gl_REPLACE_FSEEKO): New macro.
17115         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
17116         * modules/fseeko (Files): Distribute fseeko.c.
17117         * modules/ftello (Files): Distribute ftello.c.
17118         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
17119         mode.
17120         * lib/ftello.c (rpl_ftello): New file.
17121         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
17122         fseeko, ftello.
17123         (gl_STDIN_LARGE_OFFSET): New macro.
17124         * modules/stdio (Makefile.am): Perform the replacement.
17125         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
17126
17127 2007-05-23  Bruno Haible  <bruno@clisp.org>
17128
17129         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
17130         GNULIB_POSIXCHECK is defined.
17131
17132 2007-05-21  Bruno Haible  <bruno@clisp.org>
17133
17134         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
17135         Check also the output for NaN arguments. When cross-compiling, guess
17136         no on IRIX.
17137         * lib/vasnprintf.c: Update comments.
17138         * tests/test-vasnprintf-posix.c (strisnan): New function.
17139         (test_function): Use it.
17140         * tests/test-vasprintf-posix.c (strisnan): New function.
17141         (test_function): Use it.
17142         * tests/test-snprintf-posix.h (strisnan): New function.
17143         (test_function): Use it.
17144         * tests/test-sprintf-posix.h (strisnan): New function.
17145         (test_function): Use it.
17146         Reported by Eric Blake.
17147
17148 2007-05-20  Bruno Haible  <bruno@clisp.org>
17149
17150         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
17151         numbers that fails on BeOS.
17152         * doc/functions/frexpl.texi: Update.
17153
17154 2007-05-20  Jim Meyering  <jim@meyering.net>
17155
17156         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
17157         forced upon us by glibc-2.6.
17158
17159 2007-05-20  Bruno Haible  <bruno@clisp.org>
17160
17161         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
17162         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
17163         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
17164         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
17165         NEED_PRINTF_INFINITE.
17166         (is_infinitel): New function.
17167         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
17168         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
17169         gl_PREREQ_VASNPRINTF_INFINITE.
17170         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
17171         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
17172         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
17173         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
17174         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
17175         gl_PREREQ_VASNPRINTF_INFINITE.
17176         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
17177         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17178         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17179         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17180         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17181         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17182         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17183         * doc/functions/fprintf.texi: Update.
17184         * doc/functions/printf.texi: Update.
17185         * doc/functions/snprintf.texi: Update.
17186         * doc/functions/sprintf.texi: Update.
17187         * doc/functions/vfprintf.texi: Update.
17188         * doc/functions/vprintf.texi: Update.
17189         * doc/functions/vsnprintf.texi: Update.
17190         * doc/functions/vsprintf.texi: Update.
17191
17192 2007-05-20  Bruno Haible  <bruno@clisp.org>
17193
17194         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
17195         was not found in libc.
17196         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
17197
17198 2007-05-20  Bruno Haible  <bruno@clisp.org>
17199
17200         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
17201         printed as "-nan" instead of "nan".
17202         * tests/test-vasprintf-posix.c (test_function): Likewise.
17203         * tests/test-snprintf-posix.h (test_function): Likewise.
17204         * tests/test-sprintf-posix.h (test_function): Likewise.
17205         Needed for HP-UX 11.
17206
17207 2007-05-20  Jim Meyering  <jim@meyering.net>
17208
17209         Fix buggy test for the fchownat-deref bug.
17210         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
17211         symlink required for the run-test.  Without it, this test would
17212         always declare that fchownat doesn't work, and client code would
17213         unnecessarily use the replacement function with fixed libc.
17214         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
17215         Reported by Greg Schafer.
17216
17217 2007-05-19  Bruno Haible  <bruno@clisp.org>
17218
17219         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
17220         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
17221         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
17222         Needed for IRIX 6.5 and Solaris 2.5.1.
17223
17224 2007-05-19  Bruno Haible  <bruno@clisp.org>
17225
17226         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
17227         (test_function): Skip tests involving -0.0 on platforms where
17228         -0.0 = 0.0.
17229         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
17230         (test_function): Skip tests involving -0.0 on platforms where
17231         -0.0 = 0.0.
17232         * tests/test-snprintf-posix.h (have_minus_zero): New function.
17233         (test_function): Skip tests involving -0.0 on platforms where
17234         -0.0 = 0.0.
17235         * tests/test-sprintf-posix.h (have_minus_zero): New function.
17236         (test_function): Skip tests involving -0.0 on platforms where
17237         -0.0 = 0.0.
17238         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
17239         tests.
17240         * tests/test-printf-posix.h (test_function): Likewise.
17241         * tests/test-printf-posix.output: Remove all -0.0 related results.
17242         Needed for IRIX 6.5.
17243
17244 2007-05-19  Bruno Haible  <bruno@clisp.org>
17245
17246         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
17247         printed as "nan0x7fffffff" instead of "nan".
17248         * tests/test-vasprintf-posix.c (test_function): Likewise.
17249         * tests/test-snprintf-posix.h (test_function): Likewise.
17250         * tests/test-sprintf-posix.h (test_function): Likewise.
17251         * tests/test-fprintf-posix.h (NaN): Remove macro.
17252         (test_function): Remove all NaN related tests.
17253         * tests/test-printf-posix.h (NaN): Remove macro.
17254         (test_function): Remove all NaN related tests.
17255         * tests/test-printf-posix.output: Remove all NaN related results.
17256         Needed for IRIX 6.5.
17257
17258 2007-05-19  Bruno Haible  <bruno@clisp.org>
17259
17260         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
17261         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
17262
17263 2007-05-19  Bruno Haible  <bruno@clisp.org>
17264
17265         * lib/float_.h: New file.
17266         * m4/float_h.m4: New file.
17267         * modules/float: New file.
17268         * modules/isnanl (Dependencies): Add float.
17269         * modules/isnanl-nolibm (Dependencies): Likewise.
17270         * modules/mathl (Dependencies): Likewise.
17271         * modules/printf-frexpl (Dependencies): Likewise.
17272         * modules/signbit (Dependencies): Likewise.
17273         * modules/vasnprintf (Dependencies): Likewise.
17274         * doc/headers/float.texi: Update.
17275
17276 2007-05-19  Jim Meyering  <jim@meyering.net>
17277
17278         * lib/utimens.c (gl_futimens): Rename from futimens,
17279         now that glibc-2.6 declares futimens.
17280         * lib/utimens.h: Likewise.
17281
17282 2007-05-19  Bruno Haible  <bruno@clisp.org>
17283
17284         Avoid test failures on mingw.
17285         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
17286         * tests/test-printf-posix.sh: Likewise.
17287         * tests/test-vfprintf-posix.sh: Likewise.
17288         * tests/test-vprintf-posix.sh: Likewise.
17289
17290 2007-05-19  Bruno Haible  <bruno@clisp.org>
17291
17292         Fix *printf result for NaN, Inf, -0.0 on mingw.
17293         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
17294         * lib/vasnprintf.c: Include math.h and isnan.h.
17295         (is_infinite_or_zero): New function.
17296         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
17297         values in the %f, %F, %e, %E, %g, %G directives.
17298         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
17299         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
17300         gl_PRINTF_INFINITE and test its result. Invoke
17301         gl_PREREQ_VASNPRINTF_INFINITE.
17302         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
17303         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17304         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17305         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17306         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17307         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17308         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17309         * doc/functions/fprintf.texi: Update.
17310         * doc/functions/printf.texi: Update.
17311         * doc/functions/snprintf.texi: Update.
17312         * doc/functions/sprintf.texi: Update.
17313         * doc/functions/vfprintf.texi: Update.
17314         * doc/functions/vprintf.texi: Update.
17315         * doc/functions/vsnprintf.texi: Update.
17316         * doc/functions/vsprintf.texi: Update.
17317
17318 2007-05-19  Bruno Haible  <bruno@clisp.org>
17319
17320         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
17321         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
17322         Instead of multiplying with 10^k, set extra_zeroes to k.
17323         (scale10_round_long_double): Remove function.
17324
17325 2007-05-18  Bruno Haible  <bruno@clisp.org>
17326
17327         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
17328         introduced on 2007-05-06.
17329
17330 2007-05-18  Bruno Haible  <bruno@clisp.org>
17331
17332         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
17333         %g directives.
17334         * tests/test-vasprintf-posix.c (test_function): Likewise.
17335         * tests/test-snprintf-posix.h (test_function): Likewise.
17336         * tests/test-sprintf-posix.h (test_function): Likewise.
17337
17338 2007-05-18  Bruno Haible  <bruno@clisp.org>
17339
17340         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
17341         (strmatch): New function.
17342         (test_function): Test the %f directive on numbers of various exponents.
17343         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
17344         (strmatch): New function.
17345         (test_function): Test the %f directive on numbers of various exponents.
17346         * tests/test-snprintf-posix.h (strmatch): New function.
17347         (test_function): Test the %f directive on numbers of various exponents.
17348         * tests/test-sprintf-posix.h (strmatch): New function.
17349         (test_function): Test the %f directive on numbers of various exponents.
17350         * tests/test-snprintf-posix.c (SIZEOF): New macro.
17351         * tests/test-sprintf-posix.c (SIZEOF): New macro.
17352         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
17353         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
17354
17355 2007-05-18  Bruno Haible  <bruno@clisp.org>
17356
17357         Add support for 'long double' number output.
17358         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
17359         * lib/vasnprintf.c: Include math.h and float+.h.
17360         (mp_limb_t): New type.
17361         (GMP_LIMB_BITS): New macro.
17362         (mp_twolimb_t): New type.
17363         (GMP_TWOLIMB_BITS): New macro.
17364         (mpn_t): New type.
17365         (multiply, divide, convert_to_decimal, decode_long_double,
17366         scale10_round_long_double, scale10_round_decimal_long_double,
17367         floorlog10l): New functions.
17368         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
17369         for the %f, %F, %e, %E, %g, %G directives.
17370         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
17371         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
17372         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
17373         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
17374         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
17375         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17376         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17377         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17378         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17379         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17380         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17381         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
17382         * modules/snprintf-posix (Depends-on): Likewise.
17383         * modules/sprintf-posix (Depends-on): Likewise.
17384         * modules/vasnprintf-posix (Depends-on): Likewise.
17385         * modules/vasprintf-posix (Depends-on): Likewise.
17386         * modules/vfprintf-posix (Depends-on): Likewise.
17387         * modules/vsnprintf-posix (Depends-on): Likewise.
17388         * modules/vsprintf-posix (Depends-on): Likewise.
17389         * modules/vasnprintf (Files): Add lib/float+.h.
17390         * doc/functions/fprintf.texi: Update.
17391         * doc/functions/printf.texi: Update.
17392         * doc/functions/snprintf.texi: Update.
17393         * doc/functions/sprintf.texi: Update.
17394         * doc/functions/vfprintf.texi: Update.
17395         * doc/functions/vprintf.texi: Update.
17396         * doc/functions/vsnprintf.texi: Update.
17397         * doc/functions/vsprintf.texi: Update.
17398
17399 2007-05-18  Bruno Haible  <bruno@clisp.org>
17400
17401         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
17402
17403 2007-05-18  Bruno Haible  <bruno@clisp.org>
17404
17405         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
17406         for printing 64-bit integers. Needed for mingw.
17407
17408 2007-05-18  Bruno Haible  <bruno@clisp.org>
17409
17410         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
17411         gl_FUNC_FREXPL_WORKS.
17412         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
17413
17414 2007-05-18  Bruno Haible  <bruno@clisp.org>
17415
17416         * modules/frexpl-nolibm-tests: New file.
17417
17418         * modules/frexpl-nolibm: New file.
17419         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
17420
17421 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
17422
17423         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
17424         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
17425         GCC 4.2, which otherwise issues a lot of warnings.
17426         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
17427         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
17428         Likewise.
17429         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
17430         * modules/iconv_open (iconv.h): Likewise.
17431         * modules/locale (locale.h): Likewise.
17432         * modules/netinet_in (netinet/in.h): Likewise.
17433         * modules/sys_select (sys_select.h): Likewise.
17434         * modules/sys_socket (sys/socket.h): Likewise.
17435         * modules/sys_stat (sys/stat.h): Likewise.
17436         * modules/sysexits (sysexits.h): Likewise.
17437         * modules/unistd (unistd.h): Likewise.
17438
17439 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17440
17441         * modules/closein-tests (Makefile.am): Distribute
17442         `test-closein.sh'.
17443
17444 2007-05-17  Bruno Haible  <bruno@clisp.org>
17445
17446         * tests/test-printf-posix.output: Renamed from
17447         tests/test-fprintf-posix.out.
17448         * modules/fprintf-posix-tests: Update.
17449         * modules/printf-posix-tests: Update.
17450         * modules/vfprintf-posix-tests: Update.
17451         * modules/vprintf-posix-tests: Update.
17452         * tests/test-fprintf-posix.sh: Update.
17453         * tests/test-printf-posix.sh: Update.
17454         * tests/test-vfprintf-posix.sh: Update.
17455         * tests/test-vprintf-posix.sh: Update.
17456         Reported by Ralf Wildenhues.
17457
17458 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
17459
17460         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
17461         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
17462         GCC 4.2, which otherwise issues a lot of warnings.
17463         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
17464         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
17465         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
17466         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
17467         it should no longer be needed.
17468         * lib/string_.h: Likewise.
17469         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
17470         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
17471         * modules/inttypes (inttypes.h): Likewise.
17472         * modules/math (math.h): Likewise.
17473         * modules/search (search.h): Likewise.
17474         * modules/signal (signal.h): Likewise.
17475         * modules/stdint (stdint.h): Likewise.
17476         * modules/stdio (stdio.h): Likewise.
17477         * modules/stdlib (stdlib.h): Likewise.
17478         * modules/string (string.h): Likewise.
17479         * modules/sys_time (sys/time.h): Likewise.
17480         * modules/time (time.h): Likewise.
17481         * modules/wchar (wchar.h): Likewise.
17482         * modules/wctype (wtype.h): Likewise.
17483
17484 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
17485
17486         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
17487
17488 2007-05-13  Bruno Haible  <bruno@clisp.org>
17489
17490         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
17491         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
17492         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
17493         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
17494         (gl_PREREQ_STRTOK_R): Don't require it here.
17495
17496 2007-05-13  Bruno Haible  <bruno@clisp.org>
17497
17498         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
17499         when used in C++ mode.
17500
17501 2007-05-12  Bruno Haible  <bruno@clisp.org>
17502
17503         * lib/linebuffer.h: Tweak doc.
17504         * lib/linebuffer.c: Likewise.
17505
17506 2007-05-12  James Youngman  <jay@gnu.org>
17507
17508         * lib/linebuffer.c (readlinebuffer_delim): New function,
17509         like readlinebuffer, but use a caller-specified delimiter.
17510         (readlinebuffer): Just call readlinebuffer_delim with '\n'
17511         as the delimiter.
17512         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
17513
17514 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
17515
17516         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
17517         * modules/openat (Files): Remove openat-die.c.
17518         (Depends-on): Add openat-die.
17519         * modules/openat-die: New module.
17520
17521 2007-05-06  Bruno Haible  <bruno@clisp.org>
17522
17523         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
17524         Update with info about Cygwin.
17525         * doc/functions/fprintf.texi: Update.
17526         * doc/functions/printf.texi: Update.
17527         * doc/functions/snprintf.texi: Update.
17528         * doc/functions/sprintf.texi: Update.
17529         * doc/functions/vfprintf.texi: Update.
17530         * doc/functions/vprintf.texi: Update.
17531         * doc/functions/vsnprintf.texi: Update.
17532         * doc/functions/vsprintf.texi: Update.
17533         Reported by Eric Blake.
17534
17535 2007-05-06  Bruno Haible  <bruno@clisp.org>
17536
17537         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
17538         padding ourselves for the floating-point directives.
17539         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
17540         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
17541         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
17542         gl_PRINTF_FLAG_ZERO and test its result. Invoke
17543         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
17544         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17545         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
17546         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17547         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17548         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17549         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17550         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17551         * tests/test-snprintf-posix.h (test_function): Also check the width
17552         and some flags in the %f directive.
17553         * tests/test-sprintf-posix.h (test_function): Likewise.
17554         * tests/test-vasnprintf-posix.c (test_function): Likewise.
17555         * tests/test-vasprintf-posix.c (test_function): Likewise.
17556         * doc/functions/fprintf.texi: Update.
17557         * doc/functions/printf.texi: Update.
17558         * doc/functions/snprintf.texi: Update.
17559         * doc/functions/sprintf.texi: Update.
17560         * doc/functions/vfprintf.texi: Update.
17561         * doc/functions/vprintf.texi: Update.
17562         * doc/functions/vsnprintf.texi: Update.
17563         * doc/functions/vsprintf.texi: Update.
17564
17565 2007-05-06  Bruno Haible  <bruno@clisp.org>
17566
17567         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
17568         pass the ' flag character to sprintf or snprintf.
17569         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
17570         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
17571         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
17572         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
17573         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
17574         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17575         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
17576         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17577         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17578         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17579         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17580         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17581         * tests/test-snprintf-posix.h (test_function): Also check the grouping
17582         flag.
17583         * tests/test-sprintf-posix.h (test_function): Likewise.
17584         * tests/test-vasnprintf-posix.c (test_function): Likewise.
17585         * tests/test-vasprintf-posix.c (test_function): Likewise.
17586         * doc/functions/fprintf.texi: Update.
17587         * doc/functions/printf.texi: Update.
17588         * doc/functions/snprintf.texi: Update.
17589         * doc/functions/sprintf.texi: Update.
17590         * doc/functions/vfprintf.texi: Update.
17591         * doc/functions/vprintf.texi: Update.
17592         * doc/functions/vsnprintf.texi: Update.
17593         * doc/functions/vsprintf.texi: Update.
17594
17595 2007-05-01  Bruno Haible  <bruno@clisp.org>
17596
17597         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
17598
17599 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
17600
17601         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
17602         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
17603
17604 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
17605
17606         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
17607         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
17608         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
17609
17610 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
17611
17612         * lib/argp-help.c (struct hol_entry): New member `ord'.
17613         (HOL_ENTRY_PTRCMP): Use ord for comparison
17614         (hol_sort): Initialize ord.
17615
17616 2007-05-01  Bruno Haible  <bruno@clisp.org>
17617
17618         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
17619         Reported by Eric Blake.
17620         * doc/gnulib.texi (Function Substitutes): Update.
17621
17622 2007-05-01  Bruno Haible  <bruno@clisp.org>
17623
17624         * doc/functions.texi: Remove file, now redundant through
17625         doc/functions/*.texi.
17626
17627 2007-05-01  Bruno Haible  <bruno@clisp.org>
17628
17629         * modules/argp (Depends-on): Add sleep.
17630
17631 2007-05-01  Bruno Haible  <bruno@clisp.org>
17632
17633         * modules/sleep-tests: New file.
17634         * tests/test-sleep.c: New file.
17635
17636         * modules/sleep: New file.
17637         * lib/sleep.c: New file.
17638         * m4/sleep.m4: New file.
17639         * lib/unistd_.h (sleep): New declaration.
17640         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
17641         HAVE_SLEEP.
17642         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
17643         * doc/functions/sleep.texi: Document the sleep module.
17644
17645 2007-05-01  Bruno Haible  <bruno@clisp.org>
17646
17647         * lib/sigprocmask.h: Remove file.
17648         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
17649         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
17650         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
17651         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
17652         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
17653         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
17654         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
17655         HAVE_SIGSET_T as a shell variable.
17656         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
17657         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
17658         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
17659         (Depends-on): Add signal. Remove verify.
17660         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
17661         (Include): Mention <signal.h> instead of sigprocmask.h.
17662         * NEWS: Mention the change.
17663         * lib/fatal-signal.c: Don't include sigprocmask.h.
17664
17665 2007-05-01  Bruno Haible  <bruno@clisp.org>
17666
17667         * modules/signal: New file.
17668         * lib/signal_.h: New file.
17669         * m4/signal_h.m4: New file.
17670
17671 2007-05-01  Bruno Haible  <bruno@clisp.org>
17672
17673         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
17674         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
17675         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
17676         HAVE_WCTYPE_CTMP_BUG into wctype.h.
17677
17678 2007-05-01  Bruno Haible  <bruno@clisp.org>
17679
17680         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
17681         configure time.
17682         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
17683         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
17684         * modules/sys_stat (Makefile.am): Substitute their values into
17685         sys/stat.h.
17686
17687 2007-05-01  Bruno Haible  <bruno@clisp.org>
17688
17689         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
17690         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
17691         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
17692
17693 2007-05-01  Bruno Haible  <bruno@clisp.org>
17694
17695         * doc/header/assert.texi: Undo last change: don't mention the gnulib
17696         'assert' module here.
17697
17698 2007-05-01  Bruno Haible  <bruno@clisp.org>
17699
17700         * doc/functions/*.texi: New files.
17701         * doc/functions/google-ranking.txt: New file.
17702         * doc/gnulib.texi (Function Substitutes): New chapter.
17703         (ctime, inet_ntoa): Remove sections.
17704         * doc/ctime.texi: Remove file.
17705         * doc/inet_ntoa.texi: Remove file.
17706         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
17707         dependencies.
17708         (%.info): New rule, specifying a --reference-limit.
17709
17710 2007-05-01  Bruno Haible  <bruno@clisp.org>
17711
17712         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
17713
17714 2007-05-01  Bruno Haible  <bruno@clisp.org>
17715
17716         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
17717         the portability of 'mkdir' to mingw systems.
17718
17719 2007-05-01  Bruno Haible  <bruno@clisp.org>
17720
17721         * doc/headers/google-ranking.txt: New file.
17722
17723 2007-04-30  Eric Blake  <ebb9@byu.net>
17724
17725         Prefer fseeko to fseek.
17726         * modules/getpass (Depends-on): Add fseeko.
17727         * lib/getpass.c (getpass): Use fseeko, not fseek.
17728
17729 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
17730
17731         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
17732         assumes the sorting is stable, while most qsort implementations
17733         are not.  Use argument addresses to ensure they never compare as
17734         equal.
17735
17736         * tests/test-argp-2.sh (usage-indent test): Fix output
17737         (func_compare): Restore diff options
17738         * tests/test-argp.c: Restore #include "progname.h"
17739
17740 2007-04-29  Bruno Haible  <bruno@clisp.org>
17741
17742         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
17743         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
17744         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
17745         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17746         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
17747         (configure.ac): Define CHECK_SNPRINTF_POSIX.
17748         (TESTS, check_PROGRAMS): Add test-snprintf.
17749         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
17750         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
17751         (TESTS, check_PROGRAMS): Add test-vsnprintf.
17752         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
17753         assertions that fail on HP-UX, OSF/1, or IRIX.
17754         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
17755
17756 2007-04-29  Bruno Haible  <bruno@clisp.org>
17757
17758         * MODULES.html.sh (posix_functions): Remove 'contents'.
17759
17760 2007-04-29  Karl Berry  <karl@gnu.org>
17761
17762         * config/srclist.txt (gendocs_template_min): new entry.
17763
17764 2007-04-29  Bruno Haible  <bruno@clisp.org>
17765
17766         Work around fpurge bug on BSD systems.
17767         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
17768         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
17769         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
17770         fpurge to rpl_fpurge if the system already has this function.
17771         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
17772         the case where the system already has this function. Correct invariants
17773         on BSD systems.
17774         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
17775         BSD systems.
17776
17777 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
17778
17779         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
17780         proposed by Sven Verdoolaege.
17781
17782         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
17783         options.
17784         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
17785         (usage and help tests): Update
17786
17787 2007-04-29  Bruno Haible  <bruno@clisp.org>
17788
17789         * tests/test-fflush.c (main): Use a file of size 17, not 10.
17790         Print more information in case of failure. Disable a test on BeOS.
17791
17792 2007-04-29  Bruno Haible  <bruno@clisp.org>
17793
17794         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
17795         This helps debugging on systems on which no gdb is available.
17796
17797 2007-04-29  Bruno Haible  <bruno@clisp.org>
17798
17799         * lib/freading.h: Improve comments.
17800         * lib/fwriting.h: Likewise.
17801         * tests/test-freading.c (main): Don't check freading immediately after
17802         repositioning. Needed for glibc.
17803
17804 2007-04-29  Bruno Haible  <bruno@clisp.org>
17805
17806         * lib/freading.c (freading): Trivial simplification.
17807
17808 2007-04-28  Bruno Haible  <bruno@clisp.org>
17809
17810         * tests/test-fwriting.c (main): Also test the interaction between
17811         fflush and fwriting.
17812         * modules/fwriting-tests (Depends-on): Add fflush.
17813
17814         * tests/test-freading.c (main): Also test the interaction between
17815         fflush and freading.
17816         * modules/freading-tests (Depends-on): Add fflush.
17817
17818 2007-04-28  Bruno Haible  <bruno@clisp.org>
17819
17820         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
17821         fseeko and ftello.
17822         Suggested by Eric Blake.
17823
17824 2007-04-28  Jim Meyering  <jim@meyering.net>
17825
17826         Avoid false-negative in gl_STDINT_H's C99 conformance test.
17827         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
17828         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
17829
17830 2007-04-27  Eric Blake  <ebb9@byu.net>
17831
17832         * doc/headers/assert.texi (assert.h): Document assert module use.
17833
17834 2007-04-27  Bruno Haible  <bruno@clisp.org>
17835
17836         * doc/headers/*.texi: New files.
17837         * doc/gnulib.texi (Header File Substitutes): New chapter.
17838         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
17839         dependencies.
17840         (standards.info ,standards.html, standards.dvi): Update dependencies.
17841         (mostlyclean, clean): New targets.
17842
17843 2007-04-27  Bruno Haible  <bruno@clisp.org>
17844
17845         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
17846         * modules/sysexits (Files, Makefile.am): Update.
17847
17848         * lib/sys_socket_.h: Renamed from lib/socket_.h.
17849         * modules/sys_socket (Files, Makefile.am): Update.
17850
17851         * lib/sys_stat_.h: Renamed from lib/stat_.h.
17852         * modules/sys_stat (Files, Makefile.am): Update.
17853
17854 2007-04-27  Eric Blake  <ebb9@byu.net>
17855
17856         * lib/freading.h: Improve comments.
17857         * lib/fwriting.h: Likewise.
17858         * lib/fflush.c: Likewise.
17859
17860         Fix closein for mingw.
17861         * modules/closein-tests: Add tests for closein.
17862         * tests/test-closein.c: New file.
17863         * tests/test-closein.sh: Likewise.
17864         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
17865         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
17866
17867 2007-04-27  Bruno Haible  <bruno@clisp.org>
17868
17869         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
17870         version is < 6.
17871         * lib/math_.h [__DECC]: Likewise.
17872         * lib/stdio_.h [__DECC]: Likewise.
17873         * lib/stdlib_.h [__DECC]: Likewise.
17874         * lib/string_.h [__DECC]: Likewise.
17875         * lib/time_.h [__DECC]: Likewise.
17876         * lib/wchar_.h [__DECC]: Likewise.
17877         * lib/wctype_.h [__DECC]: Likewise.
17878
17879 2007-04-27  Bruno Haible  <bruno@clisp.org>
17880
17881         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
17882
17883 2007-04-27  Bruno Haible  <bruno@clisp.org>
17884
17885         * lib/fflush.c: Add comments.
17886         * modules/fpurge-tests (Depends-on): Add fflush.
17887         * modules/freadable-tests (Depends-on): Likewise.
17888         * modules/fwritable-tests (Depends-on): Likewise.
17889
17890 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
17891
17892         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
17893         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
17894         Report by Bruno Haible <bruno@clisp.org>.
17895
17896 2007-04-26  Eric Blake  <ebb9@byu.net>
17897
17898         Fix fflush on mingw.
17899         * modules/fflush (Depends-on): Add freading.
17900         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
17901         but unread data.
17902
17903 2007-04-26  Eric Blake  <ebb9@byu.net>
17904         and Bruno Haible  <bruno@clisp.org>
17905
17906         Implement freading and fwriting.
17907         * lib/freading.c: New file.
17908         * lib/freading.h: Likewise.
17909         * m4/freading.m4: Likewise.
17910         * modules/freading: Likewise.
17911         * modules/freading-tests: Likewise.
17912         * tests/test-freading.c: Likewise.
17913         * lib/fwriting.c: New file.
17914         * lib/fwriting.h: Likewise.
17915         * m4/fwriting.m4: Likewise.
17916         * modules/fwriting: Likewise.
17917         * modules/fwriting-tests: Likewise.
17918         * tests/test-fwriting.c: Likewise.
17919         * MODULES.html.sh (File stream based Input/Output): Mention them.
17920
17921 2007-04-26  Bruno Haible  <bruno@clisp.org>
17922
17923         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
17924         'long' when we assume it.
17925         Suggested by Eric Blake.
17926
17927 2007-04-26  Bruno Haible  <bruno@clisp.org>
17928
17929         Ensure fseeko, ftello are declared on glibc systems.
17930         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
17931         * modules/fseeko (configure.ac-early): Likewise.
17932         * modules/ftello (configure.ac-early): Likewise.
17933         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
17934         AC_FUNC_FSEEKO for this.
17935         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
17936         (gl_CHECK_FSEEKO): Remove macro.
17937
17938 2007-04-26  Bruno Haible  <bruno@clisp.org>
17939
17940         * tests/test-fflush.c (main): Also check the ftell result after
17941         fflush and fseek/fseeko.
17942         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
17943         file descriptor position cache in the stream.
17944         * lib/fseeko.c (rpl_fseeko): Likewise.
17945
17946 2007-04-26  Bruno Haible  <bruno@clisp.org>
17947
17948         * modules/fflush-tests (Depends-on): Add fseeko.
17949
17950 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
17951             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17952
17953         * lib/argz_.h: ensure error_t definition is obtained in same
17954         mechanism system argz.h would have.
17955         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
17956         argz facilities are known bad.  Err on the side of caution if
17957         cross-compiling.
17958
17959 2007-04-25  Eric Blake  <ebb9@byu.net>
17960
17961         * lib/fpurge.c (includes): Use stdlib.h for free.
17962         * tests/test-fflush.c (main): Also test fflush-fseeko.
17963
17964 2007-04-25  Bruno Haible  <bruno@clisp.org>
17965
17966         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
17967         * lib/fseeko.c: New file.
17968         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
17969         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
17970         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
17971         gl_FUNC_FSEEKO.
17972         (gl_FUNC_FSEEKO): Invoke it.
17973         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
17974         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
17975         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
17976
17977 2007-04-25  Bruno Haible  <bruno@clisp.org>
17978
17979         * modules/fflush (Depends-on): Add ftello.
17980
17981 2007-04-25  Bruno Haible  <bruno@clisp.org>
17982
17983         * modules/ftello-tests: New file.
17984         * tests/test-ftello.c: New file.
17985
17986         * modules/ftello: New file.
17987         * m4/ftello.m4: New file.
17988         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
17989         HAVE_FTELLO.
17990         * lib/stdio_.h (ftello): New declaration.
17991         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
17992         HAVE_FTELLO.
17993
17994 2007-04-25  Bruno Haible  <bruno@clisp.org>
17995
17996         * modules/fseeko-tests: New file.
17997         * tests/test-fseeko.c: New file.
17998
17999         * modules/fseeko: New file.
18000         * m4/fseeko.m4: New file.
18001         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
18002         HAVE_FSEEKO.
18003         * lib/stdio_.h (fseeko): New declaration.
18004         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
18005         HAVE_FSEEKO.
18006
18007 2007-04-25  Bruno Haible  <bruno@clisp.org>
18008
18009         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
18010
18011 2007-04-25  Bruno Haible  <bruno@clisp.org>
18012
18013         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
18014         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
18015         * tests/test-unistd.c: Likewise.
18016         * tests/test-fcntl.c: Likewise.
18017
18018 2007-04-23  Eric Blake  <ebb9@byu.net>
18019
18020         * lib/fflush.c: Fix missing include.
18021         Reported by Bruno Haible.
18022
18023 2007-04-23  Bruno Haible  <bruno@clisp.org>
18024
18025         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
18026         Reported by Eric Blake.
18027
18028 2007-04-23  Bruno Haible  <bruno@clisp.org>
18029
18030         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
18031
18032 2007-04-23  Bruno Haible  <bruno@clisp.org>
18033
18034         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
18035
18036 2007-04-23  Bruno Haible  <bruno@clisp.org>
18037
18038         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
18039         Needed on HP-UX 11.
18040
18041 2007-04-16  Eric Blake  <ebb9@byu.net>
18042
18043         Make fflush rely on fpurge.
18044         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
18045         open coding all variants.
18046         * modules/fflush (Depends-on): Add fpurge and unistd.
18047         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
18048         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
18049
18050         Fix --with-tests compilation on cygwin.
18051         * modules/argmatch-tests (Makefile.am): List gnulib library first
18052         in LDADD.
18053         * modules/argp-tests (Makefile.am): Likewise.
18054         * modules/array-list-tests (Makefile.am): Likewise.
18055         * modules/array-oset-tests (Makefile.am): Likewise.
18056         * modules/avltree-list-tests (Makefile.am): Likewise.
18057         * modules/avltree-oset-tests (Makefile.am): Likewise.
18058         * modules/avltreehash-list-tests (Makefile.am): Likewise.
18059         * modules/carray-list-tests (Makefile.am): Likewise.
18060         * modules/dirname-tests (Makefile.am): Likewise.
18061         * modules/frexp-tests (Makefile.am): Likewise.
18062         * modules/isnanl-tests (Makefile.am): Likewise.
18063         * modules/linked-list-tests (Makefile.am): Likewise.
18064         * modules/linkedhash-list-tests (Makefile.am): Likewise.
18065         * modules/lock-tests (Makefile.am): Likewise.
18066         * modules/rbtree-list-tests (Makefile.am): Likewise.
18067         * modules/rbtree-oset-tests (Makefile.am): Likewise.
18068         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
18069         * modules/tls-tests (Makefile.am): Likewise.
18070         * modules/tsearch-tests (Makefile.am): Likewise.
18071         * modules/xvasprintf-tests (Makefile.am): Likewise.
18072
18073         Fix fpurge for cygwin.
18074         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
18075         value.
18076         * modules/fpurge-tests (Depends-on): Clean up trash.
18077
18078 2007-04-16  Simon Josefsson  <simon@josefsson.org>
18079
18080         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
18081
18082         * m4/autobuild.m4: Re-indent.
18083
18084 2007-04-13  Bruno Haible  <bruno@clisp.org>
18085
18086         * modules/fpurge-tests: New file.
18087         * tests/test-fpurge.c: New file.
18088
18089         * modules/fpurge: New file.
18090         * lib/fpurge.h: New file.
18091         * lib/fpurge.c: New file.
18092         * m4/fpurge.m4: New file.
18093
18094 2007-04-13  Bruno Haible  <bruno@clisp.org>
18095
18096         * modules/fbufmode-tests: New file.
18097         * tests/test-fbufmode.c: New file.
18098
18099         * modules/fbufmode: New file.
18100         * lib/fbufmode.h: New file.
18101         * lib/fbufmode.c: New file.
18102         * m4/fbufmode.m4: New file.
18103
18104 2007-04-13  Bruno Haible  <bruno@clisp.org>
18105
18106         * modules/fwritable-tests: New file.
18107         * tests/test-fwritable.c: New file.
18108
18109         * modules/fwritable: New file.
18110         * lib/fwritable.h: New file.
18111         * lib/fwritable.c: New file.
18112         * m4/fwritable.m4: New file.
18113
18114 2007-04-13  Bruno Haible  <bruno@clisp.org>
18115
18116         * modules/freadable-tests: New file.
18117         * tests/test-freadable.c: New file.
18118
18119         * modules/freadable: New file.
18120         * lib/freadable.h: New file.
18121         * lib/freadable.c: New file.
18122         * m4/freadable.m4: New file.
18123
18124 2007-04-13  Bruno Haible  <bruno@clisp.org>
18125
18126         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
18127         MOSTLYCLEANFILES.
18128
18129 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
18130
18131         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
18132         gzip bootstrap.conf to avoid dragging in i18n machinery.
18133         (gnulib_tool_option): Use it.
18134
18135 2007-04-13  Bruno Haible  <bruno@clisp.org>
18136
18137         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
18138         %F directives.
18139         * tests/test-vasprintf-posix.c (test_function): Likewise.
18140         * tests/test-snprintf-posix.h (test_function): Likewise.
18141         * tests/test-sprintf-posix.h (test_function): Likewise.
18142         * tests/test-fprintf-posix.h (test_function): Likewise.
18143         * tests/test-printf-posix.h (test_function): Likewise.
18144         * tests/test-fprintf-posix.out: Likewise.
18145
18146 2007-04-13  Bruno Haible  <bruno@clisp.org>
18147
18148         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
18149         * modules/tls-tests (configure.ac): Likewise.
18150         Reported by Arto C. Nirkko <anirkko@insel.ch>.
18151
18152 2007-04-13  Bruno Haible  <bruno@clisp.org>
18153
18154         * lib/tls.c (glthread_tls_get): Fix return type.
18155         Patch by Arto C. Nirkko <anirkko@insel.ch>.
18156
18157 2007-04-12  Eric Blake  <ebb9@byu.net>
18158
18159         * modules/gettime (Depends-on): Remove gettime.
18160         Reported by Dmitry V. Levin.
18161
18162 2007-04-12  Bruno Haible  <bruno@clisp.org>
18163
18164         * modules/fflush (Include): Mention <stdio.h>.
18165         * modules/strtoimax (Include): Mention <inttypes.h>.
18166         * modules/strtoumax (Include): Likewise.
18167
18168 2007-04-12  Eric Blake  <ebb9@byu.net>
18169
18170         * .cvsignore: New file.
18171         * .gitignore: Likewise.
18172
18173 2007-04-12  Bruno Haible  <bruno@clisp.org>
18174
18175         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
18176         not before, since $(LDADD) often contains libgnu.a.
18177         * modules/striconv-tests (test_striconv_LDADD): Likewise.
18178         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
18179         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
18180         Needed on Cygwin.
18181
18182 2007-04-12  Eric Blake  <ebb9@byu.net>
18183
18184         Work around glibc's failure to flush stdin on fclose.
18185         * lib/closein.c (close_stdin): Flush stdin before closing.
18186
18187         Work around glibc's failure to reset seekable stdin on exit.
18188         * modules/closein: New module.
18189         * lib/closein.c: New file.
18190         * lib/closein.h: Likewise.
18191         * m4/closein.m4: Likewise.
18192         * MODULES.html.sh (File stream based Input/Output): Document it.
18193
18194 2007-04-12  Simon Josefsson  <simon@josefsson.org>
18195
18196         * gnulib-tool: Rename generated 'autobuild' script to
18197         'do-autobuild' in --create-megatestdir output.
18198
18199         * doc/gnulib.texi (Build robot for gnulib): Fix.
18200
18201 2007-04-12  Simon Josefsson  <simon@josefsson.org>
18202
18203         * modules/sysexits (Depends-on): Add absolute-header.
18204
18205 2007-04-12  Eric Blake  <ebb9@byu.net>
18206
18207         No need to preserve errno on success.
18208         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
18209         Reported by Bruno Haible.
18210
18211 2007-04-12  Simon Josefsson  <simon@josefsson.org>
18212
18213         * MODULES.html.sh (Support for maintaining and releasing
18214         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
18215
18216 2007-04-12  Simon Josefsson  <simon@josefsson.org>
18217
18218         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
18219
18220 2007-04-12  Simon Josefsson  <simon@josefsson.org>
18221
18222         * modules/autobuild: New module.
18223
18224         * m4/autobuild.m4: New file.
18225
18226 2007-04-11  Bruno Haible  <bruno@clisp.org>
18227
18228         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
18229         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
18230         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
18231         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
18232         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18233         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18234         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18235         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
18236         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18237         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18238         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
18239         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18240         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18241         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
18242         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18243         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18244         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
18245         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18246         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18247         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
18248         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18249         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18250         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
18251         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18252         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18253         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
18254         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18255         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18256         Reported by Eric Blake.
18257
18258 2007-04-11  Bruno Haible  <bruno@clisp.org>
18259
18260         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
18261
18262 2007-04-10  Bruno Haible  <bruno@clisp.org>
18263
18264         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
18265         for NaN and Infinity. Needed on FreeBSD 6.1.
18266         * tests/test-vasnprintf-posix.c (test_function): Undo last change
18267         regarding results for "%010a" of Infinity and NaN.
18268         * tests/test-vasprintf-posix.c (test_function): Likewise.
18269         * tests/test-snprintf-posix.h (test_function): Likewise.
18270         * tests/test-sprintf-posix.h (test_function): Likewise.
18271         * tests/test-fprintf-posix.h (test_function): Likewise.
18272         * tests/test-printf-posix.h (test_function): Likewise.
18273         * tests/test-fprintf-posix.out: Likewise.
18274
18275 2007-04-10  Bruno Haible  <bruno@clisp.org>
18276
18277         * modules/locale-tests: New file.
18278         * tests/test-locale.c: New file.
18279
18280         * modules/locale: New file.
18281         * lib/locale_.h: New file.
18282         * m4/locale_h.m4: New file.
18283
18284 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
18285             Bruno Haible  <bruno@clisp.org>
18286
18287         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
18288         be determined, test for availability of the copysignf, copysign,
18289         copysignl functions.
18290         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
18291         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
18292         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
18293
18294 2007-04-09  Eric Blake  <ebb9@byu.net>
18295
18296         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
18297         * modules/stdio (Makefile.am): Support fflush.
18298         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
18299         * modules/fflush: New file.
18300         * lib/fflush.c: Likewise.
18301         * m4/fflush.m4: Likewise.
18302         * modules/fflush-tests: New test.
18303         * tests/test-fflush.c: Likewise.
18304         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
18305
18306 2007-04-06  Bruno Haible  <bruno@clisp.org>
18307
18308         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
18309         (VASNPRINTF): Use signbit for faster determination whether to print a
18310         minus sign.
18311         * modules/vasnprintf (Files): Remove lib/float+.h.
18312         * modules/fprintf-posix (Depends-on): Add signbit.
18313         * modules/snprintf-posix (Depends-on): Likewise.
18314         * modules/sprintf-posix (Depends-on): Likewise.
18315         * modules/vasnprintf-posix (Depends-on): Likewise.
18316         * modules/vasprintf-posix (Depends-on): Likewise.
18317         * modules/vfprintf-posix (Depends-on): Likewise.
18318         * modules/vsnprintf-posix (Depends-on): Likewise.
18319         * modules/vsprintf-posix (Depends-on): Likewise.
18320
18321 2007-04-06  Bruno Haible  <bruno@clisp.org>
18322
18323         * tests/test-frexp.c (main): Test also the sign bit of zero results.
18324         * tests/test-frexpl.c (main): Likewise.
18325         * tests/test-ldexpl.c (main): Likewise.
18326         * modules/frexp-tests (Depends-on): Add signbit.
18327         * modules/frexpl-tests (Depdends-on): Likewise.
18328         * modules/ldexpl-tests (Depdends-on): Likewise.
18329
18330 2007-04-06  Bruno Haible  <bruno@clisp.org>
18331
18332         * modules/signbit-tests: New file.
18333         * tests/test-signbit.c: New file.
18334
18335         * modules/signbit: New file.
18336         * lib/signbitf.c: New file.
18337         * lib/signbitd.c: New file.
18338         * lib/signbitl.c: New file.
18339         * m4/signbit.m4: New file.
18340         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
18341         (signbit): New macro.
18342         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
18343         REPLACE_SIGNBIT.
18344         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
18345         REPLACE_FREXPL into math.h.
18346
18347 2007-04-06  Bruno Haible  <bruno@clisp.org>
18348
18349         * modules/isnanf-nolibm-tests: New file.
18350         * tests/test-isnanf.c: New file.
18351
18352         * modules/isnanf-nolibm: New file.
18353         * lib/isnanf.h: New file.
18354         * lib/isnanf.c: New file.
18355         * lib/isnan.c: Consider the USE_FLOAT macro.
18356         * m4/isnanf.m4: New file.
18357
18358 2007-04-06  Bruno Haible  <bruno@clisp.org>
18359
18360         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
18361         (Link): New section.
18362
18363         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
18364
18365 2007-04-06  Bruno Haible  <bruno@clisp.org>
18366
18367         Assume the 'long double' type.
18368         * m4/longdouble.m4: Remove file.
18369         * config/srclist.txt: Don't mention longdouble.m4.
18370         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
18371         * lib/float+.h: Likewise.
18372         * lib/frexp.c: Likewise.
18373         * lib/printf-args.h: Likewise.
18374         * lib/printf-args.c: Likewise.
18375         * lib/printf-frexp.c: Likewise.
18376         * lib/printf-parse.c: Likewise.
18377         * lib/vasnprintf.c: Likewise.
18378         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
18379         * m4/intl.m4: Likewise.
18380         * m4/isnanl.m4: Likewise.
18381         * m4/printf.m4: Likewise.
18382         * m4/printf-frexpl.m4: Likewise.
18383         * m4/vasnprintf.m4: Likewise.
18384         * modules/allocsa (Files): Remove m4/longdouble.m4.
18385         * modules/gettext (Files): Likewise.
18386         * modules/relocatable-prog-wrapper (Files): Likewise.
18387         * modules/vasnprintf (Files): Likewise.
18388         * modules/isnanl (Files): Likewise.
18389         (Include): Simplify.
18390         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
18391         (Include): Simplify.
18392         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
18393         (Include): Simplify.
18394         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
18395         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18396         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
18397         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18398         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
18399         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18400         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
18401         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18402         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
18403         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18404         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
18405         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18406         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
18407         * tests/test-isnanl.c: Likewise.
18408         * tests/test-snprintf-posix.h: Likewise.
18409         * tests/test-sprintf-posix.h: Likewise.
18410         * tests/test-vasnprintf-posix.c: Likewise.
18411         * tests/test-vasnprintf-posix2.c: Likewise.
18412         * tests/test-vasprintf-posix.c: Likewise.
18413
18414 2007-04-06  Bruno Haible  <bruno@clisp.org>
18415
18416         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
18417         * lib/math_.h [__DECC]: Include the overridden include file through
18418         #include_next, outside the double-inclusion guard.
18419         * lib/stdio_.h [__DECC]: Likewise.
18420         * lib/stdlib_.h [__DECC]: Likewise.
18421         * lib/string_.h [__DECC]: Likewise.
18422         * lib/time_.h [__DECC]: Likewise.
18423         * lib/wchar_.h [__DECC]: Likewise.
18424         * lib/wctype_.h [__DECC]: Likewise.
18425         * lib/inttypes_.h [__DECC]: Likewise.
18426         Reported by Albert Chin <china@thewrittenword.com> in
18427         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
18428
18429 2007-04-04  Eric Blake  <ebb9@byu.net>
18430
18431         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
18432         1.5.x.
18433
18434 2007-04-04  Bruno Haible  <bruno@clisp.org>
18435
18436         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
18437         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
18438
18439 2007-04-04  Bruno Haible  <bruno@clisp.org>
18440
18441         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
18442         results for "%010a" of Infinity and NaN.
18443         * tests/test-vasprintf-posix.c (test_function): Likewise.
18444         * tests/test-snprintf-posix.h (test_function): Likewise.
18445         * tests/test-sprintf-posix.h (test_function): Likewise.
18446         * tests/test-fprintf-posix.h (test_function): Remove these tests.
18447         * tests/test-printf-posix.h (test_function): Likewise.
18448         * tests/test-fprintf-posix.out: Update.
18449         Needed for FreeBSD 6.1.
18450
18451 2007-04-04  Bruno Haible  <bruno@clisp.org>
18452
18453         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
18454         directly used by the gnulib modules nor by gnulib-tool.
18455
18456 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
18457
18458         * DEPENDENCIES: Give overall description of version dependency
18459         desirability.  Use more-typical names for apps.
18460         Add shell, coreutils, diffutils, grep, tar, gzip.
18461
18462 2007-04-04  Simon Josefsson  <simon@josefsson.org>
18463
18464         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
18465
18466 2007-04-04  Karl Berry  <karl@gnu.org>
18467
18468         * MODULES.html.sh (func_module): missing '.
18469
18470 2007-04-03  Bruno Haible  <bruno@clisp.org>
18471
18472         * modules/argmatch-tests (Makefile.am): New variable
18473         test_argmatch_LDADD.
18474         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
18475         * modules/array-list-tests (Makefile.am): New variable
18476         test_array_list_LDADD.
18477         * modules/array-oset-tests (Makefile.am): New variable
18478         test_array_oset_LDADD.
18479         * modules/avltree-list-tests (Makefile.am): New variable
18480         test_avltree_list_LDADD.
18481         * modules/avltree-oset-tests (Makefile.am): New variable
18482         test_avltree_oset_LDADD.
18483         * modules/avltreehash-list-tests (Makefile.am): New variable
18484         test_avltreehash_list_LDADD.
18485         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
18486         test_canonicalize_lgpl_LDADD.
18487         * modules/carray-list-tests (Makefile.am): New variable
18488         test_carray_list_LDADD.
18489         * modules/dirname-tests (Makefile.am): New variable
18490         test_dirname_LDADD.
18491         * modules/linked-list-tests (Makefile.am): New variable
18492         test_linked_list_LDADD.
18493         * modules/linkedhash-list-tests (Makefile.am): New variable
18494         test_linkedhash_list_LDADD.
18495         * modules/rbtree-list-tests (Makefile.am): New variable
18496         test_rbtree_list_LDADD.
18497         * modules/rbtree-oset-tests (Makefile.am): New variable
18498         test_rbtree_oset_LDADD.
18499         * modules/rbtreehash-list-tests (Makefile.am): New variable
18500         test_rbtreehash_list_LDADD.
18501         * modules/xvasprintf-tests (Makefile.am): New variable
18502         test_xvasprintf_LDADD.
18503         Reported by Eric Blake.
18504
18505 2007-04-03  Eric Blake  <ebb9@byu.net>
18506
18507         * DEPENDENCIES: Weaken m4 requirements.
18508
18509 2007-04-03  Bruno Haible  <bruno@clisp.org>
18510
18511         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
18512         * modules/isnanl-tests (configure.ac): Likewise.
18513
18514 2007-04-03  Ben Pfaff  <blp@gnu.org>
18515
18516         * modules/iconv_open: Add $(srcdir)/ to source directory
18517         references in Makefile fragments that call gperf, to fix VPATH
18518         builds.
18519
18520 2007-04-03  Bruno Haible  <bruno@clisp.org>
18521
18522         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
18523         * lib/ldexpl.c: Undo last change.
18524
18525 2007-04-03  Bruno Haible  <bruno@clisp.org>
18526
18527         * modules/printf-frexpl (Depends-on): Undo last change.
18528         (Files): Add m4/ldexpl.m4.
18529
18530 2007-04-03  Bruno Haible  <bruno@clisp.org>
18531
18532         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
18533         * modules/isnanl (Link): New section.
18534
18535         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
18536         * modules/frexp (Link): New section.
18537
18538         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
18539         * modules/frexpl (Link): New section.
18540
18541         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
18542         * modules/ldexpl (Link): New section.
18543
18544 2007-04-03  Bruno Haible  <bruno@clisp.org>
18545
18546         * modules/TEMPLATE-EXTENDED: New file.
18547         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
18548
18549 2007-04-03  Bruno Haible  <bruno@clisp.org>
18550
18551         * DEPENDENCIES: New file.
18552         Suggested by Simon Josefsson.
18553
18554 2007-04-03  Bruno Haible  <bruno@clisp.org>
18555
18556         * doc/gnulib.texi: Escape @.
18557
18558 2007-04-03  James Youngman  <jay@gnu.org>
18559         and Paul Eggert  <eggert@cs.ucla.edu>
18560
18561         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
18562         birthtime on all systems that have birthtime, not just those which
18563         use st_birthtimensec rather than st_birthtim.  Putting zero in
18564         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
18565         that the birth time is not available for files on an NFS mount.
18566
18567 2007-04-03  Simon Josefsson  <simon@josefsson.org>
18568
18569         * modules/memxor: Move back from crypto/, suggested by Bruno.
18570         * modules/crypto/hmac-sha1: Fix memxor dependency.
18571
18572         * modules/crypto/gc: Moved from ../.
18573
18574 2007-04-02  Eric Blake  <ebb9@byu.net>
18575
18576         * lib/ldexpl.c (includes): Avoid libm.
18577
18578         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
18579
18580 2007-04-02  Bruno Haible  <bruno@clisp.org>
18581
18582         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
18583         on IRIX.
18584
18585 2007-04-02  Bruno Haible  <bruno@clisp.org>
18586
18587         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
18588         x86 or x86_64 platforms running MacOS X.
18589         Reported by Ryan Schmidt <@ryandesign.com>.
18590
18591 2007-04-02  Bruno Haible  <bruno@clisp.org>
18592
18593         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
18594         i386.
18595
18596 2007-04-01  Simon Josefsson  <simon@josefsson.org>
18597
18598         * modules/crypto/arcfour: Moved from ../.
18599         * modules/crypto/arcfour-tests: Moved from ../.
18600         * modules/crypto/arctwo: Moved from ../.
18601         * modules/crypto/arctwo-tests: Moved from ../.
18602         * modules/crypto/des: Moved from ../.
18603         * modules/crypto/des-tests: Moved from ../.
18604         * modules/crypto/gc-arcfour: Moved from ../.
18605         * modules/crypto/gc-arcfour-tests: Moved from ../.
18606         * modules/crypto/gc-arctwo: Moved from ../.
18607         * modules/crypto/gc-arctwo-tests: Moved from ../.
18608         * modules/crypto/gc-des: Moved from ../.
18609         * modules/crypto/gc-des-tests: Moved from ../.
18610         * modules/crypto/gc-hmac-md5: Moved from ../.
18611         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
18612         * modules/crypto/gc-hmac-sha1: Moved from ../.
18613         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
18614         * modules/crypto/gc-md2: Moved from ../.
18615         * modules/crypto/gc-md2-tests: Moved from ../.
18616         * modules/crypto/gc-md4: Moved from ../.
18617         * modules/crypto/gc-md4-tests: Moved from ../.
18618         * modules/crypto/gc-md5: Moved from ../.
18619         * modules/crypto/gc-md5-tests: Moved from ../.
18620         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
18621         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
18622         * modules/crypto/gc-random: Moved from ../.
18623         * modules/crypto/gc-rijndael: Moved from ../.
18624         * modules/crypto/gc-rijndael-tests: Moved from ../.
18625         * modules/crypto/gc-sha1: Moved from ../.
18626         * modules/crypto/gc-sha1-tests: Moved from ../.
18627         * modules/crypto/gc-tests: Moved from ../.
18628         * modules/crypto/hmac-md5: Moved from ../.
18629         * modules/crypto/hmac-md5-tests: Moved from ../.
18630         * modules/crypto/hmac-sha1: Moved from ../.
18631         * modules/crypto/hmac-sha1-tests: Moved from ../.
18632         * modules/crypto/md2: Moved from ../.
18633         * modules/crypto/md2-tests: Moved from ../.
18634         * modules/crypto/md4: Moved from ../.
18635         * modules/crypto/md4-tests: Moved from ../.
18636         * modules/crypto/md5: Moved from ../.
18637         * modules/crypto/md5-tests: Moved from ../.
18638         * modules/crypto/memxor: Moved from ../.
18639         * modules/crypto/rijndael: Moved from ../.
18640         * modules/crypto/rijndael-tests: Moved from ../.
18641         * modules/crypto/sha1: Moved from ../.
18642
18643 2007-03-30  James Youngman  <jay@gnu.org>
18644
18645         * tests/test-stat-time.c (prepare_test): use chmod() rather than
18646         rename() to change the ctime of a file (because ctime is unaffected
18647         by rename on jfs2 on AIX 5.1).
18648         (main): Start by doing cleanup, in case a previous run failed leaving
18649         test files behind.
18650
18651 2007-03-31  Bruno Haible  <bruno@clisp.org>
18652
18653         Support old proprietary implementations of iconv.
18654         * modules/iconv_open: New file.
18655         * lib/iconv_.h: New file.
18656         * m4/iconv_h.m4: New file.
18657         * lib/iconv_open.c: New file.
18658         * lib/iconv_open-aix.gperf: New file.
18659         * lib/iconv_open-hpux.gperf: New file.
18660         * lib/iconv_open-irix.gperf: New file.
18661         * lib/iconv_open-osf.gperf: New file.
18662         * m4/iconv_open.m4: New file.
18663         * modules/linebreak (Depends-on): Add iconv_open.
18664         * modules/striconv (Depends-on): Likewise.
18665         * modules/striconveh (Depends-on): Likewise.
18666         * modules/unicodeio (Depends-on): Likewise.
18667         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
18668         (iconv_t)(-1).
18669         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
18670         conversion if cd is (iconv_t)(-1).
18671         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
18672         is not possible.
18673
18674 2007-03-31  Bruno Haible  <bruno@clisp.org>
18675
18676         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
18677         work on Solaris either. Protect also second use of "autodetect_jp".
18678
18679 2007-03-31  Bruno Haible  <bruno@clisp.org>
18680
18681         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
18682         the function is not present.
18683
18684 2007-03-31  Bruno Haible  <bruno@clisp.org>
18685
18686         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
18687         the function is not present.
18688
18689 2007-03-31  Bruno Haible  <bruno@clisp.org>
18690
18691         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
18692         a bug in HP-UX iconv_open().
18693
18694 2007-03-31  Bruno Haible  <bruno@clisp.org>
18695
18696         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
18697         (Mathematics <math.h>): New section, add fpieee.
18698         (Input/output <stdio.h>): Add fseterr.
18699         (Mathematics <math.h>): New section, add printf-frexp.
18700         (Container data structures): Add sublist.
18701         (Core language properties): Add fpucw, inline.
18702         (Functions for greatest-width integer types <inttypes.h>): Add
18703         imaxabs, imaxdiv, inttypes.
18704         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
18705         isnanl-nolibm, ldexp.
18706         (Mathematics <math.h>): New section, add printf-frexpl.
18707         (Support for systems lacking POSIX:2001): Add fprintf-posix,
18708         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
18709         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
18710         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
18711         (Unicode string functions): Add unistr/u*-mbtoucr.
18712         (Java): Add javacomp-script, javaexec-script.
18713         (C#): Add csharpcomp-script, csharpexec-script.
18714         (Support for building libraries and executables): Add havelib,
18715         relocatable-*.
18716         (Support for maintaining and releasing projects): Renamed from
18717         'Support for maintaining and release projects'. Add announce-gen.
18718
18719 2007-03-31  Bruno Haible  <bruno@clisp.org>
18720
18721         * README: Talk primarily about git.
18722         (git and CVS): Renamed from CVS.
18723         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
18724         gnulib is available through git.
18725         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
18726
18727 2007-03-30  Bruno Haible  <bruno@clisp.org>
18728
18729         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
18730         * lib/poll_.h: Likewise.
18731         * lib/stat_.h: Likewise.
18732         * lib/sys_time_.h: Likewise.
18733         * lib/sysexit_.h: Likewise.
18734         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
18735         * lib/stdbool_.h: Likewise.
18736         * lib/byteswap_.h: Add double-inclusion guard.
18737
18738 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
18739
18740         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
18741
18742 2007-03-30  Karl Berry  <karl@gnu.org>
18743
18744         * config/srclist-update: double space after USA in the license
18745         substitution, since that's how it's usually (?) written.
18746
18747 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
18748
18749         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
18750         reported by Bruno Haible.
18751
18752 2007-03-29  Bruno Haible  <bruno@clisp.org>
18753
18754         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
18755         a bug in AIX iconv().
18756
18757 2007-03-29  Bruno Haible  <bruno@clisp.org>
18758
18759         * modules/ldexpl-tests: New file.
18760         * tests/test-ldexpl.c: New file.
18761
18762 2007-03-29  Bruno Haible  <bruno@clisp.org>
18763
18764         * lib/ldexpl.c: Include fpucw.h.
18765         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
18766         multiplication.
18767         * modules/ldexpl (Depends-on): Add fpucw.
18768
18769 2007-03-29  Bruno Haible  <bruno@clisp.org>
18770
18771         * modules/ldexpl: New file.
18772         * m4/ldexpl.m4: New file.
18773         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
18774         set.
18775         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
18776         REPLACE_LDEXPL.
18777         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
18778         REPLACE_LDEXPL.
18779         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
18780         gl_FUNC_LDEXPL_WORKS.
18781         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
18782         * modules/mathl (Files): Remove lib/ldexpl.c.
18783         (Depends-on): Add ldexpl.
18784
18785 2007-03-29  Bruno Haible  <bruno@clisp.org>
18786
18787         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
18788
18789 2007-03-29  Bruno Haible  <bruno@clisp.org>
18790
18791         * tests/test-striconveh.c (main): Don't assume that a direct conversion
18792         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
18793         and possibly also HP-UX.
18794         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
18795         work on AIX, IRIX, HP-UX, OSF/1.
18796         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
18797         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
18798         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
18799         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
18800         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
18801         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
18802
18803 2007-03-29  Bruno Haible  <bruno@clisp.org>
18804
18805         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
18806
18807 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
18808
18809         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
18810         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
18811
18812 2007-03-29  Eric Blake  <ebb9@byu.net>
18813
18814         * lib/acl-internal.h: Remove redundant include.
18815         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
18816         Cygwin when a file is locked.
18817
18818 2007-03-29  Bruno Haible  <bruno@clisp.org>
18819
18820         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
18821         file.
18822         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
18823
18824 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
18825
18826         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
18827         try to remove a parent directory if the child couldn't be removed
18828         (except for the first rmdir, which could fail because the child
18829         doesn't exist).  Problem reported by Jeff Blaine in
18830         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
18831
18832 2007-03-28  Bruno Haible  <bruno@clisp.org>
18833
18834         * lib/striconveh.c (utf8conv_carefully): New function.
18835         (mem_cd_iconveh_internal): Invoke it.
18836
18837 2007-03-28  Bruno Haible  <bruno@clisp.org>
18838
18839         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
18840         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
18841         input.
18842         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
18843         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
18844         unistr/u8-uctomb.
18845
18846 2007-03-28  Bruno Haible  <bruno@clisp.org>
18847
18848         * modules/unistr/u8-mbtoucr: New file.
18849         * lib/unistr/u8-mbtoucr.c: New file.
18850         * modules/unistr/u16-mbtoucr: New file.
18851         * lib/unistr/u16-mbtoucr.c: New file.
18852         * modules/unistr/u16-mbtoucr: New file.
18853         * lib/unistr/u16-mbtoucr.c: New file.
18854         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
18855
18856 2007-03-27  Simon Josefsson  <simon@josefsson.org>
18857             Bruno Haible  <bruno@clisp.org>
18858
18859         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
18860         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
18861         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
18862
18863         * m4/stdio_h.m4: Add stubs for vasprintf too.
18864
18865         * modules/stdio: Support vasprintf in sed command.
18866
18867         * modules/vasprintf: Depend on stdio for prototypes.  Remove
18868         vasprintf.h.  Add stdio module indicator.
18869
18870         * lib/stdio_.h: Declare asprintf and vasprintf, based on
18871         vasprintf.h.
18872
18873         * lib/vasprintf.h: File removed.
18874
18875         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
18876         * lib/vasprintf.c: Ditto.
18877         * lib/xvasprintf.c: Ditto.
18878         * tests/test-vasprintf-posix.c: Ditto.
18879         * tests/test-vasprintf.c: Ditto.
18880
18881 2007-03-27  Bruno Haible  <bruno@clisp.org>
18882
18883         Make vasnprintf multithread-safe.
18884         * lib/vasnprintf.c (decimal_point_char): New function.
18885         (VASNPRINTF): Use it.
18886         Suggested by Simon Josefsson.
18887
18888 2007-03-27  Eric Blake  <ebb9@byu.net>
18889
18890         Support sub-second birthtime on cygwin.
18891         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
18892         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
18893         (get_stat_birthtime): Also work with st_birthtim.
18894
18895 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
18896
18897         * lib/stat-time.h (USE_BIRTHTIME): Remove.
18898         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
18899         (get_stat_birthtime_ns): Do not try to use "spare" fields.
18900         (get_stat_birthtime_ns): Simplify compile-time tests.
18901         (get_stat_birthtime): Change the API to look like
18902         get_stat_mtime etc., except return a negative tv_nsec on error.
18903         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
18904         Don't check for "spare" fields.
18905         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
18906         or for struct stat.st_birthtime, as these tests aren't used.
18907         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
18908
18909 2007-03-27  Bruno Haible  <bruno@clisp.org>
18910
18911         * lib/stat-time.h: Include <sys/stat.h>.
18912
18913 2007-03-27  James Youngman  <jay@gnu.org>
18914
18915         * lib/stat-time.h (get_stat_birthtime): New function for
18916           retrieving st_birthtime as provided by UFS2 (hence *BSD).
18917         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
18918           and its variants.
18919         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
18920         * modules/stat-time-test: New file.
18921         * tests/test-stat-time.c: New test, devised by Bruno Haible.
18922
18923 2007-03-26  Bruno Haible  <bruno@clisp.org>
18924
18925         Better support of signalling NaNs.
18926         * lib/atanl.c: Include isnanl.h.
18927         (atanl): Perform test for NaN at the beginning of the function and
18928         through a call to isnanl.
18929         * lib/cosl.c: Include isnanl.h.
18930         (cosl): Perform test for NaN at the beginning of the function and
18931         through a call to isnanl.
18932         * lib/ldexpl.c: Include isnanl.h.
18933         (ldexpl): Perform test for NaN through a call to isnanl.
18934         * lib/logl.c: Include isnanl.h.
18935         (logl): Perform test for NaN at the beginning of the function and
18936         through a call to isnanl.
18937         * lib/sinl.c: Include isnanl.h.
18938         (sinl): Perform test for NaN at the beginning of the function and
18939         through a call to isnanl.
18940         * lib/sqrtl.c: Include isnanl.h.
18941         (sqrtl): Perform test for NaN at the beginning of the function and
18942         through a call to isnanl.
18943         * lib/tanl.c: Include isnanl.h.
18944         (tanl): Perform test for NaN at the beginning of the function and
18945         through a call to isnanl.
18946         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
18947         * modules/mathl (Depends-on): Add isnanl.
18948
18949 2007-03-26  Eric Blake  <ebb9@byu.net>
18950
18951         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
18952         regression in logic sense of previous patch.
18953
18954 2007-03-26  Bruno Haible  <bruno@clisp.org>
18955
18956         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
18957         unportable shell command "if ! ...".
18958         Reported by Ralf Wildenhues.
18959
18960 2007-03-25  Bruno Haible  <bruno@clisp.org>
18961
18962         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
18963         <sysexits.h> file, and only add EX_CONFIG.
18964         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
18965         absolute file name and whether it is sufficient. Substitute also
18966         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
18967         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
18968         ABSOLUTE_SYSEXITS_H into sysexits.h.
18969
18970 2007-03-25  Bruno Haible  <bruno@clisp.org>
18971
18972         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
18973         hints is NULL.
18974
18975 2007-03-25  Bruno Haible  <bruno@clisp.org>
18976
18977         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
18978         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
18979
18980 2007-03-25  Bruno Haible  <bruno@clisp.org>
18981
18982         * lib/vasnprintf.c: Include langinfo.h.
18983         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
18984         multithread-safe.
18985         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
18986         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
18987         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18988         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18989         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18990         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18991         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18992         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
18993         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18994         Reported by Simon Josefsson.
18995
18996 2007-03-25  Bruno Haible  <bruno@clisp.org>
18997
18998         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
18999         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
19000         * modules/vasnprintf (Depends-on): Add stdint.
19001
19002 2007-03-25  Bruno Haible  <bruno@clisp.org>
19003
19004         * modules/fpieee: New file.
19005         * m4/fpieee.m4: New file.
19006         * modules/isnan-nolibm (Depends-on): Add fpieee.
19007         * modules/isnanl-nolibm (Depends-on): Add fpieee.
19008         * modules/isnanl (Depends-on): Add fpieee.
19009
19010 2007-03-25  Bruno Haible  <bruno@clisp.org>
19011
19012         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
19013
19014 2007-03-25  Bruno Haible  <bruno@clisp.org>
19015
19016         Avoid test failures on IRIX 6.5.
19017         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
19018         (main): Use it.
19019         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
19020         macros.
19021         (main): Use them.
19022
19023 2007-03-25  Bruno Haible  <bruno@clisp.org>
19024
19025         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
19026         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
19027         exists but doesn't work.
19028         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
19029         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
19030         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
19031         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
19032
19033 2007-03-25  Bruno Haible  <bruno@clisp.org>
19034
19035         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
19036         returns inf. Needed on IRIX 6.5.
19037
19038 2007-03-25  Bruno Haible  <bruno@clisp.org>
19039
19040         * tests/test-frexpl.c: Include isnanl-nolibm.h.
19041         (main): Use isnanl instead of x != x idiom.
19042         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
19043
19044         * tests/test-frexp.c: Include isnan.h.
19045         (main): Use isnan instead of x != x idiom.
19046         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
19047
19048 2007-03-25  Bruno Haible  <bruno@clisp.org>
19049
19050         * tests/test-frexp.c (NaN): New function/macro.
19051         (main): Use it instead of 0.0 / 0.0.
19052         * tests/test-isnan.c (NaN): New function/macro.
19053         (main): Use it instead of 0.0 / 0.0.
19054         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
19055         (test_function): Use it instead of 0.0 / 0.0.
19056         * tests/test-vasprintf-posix.c (NaN): New function/macro.
19057         (test_function): Use it instead of 0.0 / 0.0.
19058         * tests/test-snprintf-posix.h (NaN): New function/macro.
19059         (test_function): Use it instead of 0.0 / 0.0.
19060         * tests/test-sprintf-posix.h (NaN): New function/macro.
19061         (test_function): Use it instead of 0.0 / 0.0.
19062         * tests/test-fprintf-posix.h (NaN): New function/macro.
19063         (test_function): Use it instead of 0.0 / 0.0.
19064         * tests/test-printf-posix.h (NaN): New function/macro.
19065         (test_function): Use it instead of 0.0 / 0.0.
19066
19067         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
19068
19069 2007-03-25  Bruno Haible  <bruno@clisp.org>
19070
19071         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
19072
19073 2007-03-25  Bruno Haible  <bruno@clisp.org>
19074
19075         * lib/regexec.c (merge_state_with_log): Make static.
19076
19077 2007-03-25  Bruno Haible  <bruno@clisp.org>
19078
19079         * lib/trigl.c (kernel_rem_pio2): Make static.
19080
19081 2007-03-25  Bruno Haible  <bruno@clisp.org>
19082
19083         * lib/sincosl.c (sincosl_table): Make static.
19084
19085 2007-03-25  Bruno Haible  <bruno@clisp.org>
19086
19087         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
19088         if the compiler does not support C99.
19089
19090 2007-03-25  Bruno Haible  <bruno@clisp.org>
19091
19092         * modules/time (Makefile.am): Ensure all rule action lines start with a
19093         tab.
19094
19095 2007-03-24  Bruno Haible  <bruno@clisp.org>
19096
19097         * modules/tsearch-tests: New file.
19098         * tests/test-tsearch.sh: New file.
19099         * tests/test-tsearch.c: New file, mostly copied from glibc.
19100
19101         * modules/search-tests: New file.
19102         * tests/test-search.c: New file.
19103
19104         * modules/search: New file.
19105         * lib/search_.h: New file, incorporating lib/tsearch.h.
19106         * m4/search_h.m4: New file.
19107         * lib/tsearch.h: Remove file.
19108         * lib/tsearch.c: Include search.h instead of tsearch.h.
19109         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
19110         HAVE_TSEARCH.
19111         * modules/tsearch (Files): Remove lib/tsearch.h.
19112         (Depends-on): Add search.
19113         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
19114         (Include): Change tsearch.h into search.h.
19115
19116 2007-03-24  Bruno Haible  <bruno@clisp.org>
19117
19118         * modules/fpucw: New file.
19119         * lib/fpucw.h: New file.
19120         * lib/frexp.c: Include fpucw.h.
19121         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
19122         (FUNC): Use them.
19123         * lib/printf-frexp.c: Include fpucw.h.
19124         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
19125         (FUNC): Use them.
19126         * lib/vasnprintf.c: Include fpucw.h.
19127         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
19128         'long double' calculations.
19129         * tests/test-frexpl.c: Include fpucw.h.
19130         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
19131         * tests/test-printf-frexpl.c: Include fpucw.h.
19132         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
19133         * modules/frexpl (Depends-on): Add fpucw.
19134         * modules/printf-frexpl (Depends-on): Likewise.
19135         * modules/fprintf-posix (Depends-on): Likewise.
19136         * modules/snprintf-posix (Depends-on): Likewise.
19137         * modules/sprintf-posix (Depends-on): Likewise.
19138         * modules/vasnprintf-posix (Depends-on): Likewise.
19139         * modules/vasprintf-posix (Depends-on): Likewise.
19140         * modules/vfprintf-posix (Depends-on): Likewise.
19141         * modules/vsnprintf-posix (Depends-on): Likewise.
19142         * modules/vsprintf-posix (Depends-on): Likewise.
19143         * modules/frexpl-tests (Depends-on): Likewise.
19144         * modules/printf-frexpl-tests (Depends-on): Likewise.
19145
19146 2007-03-24  Bruno Haible  <bruno@clisp.org>
19147
19148         * lib/float+.h: New file.
19149         * lib/isnan.c: Include float+.h.
19150         (SIZE): New macro.
19151         (FUNC): Compare only SIZE bytes of the value.
19152         * lib/vasnprintf.c: Include float+.h.
19153         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
19154         SIZEOF_LDBL or SIZEOF_DBL bytes.
19155         * modules/isnan-nolibm (Files): Add lib/float+.h.
19156         * modules/isnanl-nolibm (Files): Add lib/float+.h.
19157         * modules/isnanl (Files): Add lib/float+.h.
19158         * modules/vasnprintf (Files): Add lib/float+.h.
19159
19160 2007-03-24  Bruno Haible  <bruno@clisp.org>
19161
19162         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
19163         include isnanl-nolibm.h.
19164
19165 2007-03-24  Bruno Haible  <bruno@clisp.org>
19166
19167         * tests/test-read-file.c (main): Don't produce spurious output for
19168         expected situations. Make the test fail if it encountered unexpected
19169         results.
19170
19171 2007-03-24  Bruno Haible  <bruno@clisp.org>
19172
19173         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
19174         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
19175
19176 2007-03-24  Bruno Haible  <bruno@clisp.org>
19177
19178         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
19179
19180 2007-03-24  Bruno Haible  <bruno@clisp.org>
19181
19182         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
19183         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
19184
19185         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
19186         * modules/utf8-ucs4: Turn into a symbolic link to module
19187         unistr/u8-mbtouc.
19188
19189         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
19190         utf8-ucs4-unsafe.
19191         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
19192         unistr/u8-mbtouc-unsafe.
19193
19194         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
19195         * modules/utf16-ucs4: Turn into a symbolic link to module
19196         unistr/u16-mbtouc.
19197
19198         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
19199         utf16-ucs4-unsafe.
19200         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
19201         unistr/u16-mbtouc-unsafe.
19202
19203         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
19204         * modules/ucs4-utf8: Turn into a symbolic link to module
19205         unistr/u8-ubtomb.
19206
19207         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
19208         * modules/ucs4-utf16: Turn into a symbolic link to module
19209         unistr/u16-ubtomb.
19210
19211 2007-03-24  Bruno Haible  <bruno@clisp.org>
19212
19213         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
19214         Enable the function only if HAVE_INLINE.
19215         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
19216         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
19217         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
19218         Enable the function only if HAVE_INLINE.
19219         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
19220         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
19221         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
19222         Enable the function only if HAVE_INLINE.
19223         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
19224         Enable the function only if HAVE_INLINE.
19225         * modules/utf8-ucs4: Update.
19226         * modules/utf8-ucs4-unsafe: Update.
19227         * modules/utf16-ucs4: Update.
19228         * modules/utf16-ucs4-unsafe: Update.
19229         * modules/ucs4-utf8: Update.
19230         * modules/ucs4-utf16: Update.
19231
19232 2007-03-24  Bruno Haible  <bruno@clisp.org>
19233
19234         * lib/utf8-ucs4.h: Remove file.
19235         * lib/utf8-ucs4-unsafe.h: Remove file.
19236         * lib/utf16-ucs4.h: Remove file.
19237         * lib/utf16-ucs4-unsafe.h: Remove file.
19238         * lib/ucs4-utf8.h: Remove file.
19239         * lib/ucs4-utf16.h: Remove file.
19240         * lib/unistr.h: Include their previous contents.
19241         * m4/utf-ucs4.m4: Remove file.
19242         * m4/ucs4-utf.m4: Remove file.
19243         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
19244         (Depends-on): Add unistr/base.
19245         (configure.ac): Remove gl_UTF_UCS4.
19246         (Makefile.am): Update.
19247         (Include): Change to unistr.h.
19248         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
19249         (Depends-on): Add unistr/base.
19250         (configure.ac): Remove gl_UTF_UCS4.
19251         (Makefile.am): Update.
19252         (Include): Change to unistr.h.
19253         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
19254         (Depends-on): Add unistr/base.
19255         (configure.ac): Remove gl_UTF_UCS4.
19256         (Makefile.am): Update.
19257         (Include): Change to unistr.h.
19258         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
19259         (Depends-on): Add unistr/base.
19260         (configure.ac): Remove gl_UTF_UCS4.
19261         (Makefile.am): Update.
19262         (Include): Change to unistr.h.
19263         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
19264         (Depends-on): Add unistr/base.
19265         (configure.ac): Remove gl_UCS4_UTF.
19266         (Makefile.am): Update.
19267         (Include): Change to unistr.h.
19268         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
19269         (Depends-on): Add unistr/base.
19270         (configure.ac): Remove gl_UCS4_UTF.
19271         (Makefile.am): Update.
19272         (Include): Change to unistr.h.
19273         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
19274         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
19275         utf8-ucs4-unsafe.h.
19276         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
19277         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
19278         utf16-ucs4-unsafe.h.
19279         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
19280         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
19281         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
19282         * lib/unistr/u8-strchr.c: Likewise.
19283         * lib/unistr/u8-strrchr.c: Likewise.
19284         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
19285         * lib/unistr/u16-strchr.c: Likewise.
19286         * lib/unistr/u16-strrchr.c: Likewise.
19287         * lib/striconveh.c: Update.
19288         * lib/linebreak.c: Update.
19289
19290 2007-03-24  Bruno Haible  <bruno@clisp.org>
19291
19292         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
19293         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
19294
19295 2007-03-22  Bruno Haible  <bruno@clisp.org>
19296
19297         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
19298
19299 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
19300
19301         * MODULES.html.sh (File system functions): New module write-any-file.
19302         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
19303         * m4/write-any-file.m4: New files.
19304
19305 2007-03-23  Eric Blake  <ebb9@byu.net>
19306
19307         * gnulib-tool: Rearrange space-tab sequences, since some editors
19308         like to eat them.
19309
19310 2007-03-23  Eric Blake  <ebb9@byu.net>
19311
19312         * lib/version-etc.c (version_etc_va): Update license wording to
19313         be more concise.  Recommended by Richard Stallman.
19314
19315 2007-03-22  Bruno Haible  <bruno@clisp.org>
19316
19317         * lib/poll.c (MSG_PEEK): New fallback definition.
19318
19319 2007-03-22  Bruno Haible  <bruno@clisp.org>
19320
19321         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
19322         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
19323         (main): Update.
19324         Fixes a compilation error on BeOS.
19325
19326 2007-03-22  Bruno Haible  <bruno@clisp.org>
19327
19328         * modules/frexpl-tests: New file.
19329         * tests/test-frexpl.c: New file.
19330
19331         * modules/frexpl: New file.
19332         * m4/frexpl.m4: New file.
19333         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
19334         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
19335         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
19336         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
19337         (Depends-on): Add frexpl. Remove isnanl-nolibm.
19338         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
19339
19340 2007-03-22  Bruno Haible  <bruno@clisp.org>
19341
19342         * lib/frexpl.c: Share code with lib/frexp.c.
19343         * modules/mathl (Files): Add lib/frexp.c.
19344         (Depends-on): Add isnanl-nolibm.
19345
19346 2007-03-22  Bruno Haible  <bruno@clisp.org>
19347
19348         * modules/printf-frexp (Files): Add m4/frexp.m4.
19349         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
19350         only if the found frexp function actually works.
19351
19352 2007-03-22  Bruno Haible  <bruno@clisp.org>
19353
19354         * lib/frexp.c: Remove older implementation that uses divisions.
19355
19356 2007-03-21  Bruno Haible  <bruno@clisp.org>
19357
19358         * modules/frexp-tests: New file.
19359         * tests/test-frexp.c: New file.
19360
19361         * modules/frexp: New file.
19362         * lib/frexp.c: New file.
19363         * m4/frexp.m4: New file.
19364         * lib/math_.h (frexp): New declaration.
19365         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
19366         REPLACE_FREXP.
19367         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
19368
19369 2007-03-21  Bruno Haible  <bruno@clisp.org>
19370
19371         * modules/isnanl-tests: New file.
19372         * tests/test-isnanl.c: New file.
19373
19374         * modules/isnanl: New file.
19375         * lib/isnanl.h: New file.
19376         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
19377         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
19378         gl_FUNC_ISNANL_WORKS.
19379         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
19380         New macros.
19381
19382 2007-03-21  Bruno Haible  <bruno@clisp.org>
19383
19384         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
19385         lib/isnanl.h.
19386         (Include): Update.
19387         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
19388         * lib/vasnprintf.c: Update.
19389         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
19390         tests/test-isnanl.h, remove tests/test-isnanl.c.
19391         (Makefile.am): Update.
19392         * tests/test-isnanl-nolibm.c: New file.
19393         * tests/test-isnanl.h: New file.
19394         * tests/test-isnanl.c: Remove file.
19395
19396 2007-03-21  Jim Meyering  <jim@meyering.net>
19397
19398         When trying to open ".", treat ESTALE like EACCES.
19399         * lib/savewd.c (savewd_save): Resort to forking not just upon
19400         failure with EACCES, but also when errno is ESTALE.
19401
19402 2007-03-20  Bruno Haible  <bruno@clisp.org>
19403
19404         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
19405         Needed on AIX 5.1. Reported by Matthew Woehlke.
19406
19407 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
19408
19409         Suggestions by Bruno Haible:
19410         * lib/acl-internal.h: Include "gettext.h" rather than rolling
19411         our own.
19412         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
19413         * modules/acl (Depends-on): Add gettext.
19414
19415 2007-03-19  Bruno Haible  <bruno@clisp.org>
19416
19417         * modules/iconvme: Remove file.
19418         * lib/iconvme.h: Remove file.
19419         * lib/iconvme.c: Remove file.
19420         * m4/iconvme.m4: Remove file.
19421
19422 2007-03-19  Bruno Haible  <bruno@clisp.org>
19423
19424         * doc/relocatable-maint.texi: Break long shell script line.
19425         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
19426
19427 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
19428
19429         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
19430         handle file_has_acl.
19431         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
19432         * lib/acl.c: Move header inclusions and related macro defns into
19433         lib/acl-internal.h.
19434         (S_ISLNK): Remove defn, since that's now done for us.
19435         (file_has_acl): Move to lib/file-has-acl.c.
19436         Call acl_trivial if available.  This is the crucial part of the fix.
19437         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
19438         shared within the library.  Rewrite a bit, partly to make it compatible
19439         with the GNU coding style.
19440         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
19441         Remove unnecessary double-quotes.
19442         Don't test for acl_to_text; the build will catch that.
19443         Replace acl_entries if it doesn't exist and it is needed.
19444         Check for -lsec and acl_trivial (as used on Solaris 10).
19445         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
19446         lib/file-has-acl.c.
19447         (Depends-on): Add sys_stat, for S_ISLNK.
19448
19449 2007-03-19  Ben Pfaff  <blp@gnu.org>
19450
19451         * doc/gnulib.texi: Fix typos.
19452         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
19453
19454 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
19455
19456         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
19457         If size is zero here, buf must be zero.
19458
19459 2007-03-19  Simon Josefsson  <simon@josefsson.org>
19460
19461         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
19462         <bruno@clisp.org>.
19463
19464 2007-03-18  Bruno Haible  <bruno@clisp.org>
19465
19466         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
19467         Suggested by Eric Blake.
19468
19469 2007-03-18  Ben Pfaff  <blp@gnu.org>
19470
19471         * doc/relocatable.texi: Recommend using as prefix a directory
19472         that does not exist and will never be created.  Based on
19473         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
19474         and others.
19475
19476 2007-03-17  Bruno Haible  <bruno@clisp.org>
19477
19478         * lib/fchownat.c: Include lchown.h.
19479
19480 2007-03-17  Bruno Haible  <bruno@clisp.org>
19481
19482         Fix endless loop when the given allocated size was > INT_MAX.
19483         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
19484         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
19485         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
19486         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
19487         * lib/sprintf.c (sprintf): Likewise.
19488
19489 2007-03-17  Bruno Haible  <bruno@clisp.org>
19490
19491         * tests/test-argp-2.sh (func_compare): Output a context diff.
19492
19493 2007-03-17  Bruno Haible  <bruno@clisp.org>
19494
19495         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
19496         locale's decimal-point character.
19497
19498 2007-03-17  Bruno Haible  <bruno@clisp.org>
19499
19500         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
19501         before comparing it. Needed because on some platforms (e.g. x86) a
19502         'long double' occupies less bytes than sizeof (long double).
19503
19504 2007-03-17  Bruno Haible  <bruno@clisp.org>
19505
19506         * tests/test-crc.c (main): Make printf statements 64-bit clean.
19507         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
19508         * tests/test-getaddrinfo.c (simple): Likewise.
19509         * tests/test-read-file.c (main): Likewise.
19510
19511 2007-03-17  Bruno Haible  <bruno@clisp.org>
19512
19513         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
19514
19515 2007-03-17  Bruno Haible  <bruno@clisp.org>
19516
19517         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
19518         unused variable.
19519
19520 2007-03-17  Bruno Haible  <bruno@clisp.org>
19521
19522         * tests/test-c-strcasecmp.c: Include c-strcase.h.
19523         * tests/test-c-strncasecmp.c: Likewise.
19524
19525 2007-03-17  Bruno Haible  <bruno@clisp.org>
19526
19527         * modules/stdlib (Depends-on): Add unistd.
19528         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
19529         Needed for MacOS X 10.3.
19530
19531 2007-03-17  Bruno Haible  <bruno@clisp.org>
19532
19533         * lib/unistr/u-strdup.h: Include <stdlib.h>.
19534
19535 2007-03-17  Bruno Haible  <bruno@clisp.org>
19536
19537         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
19538
19539 2007-03-17  Bruno Haible  <bruno@clisp.org>
19540
19541         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
19542         to reflect files copied from gnulib (with or without modifications).
19543         Suggested by Jim Meyering.
19544
19545 2007-03-17  Eric Blake  <ebb9@byu.net>
19546
19547         * NEWS: Document stdlib change from 2007-02-18.
19548
19549 2007-03-17  Jim Meyering  <jim@meyering.net>
19550
19551         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
19552         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
19553         someone uses a name containing shell meta-characters.
19554         Reported by Alfred M. Szmidt.
19555
19556         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
19557
19558 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
19559
19560         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
19561         and copy gettext configuration files only if configure.ac contains
19562         a use of AM_GNU_GETTEXT_VERSION.
19563
19564 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
19565
19566         * build-aux/bootstrap (gnulib_name): New variable.
19567         (gnulib_tool_options): Use it.
19568
19569 2007-03-13  Simon Josefsson  <simon@josefsson.org>
19570
19571         * tests/test-des.c: Use new namespace.
19572
19573 2007-03-15  Bruno Haible  <bruno@clisp.org>
19574
19575         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
19576         Reported by James Youngman <jay@gnu.org>.
19577
19578 2007-03-15  Bruno Haible  <bruno@clisp.org>
19579
19580         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
19581         declared prototype. Needed with cc on OSF/1 5.1.
19582
19583 2007-03-15  Bruno Haible  <bruno@clisp.org>
19584
19585         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
19586         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
19587         (struct gl_list_implementation): Add dispose_fn argument to the
19588         'create_empty', 'create' methods.
19589         (struct gl_list_impl_base): Add field 'dispose_fn'.
19590         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
19591         argument.
19592         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
19593         dispose_fn argument.
19594         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
19595         dispose_fn on the dropped values.
19596         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
19597         dispose_fn argument.
19598         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
19599         dropped values.
19600         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
19601         (gl_tree_remove_node): Call dispose_fn on the dropped value.
19602         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
19603         (gl_tree_remove_node): Call dispose_fn on the dropped value.
19604         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
19605         argument.
19606         (gl_tree_list_free): Call dispose_fn on the dropped values.
19607         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
19608         the dropped values.
19609         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
19610         Add dispose_fn argument.
19611         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
19612         Call dispose_fn on the dropped values.
19613         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
19614         Add dispose_fn argument.
19615         (gl_sublist_create): Initialize the 'dispose_fn' field.
19616         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
19617         * tests/test-array_list.c (main): Update.
19618         * tests/test-carray_list.c (main): Update.
19619         * tests/test-avltree_list.c (main): Update.
19620         * tests/test-rbtree_list.c (main): Update.
19621         * tests/test-avltreehash_list.c (main): Update.
19622         * tests/test-rbtreehash_list.c (main): Update.
19623         * tests/test-linked_list.c (main): Update.
19624         * tests/test-linkedhash_list.c (main): Update.
19625         * tests/test-array_oset.c (main): Update.
19626
19627 2007-03-15  Bruno Haible  <bruno@clisp.org>
19628
19629         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
19630         (gl_oset_create_empty): Add dispose_fn argument.
19631         (struct gl_oset_implementation): Add dispose_fn argument to
19632         'create_empty' method.
19633         (struct gl_oset_impl_base): Add dispose_fn field.
19634         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
19635         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
19636         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
19637         values.
19638         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
19639         (gl_tree_oset_free): Call dispose_fn on the dropped values.
19640         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
19641         dropped value.
19642         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
19643         dropped value.
19644         * tests/test-array_oset.c (main): Update.
19645         * tests/test-avltree_oset.c (main): Update.
19646         * tests/test-rbtree_oset.c (main): Update.
19647         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
19648
19649 2007-03-13  Bruno Haible  <bruno@clisp.org>
19650
19651         * tests/test-stdbool.c (i): Update after last patch.
19652
19653 2007-03-12  Bruno Haible  <bruno@clisp.org>
19654
19655         * lib/quotearg.c: Include <wctype.h> early, before the definition of
19656         the iswprint macro. Needed on Solaris 2.5.1.
19657
19658 2007-03-12  Bruno Haible  <bruno@clisp.org>
19659
19660         * tests/test-printf-frexp.c (main): Declare x as volatile.
19661
19662 2007-03-12  Simon Josefsson  <simon@josefsson.org>
19663
19664         * doc/gnulib.texi (Build robot for gnulib): New section.
19665
19666 2007-03-12  Jim Meyering  <jim@meyering.net>
19667
19668         * build-aux/bootstrap: New file.
19669         * build-aux/bootstrap.conf: New file, from coreutils.
19670
19671 2007-03-11  Bruno Haible  <bruno@clisp.org>
19672
19673         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
19674
19675 2007-03-12  Simon Josefsson  <simon@josefsson.org>
19676
19677         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
19678         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
19679         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
19680
19681 2007-03-11  Bruno Haible  <bruno@clisp.org>
19682
19683         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
19684         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
19685
19686 2007-03-11  Bruno Haible  <bruno@clisp.org>
19687
19688         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
19689         formula. Needed for SunPRO C 5.0.
19690
19691 2007-03-11  Bruno Haible  <bruno@clisp.org>
19692
19693         * modules/long-options (Depends-on): Add getopt.
19694
19695 2007-03-11  Bruno Haible  <bruno@clisp.org>
19696
19697         * modules/modechange (Depends-on): Add stdbool.
19698
19699 2007-03-11  Bruno Haible  <bruno@clisp.org>
19700
19701         * modules/i-ring (Depends-on): Add stdbool.
19702
19703 2007-03-11  Bruno Haible  <bruno@clisp.org>
19704
19705         * modules/gc-des (Depends-on): Add stdbool.
19706
19707 2007-03-11  Bruno Haible  <bruno@clisp.org>
19708
19709         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
19710
19711 2007-03-11  Bruno Haible  <bruno@clisp.org>
19712
19713         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
19714
19715 2007-03-11  Bruno Haible  <bruno@clisp.org>
19716
19717         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
19718
19719 2007-03-11  Bruno Haible  <bruno@clisp.org>
19720
19721         * lib/vasnprintf.c (sprintf): Undefine.
19722
19723 2007-03-11  Bruno Haible  <bruno@clisp.org>
19724
19725         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
19726         initializers in SunPRO C and Compaq C compilers.
19727
19728 2007-03-11  Bruno Haible  <bruno@clisp.org>
19729
19730         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
19731         decrementing code ANSI C compliant.
19732
19733 2007-03-11  Bruno Haible  <bruno@clisp.org>
19734
19735         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
19736         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
19737
19738 2007-03-11  Bruno Haible  <bruno@clisp.org>
19739
19740         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
19741         <stdbool.h> substitute doesn't pass.
19742
19743 2007-03-11  Bruno Haible  <bruno@clisp.org>
19744
19745         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
19746
19747 2007-03-11  Bruno Haible  <bruno@clisp.org>
19748
19749         * gnulib-tool (func_create_megatestdir): Create also an autobuild
19750         script, for submission to autobuild.josefsson.org.
19751
19752 2007-03-10  Bruno Haible  <bruno@clisp.org>
19753
19754         * modules/canonicalize-lgpl-tests: New file.
19755         * tests/test-canonicalize-lgpl.sh: New file.
19756         * tests/test-canonicalize-lgpl.c: New file.
19757
19758         * modules/c-strcase-tests: New file.
19759         * tests/test-c-strcase.sh: New file.
19760         * tests/test-c-strcasecmp.c: New file.
19761         * tests/test-c-strncasecmp.c: New file.
19762
19763         * modules/atexit-tests: New file.
19764         * tests/test-atexit.sh: New file.
19765         * tests/test-atexit.c: New file.
19766
19767 2007-03-10  Bruno Haible  <bruno@clisp.org>
19768
19769         * tests/test-binary-io.sh: Use temporary filenames that are not so
19770         likely to clash with those of other tests (in a parallel make).
19771         * tests/test-binary-io.c: Likewise.
19772
19773 2007-03-10  Bruno Haible  <bruno@clisp.org>
19774
19775         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
19776         fallback; use #error instead.
19777         Suggested by Simon Josefsson.
19778
19779 2007-03-10  Bruno Haible  <bruno@clisp.org>
19780
19781         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
19782         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
19783         first and the last.
19784
19785 2007-03-10  Bruno Haible  <bruno@clisp.org>
19786
19787         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
19788
19789 2007-03-10  Bruno Haible  <bruno@clisp.org>
19790
19791         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
19792         "make distcheck".
19793         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
19794         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
19795         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
19796
19797 2007-03-10  Bruno Haible  <bruno@clisp.org>
19798
19799         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
19800         variable.
19801         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
19802         variable.
19803
19804 2007-03-09  Eric Blake  <ebb9@byu.net>
19805         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
19806
19807         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
19808         types are not being provided by gnulib.
19809         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
19810         types are supported.
19811
19812 2007-03-10  Bruno Haible  <bruno@clisp.org>
19813
19814         * lib/stdio_.h (__attribute__): New macro.
19815         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
19816         vsprintf): Specify __attribute__ __format__ for GCC.
19817         Suggested by Eric Blake.
19818
19819 2007-03-09  Bruno Haible  <bruno@clisp.org>
19820
19821         * modules/printf-posix-tests: New file.
19822         * tests/test-printf-posix.sh: New file.
19823         * tests/test-printf-posix.c: New file.
19824
19825         * modules/printf-posix: New file.
19826         * lib/printf.c: New file.
19827         * m4/printf-posix-rpl.m4: New file.
19828         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
19829         REPLACE_PRINTF.
19830         * lib/stdio_.h (printf): New declaration.
19831         (format, __format__, ____printf____, ____scanf____, ____strftime____,
19832         ____strfmon____): New macros.
19833         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
19834         REPLACE_PRINTF.
19835
19836 2007-03-09  Bruno Haible  <bruno@clisp.org>
19837
19838         * tests/test-vasnprintf-posix2.sh: New file.
19839         * tests/test-vasnprintf-posix2.c: New file.
19840         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
19841         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
19842         (Makefile.am): Activate test-vasnprintf-posix2.sh.
19843
19844         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
19845         a locale dependent decimal point, rather than always '.'.
19846
19847 2007-03-09  Eric Blake  <ebb9@byu.net>
19848
19849         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
19850         spite of platforms like Tandem/NSK that define it to -1.
19851
19852 2007-03-08  Bruno Haible  <bruno@clisp.org>
19853
19854         * modules/vprintf-posix-tests: New file.
19855         * tests/test-vprintf-posix.sh: New file.
19856         * tests/test-vprintf-posix.c: New file.
19857         * tests/test-printf-posix.h: New file.
19858
19859         * modules/vprintf-posix: New file.
19860         * lib/vprintf.c: New file.
19861         * m4/vprintf-posix.m4: New file.
19862         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
19863         REPLACE_VPRINTF.
19864         * lib/stdio_.h (vprintf): New declaration.
19865         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
19866         REPLACE_VPRINTF.
19867
19868 2007-03-08  Bruno Haible  <bruno@clisp.org>
19869
19870         * modules/fprintf-posix-tests: New file.
19871         * tests/test-fprintf-posix.sh: New file.
19872         * tests/test-fprintf-posix.c: New file.
19873
19874         * modules/fprintf-posix: New file.
19875         * lib/fprintf.c: New file.
19876         * m4/fprintf-posix.m4: New file.
19877         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
19878         REPLACE_FPRINTF.
19879         * lib/stdio_.h (fprintf): New declaration.
19880         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
19881         REPLACE_FPRINTF.
19882
19883 2007-03-08  Bruno Haible  <bruno@clisp.org>
19884
19885         * modules/vfprintf-posix-tests: New file.
19886         * tests/test-vfprintf-posix.sh: New file.
19887         * tests/test-vfprintf-posix.c: New file.
19888         * tests/test-fprintf-posix.h: New file.
19889         * tests/test-fprintf-posix.out: New file.
19890
19891         * modules/vfprintf-posix: New file.
19892         * lib/vfprintf.c: New file.
19893         * m4/vfprintf-posix.m4: New file.
19894         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
19895         REPLACE_VFPRINTF.
19896         * lib/stdio_.h (vfprintf): New declaration.
19897         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
19898         REPLACE_VFPRINTF.
19899
19900 2007-03-08  Bruno Haible  <bruno@clisp.org>
19901
19902         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
19903
19904 2007-03-08  Bruno Haible  <bruno@clisp.org>
19905
19906         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
19907         instead of 'expr' invocations.
19908         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
19909         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
19910         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
19911         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
19912         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
19913         Suggested by Paul Eggert.
19914
19915 2007-03-08  Bruno Haible  <bruno@clisp.org>
19916
19917         * modules/fseterr-tests: New file.
19918         * tests/test-fseterr.c: New file.
19919
19920         * modules/fseterr: New file.
19921         * lib/fseterr.h: New file.
19922         * lib/fseterr.c: New file.
19923
19924 2007-03-08  Bruno Haible  <bruno@clisp.org>
19925
19926         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
19927         * lib/getopt_.h: Likewise.
19928         * lib/mbswidth.h: Likewise.
19929         * lib/setenv.h: Likewise.
19930         * lib/vasnprintf.h: Likewise.
19931         * lib/vasprintf.h: Likewise.
19932         * lib/verror.h: Likewise.
19933         * lib/xsetenv.h: Likewise.
19934         * lib/xvasprintf.h: Likewise.
19935
19936 2007-03-08  Jim Meyering  <jim@meyering.net>
19937
19938         * users.txt: Add parted.
19939
19940         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
19941
19942 2007-03-07  Bruno Haible  <bruno@clisp.org>
19943
19944         * m4/printf.m4: Make the shell script snippets copy&pastable.
19945
19946 2007-03-02  Bruno Haible  <bruno@clisp.org>
19947
19948         * lib/netinet_in_.h: New file.
19949         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
19950         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
19951         * modules/netinet_in (Files): Add lib/netinet_in_.h.
19952         (Depends-on): Add absolute-header.
19953         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
19954         into netinet/in.h.
19955
19956 2007-03-03  Bruno Haible  <bruno@clisp.org>
19957
19958         * lib/sys_select_.h: New file.
19959         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
19960         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
19961         * modules/sys_select (Files): Add lib/sys_select_.h.
19962         (Depends-on): Add absolute-header.
19963         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
19964         into sys/select.h.
19965
19966 2007-03-02  Bruno Haible  <bruno@clisp.org>
19967
19968         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
19969         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
19970         values.
19971         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
19972         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
19973         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
19974         * modules/sys_socket (Depends-on): Add absolute-header.
19975         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
19976         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
19977         (Include): Remove requirement of inclusion of <sys/types.h>.
19978
19979 2007-03-02  Bruno Haible  <bruno@clisp.org>
19980
19981         * lib/byteswap_.h (bswap_32): Fix formula.
19982
19983 2007-03-06  Bruno Haible  <bruno@clisp.org>
19984
19985         * modules/sprintf-posix-tests: New file.
19986         * tests/test-sprintf-posix.c: New file.
19987
19988         * modules/sprintf-posix: New file.
19989         * lib/sprintf.c: New file.
19990         * m4/sprintf-posix.m4: New file.
19991         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
19992         REPLACE_SPRINTF.
19993         * lib/stdio_.h (sprintf): New declaration.
19994         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
19995         REPLACE_SPRINTF.
19996
19997 2007-03-06  Bruno Haible  <bruno@clisp.org>
19998
19999         * modules/vsprintf-posix-tests: New file.
20000         * tests/test-vsprintf-posix.c: New file.
20001         * tests/test-sprintf-posix.h: New file.
20002
20003         * modules/vsprintf-posix: New file.
20004         * lib/vsprintf.c: New file.
20005         * m4/vsprintf-posix.m4: New file.
20006         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
20007         REPLACE_VSPRINTF.
20008         * lib/stdio_.h (vsprintf): New declaration.
20009         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
20010         REPLACE_VSPRINTF.
20011
20012 2007-03-06  Bruno Haible  <bruno@clisp.org>
20013
20014         * modules/vsnprintf (Depend-on): Remove minmax.
20015
20016 2007-03-06  Bruno Haible  <bruno@clisp.org>
20017
20018         * modules/snprintf-posix-tests: New file.
20019         * tests/test-snprintf-posix.c: New file.
20020
20021         * modules/snprintf-posix: New file.
20022         * m4/snprintf-posix.m4: New file.
20023         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
20024         gl_FUNC_SNPRINTF.
20025         (gl_FUNC_SNPRINTF): Invoke it.
20026         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
20027         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
20028         is set.
20029         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
20030
20031 2007-03-06  Bruno Haible  <bruno@clisp.org>
20032
20033         * modules/vsnprintf-posix-tests: New file.
20034         * tests/test-vsnprintf-posix.c: New file.
20035         * tests/test-snprintf-posix.h: New file.
20036
20037         * modules/vsnprintf-posix: New file.
20038         * m4/vsnprintf-posix.m4: New file.
20039         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
20040         gl_FUNC_VSNPRINTF.
20041         (gl_FUNC_VSNPRINTF): Invoke it.
20042         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
20043         * lib/stdio_.h (vsnprintf): Define as a replacement if
20044         REPLACE_VSNPRINTF is set.
20045         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
20046
20047 2007-03-06  Bruno Haible  <bruno@clisp.org>
20048
20049         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
20050         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
20051
20052 2007-03-06  Bruno Haible  <bruno@clisp.org>
20053
20054         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
20055         (asinl): Declare also if HAVE_DECL_ASINL is set.
20056         (atanl): Declare also if HAVE_DECL_ATANL is set.
20057         (ceill): Declare also if HAVE_DECL_CEILL is set.
20058         (cosl): Declare also if HAVE_DECL_COSL is set.
20059         (expl): Declare also if HAVE_DECL_EXPL is set.
20060         (floorl): Declare also if HAVE_DECL_FLOORL is set.
20061         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
20062         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
20063         (logl): Declare also if HAVE_DECL_LOGL is set.
20064         (sinl): Declare also if HAVE_DECL_SINL is set.
20065         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
20066         (tanl): Declare also if HAVE_DECL_TANL is set.
20067         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
20068         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
20069         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
20070         declaration of frexpl, ldexpl.
20071         * modules/printf-frexpl (Depends-on): Add math.
20072         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
20073
20074 2007-03-05  Bruno Haible  <bruno@clisp.org>
20075
20076         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
20077         frexpl and ldexpl are declared.
20078         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
20079
20080 2007-03-05  Bruno Haible  <bruno@clisp.org>
20081
20082         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
20083         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
20084
20085 2007-03-05  Bruno Haible  <bruno@clisp.org>
20086
20087         * lib/stdio_.h: Include <stddef.h>.
20088
20089 2007-03-05  Bruno Haible  <bruno@clisp.org>
20090
20091         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
20092
20093 2007-03-05  Bruno Haible  <bruno@clisp.org>
20094
20095         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
20096         NetBSD 4, from Ralf Wildenhues.
20097
20098 2007-03-04  Bruno Haible  <bruno@clisp.org>
20099
20100         * lib/vasprintf.h: Update #if logic for the case when the functions
20101         exist but are overridden.
20102
20103 2007-03-04  Bruno Haible  <bruno@clisp.org>
20104
20105         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
20106         implementations: glibc-2.4 and MacOS X 10.3.
20107         * tests/test-vasnprintf-posix.c (test_function): Test also the case
20108         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
20109         * tests/test-vasprintf-posix.c (test_function): Likewise.
20110
20111 2007-03-04  Bruno Haible  <bruno@clisp.org>
20112
20113         * modules/vasprintf-posix-tests: New file.
20114         * tests/test-vasprintf-posix.c: New file.
20115
20116         * modules/vasprintf-posix: New file.
20117         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
20118         defined.
20119         * m4/vasprintf-posix.m4: New file.
20120         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
20121         gl_FUNC_VASPRINTF.
20122         (gl_FUNC_VASPRINTF): Invoke it.
20123         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
20124         here.
20125         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
20126
20127 2007-03-04  Bruno Haible  <bruno@clisp.org>
20128
20129         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
20130         REPLACE_GETTIMEOFDAY.
20131         * modules/sys_time (Makefile.am): Likewise.
20132         * m4/sys_time_h.m4: Likewise.
20133         * m4/gettimeofday.m4: Likewise.
20134
20135 2007-03-04  Bruno Haible  <bruno@clisp.org>
20136
20137         * modules/vasnprintf-posix-tests: New file.
20138         * tests/test-vasnprintf-posix.c: New file.
20139
20140         * modules/vasnprintf-posix: New file.
20141         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
20142         printf-frexpl.h.
20143         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
20144         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
20145         REPLACE_VASNPRINTF is defined.
20146         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
20147         gl_FUNC_VASNPRINTF.
20148         (gl_FUNC_VASNPRINTF): Invoke it.
20149         * m4/vasnprintf-posix.m4: New file.
20150         * m4/printf.m4: New file.
20151
20152 2007-03-04  Bruno Haible  <bruno@clisp.org>
20153
20154         Compile progreloc.c only if --enable-relocatable is specified.
20155         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
20156         if --enable-relocatable was specified.
20157         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
20158         lib_SOURCES.
20159
20160 2007-03-04  Jim Meyering  <jim@meyering.net>
20161
20162         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
20163         Use it consistently, rather than enumerating errno constants.
20164
20165 2007-03-04  Bruno Haible  <bruno@clisp.org>
20166
20167         * modules/xvasprintf-tests: New file.
20168         * tests/test-xvasprintf.c: New file.
20169
20170         * modules/vasprintf-tests: New file.
20171         * tests/test-vasprintf.c: New file.
20172
20173         * modules/vasnprintf-tests: New file.
20174         * tests/test-vasnprintf.c: New file.
20175
20176         * modules/vsnprintf-tests: New file.
20177         * tests/test-vsnprintf.c: New file.
20178
20179         * modules/snprintf-tests: New file.
20180         * tests/test-snprintf.c: New file.
20181
20182 2007-03-04  Bruno Haible  <bruno@clisp.org>
20183
20184         Compile relocatable.c only if --enable-relocatable is specified.
20185         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
20186         gl_RELOCATABLE_LIBRARY.
20187         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
20188         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
20189         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
20190         gl_RELOCATABLE_LIBRARY.
20191         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
20192         (Makefile.am): Remove lib_SOURCES.
20193         * modules/relocatable-lib-lgpl (configure.ac): Invoke
20194         gl_RELOCATABLE_LIBRARY.
20195         (Makefile.am): Remove lib_SOURCES.
20196         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
20197         always.
20198         * modules/relocatable-prog-wrapper (configure.ac): Invoke
20199         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
20200
20201 2007-03-04  Bruno Haible  <bruno@clisp.org>
20202
20203         * modules/argmatch-tests: New file.
20204         * tests/test-argmatch.c: New file.
20205
20206         * tests/test-allocsa.c (main): Halve the number of loop runs.
20207
20208         * modules/alloca-opt-tests: New file.
20209         * tests/test-alloca-opt.c: New file.
20210
20211 2007-03-04  Jim Meyering  <jim@meyering.net>
20212
20213         Work around difference between Linux ACLs and Solaris 10 ZFS.
20214         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
20215         for EINVAL.
20216
20217 2007-03-03  Bruno Haible  <bruno@clisp.org>
20218
20219         * modules/relocatable-prog (Depends-on): Add back progreloc's
20220         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
20221
20222 2007-03-03  Bruno Haible  <bruno@clisp.org>
20223
20224         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
20225         * modules/relocatable-lib: New file.
20226
20227 2007-03-03  Bruno Haible  <bruno@clisp.org>
20228
20229         * modules/relocatable-prog: Renamed from modules/relocatable.
20230         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
20231
20232 2007-03-03  Bruno Haible  <bruno@clisp.org>
20233
20234         * modules/relocatable-script (Files): Add doc/relocatable.texi,
20235         m4/relocatable-lib.m4.
20236         (Depends-on): Remove 'relocatable'.
20237         (configure.ac): Add gl_RELOCATABLE_NOP.
20238
20239 2007-03-03  Bruno Haible  <bruno@clisp.org>
20240
20241         * modules/relocatable-prog-wrapper: New file.
20242         * modules/relocatable (Depends-on): Add it. Remove all other
20243         dependencies except progname.
20244         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
20245
20246         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
20247         (gl_FUNC_STRERROR): Nop.
20248         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
20249
20250         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
20251         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
20252
20253         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
20254         (gl_FUNC_READLINK): Update.
20255
20256         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
20257
20258 2007-03-03  Bruno Haible  <bruno@clisp.org>
20259
20260         * lib/xreadlink.c: Include <unistd.h> unconditionally.
20261         * modules/xreadlink (Depends-on): Add unistd.
20262         * modules/xreadlink-with-size (Depends-on): Likewise.
20263
20264 2007-03-03  Bruno Haible  <bruno@clisp.org>
20265
20266         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
20267         extracted from gt_FUNC_SETENV.
20268         (gt_FUNC_SETENV): Remove macro.
20269         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
20270         remove gt_FUNC_SETENV.
20271
20272 2007-03-03  Bruno Haible  <bruno@clisp.org>
20273
20274         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
20275         ENABLE_RELOCATABLE here.
20276         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
20277
20278 2007-03-03  Bruno Haible  <bruno@clisp.org>
20279
20280         * modules/rbtreehash-list-tests (Depends-on): Add progname.
20281         * tests/test-rbtreehash_list.c: Include progname.h.
20282         (main): Call set_program_name.
20283
20284         * modules/rbtree-oset-tests (Depends-on): Add progname.
20285         * tests/test-rbtree_oset.c: Include progname.h.
20286         (main): Call set_program_name.
20287
20288         * modules/rbtree-list-tests (Depends-on): Add progname.
20289         * tests/test-rbtree_list.c: Include progname.h.
20290         (main): Call set_program_name.
20291
20292         * modules/linked-list-tests (Depends-on): Add progname.
20293         * tests/test-linked_list.c: Include progname.h.
20294         (main): Call set_program_name.
20295
20296 2007-03-03  Bruno Haible  <bruno@clisp.org>
20297
20298         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
20299         All uses of __restrict changed to _Restrict_.
20300         * lib/glob_.h (__restrict): Remove macro.
20301
20302 2007-03-02  Bruno Haible  <bruno@clisp.org>
20303
20304         * modules/gettext (configure.ac): Require gettext infrastructure
20305         from version 0.16.1.
20306
20307 2007-03-02  Bruno Haible  <bruno@clisp.org>
20308
20309         * modules/linkedhash-list-tests (Depends-on): Add progname.
20310         * tests/test-linkedhash_list.c: Include progname.h.
20311         (main): Call set_program_name.
20312
20313         * modules/carray-list-tests (Depends-on): Add progname.
20314         * tests/test-carray_list.c: Include progname.h.
20315         (main): Call set_program_name.
20316
20317         * modules/avltreehash-list-tests (Depends-on): Add progname.
20318         * tests/test-avltreehash_list.c: Include progname.h.
20319         (main): Call set_program_name.
20320
20321         * modules/avltree-oset-tests (Depends-on): Add progname.
20322         * tests/test-avltree_oset.c: Include progname.h.
20323         (main): Call set_program_name.
20324
20325         * modules/avltree-list-tests (Depends-on): Add progname.
20326         * tests/test-avltree_list.c: Include progname.h.
20327         (main): Call set_program_name.
20328
20329         * modules/array-oset-tests (Depends-on): Add progname.
20330         * tests/test-array_oset.c: Include progname.h.
20331         (main): Call set_program_name.
20332
20333         * modules/array-list-tests (Depends-on): Add progname.
20334         * tests/test-array_list.c: Include progname.h.
20335         (main): Call set_program_name.
20336
20337         * modules/argp-tests (Depends-on): Add progname.
20338         * tests/test-argp.c: Include argp.h first. Include progname.h.
20339         (main): Call set_program_name.
20340
20341 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
20342
20343         * doc/gnulib-tool.texi (Initial import): Reword description of
20344         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
20345         limited effect even if defined after the first system include.
20346
20347 2007-03-01  Bruno Haible  <bruno@clisp.org>
20348
20349         * build-aux/config.libpath: Update to libtool-1.5.22.
20350         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
20351
20352 2007-03-01  Bruno Haible  <bruno@clisp.org>
20353
20354         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
20355         foo_CFLAGS.
20356         Reported by Ralf Wildenhues.
20357
20358 2007-03-01  Bruno Haible  <bruno@clisp.org>
20359
20360         * build-aux/install-reloc: Remove object files left over by some
20361         compilers.
20362         Reported by Ralf Wildenhues.
20363
20364 2007-03-01  Bruno Haible  <bruno@clisp.org>
20365
20366         * build-aux/install-reloc: Break long lines.
20367
20368 2007-03-01  Bruno Haible  <bruno@clisp.org>
20369
20370         * doc/relocatable.texi: Document that it may not work on OpenBSD.
20371         Reported by Ralf Wildenhues.
20372
20373 2007-03-01  Bruno Haible  <bruno@clisp.org>
20374
20375         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
20376         include ordering constraints.
20377
20378 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
20379
20380         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
20381         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
20382         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
20383         as another example.
20384         * lib/time_.h: Fix misspelling.
20385         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
20386         Require gl_HEADER_TIME_H_DEFAULTS.
20387         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
20388         * m4/time_r.m4 (gl_TIME_R): Likewise.
20389         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
20390
20391 2007-03-01  Bruno Haible  <bruno@clisp.org>
20392
20393         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
20394         * m4/utimens.m4 (gl_UTIMENS): Likewise.
20395
20396 2007-03-01  Jim Meyering  <jim@meyering.net>
20397
20398         * modules/xreadlink (Maintainer): Add my name.
20399         * modules/xreadlink-with-size (Depends-on): Alphabetize.
20400
20401 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
20402             Bruno Haible  <bruno@clisp.org>
20403
20404         * build-aux/install-reloc: Compile also c-ctype.c.
20405         * build-aux/relocatable.sh.in: New file.
20406         * doc/relocatable.texi: New file.
20407         * doc/relocatable-maint.texi: New file.
20408         * doc/gnulib.texi: Include relocatable-maint.texi.
20409         * lib/progreloc.c: Include unistd.h unconditionally.
20410         * lib/relocwrapper.c: Include unistd.h unconditionally.
20411         Include c-ctype.h.
20412         (add_dotbin): Use c_tolower.
20413         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
20414         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
20415         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
20416         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
20417         to m4/relocatable-lib.m4.
20418         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
20419         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
20420         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
20421         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
20422         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
20423         * modules/relocatable: New file.
20424         * modules/relocatable-lib: New file.
20425         * modules/relocatable-script: New file.
20426
20427 2007-02-28  Bruno Haible  <bruno@clisp.org>
20428
20429         Import --enable-relocatable infrastructure.
20430         * build-aux/config.libpath: New file, from GNU gettext.
20431         * build-aux/install-reloc: New file, from GNU gettext.
20432         * build-aux/reloc-ldflags: New file, from GNU gettext.
20433         * lib/relocatable.h: New file, from GNU gettext.
20434         * lib/relocatable.c: New file, from GNU gettext.
20435         * lib/relocwrapper.c: New file, from GNU gettext.
20436         * m4/relocatable.m4: New file, from GNU gettext.
20437
20438 2007-02-28  Bruno Haible  <bruno@clisp.org>
20439
20440         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
20441
20442         * modules/xreadlink: New file, from GNU gettext with modifications.
20443         * lib/xreadlink.c: New file, from GNU gettext.
20444         * lib/xreadlink.h: Add comments.
20445         (xreadlink): New declaration.
20446
20447         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
20448         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
20449         lib/xreadlink-with-size.c.
20450         (configure.ac): Remove gl_XREADLINK invocation.
20451         (Makefile.am): Augment lib_SOURCES.
20452         * m4/xreadlink.m4: Remove file.
20453         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
20454         (xreadlink_with_size): Renamed from xreadink.
20455         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
20456         * modules/canonicalize (Depends-on): Replace xreadlink with
20457         xreadlink-with-size.
20458         * lib/canonicalize.c (canonicalize_filename_mode): Update.
20459
20460 2007-02-25  Jim Meyering  <jim@meyering.net>
20461
20462         * build-aux/announce-gen: When complaining about excess arguments,
20463         list them.
20464
20465 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
20466
20467         * README: Document signed integer overflow situation more
20468         accurately.
20469
20470 2007-02-25  Bruno Haible  <bruno@clisp.org>
20471
20472         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
20473         'a' or 'A' conversion.
20474
20475 2007-02-25  Bruno Haible  <bruno@clisp.org>
20476
20477         * modules/filename: Renamed from modules/pathname.
20478         (Files): Replace lib/pathname.h with lib/filename.h. Replace
20479         lib/concatpath.c with lib/concat-filename.c.
20480         (Makefile.am): Update.
20481         (Include): Replace pathname.h with filename.h.
20482         * lib/filename.h: Renamed from lib/pathname.h.
20483         (concatenated_filename): Renamed from concatenated_pathname.
20484         * lib/concat-filename.c: Renamed from lib/concatpath.c.
20485         (concatenated_filename): Renamed from concatenated_pathname.
20486         * lib/findprog.c: Include filename.h instead of pathname.h.
20487         (find_in_path): Update.
20488         * lib/javacomp.c: Include filename.h instead of pathname.h.
20489         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
20490         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
20491         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
20492         is_oldgcj_14_13_usable, is_javac_usable): Update.
20493         * lib/javaexec.c: Include filename.h instead of pathname.h.
20494         (execute_java_class): Update.
20495         * modules/findprog: Update.
20496         * modules/javacomp: Update.
20497         * modules/javaexec: Update.
20498         * MODULES.html.sh (File system functions): Add 'filename', remove
20499         'pathname'.
20500
20501 2007-02-25  Bruno Haible  <bruno@clisp.org>
20502
20503         * modules/printf-frexpl-tests: New file.
20504         * tests/test-printf-frexpl.c: New file.
20505
20506         * modules/printf-frexpl: New file.
20507         * lib/printf-frexpl.h: New file.
20508         * lib/printf-frexpl.c: New file.
20509         * m4/printf-frexpl.m4: New file.
20510
20511 2007-02-25  Bruno Haible  <bruno@clisp.org>
20512
20513         * modules/printf-frexp-tests: New file.
20514         * tests/test-printf-frexp.c: New file.
20515
20516         * modules/printf-frexp: New file.
20517         * lib/printf-frexp.h: New file.
20518         * lib/printf-frexp.c: New file.
20519         * m4/printf-frexp.m4: New file.
20520
20521 2007-02-25  Bruno Haible  <bruno@clisp.org>
20522
20523         Assume automake >= 1.10 for the tests.
20524         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
20525         * modules/arctwo-tests: Likewise.
20526         * modules/argp-tests: Likewise.
20527         * modules/avltree-list-tests: Likewise.
20528         * modules/avltree-oset-tests: Likewise.
20529         * modules/avltreehash-list-tests: Likewise.
20530         * modules/carray-list-tests: Likewise.
20531         * modules/crc-tests: Likewise.
20532         * modules/des-tests: Likewise.
20533         * modules/gc-arcfour-tests: Likewise.
20534         * modules/gc-arctwo-tests: Likewise.
20535         * modules/gc-des-tests: Likewise.
20536         * modules/gc-hmac-md5-tests: Likewise.
20537         * modules/gc-hmac-sha1-tests: Likewise.
20538         * modules/gc-md2-tests: Likewise.
20539         * modules/gc-md4-tests: Likewise.
20540         * modules/gc-md5-tests: Likewise.
20541         * modules/gc-pbkdf2-sha1-tests: Likewise.
20542         * modules/gc-rijndael-tests: Likewise.
20543         * modules/gc-sha1-tests: Likewise.
20544         * modules/gc-tests: Likewise.
20545         * modules/getaddrinfo-tests: Likewise.
20546         * modules/hmac-md5-tests: Likewise.
20547         * modules/hmac-sha1-tests: Likewise.
20548         * modules/linked-list-tests: Likewise.
20549         * modules/linkedhash-list-tests: Likewise.
20550         * modules/lock-tests: Likewise.
20551         * modules/md2-tests: Likewise.
20552         * modules/md4-tests: Likewise.
20553         * modules/md5-tests: Likewise.
20554         * modules/rbtree-list-tests: Likewise.
20555         * modules/rbtree-oset-tests: Likewise.
20556         * modules/rbtreehash-list-tests: Likewise.
20557         * modules/read-file-tests: Likewise.
20558         * modules/rijndael-tests: Likewise.
20559         * modules/stdint-tests: Likewise.
20560         * modules/tls-tests: Likewise.
20561
20562 2007-02-24  Bruno Haible  <bruno@clisp.org>
20563
20564         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
20565         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
20566         function; instead check whether isnan with a double argument links.
20567         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
20568         function; instead check whether isnan with a 'long double' argument
20569         links.
20570         Reported by Eric Blake <ebb9@byu.net>.
20571
20572 2007-02-24  Bruno Haible  <bruno@clisp.org>
20573
20574         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
20575         defined.
20576         * lib/isnanl.c: Remove all code. Just include isnan.c.
20577         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
20578
20579 2007-02-25  Jim Meyering  <jim@meyering.net>
20580
20581         Avoid conflicting types for 'unsetenv' on FreeBSD.
20582         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
20583         conflicting with FreeBSD's (5.0 and 6.1) function declaration
20584         in stdlib.h.
20585
20586 2007-02-24  Bruno Haible  <bruno@clisp.org>
20587
20588         * modules/isnanl-nolibm-tests: New file.
20589         * tests/test-isnanl.c: New file.
20590
20591         * modules/isnanl-nolibm: New file.
20592         * lib/isnanl.h: New file.
20593         * lib/isnanl.c: New file.
20594         * m4/isnanl.m4: New file.
20595
20596 2007-02-24  Bruno Haible  <bruno@clisp.org>
20597
20598         * modules/isnan-nolibm-tests: New file.
20599         * tests/test-isnan.c: New file.
20600
20601         * modules/isnan-nolibm: New file.
20602         * lib/isnan.h: New file.
20603         * lib/isnan.c: New file.
20604         * m4/isnan.m4: New file.
20605
20606 2007-02-24  Bruno Haible  <bruno@clisp.org>
20607
20608         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
20609         assume that an exponent fits in 20 bits.
20610
20611 2007-02-24  Jim Meyering  <jim@meyering.net>
20612
20613         * m4/regex.m4: Update the description of the configure-time option,
20614         --without-included-regex, to state accurately what the defaults are,
20615         and perhaps to give people an idea why using this option is risky.
20616
20617 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
20618
20619         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
20620         loops on small arguments.  This attempts to avoid the problem
20621         Bruno Haible reported for AIX 4.3.2 in
20622         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
20623
20624 2007-02-23  Bruno Haible  <bruno@clisp.org>
20625
20626         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
20627         Needed for help2man.
20628
20629 2007-02-23  Karl Berry  <karl@gnu.org>
20630
20631         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
20632         exists, foo.h should be cvs-ignored, not committed.
20633
20634 2007-02-23  Eric Blake  <ebb9@byu.net>
20635
20636         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
20637         * lib/stat-time.h (includes): Likewise.
20638         * lib/utimecmp.c (includes): Likewise.
20639         * lib/utimens.h (includes): Likewise.
20640         * lib/getdate.y (includes): Also include "timespec.h" for use
20641         internal to the module.
20642         * modules/utimens (Depends-on): Revert yesterday's patch.
20643         * modules/nanosleep (Depends-on): Add missing dependency.
20644
20645 2007-02-22  Bruno Haible  <bruno@clisp.org>
20646
20647         * lib/glob.c: Don't include getlogin_r.h.
20648
20649 2007-02-22  Jim Meyering  <jim@meyering.net>
20650
20651         * modules/utimens (Depends-on): Add timespec, required for
20652         utimens.h's inclusion of timespec.h.
20653
20654 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
20655
20656         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
20657         long unreadable paths in GNU/Linux.  Problem reported by Andreas
20658         Schwab in
20659         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
20660         I'll try to think of a better way to fix the Solaris problem.
20661
20662         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
20663         like glibc; on Solaris 10, it fails with errno == EINVAL.
20664         POSIX says the behavior is unspecified if the first argument is NULL,
20665         so play it safe and never pass NULL to the system getcwd.
20666
20667 2007-02-21  Jim Meyering  <jim@meyering.net>
20668
20669         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
20670         of gettimeofday.  It would conflict with the one now always
20671         provided via sys_time_.h.  Reported by Matthew Woehlke, as
20672         an IRIX 6.5 build failure.
20673
20674 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
20675
20676         Minor fixups to port to Solaris 10 with Sun C 5.8.
20677         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
20678         * modules/getcwd (Depends-on): Add dirfd.
20679         * lib/putenv.c (putenv): #undef it.
20680         (rpl_putenv): New decl.
20681         (malloc, free): Include <stdlib.h> rather than prototyping separately.
20682
20683 2007-02-20  Bruno Haible  <bruno@clisp.org>
20684
20685         * modules/stdio-tests: New file.
20686         * tests/test-stdio.c: New file.
20687
20688         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
20689         (Depends-on): Add stdio.
20690         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
20691         (Include): Use <stdio.h> instead of vsnprintf.h.
20692         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
20693         HAVE_DECL_VSNPRINTF.
20694         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
20695
20696         * modules/snprintf (Files): Remove lib/snprintf.h.
20697         (Depends-on): Add stdio.
20698         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
20699         (Include): Use <stdio.h> instead of snprintf.h.
20700         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
20701         HAVE_DECL_SNPRINTF.
20702         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
20703         * lib/getaddrinfo.c: Likewise.
20704
20705         * modules/stdio: New file.
20706         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
20707         * lib/snprintf.h: Remove file.
20708         * lib/vsnprintf.h: Remove file.
20709         * lib/.cppi-disable: Remove snprintf.h.
20710         * m4/stdio_h.m4: New file.
20711         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
20712
20713 2007-02-20  Jim Meyering  <jim@meyering.net>
20714
20715         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
20716         used by e.g., mingw.  From Bruno Haible.
20717
20718 2007-02-19  Bruno Haible  <bruno@clisp.org>
20719
20720         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
20721         warnings.
20722         Reported by Ben Pfaff <blp@cs.stanford.edu>.
20723
20724 2007-02-19  Bruno Haible  <bruno@clisp.org>
20725
20726         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
20727         from mingw users.
20728
20729 2007-02-19  Bruno Haible  <bruno@clisp.org>
20730
20731         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
20732         warnings.
20733         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
20734
20735 2007-02-19  Jim Meyering  <jim@meyering.net>
20736
20737         Don't use FD after a successful "fdopendir (fd)".
20738         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
20739         Reset it by calling dirfd on the just-obtained DIR*.
20740
20741         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
20742         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
20743
20744 2007-02-18  Bruno Haible  <bruno@clisp.org>
20745
20746         * lib/readlink.c: Include <unistd.h>.
20747         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
20748         HAVE_READLINK.
20749         * modules/readlink (Depends-on): Add unistd.
20750         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20751         (Include): Add <unistd.h>.
20752
20753         * lib/getlogin_r.h: Remove file.
20754         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
20755         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
20756         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
20757         HAVE_DECL_GETLOGIN_R.
20758         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
20759         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20760         (Include): Use <unistd.h> instead of getlogin_r.h.
20761
20762         * lib/getcwd.h: Remove file.
20763         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
20764         * lib/xgetcwd.c: Likewise.
20765         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
20766         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
20767         * modules/getcwd (Files): Remove lib/getcwd.h.
20768         (Depends-on): Add unistd.
20769         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20770         (Include): Use <unistd.h> instad of getcwd.h.
20771
20772         * lib/ftruncate.c: Include <unistd.h> first.
20773         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
20774         Set HAVE_FTRUNCATE.
20775         * modules/ftruncate (Depends-on): Add unistd.
20776         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20777
20778         * lib/fchdir.c: Include <unistd.h> first.
20779         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
20780         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
20781         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
20782         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20783         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
20784
20785         * lib/dup2.c: Include <unistd.h> first.
20786         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
20787         HAVE_DUP2.
20788         * modules/dup2 (Depends-on): Add unistd.
20789         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20790
20791         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
20792         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
20793         REPLACE_CHOWN. Don't define chown as a macro here.
20794         * modules/chown (Depends-on): Add unistd.
20795         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20796
20797         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
20798         Add definition for GL_LINK_WARNING.
20799         (chown, dup2): New declarations.
20800         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
20801         link warning.
20802         (ftruncate): New declaration.
20803         (getcwd): New declaration, taken from old getcwd.h.
20804         (getlogin_r): New declaration, taken from old getlogin_r.h.
20805         (readlink): New declaration.
20806         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
20807         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
20808         (gl_PREREQ_UNISTD): Remove macro.
20809         (gl_UNISTD_MODULE_INDICATOR): New macro.
20810         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
20811         many new variables. Don't set UNISTD_H.
20812         * modules/unistd (Description): Change.
20813         (Depends-on): Add link-warning.
20814         (configure.ac): Update.
20815         (Makefile.am): Create unistd.h always. Substitute many new variables
20816         into it.
20817
20818 2007-02-18  Bruno Haible  <bruno@clisp.org>
20819
20820         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
20821         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
20822         HAVE_GETSUBOPT.
20823         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
20824         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
20825         * lib/getsubopt.h: Remove file.
20826         * modules/getsubopt (Files): Remove lib/getsubopt.h.
20827         (Depends-on): Add stdlib.
20828         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
20829         (Includes): Use <stdlib.h> instead of getsubopt.h.
20830         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
20831         Set HAVE_GETSUBOPT.
20832         * lib/getsubopt.c: Don't include getsubopt.h.
20833
20834 2007-02-18  Bruno Haible  <bruno@clisp.org>
20835
20836         * modules/fchdir (Depends-on): Add dup2.
20837
20838 2007-02-18  Bruno Haible  <bruno@clisp.org>
20839
20840         * lib/stdlib_.h: Handle glibc's special invocation convention
20841         specially.
20842
20843 2007-02-18  Bruno Haible  <bruno@clisp.org>
20844
20845         * modules/stdlib-tests: New file.
20846         * tests/test-stdlib.c: New file.
20847
20848         * modules/mkstemp (Files): Remove lib/mkstemp.h.
20849         (Depends-on): Add stdlib.
20850         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
20851         (Includes): Use <stdlib.h> instead of mkstemp.h.
20852         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
20853         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
20854         * lib/mkstemp.c: Don't include mkstemp.h.
20855         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
20856         * lib/stdlib--.h: Don't include mkstemp.h.
20857
20858         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
20859         (Depends-on): Add stdlib.
20860         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
20861         (Includes): Use <stdlib.h> instead of mkdtemp.h.
20862         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
20863         HAVE_MKDTEMP.
20864         * lib/mkdtemp.c: Don't include mkdtemp.h.
20865         * lib/clean-temp.c: Don't include mkdtemp.h.
20866
20867         * modules/exit (Files): Remove lib/exit.h.
20868         (Depends-on): Add stdlib.
20869         (Makefile.am): Remove lib_SOURCES.
20870         (Include): Use <stdlib.h> instead of exit.h.
20871         * lib/argmatch.c: Don't include exit.h.
20872         * lib/execute.c: Likewise.
20873         * lib/pagealign_alloc.c: Likewise.
20874         * lib/pipe.c: Likewise.
20875         * lib/wait-process.c: Likewise.
20876         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
20877         * lib/exitfail.c: Likewise.
20878         * lib/savewd.c: Likewise.
20879         * lib/xsetenv.c: Likewise.
20880
20881         * modules/stdlib: New file.
20882         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
20883         and extra comments about mkstemp().
20884         * lib/exit.h: Remove file.
20885         * lib/mkdtemp.h: Remove file.
20886         * lib/mkstemp.h: Remove file.
20887         * m4/stdlib_h.m4: New file.
20888         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
20889
20890 2007-02-18  Bruno Haible  <bruno@clisp.org>
20891
20892         * modules/math-tests: New file.
20893         * tests/test-math.c: New file.
20894
20895         * modules/math: New file.
20896         * modules/mathl (Files): Remove lib/mathl.h.
20897         (Depends-on): Add math.
20898         (Makefile.am): Don't mention mathl.h.
20899         (Include): Use <math.h> instead of mathl.h.
20900         * lib/math_.h: New file.
20901         * lib/mathl.h: Remove file.
20902         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
20903         mathl.h.
20904         * lib/asinl.c: Likewise.
20905         * lib/atanl.c: Likewise.
20906         * lib/ceill.c: Likewise.
20907         * lib/cosl.c: Likewise.
20908         * lib/expl.c: Likewise.
20909         * lib/floorl.c: Likewise.
20910         * lib/frexpl.c: Likewise.
20911         * lib/ldexpl.c: Likewise.
20912         * lib/logl.c: Likewise.
20913         * lib/sincosl.c: Likewise.
20914         * lib/sinl.c: Likewise.
20915         * lib/sqrtl.c: Likewise.
20916         * lib/tanl.c: Likewise.
20917         * lib/trigl.c: Likewise.
20918         * m4/math_h.m4: New file.
20919         * MODULES.html.sh (Mathematics): Add math.
20920
20921 2007-02-17  Bruno Haible  <bruno@clisp.org>
20922
20923         * modules/wctype-tests: New file.
20924         * tests/test-wctype.c: New file.
20925
20926         * modules/wchar-tests: New file.
20927         * tests/test-wchar.c: New file.
20928
20929         * modules/unistd-tests: New file.
20930         * tests/test-unistd.c: New file.
20931
20932         * modules/time-tests: New file.
20933         * tests/test-time.c: New file.
20934
20935         * modules/sysexits-tests: New file.
20936         * tests/test-sysexits.c: New file.
20937
20938         * modules/sys_time-tests: New file.
20939         * tests/test-sys_time.c: New file.
20940
20941         * modules/sys_stat-tests: New file.
20942         * tests/test-sys_stat.c: New file.
20943
20944         * modules/sys_socket-tests: New file.
20945         * tests/test-sys_socket.c: New file.
20946
20947         * modules/sys_select-tests: New file.
20948         * tests/test-sys_select.c: New file.
20949
20950         * modules/string-tests: New file.
20951         * tests/test-string.c: New file.
20952
20953         * modules/stdbool-tests: New file.
20954         * tests/test-stdbool.c: New file.
20955
20956         * modules/netinet_in-tests: New file.
20957         * tests/test-netinet_in.c: New file.
20958
20959         * modules/inttypes-tests: New file.
20960         * tests/test-inttypes.c: New file.
20961
20962         * modules/fcntl-tests: New file.
20963         * tests/test-fcntl.c: New file.
20964
20965         * modules/byteswap-tests: New file.
20966         * tests/test-byteswap.c: New file.
20967
20968         * modules/arpa_inet-tests: New file.
20969         * tests/test-arpa_inet.c: New file.
20970
20971 2007-02-17  Bruno Haible  <bruno@clisp.org>
20972
20973         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
20974         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
20975         if the corresponding module is not enabled. Emit link warnings if
20976         the function is used nevertheless.
20977         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
20978         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
20979         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
20980         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
20981         * modules/inttypes (Depends-on): Add link-warning.
20982         (Makefile.am): Copy the contents of build-aux/link-warning.h into
20983         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
20984         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
20985         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
20986         * modules/imaxdiv (configure.ac): Likewise.
20987         * modules/strtoimax (configure.ac): Likewise.
20988         * modules/strtoumax (configure.ac): Likewise.
20989
20990 2007-02-17  Bruno Haible  <bruno@clisp.org>
20991
20992         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
20993         gl_STRING_MODULE_INDICATOR_DEFAULTS.
20994         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
20995         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
20996
20997 2007-02-17  Bruno Haible  <bruno@clisp.org>
20998
20999         * modules/link-warning: New file.
21000         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
21001         * lib/string_.h (GL_LINK_WARNING): Remove definition.
21002         * modules/string (Depends-on): Add link-warning.
21003         (Makefile.am): Copy the contents of build-aux/link-warning.h into
21004         string.h.
21005         * MODULES.html.sh (Support for building libraries and executables): Add
21006         link-warning.
21007
21008 2007-02-17  Bruno Haible  <bruno@clisp.org>
21009
21010         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
21011         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
21012         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
21013         long lines.
21014
21015 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
21016             Bruno Haible  <bruno@clisp.org>
21017
21018         * modules/tmpfile: New file.
21019         * lib/tmpfile.c: New file.
21020         * m4/tmpfile.m4: New file.
21021         * MODULES.html.sh (func_all_modules): New section "Input/output".
21022
21023 2007-02-15  Bruno Haible  <bruno@clisp.org>
21024
21025         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
21026         (supports_delete_on_close): New function.
21027         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
21028
21029 2007-02-14  Bruno Haible  <bruno@clisp.org>
21030
21031         * modules/mbspcasecmp-tests: New file.
21032         * tests/test-mbspcasecmp.sh: New file.
21033         * tests/test-mbspcasecmp.c: New file.
21034
21035         New module mbspcasecmp.
21036         * modules/mbspcasecmp: New file.
21037         * lib/mbspcasecmp.c: New file.
21038         * lib/string_.h (strncasecmp): Change warning message.
21039         (mbspcasecmp): New declaration.
21040         * m4/mbspcasecmp.m4: New file.
21041         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21042         GNULIB_MBSPCASECMP.
21043         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
21044         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
21045
21046 2007-02-14  Bruno Haible  <bruno@clisp.org>
21047
21048         * modules/mbsncasecmp-tests: New file.
21049         * tests/test-mbsncasecmp.sh: New file.
21050         * tests/test-mbsncasecmp.c: New file.
21051
21052         New module mbsncasecmp.
21053         * modules/mbsncasecmp: New file.
21054         * lib/mbsncasecmp.c: New file.
21055         * lib/string_.h (mbsncasecmp): New declaration.
21056         * m4/mbsncasecmp.m4: New file.
21057         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21058         GNULIB_MBSNCASECMP.
21059         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
21060         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
21061
21062 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
21063
21064         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
21065         Verify that it doesn't overlap with our flags.
21066         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
21067         do not have the desired effect in multibyte locales; instead, use
21068         mbscasecmp.
21069         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
21070         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
21071         we don't require GNU fnmatch ourselves (if our users require it, they
21072         should do so explicitly).
21073
21074         Fix regex code so it doesn't rely on strcasecmp.
21075         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
21076         Otherwise, include gnulib's langinfo.h.
21077         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
21078         undesirable behavior in non-C locales.  Instead, rely on localecharset.
21079         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
21080         * modules/regex (FILES): Remove m4/codeset.m4.
21081         (Depends-on): Add localcharset.  Remove strcase.
21082
21083 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21084
21085         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
21086         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
21087
21088 2007-02-13  Bruno Haible  <bruno@clisp.org>
21089
21090         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
21091         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
21092
21093 2007-02-12  Bruno Haible  <bruno@clisp.org>
21094
21095         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
21096         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
21097         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
21098         time warning rather than a link error.
21099
21100 2007-02-12  Bruno Haible  <bruno@clisp.org>
21101
21102         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
21103         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
21104         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
21105
21106 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
21107
21108         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
21109         args, not 2.
21110
21111 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
21112
21113         New module 'time', so that apps can include <time.h> as per
21114         POSIX and GNU instead of separate include files like time_r.h
21115         and timegm.h.  This implementation tries out a simpler approach
21116         for replacing decls in standard include files (as compared to
21117         the string module), somewhat as an experiment.
21118
21119         * config/srclist.txt: Comment out mktime.c for now.
21120         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
21121         since it doesn't apply any more.  Use generic wording instead.
21122         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
21123         'time'.
21124         * lib/time_.h, m4/time_h.m4, modules/time: New files.
21125         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
21126         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
21127         Don't include <sys/types.h>; no longer needed since we assume C89.
21128         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
21129         * lib/strftime.c: Likewise.
21130         * lib/time_r.c: Likewise.
21131         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
21132         * lib/nanosleep.c: Include <time.h> first, to check interface.
21133         * lib/strptime.c: Likewise.
21134         * lib/time_r.c: Likewise.
21135         * lib/timegm.c: Likewise.
21136         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
21137         needed.
21138         * lib/timegm.c: Don't include timegm.h; no longer needed.
21139         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
21140         time.h now handles any problems in that area.
21141         (struct timespec, nanosleep): Remove; time.h now arranges for these.
21142         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
21143         that time.h defines struct timespec.
21144         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
21145         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
21146         handles that.
21147         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
21148         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
21149         needed.  Set REPLACE_LOCALTIME.
21150         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
21151         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
21152         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
21153         nanosleep; time_h.m4 now does that.  Don't require
21154         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
21155         module handles this now.
21156         * modules/getdate (Depends-on): Remove timespec.  Add time.
21157         * modules/nanosleep (Depends-on): Likewise.
21158         * modules/stat-time (Depends-on): Likewise.
21159         * modules/nanosleep (Include): Include time.h, not timespec.h.
21160         * modules/strptime (Files): Remove lib/strptime.h.
21161         (Depends-on): Add extensions, time.
21162         (Include): Include time.h, not strptime.h.
21163         * modules/time_r (Files): Remove lib/time_r.h.
21164         (Depends-on): Add time.
21165         (Include): Include time.h, not time_r.h.
21166         * modules/timegm: Likewise.
21167         * modules/timespec (Description): Now does timespec-related decls
21168         of our own, instead of struct timespec itself.
21169         (Depends-on): Add time; remove extensions.
21170         (Maintainer): Add self.
21171         * modules/utimecmp (Depends-on): Add time; remove timespec.
21172         * modules/utimens (Depends-on): Likewise.
21173         * modules/xnanosleep (Depends-on): Likewise.
21174
21175 2007-02-11  Bruno Haible  <bruno@clisp.org>
21176
21177         * lib/c-strstr.c: Include allocsa.h.
21178         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
21179         * lib/c-strcasestr.c: Include allocsa.h.
21180         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
21181         * lib/strcasestr.c: Include allocsa.h.
21182         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
21183         * lib/mbsstr.c: Include allocsa.h.
21184         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
21185         allocsa/freesa instead of malloc/free.
21186         * lib/mbscasestr.c: Include allocsa.h.
21187         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
21188         allocsa/freesa instead of malloc/free.
21189         * modules/c-strstr (Depends-on): Add allocsa.
21190         * modules/c-strcasestr (Depends-on): Likewise.
21191         * modules/strcasestr (Depends-on): Likewise.
21192         * modules/mbsstr (Depends-on): Likewise.
21193         * modules/mbscasestr (Depends-on): Likewise.
21194
21195 2007-02-11  Bruno Haible  <bruno@clisp.org>
21196
21197         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
21198
21199         * modules/mbsspn-tests: New file.
21200         * tests/test-mbsspn.sh: New file.
21201         * tests/test-mbsspn.c: New file.
21202
21203 2007-02-11  Bruno Haible  <bruno@clisp.org>
21204
21205         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
21206
21207         * modules/mbspbrk-tests: New file.
21208         * tests/test-mbspbrk.sh: New file.
21209         * tests/test-mbspbrk.c: New file.
21210
21211 2007-02-11  Bruno Haible  <bruno@clisp.org>
21212
21213         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
21214         unneeded cast.
21215
21216         * modules/mbscspn-tests: New file.
21217         * tests/test-mbscspn.sh: New file.
21218         * tests/test-mbscspn.c: New file.
21219
21220 2007-02-11  Bruno Haible  <bruno@clisp.org>
21221
21222         * modules/mbscasecmp-tests: New file.
21223         * tests/test-mbscasecmp.sh: New file.
21224         * tests/test-mbscasecmp.c: New file.
21225
21226 2007-02-11  Bruno Haible  <bruno@clisp.org>
21227
21228         Ensure O(n) worst-case complexity of mbscasestr.
21229         * lib/mbscasestr.c: Include stdbool.h.
21230         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
21231         functions.
21232         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
21233         the bookkeeping indicates that it's worth it.
21234         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
21235
21236         * modules/mbscasestr-tests: New file.
21237         * tests/test-mbscasestr1.c: New file.
21238         * tests/test-mbscasestr2.sh: New file.
21239         * tests/test-mbscasestr2.c: New file.
21240         * tests/test-mbscasestr3.sh: New file.
21241         * tests/test-mbscasestr3.c: New file.
21242         * tests/test-mbscasestr4.sh: New file.
21243         * tests/test-mbscasestr4.c: New file.
21244         * m4/locale-tr.m4: New file.
21245
21246 2007-02-11  Bruno Haible  <bruno@clisp.org>
21247
21248         Ensure O(n) worst-case complexity of mbsstr.
21249         * lib/mbsstr.c: Include stdbool.h.
21250         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
21251         functions.
21252         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
21253         bookkeeping indicates that it's worth it.
21254         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
21255
21256         * modules/mbsstr-tests: New file.
21257         * tests/test-mbsstr1.c: New file.
21258         * tests/test-mbsstr2.sh: New file.
21259         * tests/test-mbsstr2.c: New file.
21260         * tests/test-mbsstr3.sh: New file.
21261         * tests/test-mbsstr3.c: New file.
21262         * m4/locale-fr.m4: New file.
21263
21264 2007-02-11  Bruno Haible  <bruno@clisp.org>
21265
21266         * lib/mbsrchr.c (mbsrchr): Fix bug.
21267
21268         * modules/mbsrchr-tests: New file.
21269         * tests/test-mbsrchr.sh: New file.
21270         * tests/test-mbsrchr.c: New file.
21271
21272 2007-02-11  Bruno Haible  <bruno@clisp.org>
21273
21274         * lib/mbschr.c (mbschr): Fix bug.
21275
21276         * modules/mbschr-tests: New file.
21277         * tests/test-mbschr.sh: New file.
21278         * tests/test-mbschr.c: New file.
21279         * m4/locale-zh.m4: New file.
21280
21281 2007-02-11  Bruno Haible  <bruno@clisp.org>
21282
21283         Support for copying multibyte string iterators.
21284         * lib/mbiter.h: Include <string.h>.
21285         (mbiter_multi_copy): New function.
21286         (mbi_copy): New macro.
21287         * lib/mbuiter.h: Include <string.h>.
21288         (mbuiter_multi_copy): New function.
21289         (mbui_copy): New macro.
21290
21291 2007-02-11  Bruno Haible  <bruno@clisp.org>
21292
21293         New module mbslen.
21294         * modules/mbslen: New file.
21295         * lib/mbslen.c: New file.
21296         * lib/string_.h (mbslen): New declaration.
21297         * m4/mbslen.m4: New file.
21298         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21299         GNULIB_MBSLEN.
21300         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
21301         * MODULES.html.sh (Internationalization functions): Add mbslen.
21302
21303 2007-02-11  Bruno Haible  <bruno@clisp.org>
21304
21305         Ensure O(n) worst-case complexity of strcasestr substitute.
21306         * lib/strcasestr.c: Include stdbool.h.
21307         (knuth_morris_pratt): New function.
21308         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
21309         bookkeeping indicates that it's worth it.
21310         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
21311
21312         * modules/strcasestr-tests: New file.
21313         * tests/test-strcasestr.c: New file.
21314
21315 2007-02-11  Bruno Haible  <bruno@clisp.org>
21316
21317         Ensure O(n) worst-case complexity of c_strcasestr.
21318         * lib/c-strcasestr.c: Include stdbool.h, string.h.
21319         (knuth_morris_pratt): New function.
21320         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
21321         the bookkeeping indicates that it's worth it.
21322         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
21323
21324         * modules/c-strcasestr-tests: New file.
21325         * tests/test-c-strcasestr.c: New file.
21326
21327 2007-02-11  Bruno Haible  <bruno@clisp.org>
21328
21329         Ensure O(n) worst-case complexity of c_strstr.
21330         * lib/c-strstr.c: Include stdbool.h, string.h.
21331         (knuth_morris_pratt): New function.
21332         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
21333         bookkeeping indicates that it's worth it.
21334         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
21335
21336         * lib/c-strstr.c: Complete rewrite for maintainability.
21337
21338         * modules/c-strstr-tests: New file.
21339         * tests/test-c-strstr.c: New file.
21340
21341 2007-02-11  Bruno Haible  <bruno@clisp.org>
21342
21343         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
21344         5.2.1 and earlier, whereby \055 was treated just like the range
21345         delimiter '-'.
21346         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
21347
21348 2007-02-08  Bruno Haible  <bruno@clisp.org>
21349
21350         * modules/regex (Depends-on): Add stdbool.
21351         Reported by Dalibor Topic <robilad@kaffe.org>.
21352
21353 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
21354
21355         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
21356         Prefer returning from main to exiting from it.
21357         Remove unnecessary parens after sizeof.
21358
21359 2007-02-05  Bruno Haible  <bruno@clisp.org>
21360
21361         New module mbssep.
21362         * modules/mbssep: New file.
21363         * lib/mbssep.c: New file.
21364         * lib/string_.h (strsep): Add a conditional link warning.
21365         (mbssep): New declaration.
21366         * m4/mbssep.m4: New file.
21367         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21368         GNULIB_MBSSEP.
21369         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
21370         * MODULES.html.sh (Internationalization functions): Add mbssep.
21371
21372 2007-02-05  Bruno Haible  <bruno@clisp.org>
21373
21374         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
21375         Optimize search in case of 1 delimiter.
21376
21377 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
21378
21379         * lib/acl.h: Include sys/types.h before sys/acl.h.
21380
21381 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
21382
21383         Merge upstream fix for glibc bugzilla #3957:
21384
21385         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
21386
21387         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
21388         bit for RE_HAT_LISTS_NOT_NEWLINE.
21389         (build_charclass_op): Remove bogus comment.
21390
21391 2007-02-05  Simon Josefsson  <simon@josefsson.org>
21392
21393         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
21394
21395 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
21396
21397         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
21398         * lib/memmem.c [!defined _LIBC]: Include config.h.
21399
21400 2007-02-04  Bruno Haible  <bruno@clisp.org>
21401
21402         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
21403         warning message.
21404
21405 2007-02-04  Bruno Haible  <bruno@clisp.org>
21406
21407         New module mbstok_r.
21408         * modules/mbstok_r: New file.
21409         * lib/mbstok_r.c: New file.
21410         * lib/string_.h (strtok_r): Change argument names to match the
21411         comments. Add a conditional link warning.
21412         (mbstok_r): New declaration.
21413         * m4/mbstok_r.m4: New file.
21414         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21415         GNULIB_MBSTOK_R.
21416         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
21417         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
21418
21419 2007-02-04  Bruno Haible  <bruno@clisp.org>
21420
21421         New module mbsspn.
21422         * modules/mbsspn: New file.
21423         * lib/mbsspn.c: New file.
21424         * lib/string_.h (strspn): Add a conditional link warning.
21425         (mbsspn): New declaration.
21426         * m4/mbsspn.m4: New file.
21427         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21428         GNULIB_MBSSPN.
21429         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
21430         * MODULES.html.sh (Internationalization functions): Add mbsspn.
21431
21432 2007-02-04  Bruno Haible  <bruno@clisp.org>
21433
21434         New module mbspbrk.
21435         * modules/mbspbrk: New file.
21436         * lib/mbspbrk.c: New file.
21437         * lib/string_.h (strpbrk): Add a conditional link warning.
21438         (mbspbrk): New declaration.
21439         * m4/mbspbrk.m4: New file.
21440         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21441         GNULIB_MBSPBRK.
21442         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
21443         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
21444
21445 2007-02-04  Bruno Haible  <bruno@clisp.org>
21446
21447         New module mbscspn.
21448         * modules/mbscspn: New file.
21449         * lib/mbscspn.c: New file.
21450         * lib/string_.h (strcspn): Add a conditional link warning.
21451         (mbscspn): New declaration.
21452         * m4/mbscspn.m4: New file.
21453         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21454         GNULIB_MBSCSPN.
21455         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
21456         * MODULES.html.sh (Internationalization functions): Add mbscspn.
21457
21458 2007-02-04  Bruno Haible  <bruno@clisp.org>
21459
21460         New module mbscasestr, reduced goal of strcasestr.
21461         * modules/mbscasestr: New file.
21462         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
21463         (mbscasestr): Renamed from strcasestr.
21464         * lib/strcasestr.c: Don't include mbuiter.h.
21465         (strcasestr): Remove support for multibyte locales.
21466         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
21467         Change the conditional link warning.
21468         (mbscasestr): New declaration.
21469         * m4/mbscasestr.m4: New file.
21470         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
21471         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
21472         REPLACE_STRCASESTR.
21473         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
21474         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
21475         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
21476         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
21477         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
21478         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
21479         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
21480         (Depends-on): Remove mbuiter.
21481         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
21482
21483 2007-02-04  Bruno Haible  <bruno@clisp.org>
21484
21485         Simplify handling of strncasecmp.
21486         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
21487         the conditional link warning.
21488         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
21489         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
21490         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
21491         * modules/strcase (configure.ac): Don't invoke
21492         gl_STRING_MODULE_INDICATOR.
21493         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
21494
21495 2007-02-04  Bruno Haible  <bruno@clisp.org>
21496
21497         New module mbscasecmp, reduced goal of strcasecmp.
21498         * modules/mbscasecmp: New file.
21499         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
21500         (mbscasecmp): Renamed from strcasecmp.
21501         * lib/strcasecmp.c: Don't include mbuiter.h.
21502         (strcasecmp): Remove support for multibyte locales.
21503         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
21504         Change the conditional link warning.
21505         (mbscasecmp): New declaration.
21506         * m4/mbscasecmp.m4: New file.
21507         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
21508         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
21509         REPLACE_STRCASECMP.
21510         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
21511         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21512         GNULIB_MBSCASECMP.
21513         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
21514         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
21515         * modules/strcase (Files): Remove m4/mbrtowc.m4.
21516         (Depends-on): Remove mbuiter.
21517         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
21518
21519 2007-02-04  Bruno Haible  <bruno@clisp.org>
21520
21521         New module mbsstr. Remove module strstr.
21522         * modules/mbsstr: New file.
21523         * modules/strstr: Remove file.
21524         * lib/mbsstr.c: Renamed from lib/strstr.c.
21525         (mbsstr): Renamed from strstr.
21526         * lib/string_.h (strstr): Remove declaration. Change the conditional
21527         link warning.
21528         (mbsstr): New declaration.
21529         * m4/mbsstr.m4: New file.
21530         * m4/strstr.m4: Remove file.
21531         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
21532         REPLACE_STRSTR.
21533         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
21534         Don't initialize GNULIB_STRSTR.
21535         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
21536         substitute GNULIB_STRSTR and REPLACE_STRSTR.
21537         * MODULES.html.sh (Internationalization functions): Add mbsstr.
21538         (Support for systems lacking ANSI C 89): Remove strstr.
21539
21540 2007-02-04  Bruno Haible  <bruno@clisp.org>
21541
21542         New module mbsrchr.
21543         * modules/mbsrchr: New file.
21544         * lib/mbsrchr.c: New file.
21545         * lib/string_.h (strrchr): Add a conditional link warning.
21546         (mbsrchr): New declaration.
21547         * m4/mbsrchr.m4: New file.
21548         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21549         GNULIB_MBSRCHR.
21550         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
21551         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
21552
21553 2007-02-04  Bruno Haible  <bruno@clisp.org>
21554
21555         New module mbschr.
21556         * modules/mbschr: New file.
21557         * lib/mbschr.c: New file.
21558         * lib/string_.h (strchr): Add a conditional link warning.
21559         (mbschr): New declaration.
21560         * m4/mbschr.m4: New file.
21561         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21562         GNULIB_MBSCHR.
21563         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
21564         * MODULES.html.sh (Internationalization functions): Add mbschr.
21565
21566 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
21567
21568         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
21569
21570         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
21571
21572 2007-02-04  Bruno Haible  <bruno@clisp.org>
21573
21574         New module description section 'configure.ac-early'.
21575         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
21576         (func_get_autoconf_early_snippet): New function.
21577         (func_import, func_create_testdir): Use it. Remove special cases for
21578         modules 'extensions' and 'lock'.
21579         * modules/extensions (configure.ac-early): Require
21580         gl_USE_SYSTEM_EXTENSIONS.
21581         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
21582
21583 2007-02-04  Bruno Haible  <bruno@clisp.org>
21584
21585         Make use of gcj-4.3's -fsource and -ftarget option.
21586         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
21587         and if so try the options -fsource and -ftarget.
21588         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
21589         source_version, ftarget_option, target_version arguments.
21590         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
21591         (is_envjavac_oldgcj_14_14_usable): Renamed from
21592         is_envjavac_gcj_14_14_usable.
21593         (is_envjavac_oldgcj_14_13_usable): Renamed from
21594         is_envjavac_gcj_14_13_usable.
21595         (is_gcj_present): Update.
21596         (is_gcj_43, is_gcj43_usable): New functions.
21597         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
21598         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
21599         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
21600         try the options -fsource and -ftarget.
21601
21602 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
21603
21604         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
21605         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
21606         larger value.
21607
21608 2007-02-03  Jim Meyering  <jim@meyering.net>
21609
21610         Give tools a better chance to allocate space for very large buffers.
21611         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
21612
21613         Make pwd and readlink work also when run with an unreadable parent dir
21614         on systems with openat support.
21615         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
21616         provided getcwd function, even when we have openat support.
21617         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
21618
21619 2007-02-02  Bruno Haible  <bruno@clisp.org>
21620
21621         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
21622         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
21623         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
21624         portability problems if one of these functions is only used on specific
21625         platforms.
21626         Reported by Paul Eggert.
21627
21628 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
21629
21630         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
21631         is causing more trouble than it's curing.
21632         * lib/regex_internal.h (__mempcpy): Remove.
21633         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
21634         (and make the code a tad smaller to boot).
21635         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
21636
21637 2007-02-02  Jim Meyering  <jim@meyering.net>
21638
21639         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
21640         section, not in the Makefile.am: one.
21641
21642 2007-02-02  Eric Blake  <ebb9@byu.net>
21643
21644         * lib/strchrnul.c: Always include config.h first.
21645
21646         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
21647         gnulib strstr is not necessary here.
21648
21649 2007-02-02  Simon Josefsson  <simon@josefsson.org>
21650
21651         * m4/socklen.m4: Fix typo.
21652
21653 2007-02-02  Eric Blake  <ebb9@byu.net>
21654
21655         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
21656         * modules/netinet_in (Makefile.am): Likewise.
21657
21658 2007-02-01  Bruno Haible  <bruno@clisp.org>
21659
21660         * lib/string_.h (GL_LINK_WARNING): New macro.
21661         (strcasecmp, strstr, strcasestr): If provided by the system,
21662         conditionally define as a macro that leads to a warning instead of to
21663         an error.
21664         (strncasecmp): Conditionally define as a macro that leads to a warning.
21665
21666 2007-02-01  Karl Berry  <karl@gnu.org>
21667
21668         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
21669
21670 2007-02-01  Bruno Haible  <bruno@clisp.org>
21671
21672         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
21673         renamings.
21674
21675 2007-02-01  Eric Blake  <ebb9@byu.net>
21676
21677         * modules/regex (Depends-on): Revert dependence on mempcpy.
21678         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
21679         module's definition of mempcpy.
21680         Reported by Paul Eggert.
21681
21682 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
21683
21684         * lib/string_.h: If the gnulib module XYZ is not present, undefine
21685         the symbol XYZ before redefining it.  This fixes a problem with
21686         programs that don't use XYZ, when compiled on systems that define
21687         XYZ to something else.
21688
21689 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
21690
21691         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
21692         occurs when "mkdir -m foo" creates a setgid directory that is (1)
21693         writeable to group or other and (2) is intended to have a special
21694         mode bit that is set or cleared.  In such a case, the directory
21695         should be neither group- nor other-writeable until the special
21696         mode bits are right.
21697
21698 2007-01-31  Eric Blake  <ebb9@byu.net>
21699
21700         * modules/mountlist (Depends-on): Add strstr.
21701
21702         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
21703         bug.
21704         * modules/string (Makefile.am): Remove redundant replacement.
21705         * modules/regex (Depends-on): Add mempcpy.
21706
21707 2007-01-31  Bruno Haible  <bruno@clisp.org>
21708
21709         New module description field 'Link'.
21710         * gnulib-tool (func_usage): Document --extract-link-directive.
21711         (sed_extract_prog): Recognize 'Link' directive.
21712         (func_get_link_directive): New function.
21713         (func_import): Show summary of link directives.
21714         Handle --extract-link-directive option.
21715         * modules/acl (Link): New section.
21716         * modules/clock-time (Link): New section.
21717         * modules/euidaccess (Link): New section.
21718         * modules/gettext (Link): New section.
21719         * modules/iconv (Link): New section.
21720         * modules/lock (Link): New section.
21721         * modules/nanosleep (Link): New section.
21722         * modules/readline (Link): New section.
21723
21724 2007-01-27  Bruno Haible  <bruno@clisp.org>
21725
21726         Enforce the use of gnulib modules for unportable <string.h> functions.
21727         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
21728         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
21729         (gl_HEADER_STRING_H_BODY): Require it.
21730         * lib/string_.h: If the gnulib module XYZ is not present, redefine
21731         the symbol XYZ to one that gives a link error.
21732         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
21733         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
21734         * modules/mempcpy (configure.ac): Likewise.
21735         * modules/memrchr (configure.ac): Likewise.
21736         * modules/stpcpy (configure.ac): Likewise.
21737         * modules/stpncpy (configure.ac): Likewise.
21738         * modules/strcase (configure.ac): Likewise.
21739         * modules/strcasestr (configure.ac): Likewise.
21740         * modules/strchrnul (configure.ac): Likewise.
21741         * modules/strdup (configure.ac): Likewise.
21742         * modules/strndup (configure.ac): Likewise.
21743         * modules/strnlen (configure.ac): Likewise.
21744         * modules/strpbrk (configure.ac): Likewise.
21745         * modules/strsep (configure.ac): Likewise.
21746         * modules/strstr (configure.ac): Likewise.
21747         * modules/strtok_r (configure.ac): Likewise.
21748
21749 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
21750
21751         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
21752
21753 2007-01-30  Jim Meyering  <jim@meyering.net>
21754
21755         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
21756
21757 2007-01-29  Bruno Haible  <bruno@clisp.org>
21758
21759         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
21760         * lib/execute.c: Likewise.
21761         * lib/pipe.c: Likewise.
21762         * lib/printf-args.h: Likewise.
21763         * lib/printf-args.c: Likewise.
21764         * lib/printf-parse.c: Likewise.
21765         * lib/vasnprintf.c: Likewise.
21766
21767 2007-01-29  Eric Blake  <ebb9@byu.net>
21768
21769         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
21770         declaration.
21771
21772 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
21773
21774         * lib/strptime.h (strptime): Use 'restrict' for args where
21775         POSIX requires this.
21776         * lib/strptime.c (strptime): Likewise.
21777         Change license notice from LGPL to GPL, since gnulib-tool will
21778         change this as needed.
21779         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
21780         defined.
21781         Include "strptime.h" first, to check interface.
21782         Do not #undef _LIBC and _NL_CURRENT.
21783         Do not include <stdlib.h>; no longer needed.
21784         Include "time_r.h" and declare ptime_locale_status
21785         only if _LIBC is not defined.
21786         (__P): Remove unused macro.
21787         (match_string): Bring back glibc version, but use it only if _LIBC
21788         is defined.
21789         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
21790         Remove unnecessary assertion and abort() call.
21791         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
21792         * m4/strptime.m4: Fix serial number comment.
21793         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
21794         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
21795         (Depends-on): Add time_r.
21796
21797 2007-01-29  Bruno Haible  <bruno@clisp.org>
21798
21799         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
21800         strptime.
21801         * modules/strptime (Depends-on): Add stdbool.
21802         * lib/strptime.h: Include <time.h> always. Add comments.
21803
21804 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
21805
21806         * modules/strptime: New file.
21807         * lib/strptime.h: New file.
21808         * lib/strptime.c: New file.
21809         * m4/strptime.m4: New file.
21810
21811 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
21812
21813         * MODULES.html.sh: New module mpsort.
21814         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
21815
21816         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
21817         a circularity problem with HP-UX ia64 reported by Bob Proulx in
21818         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
21819         All uses changed.
21820         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
21821         All uses changed.
21822         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
21823         to _Restrict_.
21824         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
21825         the parameter matches the prototype.
21826
21827 2007-01-28  Jim Meyering  <jim@meyering.net>
21828
21829         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
21830         sys/time.h here, reverting that part of the previous patch:
21831         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
21832
21833 2007-01-28  Bruno Haible  <bruno@clisp.org>
21834
21835         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
21836         value of $(SYS_TIME_H).
21837         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
21838         remove it conditionally, too. [added by Jim Meyering]
21839         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
21840         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
21841         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
21842         GETTIMEOFDAY_REPLACEMENT to 1.
21843
21844 2007-01-28  Bruno Haible  <bruno@clisp.org>
21845
21846         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
21847         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
21848         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
21849         Set UNISTD_H instead of UNISTD_H2.
21850         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
21851
21852 2007-01-28  Bruno Haible  <bruno@clisp.org>
21853
21854         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
21855         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
21856
21857 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21858
21859         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
21860         (func_create_testdir): Ensure C locale for `grep' and `tr'
21861         character ranges.
21862         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
21863         ACLOCAL_AMFLAGS parsing state machine.
21864
21865 2007-01-27  Bruno Haible  <bruno@clisp.org>
21866
21867         * modules/unistr/base: Update.
21868
21869 2007-01-27  Bruno Haible  <bruno@clisp.org>
21870
21871         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
21872         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
21873         * modules/unistr/u32-mbtouc-unsafe: Renamed from
21874         modules/unistr/u32-mbtouc.
21875         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
21876         * lib/unistr.h: Update.
21877         * lib/linebreak.c: Update.
21878         * modules/unistr/u32-mbtouc: Renamed from
21879         modules/unistr/u32-mbtouc-safe.
21880         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
21881         * lib/unistr.h: Update.
21882         * lib/unistr/u32-to-u8.c: Update.
21883         * lib/unistr/u32-to-u16.c: Update.
21884
21885 2007-01-27  Bruno Haible  <bruno@clisp.org>
21886
21887         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
21888         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
21889         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
21890         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
21891         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
21892         * modules/unistr/u16-mbtouc-unsafe: Renamed from
21893         modules/unistr/u16-mbtouc.
21894         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
21895         * lib/unistr.h: Update.
21896         * lib/linebreak.c: Update.
21897         * modules/linebreak: Update.
21898         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
21899         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
21900         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
21901         * modules/unistr/u16-mbtouc: Renamed from
21902         modules/unistr/u16-mbtouc-safe.
21903         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
21904         * lib/unistr.h: Update.
21905         * lib/unistr/u16-to-u8.c: Update.
21906         * modules/unistr/u16-to-u8: Update.
21907         * lib/unistr/u16-to-u32.c: Update.
21908         * modules/unistr/u16-to-u32: Update.
21909
21910 2007-01-27  Bruno Haible  <bruno@clisp.org>
21911
21912         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
21913         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
21914         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
21915         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
21916         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
21917         * modules/unistr/u8-mbtouc-unsafe: Renamed from
21918         modules/unistr/u8-mbtouc.
21919         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
21920         * lib/unistr.h: Update.
21921         * lib/striconveh.c: Update.
21922         * modules/striconveh: Update.
21923         * lib/linebreak.c: Update.
21924         * modules/linebreak: Update.
21925         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
21926         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
21927         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
21928         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
21929         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
21930         * lib/unistr.h: Update.
21931         * lib/striconveh.c: Update.
21932         * modules/striconveh: Update.
21933         * lib/unistr/u8-to-u16.c: Update.
21934         * modules/unistr/u8-to-u16: Update.
21935         * lib/unistr/u8-to-u32.c: Update.
21936         * modules/unistr/u8-to-u32: Update.
21937
21938 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21939
21940         Sync from Libtool.
21941         * lib/argz.c: Do not include strings.h nor memory.h, include
21942         string.h unconditionally.  Patch by Simon Josefsson.
21943
21944 2007-01-27  Bruno Haible  <bruno@clisp.org>
21945
21946         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
21947         from gl_HEADER_STRING_H_BODY.
21948         (gl_HEADER_STRING_H_BODY): Require it.
21949         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
21950         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
21951         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
21952         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
21953         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
21954         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
21955         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
21956         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
21957         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
21958         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
21959         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
21960         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
21961         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
21962         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
21963         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
21964
21965 2007-01-27  Bruno Haible  <bruno@clisp.org>
21966
21967         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
21968         check_PROGRAMS into noinst_PROGRAMS.
21969         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
21970         check_PROGRAMS in this case.
21971         (func_import): Set for_test to false.
21972         (func_create_testdir): Set for_test to true.
21973
21974 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
21975             Bruno Haible  <bruno@clisp.org>
21976
21977         * modules/strcasestr (Files): Remove lib/strcasestr.h.
21978         (Depends-on): Add string.
21979         (Includes): Use <string.h> instead of strcasestr.h.
21980         * modules/string (Makefile.am): Also substitute the value of
21981         REPLACE_STRCASESTR.
21982         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
21983         assume strcasestr is declared in <string.h> not <strings.h>. Also
21984         set REPLACE_STRCASESTR.
21985         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
21986         REPLACE_STRCASESTR.
21987         * lib/strcasestr.h: Remove file.
21988         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
21989         * lib/string_.h (strcasestr): New declaration.
21990
21991 2007-01-27  Bruno Haible  <bruno@clisp.org>
21992
21993         * lib/string_.h: Use 'extern'.
21994
21995 2007-01-27  Jim Meyering  <jim@meyering.net>
21996
21997         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
21998         of set-but-not-used local, "q".
21999
22000         * lib/mempcpy.c: Include <config.h> before <string.h>.
22001         This fixes a compilation error on HP-UX, due to the system's
22002         "restrict"-using mempcpy prototype.
22003
22004 2007-01-26  Bruno Haible  <bruno@clisp.org>
22005
22006         Small optimization.
22007         * lib/javacomp.c: Include c-strstr.h.
22008          (is_envjavac_gcj): Use c_strstr instead of strstr.
22009         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
22010
22011 2007-01-26  Bruno Haible  <bruno@clisp.org>
22012
22013         * MODULES.html.sh (Unicode string functions): Add the new modules.
22014
22015         * modules/uniconv/u32-strconv-to-locale: New file.
22016         * lib/uniconv/u32-strconv-to-locale.c: New file.
22017
22018         * modules/uniconv/u16-strconv-to-locale: New file.
22019         * lib/uniconv/u16-strconv-to-locale.c: New file.
22020
22021         * modules/uniconv/u8-strconv-to-locale: New file.
22022         * lib/uniconv/u8-strconv-to-locale.c: New file.
22023
22024         * modules/uniconv/u32-strconv-from-locale: New file.
22025         * lib/uniconv/u32-strconv-from-locale.c: New file.
22026
22027         * modules/uniconv/u16-strconv-from-locale: New file.
22028         * lib/uniconv/u16-strconv-from-locale.c: New file.
22029
22030         * modules/uniconv/u8-strconv-from-locale: New file.
22031         * lib/uniconv/u8-strconv-from-locale.c: New file.
22032
22033         * modules/uniconv/u32-strconv-to-enc: New file.
22034         * lib/uniconv/u32-strconv-to-enc.c: New file.
22035         * modules/uniconv/u32-strconv-to-enc-tests: New file.
22036         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
22037
22038         * modules/uniconv/u16-strconv-to-enc: New file.
22039         * lib/uniconv/u16-strconv-to-enc.c: New file.
22040         * lib/uniconv/u-strconv-to-enc.h: New file.
22041         * modules/uniconv/u16-strconv-to-enc-tests: New file.
22042         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
22043
22044         * modules/uniconv/u8-strconv-to-enc: New file.
22045         * lib/uniconv/u8-strconv-to-enc.c: New file.
22046         * modules/uniconv/u8-strconv-to-enc-tests: New file.
22047         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
22048
22049         * modules/uniconv/u32-strconv-from-enc: New file.
22050         * lib/uniconv/u32-strconv-from-enc.c: New file.
22051         * modules/uniconv/u32-strconv-from-enc-tests: New file.
22052         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
22053
22054         * modules/uniconv/u16-strconv-from-enc: New file.
22055         * lib/uniconv/u16-strconv-from-enc.c: New file.
22056         * modules/uniconv/u16-strconv-from-enc-tests: New file.
22057         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
22058
22059         * modules/uniconv/u8-strconv-from-enc: New file.
22060         * lib/uniconv/u8-strconv-from-enc.c: New file.
22061         * lib/uniconv/u-strconv-from-enc.h: New file.
22062         * modules/uniconv/u8-strconv-from-enc-tests: New file.
22063         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
22064
22065         * modules/uniconv/u32-conv-from-enc: New file.
22066         * lib/uniconv/u32-conv-from-enc.c: New file.
22067         * modules/uniconv/u32-conv-from-enc-tests: New file.
22068         * tests/uniconv/test-u32-conv-from-enc.c: New file.
22069
22070         * modules/uniconv/u16-conv-from-enc: New file.
22071         * lib/uniconv/u16-conv-from-enc.c: New file.
22072         * lib/uniconv/u-conv-from-enc.h: New file.
22073         * modules/uniconv/u16-conv-from-enc-tests: New file.
22074         * tests/uniconv/test-u16-conv-from-enc.c: New file.
22075
22076         * modules/uniconv/u8-conv-from-enc: New file.
22077         * lib/uniconv/u8-conv-from-enc.c: New file.
22078         * modules/uniconv/u8-conv-from-enc-tests: New file.
22079         * tests/uniconv/test-u8-conv-from-enc.c: New file.
22080
22081         * modules/uniconv/base: New file.
22082         * lib/uniconv.h: New file.
22083
22084 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
22085
22086         * doc/gnulib-tool.texi (Initial import): Update to match current
22087         behavior with strdup module.
22088         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
22089         * lib/memmem.h: Remove; all uses removed.  This is now done
22090         by <string.h>.
22091         * lib/mempcpy.h: Likewise.
22092         * lib/memrchr.h: Likewise.
22093         * lib/stpcpy.h: Likewise.
22094         * lib/stpncpy.h: Likewise.
22095         * lib/strcase.h: Likewise.
22096         * lib/strchrnul.h: Likewise.
22097         * lib/strdup.h: Likewise.
22098         * lib/strndup.h: Likewise.
22099         * lib/strnlen.h: Likewise.
22100         * lib/strpbrk.h: Likewise.
22101         * lib/strsep.h: Likewise.
22102         * lib/strstr.h: Likewise.
22103         * lib/strtok_r.h: Likewise.
22104         * lib/string_.h: New file.
22105         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
22106         Rely on <string.h> instead.
22107         * lib/canon-host.c: Likewise.
22108         * lib/chdir-long.c: Likewise.
22109         * lib/concatpath.c: Likewise.
22110         * lib/exclude.c: Likewise.
22111         * lib/fchdir.c: Likewise.
22112         * lib/getaddrinfo.c: Likewise.
22113         * lib/getcwd.c: Likewise.
22114         * lib/getsubopt.c: Likewise.
22115         * lib/glob.c: Likewise.
22116         * lib/hard-locale.c: Likewise.
22117         * lib/iconvme.c: Likewise.
22118         * lib/javacomp.c: Likewise.
22119         * lib/mempcpy.c: Likewise.
22120         * lib/memrchr.c: Likewise.
22121         * lib/regex_internal.h: Likewise.
22122         * lib/stpncpy.c: Likewise.
22123         * lib/strcasecmp.c: Likewise.
22124         * lib/strchrnul.c: Likewise.
22125         * lib/strdup.c: Likewise.
22126         * lib/striconv.c: Likewise.
22127         * lib/striconveh.c: Likewise.
22128         * lib/striconveha.c: Likewise.
22129         * lib/strncasecmp.c: Likewise.
22130         * lib/strndup.c: Likewise.
22131         * lib/strnlen.c: Likewise.
22132         * lib/strsep.c: Likewise.
22133         * lib/strstr.c: Likewise.
22134         * lib/strtok_r.c: Likewise.
22135         * lib/userspec.c: Likewise.
22136         * lib/w32spawn.h: Likewise.
22137         * lib/xstrndup.c: Likewise.
22138         * lib/mountlist.c (strstr): Remove decl.
22139         * m4/string_h.m4: New file.
22140         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
22141         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
22142         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
22143         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
22144         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
22145         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
22146         Set REPLACE_STRCASECMP if necessary.
22147         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
22148         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
22149         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
22150         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
22151         HAVE_DECL_STRDUP if necessary.
22152         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
22153         since gl_FUNC_STRNDUP does that now.
22154         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
22155         Check for decl here...
22156         (gl_PREREQ_STRNLEN): ... not here.
22157         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
22158         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
22159         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
22160         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
22161         necessary.
22162         * modules/string: New file.
22163         * modules/memmem (Files): Remove special-purpose include file.
22164         (Depends-on): Add string.
22165         (Include): Include <string.h>, not the removed file.
22166         * modules/mempcpy: Likewise.
22167         * modules/memrchr: Likewise.
22168         * modules/stpcpy: Likewise.
22169         * modules/stpncpy: Likewise.
22170         * modules/strcase: Likewise.
22171         * modules/strchrnul: Likewise.
22172         * modules/strdup: Likewise.
22173         * modules/strndup: Likewise.
22174         * modules/strnlen: Likewise.
22175         * modules/strpbrk: Likewise.
22176         * modules/strsep: Likewise.
22177         * modules/strstr: Likewise.
22178         * modules/strtok_r: Likewise.
22179         * tests/test-dirname.c: Don't include "strdup.h", since
22180         <string.h> now suffices.
22181         * tests/test-memmem.c: Don't include "memmem.h", since
22182         <string.h> now suffices.
22183
22184 2007-01-25  Bruno Haible  <bruno@clisp.org>
22185
22186         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
22187         *resultp is 0.
22188
22189         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
22190         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
22191         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
22192         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
22193
22194         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
22195         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
22196         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
22197         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
22198         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
22199         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
22200
22201 2007-01-24  Bruno Haible  <bruno@clisp.org>
22202
22203         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
22204         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
22205         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
22206         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
22207         gl_FUNC_FTS_CORE.
22208         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
22209         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
22210         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
22211         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
22212         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
22213         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
22214         gl_FUNC_FCHOWNAT.
22215         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
22216         gl_FUNC_STRFTIME.
22217         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
22218         Reported by Ralf Wildenhues.
22219
22220 2007-01-24  Bruno Haible  <bruno@clisp.org>
22221
22222         Drop AC_REQUIRE calls that are redundant with the module dependencies.
22223         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
22224         gl_GETADDRINFO.
22225         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
22226         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
22227         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
22228
22229 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
22230
22231         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
22232         Don't use 'exit'; just return from 'main'.
22233         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
22234
22235         * lib/fnmatch_.h: Readjust white space and comments to match
22236         glibc, to avoid spurious diffs.
22237
22238 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
22239
22240         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
22241         2004-12-01 change by Jakub Jelinek, since this code won't compile
22242         if !LIBC.  Problem reported by Bob Proulx.
22243
22244 2007-01-23  Bruno Haible  <bruno@clisp.org>
22245
22246         * lib/striconveh.c: Include c-strcaseeq.h.
22247         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
22248         * modules/striconveh (Depends-on): Add c-strcaseeq.
22249
22250 2007-01-23  Bruno Haible  <bruno@clisp.org>
22251
22252         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
22253
22254         * modules/c-strcaseeq: New file.
22255         * lib/c-strcaseeq.h: New file.
22256
22257         * modules/streq: New file.
22258         * lib/streq.h: New file.
22259
22260 2007-01-23  Bruno Haible  <bruno@clisp.org>
22261
22262         * modules/striconveha-tests: New file.
22263         * tests/test-striconveha.c: New file.
22264
22265         * lib/striconveha.h: Include <stdbool.h>.
22266         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
22267         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
22268         (mem_iconveha_notranslit): Renamed from mem_iconveha.
22269         (mem_iconveha): New function.
22270         (str_iconveha_notranslit): Renamed from str_iconveha.
22271         (str_iconveha): New function.
22272         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
22273         c-strcase.
22274
22275 2007-01-23  Bruno Haible  <bruno@clisp.org>
22276
22277         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
22278         encodings without forgiving before trying any encoding with handler.
22279         (str_iconveha): Try all encodings without forgiving before trying any
22280         encoding with handler.
22281
22282 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
22283
22284         Import the following changes from libc.
22285
22286         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
22287
22288         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
22289
22290         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
22291
22292         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
22293         normal_bracket label.
22294
22295         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
22296
22297         [BZ #361]
22298         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
22299         to normal_bracket after fetching the next character.
22300
22301 2007-01-22  Bruno Haible  <bruno@clisp.org>
22302
22303         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
22304         argument.
22305         * lib/striconveh.c (iconv_carefully_1): New function.
22306         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
22307         argument.
22308         (str_cd_iconveh): Update.
22309         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
22310         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
22311         * tests/test-striconveh.c (MAGIC): New macro.
22312         (new_offsets): New function.
22313         (main): Test call with and without offsets.
22314
22315 2007-01-22  Bruno Haible  <bruno@clisp.org>
22316
22317         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
22318         * modules/sys_select (Makefile.am): Likewise.
22319         * modules/sys_socket (Makefile.am): Likewise.
22320         * modules/sys_time (Makefile.am): Likewise.
22321
22322 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
22323
22324         * modules/gettimeofday (License): Change from GPL to LGPL, since
22325         gettimeofday is a library function.
22326
22327 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22328
22329         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
22330
22331 2007-01-21  Bruno Haible  <bruno@clisp.org>
22332
22333         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
22334
22335 2007-01-21  Bruno Haible  <bruno@clisp.org>
22336
22337         * modules/striconveha: New file.
22338         * lib/striconveha.h: New file.
22339         * lib/striconveha.c: New file.
22340         * MODULES.html.sh (Internationalization functions): Add striconveha.
22341         * lib/striconv.c (str_iconv): Optimize the case of an empty input
22342         string.
22343         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
22344
22345 2007-01-21  Bruno Haible  <bruno@clisp.org>
22346
22347         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
22348         * lib/striconveh.c (str_iconveh): Likewise.
22349
22350 2007-01-21  Bruno Haible  <bruno@clisp.org>
22351
22352         * lib/striconveh.h (mem_iconveh): New declaration.
22353         * lib/striconveh.c (mem_iconveh): New function.
22354         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
22355
22356 2007-01-21  Bruno Haible  <bruno@clisp.org>
22357
22358         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
22359
22360         * lib/striconveh.h (mem_cd_iconveh): Change specification.
22361         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
22362         original result buffer.
22363         (str_cd_iconveh): Update.
22364         * tests/test-striconveh.c (main): Update.
22365
22366         * lib/striconv.h (mem_cd_iconv): Change specification.
22367         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
22368         result buffer.
22369         (str_cd_iconv): Update.
22370         * tests/test-striconv.c (main): Update.
22371
22372 2007-01-21  Bruno Haible  <bruno@clisp.org>
22373
22374         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
22375
22376 2007-01-20  Jim Meyering  <jim@meyering.net>
22377
22378         * lib/userspec.c (parse_with_separator): If a user or group string
22379         starts with "+", skip the corresponding name-to-ID look-up, since
22380         such a look-up must fail: user and group names may not include "+".
22381
22382 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
22383
22384         * lib/poll.c: Include sys/time.h and time.h unconditionally,
22385         since we now assume the sys_time module.
22386         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
22387         check for sys/time.h; no longer needed.
22388         * modules/poll (Depends-on): Depend on sys_time.
22389
22390 2007-01-18  Bruno Haible  <bruno@clisp.org>
22391
22392         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
22393         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
22394
22395         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
22396         gettimeofday.
22397
22398         * tests/test-gettimeofday.c: Include <time.h>.
22399         (dummy): Remove variable.
22400
22401         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
22402         gl_HEADER_SYS_TIME_H.
22403         (gl_HEADER_SYS_TIME_H): New macro.
22404
22405         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
22406         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22407         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
22408         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
22409         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22410         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
22411         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
22412         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22413         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
22414         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
22415         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22416
22417         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
22418         last change; it caused a compilation error when cross-compiling to
22419         Cygwin.
22420
22421 2007-01-18  Jim Meyering  <jim@meyering.net>
22422
22423         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
22424         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
22425         than the race-prone "test -d sys || mkdir sys".
22426         (configure.ac): Use AC_PROG_MKDIR_P.
22427         * modules/sys_select: Likewise.
22428         * modules/sys_socket: Likewise.
22429         * modules/sys_time: Likewise.
22430
22431 2007-01-18  Eric Blake  <ebb9@byu.net>
22432
22433         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
22434         replace gettimeofday.
22435         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
22436         name, to avoid infinite recursion.
22437
22438 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
22439
22440         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
22441         module sys_time.
22442         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
22443         assume timespec.h defines struct timeval.
22444         * lib/settime.c: Likewise.
22445         * lib/utimens.c: Likewise.
22446         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
22447         since we now assume the gettimeofday module.
22448         * lib/tempname.c (__gen_tempname): Likewise.
22449         * lib/gettimeofday.h: Remove.
22450         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
22451         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
22452         Include <time.h>, for 'time()'.
22453         (localtime_buffer_addr): Also use this workaround if
22454         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
22455         to simplify the uses.  All uses changed.
22456         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
22457         that #undef is inside {}, and 'const' follows type name consistently.
22458         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
22459         (gettimeofday): Do not use the maximum possible value for
22460         tv->tv_usec, since that might break usages other than ls.c.
22461         Instead, we'll leave ls.c alone.  This undoes today's patch
22462         by Bruno.  Add a compile-time warning for 1s-clock resolution;
22463         we've never observed the problem but might as well keep the
22464         canary.
22465         * lib/nanosleep.c: Include timespec.h first, for interface check.
22466         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
22467         now assume the sys_time module.
22468         * lib/tempname.c: Likewise.
22469         * lib/timespec.h: Likewise.
22470         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
22471         needed.
22472         * lib/strftime.c: Likewise.
22473         * lib/timespec.h: Likewise.
22474         * lib/posixtm.c: Include posixtm.h first, for interface check.
22475         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
22476         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
22477         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
22478         * lib/sys_time_.h: New file.
22479         * lib/timespec.h (struct timespec): Use long int, not long.
22480         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
22481         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
22482         Remove obsolescent call to AC_HEADER_TIME.
22483         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
22484         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
22485         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
22486         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
22487         Likewise.
22488         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
22489         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
22490         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
22491         into the sys_time module.  Check for gettimeofday just once.
22492         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
22493         for gettimeofday signature to just check the signature.  Merely
22494         compile it, since linking doesn't test signature.  Improve test for
22495         whether gettimeofday.o is actually needed.
22496         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
22497         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
22498         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
22499         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22500         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
22501         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
22502         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
22503         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
22504         than worrying about sys/time.h.
22505         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
22506         Don't bother worrying about TIME_WITH_SYS_TIME.
22507         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
22508         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
22509         * m4/sys_time_h.m4: New file.
22510         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
22511         Don't include sys/time.h.  Return from main rather than exiting.
22512         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
22513         all uses changed.
22514         * modules/gethrxtime (Depends-on): Add sys_time.
22515         * modules/gettime (Depends-on): Likewise.
22516         * modules/gettimeofday (Depends-on): Likewise.
22517         * modules/nanosleep (Depends-on): Likewise.
22518         * modules/settime (Depends-on): Likewise.
22519         * modules/tempname (Depends-on): Likewise.
22520         * modules/utimens (Depends-on): Likewise.
22521         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
22522         (Include:) Change back to <sys/time.h>.
22523         (Maintainer:) Add self.
22524         * modules/sys_time: New file.
22525         * modules/tempname (Depends-on): Add gettimeofday.
22526         * tests/test-gettimeofday.c: Include <sys/time.h>
22527         rather than gettimeofday.h.
22528
22529 2007-01-17  Bruno Haible  <bruno@clisp.org>
22530
22531         * gnulib-tool (func_get_license): Revert last patch. Instead, let
22532         the license default to GPL.
22533         (func_create_testdir): Don't complain if a module is LGPL and its
22534         tests module depends on GPLed modules.
22535
22536 2007-01-17  Bruno Haible  <bruno@clisp.org>
22537
22538         * lib/gettimeofday.c (gettimeofday): Add code for the case
22539         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
22540         maximum possible value for tv->tv_usec, rather than the minimum one.
22541
22542 2005-10-08  Martin Lambers  <marlam@marlam.de>
22543 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
22544 2007-01-16  Bruno Haible  <bruno@clisp.org>
22545
22546         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
22547         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
22548         gl_FUNC_GETTIMEOFDAY.
22549         (Include): Add gettimeofday.h.
22550         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
22551         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
22552         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
22553         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
22554         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
22555         * lib/gettimeofday.h: New file.
22556         * lib/gettimeofday.c: Include <sys/timeb.h>.
22557         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
22558         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22559         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
22560         fall back on time().
22561
22562         * tests/test-gettimeofday.c: New file.
22563         * modules/gettimeofday-tests: New file.
22564
22565 2007-01-16  Eric Blake  <ebb9@byu.net>
22566
22567         * modules/fnmatch (Depends-on): Depend on wchar.
22568         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
22569         * m4/fnmatch.m4: Likewise.
22570         * modules/mbchar (Makefile.am): Assume <wchar.h>.
22571         * m4/mbchar.m4: Likewise.
22572         * modules/mbswidth (Depends-on): Depend on wchar.
22573         * lib/mbswidth.c: Assume <wchar.h>.
22574         * m4/mbswidth.m4: Likewise.
22575         * modules/quotearg (Depends-on): Depend on wchar.
22576         * lib/quotearg.c: Assume <wchar.h>.
22577         * m4/quotearg.m4: Likewise.
22578         * modules/regex (Depends-on): Depend on wchar.
22579         * lib/regex_internal.h: Assume <wchar.h>.
22580         * m4/regex.m4: Likewise.
22581         * modules/stdint (Depends-on): Depend on wchar.
22582         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
22583         * m4/stdint.m4: Likewise.
22584         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
22585         * modules/strftime (Depends-on): Depend on wchar.
22586         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
22587         * modules/strtol (Depends-on): Depend on wchar.
22588         * lib/strtol.c: Assume <wchar.h>.
22589         * modules/wcwidth (Depends-on): Depend on wchar.
22590         * lib/wcwidth.h: Assume <wchar.h>.
22591         * m4/wcwidth.m4: Likewise.
22592
22593 2007-01-16  Bruno Haible  <bruno@clisp.org>
22594
22595         * modules/csharpexec-script: New, created from...
22596         * modules/csharpexec: ... this.
22597
22598 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
22599
22600         * modules/javaexec-script: New, created from...
22601         * modules/javaexec: ... this.
22602
22603 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22604
22605         * modules/poll (Dependencies): Add sys_select.
22606
22607 2007-01-15  Jim Meyering  <jim@meyering.net>
22608
22609         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
22610         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
22611         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
22612         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
22613
22614 2007-01-15  Bruno Haible  <bruno@clisp.org>
22615
22616         * modules/striconveh: New file.
22617         * lib/striconveh.h: New file.
22618         * lib/striconveh.c: New file.
22619         * MODULES.html.sh (Internationalization functions): Add striconveh.
22620
22621         * modules/striconveh-tests: New file.
22622         * tests/test-striconveh.c: New file.
22623
22624 2007-01-15  Bruno Haible  <bruno@clisp.org>
22625
22626         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
22627         not from GNU libiconv or GNU libc.
22628
22629 2007-01-15  Bruno Haible  <bruno@clisp.org>
22630
22631         * doc/gnulib-intro.texi (Copyright): Explain the different license
22632         terms for module descriptions, autoconf macros, tests, documentation.
22633
22634 2007-01-14  Bruno Haible  <bruno@clisp.org>
22635
22636         * modules/striconv-tests: New file.
22637         * tests/test-striconv.c: New file.
22638
22639 2007-01-14  Bruno Haible  <bruno@clisp.org>
22640
22641         * modules/iconv-tests: New file.
22642         * tests/test-iconv.c: New file.
22643
22644 2007-01-14  Bruno Haible  <bruno@clisp.org>
22645
22646         * gnulib-tool (func_get_license): For test modules, use the license of
22647         the main module.
22648
22649 2007-01-14  Bruno Haible  <bruno@clisp.org>
22650
22651         * modules/iconv (Include): Clarify that <iconv.h> can only be included
22652         if iconv is found to exist.
22653
22654 2007-01-14  Bruno Haible  <bruno@clisp.org>
22655
22656         * modules/c-ctype-tests: New file.
22657         * tests/test-c-ctype.c: New file.
22658
22659 2007-01-14  Bruno Haible  <bruno@clisp.org>
22660
22661         * modules/binary-io-tests: New file.
22662         * tests/test-binary-io.sh: New file.
22663         * tests/test-binary-io.c: New file.
22664
22665 2007-01-14  Bruno Haible  <bruno@clisp.org>
22666
22667         * modules/array-oset-tests: New file.
22668         * tests/test-array_oset.c: New file.
22669
22670 2007-01-14  Bruno Haible  <bruno@clisp.org>
22671
22672         * modules/array-list-tests: New file.
22673         * tests/test-array_list.c: New file.
22674
22675 2007-01-14  Bruno Haible  <bruno@clisp.org>
22676
22677         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
22678         and make.
22679         Reported by Simon Josefsson in
22680         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
22681
22682 2007-01-14  Bruno Haible  <bruno@clisp.org>
22683
22684         * modules/allocsa-tests: New file.
22685         * tests/test-allocsa.c: New file.
22686
22687 2007-01-14  Bruno Haible  <bruno@clisp.org>
22688
22689         * modules/fchdir (Depends-on): Add absolute-header.
22690         * modules/unistd (Depends-on): Likewise.
22691
22692 2006-12-30  Bruno Haible  <bruno@clisp.org>
22693
22694         * modules/fchdir: New file.
22695         * modules/unistd (Files): Add lib/unistd_.h.
22696         (Makefile.am): Generate unistd.h from unistd_.h.
22697         * lib/fchdir.c: New file.
22698         * lib/dirent_.h: New file.
22699         * lib/unistd_.h: New file.
22700         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
22701         * m4/fchdir.m4: New file.
22702         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
22703         (gl_HEADER_UNISTD): Invoke it.
22704         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
22705         function.
22706         * lib/backupfile.c (opendir, closedir): Undefine.
22707         * lib/chown.c (open, close): Undefine.
22708         * lib/clean-temp.c (open, close): Undefine.
22709         * lib/copy-file.c (open, close): Undefine.
22710         * lib/execute.c (open, close): Undefine.
22711         * lib/fsusage.c (open, close): Undefine.
22712         * lib/gc-gnulib.c (open, close): Undefine.
22713         * lib/getcwd.c (opendir, closedir): Undefine.
22714         * lib/glob.c (opendir, closedir): Undefine.
22715         * lib/javacomp.c (open, close): Undefine.
22716         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
22717         * lib/openat-proc.c (open, close): Undefine.
22718         * lib/pagealign_alloc.c (open, close): Undefine.
22719         * lib/pipe.c (open, close): Undefine.
22720         * lib/progreloc.c (open, close): Undefine.
22721         * lib/savedir.c (opendir, closedir): Undefine.
22722         * lib/utime.c (open, close): Undefine.
22723         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
22724
22725 2007-01-10  Bruno Haible  <bruno@clisp.org>
22726
22727         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
22728
22729 2007-01-12  Eric Blake  <ebb9@byu.net>
22730
22731         Provide a robust <wchar.h>.  Further simplifications are now
22732         possible in other modules, but not included here.
22733         * modules/wchar: New module.
22734         * m4/wchar.m4: New file.
22735         * lib/wchar_.h: Likewise.
22736         * modules/mbchar (Depends-on): Depend on wchar, as the first use
22737         of the new module.
22738         * MODULES.html.sh (Extended multibyte and wide character utilities):
22739         New section.
22740
22741 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
22742
22743         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
22744         to a reasonable default for memory allocation.
22745         (xreadlink): Don't allocate a huge buffer, to work around a buggy
22746         file system that reports garbage st_size values for symlinks.
22747         Problem reported by Liyang Hu.
22748
22749 2007-01-11  Simon Josefsson  <simon@josefsson.org>
22750
22751         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
22752         Emacs .#* auto-save files).
22753
22754 2007-01-11  Bruno Haible  <bruno@clisp.org>
22755
22756         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
22757         directory.
22758
22759 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
22760
22761         Use @...@ consistently in lib/wctype_.h.
22762         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
22763         on it being set to 1 or 0.
22764         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
22765         go back to AC_SUBSTing it.
22766         * modules/wctype (Makefile.am): Undo previous change.
22767
22768 2007-01-10  Eric Blake  <ebb9@byu.net>
22769
22770         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
22771         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
22772         * modules/wctype (Makefile.am): Likewise.
22773         Reported by Chris McGuire.
22774
22775 2007-01-10  Jim Meyering  <jim@meyering.net>
22776
22777         fts.c: a small readability/maintainability improvement
22778         * lib/fts.c (fts_read): Make this code slightly more readable and
22779         maintainable by hoisting the "sp->fts_cur = p" assignments to
22780         immediately follow the statements that set P.  Derived from
22781         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
22782
22783 2007-01-10  Eric Blake  <ebb9@byu.net>
22784
22785         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
22786         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
22787         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
22788         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
22789         Reported by Chris McGuire.
22790
22791 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22792
22793         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
22794         in sed script.
22795
22796 2007-01-09  Bruno Haible  <bruno@clisp.org>
22797
22798         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
22799         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
22800         variables.
22801         (func_module): Use them.
22802
22803 2007-01-09  Bruno Haible  <bruno@clisp.org>
22804
22805         * modules/unistr/base: New file.
22806         * lib/unistr.h: New file.
22807
22808         * modules/unistr/u8-to-u16: New file.
22809         * lib/unistr/u8-to-u16.c: New file.
22810
22811         * modules/unistr/u8-to-u32: New file.
22812         * lib/unistr/u8-to-u32.c: New file.
22813
22814         * modules/unistr/u16-to-u8: New file.
22815         * lib/unistr/u16-to-u8.c: New file.
22816
22817         * modules/unistr/u16-to-u32: New file.
22818         * lib/unistr/u16-to-u32.c: New file.
22819
22820         * modules/unistr/u32-to-u8: New file.
22821         * lib/unistr/u32-to-u8.c: New file.
22822
22823         * modules/unistr/u32-to-u16: New file.
22824         * lib/unistr/u32-to-u16.c: New file.
22825
22826         * modules/unistr/u8-check: New file.
22827         * modules/unistr/u16-check: New file.
22828         * modules/unistr/u32-check: New file.
22829         * lib/unistr/u8-check.c: New file.
22830         * lib/unistr/u16-check.c: New file.
22831         * lib/unistr/u32-check.c: New file.
22832
22833         * modules/unistr/u8-chr: New file.
22834         * modules/unistr/u16-chr: New file.
22835         * modules/unistr/u32-chr: New file.
22836         * lib/unistr/u8-chr.c: New file.
22837         * lib/unistr/u16-chr.c: New file.
22838         * lib/unistr/u32-chr.c: New file.
22839
22840         * modules/unistr/u8-cmp: New file.
22841         * modules/unistr/u16-cmp: New file.
22842         * modules/unistr/u32-cmp: New file.
22843         * lib/unistr/u8-cmp.c: New file.
22844         * lib/unistr/u16-cmp.c: New file.
22845         * lib/unistr/u32-cmp.c: New file.
22846
22847         * modules/unistr/u8-cpy: New file.
22848         * modules/unistr/u16-cpy: New file.
22849         * modules/unistr/u32-cpy: New file.
22850         * lib/unistr/u8-cpy.c: New file.
22851         * lib/unistr/u16-cpy.c: New file.
22852         * lib/unistr/u32-cpy.c: New file.
22853         * lib/unistr/u-cpy.h: New file.
22854
22855         * modules/unistr/u8-cpy-alloc: New file.
22856         * modules/unistr/u16-cpy-alloc: New file.
22857         * modules/unistr/u32-cpy-alloc: New file.
22858         * lib/unistr/u8-cpy-alloc.c: New file.
22859         * lib/unistr/u16-cpy-alloc.c: New file.
22860         * lib/unistr/u32-cpy-alloc.c: New file.
22861         * lib/unistr/u-cpy-alloc.h: New file.
22862
22863         * modules/unistr/u8-endswith: New file.
22864         * modules/unistr/u16-endswith: New file.
22865         * modules/unistr/u32-endswith: New file.
22866         * lib/unistr/u8-endswith.c: New file.
22867         * lib/unistr/u16-endswith.c: New file.
22868         * lib/unistr/u32-endswith.c: New file.
22869         * lib/unistr/u-endswith.h: New file.
22870
22871         * modules/unistr/u8-mblen: New file.
22872         * modules/unistr/u16-mblen: New file.
22873         * modules/unistr/u32-mblen: New file.
22874         * lib/unistr/u8-mblen.c: New file.
22875         * lib/unistr/u16-mblen.c: New file.
22876         * lib/unistr/u32-mblen.c: New file.
22877
22878         * modules/unistr/u8-mbtouc: New file.
22879         * modules/unistr/u16-mbtouc: New file.
22880         * modules/unistr/u32-mbtouc: New file.
22881         * lib/unistr/u8-mbtouc.c: New file.
22882         * lib/unistr/u16-mbtouc.c: New file.
22883         * lib/unistr/u32-mbtouc.c: New file.
22884
22885         * modules/unistr/u8-mbtouc-safe: New file.
22886         * modules/unistr/u16-mbtouc-safe: New file.
22887         * modules/unistr/u32-mbtouc-safe: New file.
22888         * lib/unistr/u8-mbtouc-safe.c: New file.
22889         * lib/unistr/u16-mbtouc-safe.c: New file.
22890         * lib/unistr/u32-mbtouc-safe.c: New file.
22891
22892         * modules/unistr/u8-move: New file.
22893         * modules/unistr/u16-move: New file.
22894         * modules/unistr/u32-move: New file.
22895         * lib/unistr/u8-move.c: New file.
22896         * lib/unistr/u16-move.c: New file.
22897         * lib/unistr/u32-move.c: New file.
22898         * lib/unistr/u-move.h: New file.
22899
22900         * modules/unistr/u8-next: New file.
22901         * modules/unistr/u16-next: New file.
22902         * modules/unistr/u32-next: New file.
22903         * lib/unistr/u8-next.c: New file.
22904         * lib/unistr/u16-next.c: New file.
22905         * lib/unistr/u32-next.c: New file.
22906
22907         * modules/unistr/u8-prev: New file.
22908         * modules/unistr/u16-prev: New file.
22909         * modules/unistr/u32-prev: New file.
22910         * lib/unistr/u8-prev.c: New file.
22911         * lib/unistr/u16-prev.c: New file.
22912         * lib/unistr/u32-prev.c: New file.
22913
22914         * modules/unistr/u8-set: New file.
22915         * modules/unistr/u16-set: New file.
22916         * modules/unistr/u32-set: New file.
22917         * lib/unistr/u8-set.c: New file.
22918         * lib/unistr/u16-set.c: New file.
22919         * lib/unistr/u32-set.c: New file.
22920         * lib/unistr/u-set.h: New file.
22921
22922         * modules/unistr/u8-startswith: New file.
22923         * modules/unistr/u16-startswith: New file.
22924         * modules/unistr/u32-startswith: New file.
22925         * lib/unistr/u8-startswith.c: New file.
22926         * lib/unistr/u16-startswith.c: New file.
22927         * lib/unistr/u32-startswith.c: New file.
22928         * lib/unistr/u-startswith.h: New file.
22929
22930         * modules/unistr/u8-stpcpy: New file.
22931         * modules/unistr/u16-stpcpy: New file.
22932         * modules/unistr/u32-stpcpy: New file.
22933         * lib/unistr/u8-stpcpy.c: New file.
22934         * lib/unistr/u16-stpcpy.c: New file.
22935         * lib/unistr/u32-stpcpy.c: New file.
22936         * lib/unistr/u-stpcpy.h: New file.
22937
22938         * modules/unistr/u8-stpncpy: New file.
22939         * modules/unistr/u16-stpncpy: New file.
22940         * modules/unistr/u32-stpncpy: New file.
22941         * lib/unistr/u8-stpncpy.c: New file.
22942         * lib/unistr/u16-stpncpy.c: New file.
22943         * lib/unistr/u32-stpncpy.c: New file.
22944         * lib/unistr/u-stpncpy.h: New file.
22945
22946         * modules/unistr/u8-strcat: New file.
22947         * modules/unistr/u16-strcat: New file.
22948         * modules/unistr/u32-strcat: New file.
22949         * lib/unistr/u8-strcat.c: New file.
22950         * lib/unistr/u16-strcat.c: New file.
22951         * lib/unistr/u32-strcat.c: New file.
22952         * lib/unistr/u-strcat.h: New file.
22953
22954         * modules/unistr/u8-strchr: New file.
22955         * modules/unistr/u16-strchr: New file.
22956         * modules/unistr/u32-strchr: New file.
22957         * lib/unistr/u8-strchr.c: New file.
22958         * lib/unistr/u16-strchr.c: New file.
22959         * lib/unistr/u32-strchr.c: New file.
22960
22961         * modules/unistr/u8-strcmp: New file.
22962         * modules/unistr/u16-strcmp: New file.
22963         * modules/unistr/u32-strcmp: New file.
22964         * lib/unistr/u8-strcmp.c: New file.
22965         * lib/unistr/u16-strcmp.c: New file.
22966         * lib/unistr/u32-strcmp.c: New file.
22967
22968         * modules/unistr/u8-strcpy: New file.
22969         * modules/unistr/u16-strcpy: New file.
22970         * modules/unistr/u32-strcpy: New file.
22971         * lib/unistr/u8-strcpy.c: New file.
22972         * lib/unistr/u16-strcpy.c: New file.
22973         * lib/unistr/u32-strcpy.c: New file.
22974         * lib/unistr/u-strcpy.h: New file.
22975
22976         * modules/unistr/u8-strcspn: New file.
22977         * modules/unistr/u16-strcspn: New file.
22978         * modules/unistr/u32-strcspn: New file.
22979         * lib/unistr/u8-strcspn.c: New file.
22980         * lib/unistr/u16-strcspn.c: New file.
22981         * lib/unistr/u32-strcspn.c: New file.
22982         * lib/unistr/u-strcspn.h: New file.
22983
22984         * modules/unistr/u8-strdup: New file.
22985         * modules/unistr/u16-strdup: New file.
22986         * modules/unistr/u32-strdup: New file.
22987         * lib/unistr/u8-strdup.c: New file.
22988         * lib/unistr/u16-strdup.c: New file.
22989         * lib/unistr/u32-strdup.c: New file.
22990         * lib/unistr/u-strdup.h: New file.
22991
22992         * modules/unistr/u8-strlen: New file.
22993         * modules/unistr/u16-strlen: New file.
22994         * modules/unistr/u32-strlen: New file.
22995         * lib/unistr/u8-strlen.c: New file.
22996         * lib/unistr/u16-strlen.c: New file.
22997         * lib/unistr/u32-strlen.c: New file.
22998         * lib/unistr/u-strlen.h: New file.
22999
23000         * modules/unistr/u8-strmblen: New file.
23001         * modules/unistr/u16-strmblen: New file.
23002         * modules/unistr/u32-strmblen: New file.
23003         * lib/unistr/u8-strmblen.c: New file.
23004         * lib/unistr/u16-strmblen.c: New file.
23005         * lib/unistr/u32-strmblen.c: New file.
23006
23007         * modules/unistr/u8-strmbtouc: New file.
23008         * modules/unistr/u16-strmbtouc: New file.
23009         * modules/unistr/u32-strmbtouc: New file.
23010         * lib/unistr/u8-strmbtouc.c: New file.
23011         * lib/unistr/u16-strmbtouc.c: New file.
23012         * lib/unistr/u32-strmbtouc.c: New file.
23013
23014         * modules/unistr/u8-strncat: New file.
23015         * modules/unistr/u16-strncat: New file.
23016         * modules/unistr/u32-strncat: New file.
23017         * lib/unistr/u8-strncat.c: New file.
23018         * lib/unistr/u16-strncat.c: New file.
23019         * lib/unistr/u32-strncat.c: New file.
23020         * lib/unistr/u-strncat.h: New file.
23021
23022         * modules/unistr/u8-strncmp: New file.
23023         * modules/unistr/u16-strncmp: New file.
23024         * modules/unistr/u32-strncmp: New file.
23025         * lib/unistr/u8-strncmp.c: New file.
23026         * lib/unistr/u16-strncmp.c: New file.
23027         * lib/unistr/u32-strncmp.c: New file.
23028
23029         * modules/unistr/u8-strncpy: New file.
23030         * modules/unistr/u16-strncpy: New file.
23031         * modules/unistr/u32-strncpy: New file.
23032         * lib/unistr/u8-strncpy.c: New file.
23033         * lib/unistr/u16-strncpy.c: New file.
23034         * lib/unistr/u32-strncpy.c: New file.
23035         * lib/unistr/u-strncpy.h: New file.
23036
23037         * modules/unistr/u8-strnlen: New file.
23038         * modules/unistr/u16-strnlen: New file.
23039         * modules/unistr/u32-strnlen: New file.
23040         * lib/unistr/u8-strnlen.c: New file.
23041         * lib/unistr/u16-strnlen.c: New file.
23042         * lib/unistr/u32-strnlen.c: New file.
23043         * lib/unistr/u-strnlen.h: New file.
23044
23045         * modules/unistr/u8-strpbrk: New file.
23046         * modules/unistr/u16-strpbrk: New file.
23047         * modules/unistr/u32-strpbrk: New file.
23048         * lib/unistr/u8-strpbrk.c: New file.
23049         * lib/unistr/u16-strpbrk.c: New file.
23050         * lib/unistr/u32-strpbrk.c: New file.
23051         * lib/unistr/u-strpbrk.h: New file.
23052
23053         * modules/unistr/u8-strrchr: New file.
23054         * modules/unistr/u16-strrchr: New file.
23055         * modules/unistr/u32-strrchr: New file.
23056         * lib/unistr/u8-strrchr.c: New file.
23057         * lib/unistr/u16-strrchr.c: New file.
23058         * lib/unistr/u32-strrchr.c: New file.
23059
23060         * modules/unistr/u8-strspn: New file.
23061         * modules/unistr/u16-strspn: New file.
23062         * modules/unistr/u32-strspn: New file.
23063         * lib/unistr/u8-strspn.c: New file.
23064         * lib/unistr/u16-strspn.c: New file.
23065         * lib/unistr/u32-strspn.c: New file.
23066         * lib/unistr/u-strspn.h: New file.
23067
23068         * modules/unistr/u8-strstr: New file.
23069         * modules/unistr/u16-strstr: New file.
23070         * modules/unistr/u32-strstr: New file.
23071         * lib/unistr/u8-strstr.c: New file.
23072         * lib/unistr/u16-strstr.c: New file.
23073         * lib/unistr/u32-strstr.c: New file.
23074         * lib/unistr/u-strstr.h: New file.
23075
23076         * modules/unistr/u8-strtok: New file.
23077         * modules/unistr/u16-strtok: New file.
23078         * modules/unistr/u32-strtok: New file.
23079         * lib/unistr/u8-strtok.c: New file.
23080         * lib/unistr/u16-strtok.c: New file.
23081         * lib/unistr/u32-strtok.c: New file.
23082         * lib/unistr/u-strtok.h: New file.
23083
23084         * modules/unistr/u8-uctomb: New file.
23085         * modules/unistr/u16-uctomb: New file.
23086         * modules/unistr/u32-uctomb: New file.
23087         * lib/unistr/u8-uctomb.c: New file.
23088         * lib/unistr/u16-uctomb.c: New file.
23089         * lib/unistr/u32-uctomb.c: New file.
23090
23091         * MODULES.html.sh (Unicode string functions): Add the new modules.
23092
23093 2007-01-08  Bruno Haible  <bruno@clisp.org>
23094
23095         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
23096         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
23097         subdirectories.
23098
23099 2007-01-08  Karl Berry  <karl@gnu.org>
23100
23101         * doc/error.texi: mention that main() fns must set program_name
23102         when progname is used.
23103
23104 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
23105
23106         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
23107         WCTYPE_H is empty, for the benefit of builds from non-distclean
23108         directories.  Problem reported by Eric Blake in
23109         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
23110
23111 2007-01-08  Bruno Haible  <bruno@clisp.org>
23112
23113         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
23114         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
23115         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
23116         PROVIDE_CANONICALIZE_FILENAME_MODE.
23117         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
23118
23119 2007-01-08  Bruno Haible  <bruno@clisp.org>
23120
23121         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
23122         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
23123         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
23124         * lib/fts.c: Likewise.
23125         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
23126
23127 2006-12-25  Bruno Haible  <bruno@clisp.org>
23128
23129         * modules/utf8-ucs4-safe: New file.
23130         * lib/utf8-ucs4-safe.h: New file.
23131         * lib/unistr/utf8-ucs4-safe.c: New file.
23132
23133         * modules/utf16-ucs4-safe: New file.
23134         * lib/utf16-ucs4-safe.h: New file.
23135         * lib/unistr/utf16-ucs4-safe.c: New file.
23136
23137         * MODULES.html.sh (Unicode string functions): Add the new modules.
23138
23139 2007-01-08  Bruno Haible  <bruno@clisp.org>
23140
23141         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
23142         (Depends-on): Add unitypes.
23143         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
23144         (u8_mbtouc_aux): Move out to separate file.
23145         (u8_mbtouc): Use ucs4_t, uint8_t types.
23146         * lib/unistr/utf8-ucs4.c: New file.
23147
23148         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
23149         (Depends-on): Add unitypes.
23150         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
23151         (u16_mbtouc_aux): Move out to separate file.
23152         (u16_mbtouc): Use ucs4_t, uint16_t types.
23153         * lib/unistr/utf16-ucs4.c: New file.
23154
23155         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
23156         (Depends-on): Add unitypes.
23157         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
23158         (u8_uctomb_aux): Move out to separate file.
23159         (u8_uctomb): Use ucs4_t, uint8_t types.
23160         * lib/unistr/ucs4-utf8.c: New file.
23161
23162         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
23163         (Depends-on): Add unitypes.
23164         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
23165         (u16_uctomb_aux): Move out to separate file.
23166         (u16_uctomb): Use ucs4_t, uint16_t types.
23167         * lib/unistr/ucs4-utf16.c: New file.
23168
23169 2006-12-25  Bruno Haible  <bruno@clisp.org>
23170
23171         * modules/unitypes: New file.
23172         * lib/unitypes.h: New file.
23173         * MODULES.html.sh (func_all_modules): New section "Unicode string
23174         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
23175         this section. Add unitypes.
23176
23177 2007-01-08  Bruno Haible  <bruno@clisp.org>
23178
23179         Avoid variable names that conflict with those from libtool.
23180         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
23181         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
23182         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
23183         library_names_spec to acl_library_names_spec, hardcode_* to
23184         acl_hardcode_*.
23185         Reported by Ralf Wildenhues.
23186
23187 2007-01-08  Bruno Haible  <bruno@clisp.org>
23188
23189         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
23190         definition.
23191         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
23192         definition.
23193         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
23194         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
23195         definition.
23196         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
23197         definition.
23198         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
23199         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
23200         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
23201         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
23202         definition.
23203         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
23204         definition.
23205         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
23206         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
23207         GC_USE_<algorithm>.
23208         * lib/gc-libgcrypt.c: Likewise.
23209         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
23210         * modules/gc-arctwo (configure.ac): Likewise.
23211         * modules/gc-des (configure.ac): Likewise.
23212         * modules/gc-hmac-md5 (configure.ac): Likewise.
23213         * modules/gc-hmac-sha1 (configure.ac): Likewise.
23214         * modules/gc-md2 (configure.ac): Likewise.
23215         * modules/gc-md4 (configure.ac): Likewise.
23216         * modules/gc-md5 (configure.ac): Likewise.
23217         * modules/gc-random (configure.ac): Likewise.
23218         * modules/gc-rijndael (configure.ac): Likewise.
23219         * modules/gc-sha1 (configure.ac): Likewise.
23220
23221 2007-01-08  Bruno Haible  <bruno@clisp.org>
23222
23223         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
23224         macro definition.
23225         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
23226         definition.
23227         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
23228         definition.
23229         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
23230         * modules/fcntl-safer (configure.ac): Likewise.
23231         * modules/fopen-safer (configure.ac): Likewise.
23232         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
23233         GNULIB_FWRITEERROR macro definition.
23234
23235 2007-01-08  Bruno Haible  <bruno@clisp.org>
23236
23237         * m4/gnulib-common.m4: New file.
23238         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
23239         (func_get_filelist): Add m4/gnulib-common.m4.
23240
23241 2007-01-08  Bruno Haible  <bruno@clisp.org>
23242
23243         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
23244         command.
23245
23246 2007-01-08  Jim Meyering  <jim@meyering.net>
23247
23248         Use a more robust test for a "can't happen" condition.
23249         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
23250         narrowed the st_size value.  Presuming the "can't happen" condition
23251         is true, that narrowing could conceivably convert an invalid st_size
23252         value into a valid one.  Instead, use a change based on Matthew
23253         Woehlke's original patch.
23254
23255         Slight readability improvement: use an assert-like macro
23256         in place of literal "abort ()" uses.
23257         * lib/fts.c (fts_assert): Define.
23258         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
23259         Use this macro instead of a bare 'abort'.
23260
23261 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
23262
23263         Don't worry about using IRIX 5.3's wctype.h broken definitions;
23264         simply work around them.
23265         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
23266         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
23267         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
23268         declaring.
23269         Don't bother to define as macros, since the standard doesn't require it.
23270         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
23271         longer worry about IRIX 5.3.
23272         (HAVE_WCTYPE_CTMP_BUG): Remove.
23273
23274 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
23275
23276         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
23277         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
23278         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
23279         Problems reported by Georg Schwarz for IRIX 5.3.
23280
23281         * gnulib-tool (autoconf_minversion): Take the maximum version number
23282         found, not the minimum.  Problem reported by James Youngman.
23283
23284 2007-01-03  Karl Berry  <karl@gnu.org>
23285
23286         * doc/error.texi: new file, explaining interaction with progname.
23287         * doc/gnulib.texi: include it.  Update copyright.
23288
23289 2007-01-03  Simon Josefsson  <simon@josefsson.org>
23290
23291         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
23292         AC_CANONICAL_HOST, to improve autobuild outputs.
23293
23294 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
23295             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
23296
23297         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
23298         sockets, server sockets, and other file descriptors.  Count errors
23299         to compute the return value.  Reorder the code a bit to be easier
23300         to follow.  Don't set event bits that were not requested (except
23301         POLLERR and POLLHUP).
23302
23303 2007-01-01  Bruno Haible  <bruno@clisp.org>
23304
23305         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
23306
23307 2007-01-03  Jim Meyering  <jim@meyering.net>
23308
23309         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
23310
23311 2007-01-02  Bruno Haible  <bruno@clisp.org>
23312
23313         * modules/settime (Include): Require timespec.h.
23314         * modules/nanosleep (Include): Likewise.
23315
23316 2007-01-01  Bruno Haible  <bruno@clisp.org>
23317
23318         * gnulib-tool (func_emit_copyright_notice): Bump year.
23319         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
23320
23321 2007-01-01  Bruno Haible  <bruno@clisp.org>
23322
23323         Improve support for OpenBSD.
23324         * build-aux/config.rpath (libname_spec): Export.
23325         (library_names_spec): New variable. Export.
23326         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
23327         library_names_spec from the config.rpath output. Locate shared library
23328         through the name pattern in library_names_spec.
23329
23330 2007-01-01  Eric Blake  <ebb9@byu.net>
23331
23332         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
23333
23334 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
23335
23336         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
23337         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
23338         assume the C locale, and avoid an "eval" that could cause trouble.
23339         Problem with SORT reported by Bob Proulx.
23340
23341         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
23342         Define.  Trivial patch from Henning Nielsen Lund, originally
23343         sent to bug-grep@gnu.org today.
23344
23345 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
23346
23347         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
23348         struct stat.  Problem reported by Henning Nielsen Lund.
23349         * lib/acl.c: Include acl.h first, to check interface.  Don't
23350         bother to include sys/types.h and sys/stat.h again.
23351
23352 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
23353
23354         Import the following change from libc; problem reported by
23355         Sven Verdoolaege.
23356
23357         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
23358
23359         [BZ #1373]
23360         * lib/argp.h: Remove __NTH for __argp_usage inline function.
23361
23362 2006-12-28  Jim Meyering  <jim@meyering.net>
23363
23364         * build-aux/announce-gen: Do not assume that the package
23365         builds any of tar.gz, tar.bz2, and .xdelta files.
23366         Suggestion from Simon Josefsson.
23367
23368 2006-12-28  Simon Josefsson  <simon@josefsson.org>
23369
23370         * modules/announce-gen: New file.
23371
23372 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
23373
23374         * lib/mbchar.h: Just include <wctype.h>; the wctype module
23375         handles its gotchas now.
23376         * lib/mbswidth.c: Likewise.
23377         * lib/wcwidth.h: Likewise.
23378         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
23379         and iswcntrl; the wctype module does this stuff now.
23380         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
23381         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
23382         * modules/mbchar (Depends-on): Add wctype.
23383         * modules/mbswidth (Depends-on): Likewise.
23384         * modules/wcwidth (Depends-on): Likewise.
23385
23386 2006-12-27  Eric Blake  <ebb9@byu.net>
23387
23388         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
23389         module uses more than what <wctype.h> is required to provide.
23390
23391 2006-12-26  Eric Blake  <ebb9@byu.net>
23392
23393         * gnulib-tool (sed_extract_prog): Avoid space-tab.
23394
23395 2006-12-26  Eric Blake  <ebb9@byu.net>
23396
23397         * modules/absolute-header: New module.
23398         * modules/fcntl (Depends-on): Depend on it.
23399         * modules/inttypes (Depends-on): Likewise.
23400         * modules/stdint (Depends-on): Likewise.
23401         * modules/sys_stat (Depends-on): Likewise.
23402         * modules/wctype (Depends-on): Likewise.
23403         * MODULES.html.sh (Support for building libraries and
23404         executables): Document it.
23405
23406 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
23407
23408         * gnulib-tool (SED): Remove, undoing previous change.
23409         The problem was that it broke coreutils on Solaris, because
23410         "sed --posix" leaked into a makefile.
23411         (sed): New alias, if 'alias' and GNU sed.
23412
23413 2006-12-24  Jim Meyering  <jim@meyering.net>
23414
23415         Work around an fchownat bug in glibc-2.4:
23416         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
23417         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
23418         in spite of the -P option.
23419         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
23420         New macros.
23421         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
23422         * modules/openat (Files): Add lib/fchownat.c.
23423         * lib/openat.c (fchownat): Don't define here.  Move to...
23424         * lib/fchownat.c: ...this new file.
23425
23426 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23427
23428         Fix bug reported by Bruno Haible in
23429         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
23430         where quotearg.c didn't compile on Mac OS X 10.2 because it
23431         lacks <wchar.h> and wint_t.
23432         * lib/wctype_.h (__wctype_wint_t): New type.
23433         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
23434         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
23435         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
23436         Arg is now of type __wctype_wint_t, not wint_t.
23437         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
23438         substitute HAVE_WINT_T.
23439         * modules/wctype (Files): Add m4/wint_t.m4.
23440         (wctype.h): Substitute HAVE_WINT_T.
23441
23442 2006-12-23  Bruno Haible  <bruno@clisp.org>
23443
23444         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
23445
23446 2006-12-23  Bruno Haible  <bruno@clisp.org>
23447
23448         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
23449         S_ISLNK.
23450         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
23451         mingw.
23452
23453 2006-12-22  Bruno Haible  <bruno@clisp.org>
23454
23455         * lib/copy-file.c: Include acl.h.
23456         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
23457         Close the file descriptors only after being done with copy_acl.
23458         * modules/copy-file (Depends-on): Add acl.
23459
23460 2006-12-22  Bruno Haible  <bruno@clisp.org>
23461
23462         * gnulib-tool (SED): New variable.
23463         Use $SED instead of sed everywhere.
23464
23465 2006-12-22  Bruno Haible  <bruno@clisp.org>
23466
23467         * modules/no-c++: New file.
23468         * m4/no-c++.m4: New file.
23469         * MODULES.html.sh (Support for building libraries and executables):
23470         Add no-c++.
23471
23472 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
23473
23474         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
23475         Include <limits.h>, and use its INT_MAX to rewrite the
23476         j loop so that it does not overflow 'int'.  Problem reported by
23477         Ralf Wildenhues in
23478         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
23479         Play it safe by shifting left by 1 rather than multiplying by 2,
23480         as GCC is less likely to optimize this away when the value
23481         is signed (when it assumes overflow leads to undefined behavior).
23482         Also, don't assume time_t uses two's complement.
23483
23484 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
23485
23486         * MODULES.html.sh: New module wctype.
23487         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
23488         * lib/fnmatch.c: Don't bother to include <wchar.h> before
23489         <wctype.h>, since the new wctype module should fix this.
23490         * lib/quotearg.c: Include <wctype.h> unconditionally, since
23491         the wctype module should arrange for it.
23492         * lib/regex_internal.h: Likewise.
23493         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
23494         since the wctype module should handle this now.
23495         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
23496         * modules/fnmatch (Depends-on): Add wctype.
23497         * modules/quotearg (Depends-on): Likewise.
23498         * modules/regex (Depends-on): Likewise.
23499
23500 2006-12-19  Bruno Haible  <bruno@clisp.org>
23501
23502         * lib/strdup.h [C++]: Wrap definitions in extern "C".
23503         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
23504
23505 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23506
23507         * modules/savewd (Depends-on): Fix dependency on fcntl.
23508
23509 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
23510
23511         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
23512         conforms to C99, rather than relying on the user's environment
23513         setting of STDINT_H.
23514
23515 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
23516         and Eric Blake  <ebb9@byu.net>
23517
23518         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
23519         This is more consistent with the other defines here.
23520         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
23521         Port to z/OS.  Problem reported by Paul Gilmartin.
23522         Change local vars to use gl_ prefix rather than ac_.
23523         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
23524         with other defines.
23525         * modules/double-slash-root: New module.
23526         * modules/dirname (Files): Remove m4/double-slash-root.m4.
23527         (Depends-on): Add double-slash-root.
23528         * MODULES.html.sh (File system functions): Mention new module.
23529
23530 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
23531
23532         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
23533         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
23534         This is for the benefit of gzip, which doesn't do i18n.
23535
23536 2006-12-12  Jim Meyering  <jim@meyering.net>
23537
23538         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
23539         Reported by Andreas Schwab <schwab@suse.de>.
23540
23541 2006-12-12  Bruno Haible  <bruno@clisp.org>
23542
23543         Merge these changes.
23544         2006-09-05  Bruno Haible  <bruno@clisp.org>
23545         * lib/iconvme.c (iconv_string): No need to save and restore errno when
23546         iconv_alloc succeeded.
23547         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
23548         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
23549         test for " && dest " at the end - dest is always != NULL there. Call
23550         iconv with 4xNULL arguments initially, to reset the state. Call iconv
23551         with 2xNULL arguments, also to flush the state storage. Handle the
23552         IRIX iconv behaviour. Realloc the final result, to throw away unused
23553         memory.
23554
23555 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
23556
23557         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
23558         and fchmodat unconditionally, since glibc 2.4 has them.
23559         Problem reported by Arkadiusz Miskiewicz.
23560
23561 2006-12-10  Bruno Haible  <bruno@clisp.org>
23562
23563         * gnulib-tool (func_import): Show the include files only for those
23564         modules that are copied and specified.
23565         Reported by Karl Berry.
23566
23567 2006-12-08  Jim Meyering  <jim@meyering.net>
23568
23569         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
23570         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
23571
23572         * build-aux/announce-gen: Add two new options, both optional:
23573         --bootstrap-tools=TOOL_LIST
23574               a comma-separated list of tools, e.g.,
23575               autoconf,automake,bison,gnulib
23576         --gnulib-snapshot-date=DATE
23577               if gnulib is in the bootstrap tool list,
23578               then report this as the snapshot date.
23579               If not specified, use the current date/time.
23580               If you specify a date here, be sure it's UTC.
23581
23582 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23583
23584         * tests/test-argp-2.sh: Fix test to match actual output.
23585         (func_compare): Fix sed script to be portable.
23586
23587 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
23588
23589         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
23590         workaround for this case.  It is not autoconfigured now; offhand
23591         it's hard to see how to autoconfigure it.
23592
23593 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
23594
23595         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
23596         a directory that is about to be chowned.  Such a directory's
23597         initial file permissions should permit the owner only and this
23598         should not be changed until after the chown, since the group and
23599         other bits would be incorrect if they granted permission before
23600         the chown.
23601
23602         Fix porting problem for iswctype reported by Georg Schwarz in:
23603         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
23604         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
23605         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
23606         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
23607         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
23608
23609 2006-12-03  Jim Meyering  <jim@meyering.net>
23610
23611         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
23612         p->fts_statp may not yet be defined.
23613         (fts_read): Instead, set it in the caller, once p->fts_statp is
23614         sure to be defined, and corresponds to a top-level directory.
23615         This bug made du -x fail.  Here's the coreutils test case:
23616         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
23617         Reported by Mike Frysinger.
23618
23619 2006-12-01  Jim Meyering  <jim@meyering.net>
23620
23621         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
23622         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
23623         Reported by Simon Josefsson.
23624
23625 2006-11-30  Jim Meyering  <jim@meyering.net>
23626
23627         * m4/warning.m4: Use the all-permissive copyright notice
23628         recommended by RMS (rather than LGPL).
23629         * m4/vararrays.m4: Likewise.
23630         * m4/flexmember.m4: Likewise.
23631
23632 2006-11-29  Bruno Haible  <bruno@clisp.org>
23633
23634         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
23635         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
23636         using +=.
23637         Reported by Simon Josefsson <simon@josefsson.org>.
23638
23639 2006-11-28  James Youngman <jay@gnu.org>
23640
23641         * README: Advise users that they might find the bug-gnulib@gnu.org
23642         and autotools-announce@gnu.org mailing lists useful.
23643
23644 2006-11-28  Bruno Haible  <bruno@clisp.org>
23645
23646         * m4/ptrdiff_max.m4: Remove file.
23647
23648 2006-11-21  Bruno Haible  <bruno@clisp.org>
23649
23650         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
23651         _AC_COMPUTE_INT.
23652         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
23653         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
23654         _AC_COMPUTE_INT.
23655         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
23656         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
23657         _AC_COMPUTE_INT.
23658         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
23659
23660 2006-11-28  Jim Meyering  <jim@meyering.net>
23661
23662         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
23663         warning from "gcc -Wshadow" about shadowing the builtin.
23664
23665 2006-11-27  Bruno Haible  <bruno@clisp.org>
23666
23667         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
23668         _AC_COMPUTE_INT.
23669         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
23670
23671 2006-11-27  Bruno Haible  <bruno@clisp.org>
23672             Paul Eggert  <eggert@cs.ucla.edu>
23673
23674         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
23675
23676 2006-11-26  Bruno Haible  <bruno@clisp.org>
23677
23678         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
23679         noinst_LTLIBRARIES.
23680
23681 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
23682             Bruno Haible  <bruno@clisp.org>
23683
23684         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
23685         if compiling with "gcc -ansi".
23686
23687 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
23688
23689         Fix some incompatibilities with gcc -ansi -pedantic.
23690         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
23691         if compiling pedantically with GCC, unless it's C99 or later.
23692         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
23693         it mishandles gcc -ansi -pedantic as well.
23694         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
23695         if gcc -pedantic.
23696         * lib/regexec.c (check_node_accept_bytes): Don't use auto
23697         initializers for struct if -pedantic, unless it's C99 or later.
23698
23699 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
23700
23701         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
23702         Don't close an fd more than once. Identical atimes indicate
23703         success, not failure.
23704
23705 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
23706
23707         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
23708
23709 2006-11-23  Jim Meyering  <jim@meyering.net>
23710
23711         * build-aux/announce-gen: New file.  From coreutils.
23712
23713 2006-11-22  Jim Meyering  <jim@meyering.net>
23714
23715         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
23716         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
23717         (fts_read): Use a temporary to narrow the overused st_size member
23718         before using it in a switch statement.  Reported by Matthew Woehlke.
23719
23720         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
23721         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
23722
23723 2006-11-20  Bruno Haible  <bruno@clisp.org>
23724
23725         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
23726         changequote instead of pairs of brackets.
23727         Reported by Andreas Schwab <schwab@suse.de>.
23728
23729 2006-11-21  Jim Meyering  <jim@meyering.net>
23730
23731         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
23732         so as to remain compatible with older compilers.
23733         Patch from Michael Deutschmann.
23734
23735 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
23736
23737         * MODULES.html.sh (File system functions): Add openat.
23738
23739         * lib/openat.h (rpl_fstatat): New macro, if
23740         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
23741         (fstatat): Define to rpl_fstatat under the same conditions,
23742         unless COMPILING_FSTATAT.
23743         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
23744         seems to have the bug.
23745         * lib/fstatat.c: New file.
23746         * modules/openat (Files): Add it.
23747
23748 2006-11-20  Bruno Haible  <bruno@clisp.org>
23749
23750         * Makefile: New file.
23751
23752 2006-11-20  Jim Meyering  <jim@meyering.net>
23753
23754         The beginnings of syntax-related checks for gnulib.
23755         * lib/Makefile: New file.
23756         * lib/t-idcache: New script.  Ensure that the two halves of
23757         idcache.c stay in sync.
23758
23759         * lib/idcache.c: Adjust comments in user- and group- portions to
23760         be more accurate, and to be consistent with one another.
23761
23762 2006-11-20  Jim Meyering  <jim@meyering.net>
23763
23764         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
23765         continue using the flexible array member (thus, this module performs
23766         half as many malloc calls), with the addition that...
23767         (getgroup, getuser): Consistently record a non-match via an empty
23768         "name" string, and map an empty string match to a NULL return value.
23769         * modules/idcache (Depends-on): Re-add flexmember.
23770
23771         * lib/idcache.c (getuser): Remove all uses of the register keyword.
23772         (getuidbyname, getgroup, getgidbyname): Likewise.
23773
23774         Use cleaner syntax: NULL rather than 0.
23775         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
23776
23777 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
23778
23779         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
23780         It mishandled the case where the group was missing.
23781         Problem reported by Greg Schafer.
23782         * modules/idcache: Likewise.
23783
23784 2006-11-18  Jim Meyering  <jim@meyering.net>
23785
23786         * check-module (%exempt_header): Add exception for some
23787         conditionally-included headers.
23788
23789         * modules/i-ring (Depends-on): Add verify.
23790         (License): Change to LGPL.
23791
23792 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23793
23794         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
23795         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
23796         and inttostr.h.  Use snprintf rather than uinttostr, so that
23797         LGPLed code doesn't depend on GPLed.
23798
23799 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
23800
23801         * modules/inline (License): Change from GPL to LGPL.
23802
23803 2006-11-17  Jim Meyering  <jim@meyering.net>
23804
23805         * modules/d-type (License): Switch to LGPL.
23806
23807 2006-11-15  Bruno Haible  <bruno@clisp.org>
23808
23809         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
23810
23811 2006-11-15  Eric Blake  <ebb9@byu.net>
23812
23813         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
23814         the module dependency.
23815
23816 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23817             Bruno Haible  <bruno@clisp.org>
23818
23819         * gnulib-tool (func_create_testdir): Add license consistency check.
23820
23821 2006-11-15  Eric Blake  <ebb9@byu.net>
23822
23823         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
23824         random "(cached)" in configure output.
23825
23826 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23827
23828         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
23829         test for conforming inttypes.h is both announced and cached.
23830
23831         * MODULES.html.sh (seen_modules, seen_files): New variables.
23832         (func_module): Rewrite to use a few less gnulib-tool and sed
23833         invocations.  Avoid a couple of quadratic algorithms for ...
23834         (missed_modules, missed_files): ... these, with ...
23835         (func_append, func_tmpdir): ... these new functions, from
23836         gnulib-tool.  Analogously, install traps for cleanup.
23837
23838         * tests/test-gc.c (main): Remove unused variables.
23839         * tests/test-read-file.c: Include stdlib.h, for 'free'.
23840
23841 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
23842
23843         * modules/inttostr (License): Change to LGPL.
23844
23845 2006-11-14  Eric Blake  <ebb9@byu.net>
23846
23847         * modules/tempname (License): Change to LGPL.
23848
23849 2006-11-14  Eric Blake  <ebb9@byu.net>
23850
23851         * doc/functions.texi (Function Portability): *printf functions on
23852         Cygwin now understand all POSIX size specifiers.
23853
23854 2006-11-14  Bruno Haible  <bruno@clisp.org>
23855
23856         * modules/c-ctype (License): Change to LGPL.
23857
23858 2006-11-12  Bruno Haible  <bruno@clisp.org>
23859
23860         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
23861         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
23862         for GNOME libraries, for which the include files are installed in
23863         subdirectories of $prefix/include.
23864
23865 2006-11-12  Bruno Haible  <bruno@clisp.org>
23866
23867         * m4/lib-link.m4: Require at least autoconf-2.54.
23868         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
23869         name to underscores for the --with option.
23870
23871 2006-11-13  Bruno Haible  <bruno@clisp.org>
23872
23873         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
23874         the tests directory.
23875         Reported by Ralf Wildenhues.
23876
23877 2006-11-13  Bruno Haible  <bruno@clisp.org>
23878
23879         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
23880         (func_emit_initmacro_end): Undo the override here.
23881         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
23882         Works around the famous automake error in coreutils.
23883
23884 2006-11-13  Eric Blake  <ebb9@byu.net>
23885
23886         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
23887         element, not its node.
23888
23889 2006-11-12  Bruno Haible  <bruno@clisp.org>
23890
23891         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
23892         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
23893
23894 2006-11-12  Bruno Haible  <bruno@clisp.org>
23895
23896         * gnulib-tool: New option --local-symlink.
23897         (func_usage): Document it.
23898         (lsymbolic): New variable.
23899         (func_import, func_create_testdir): If --symlink was not specified,
23900         test whether --local-symlink was specified and the file comes from
23901         the local_gnulib_dir.
23902
23903 2006-11-12  Bruno Haible  <bruno@clisp.org>
23904
23905         * gnulib-tool (func_ln): New function.
23906         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
23907
23908 2006-11-12  Bruno Haible  <bruno@clisp.org>
23909
23910         Finish support for source files in subdirectories.
23911         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
23912         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
23913         AUTOMAKE_OPTIONS.
23914         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
23915
23916 2006-11-12  Bruno Haible  <bruno@clisp.org>
23917
23918         * gnulib-tool (func_get_automake_snippet): Synthesize also an
23919         EXTRA_lib_SOURCES augmentation.
23920         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
23921
23922 2006-11-12  Jim Meyering  <jim@meyering.net>
23923
23924         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
23925         file descriptors.  This also averts a failure on systems with
23926         native openat support when a traversed directory lacks "x" access.
23927         * lib/fts_.h: Include "i-ring.h"
23928         (struct FTS) [fts_fd_ring]: New member.
23929         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
23930         (FCHDIR): Add parentheses.
23931         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
23932         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
23933         When descending, rather than simply closing the previous
23934         fts_cwd_fd value, push that file descriptor onto the ring.
23935         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
23936         (fts_open): Initialize the new fd_ring member.
23937         (fts_close): Clear the ring.
23938         (fts_safe_changedir): When possible, use our new fd_ring to skip
23939         the diropen and fstat and dev/ino comparison that would normally
23940         accompany a virtual `chdir ("..")'.
23941
23942         * modules/fts (Depends-on): Add i-ring.
23943         * modules/i-ring: New module.
23944         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
23945         * m4/i-ring.m4: New file.
23946
23947 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23948
23949         * gnulib-tool (func_create_testdir): Fix replacement of
23950         `build-aux' in configure.ac.  Run autotools in gltests
23951         subdirectory.
23952         (func_create_testdir, func_create_megatestdir, test): There is
23953         no need for '--force' in most autotool invocations in a new
23954         tree.  Actually fail the whole test if any of the tools, or the
23955         configure or make stages fail.
23956
23957         Sync from Automake.
23958         * build-aux/gnupload: Revert last change.  Add pointer to upload
23959         instructions of the GNU Maintenance Instructions.
23960         Suggestion by Karl Berry.
23961
23962 2006-11-10  Jim Meyering  <jim@meyering.net>
23963
23964         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
23965
23966 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
23967
23968         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
23969         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
23970         (bind_textdomain_codeset) [! ENABLE_NLS]:
23971         Evaluate all the arguments.  That way, callers get compatible behavior
23972         if the arguments have side effects.  Also, it avoids some GCC
23973         diagnostics in some cases; Joel E. Denny reported problems when Bison
23974         was configured with --enable-gcc-warnigs.
23975
23976 2006-11-10  Jim Meyering  <jim@meyering.net>
23977
23978         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
23979         relevant options in CFLAGS (like -O, -fno-inline) are taken into
23980         account.
23981
23982 2006-11-10  Jim Meyering  <jim@meyering.net>
23983
23984         * modules/inline: New file/module.
23985         * modules/xalloc (Files): Remove m4/inline.m4.
23986         (Depends-on): Add inline, instead.
23987         * modules/oset: Likewise.
23988         * modules/list: Likewise.
23989
23990 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
23991
23992         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
23993         Problem reported by Matthew Woehlke.
23994
23995 2006-11-09  Bruno Haible  <bruno@clisp.org>
23996
23997         * lib/tempname.c (gen_tempname): Remove variant that invokes
23998         __gen_tempname.
23999         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
24000         __gen_tempname.
24001
24002 2006-11-08  Bruno Haible  <bruno@clisp.org>
24003
24004         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
24005         to 'yes' instead of 'cross-compiling'.
24006
24007 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
24008
24009         * lib/quotearg.h (quotearg_free): New decl.
24010         * lib/quotearg.c (quotearg_free): New function.
24011         (slot0, nslots, slotvec0, slotvec):
24012         Now file-scope so that quotearg_free can get at them.
24013
24014 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24015
24016         Sync from Automake.
24017         * build-aux/gnupload: Add missing 'gnu' to example URL.
24018         Report by Karl Berry.
24019
24020 2006-11-08  Bruno Haible  <bruno@clisp.org>
24021
24022         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
24023         Suggested by Paul Eggert.
24024
24025 2006-11-08  Jim Meyering  <jim@meyering.net>
24026
24027         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
24028         It's already included if !_LIBC.
24029         (fts_safe_changedir): Add a comment.
24030
24031 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
24032
24033         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
24034         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
24035         Matthew Woehlke.
24036
24037         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
24038         definitions up, to avoid colliding with change below.
24039         (static_inline) [HAVE_INLINE]: New macro.
24040         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
24041         Provide extern decls when !HAVE_INLINE.  Do not define unless
24042         static_inline is defined, either by us or by xmalloc.c.  Use
24043         static_inline rather than static inline.
24044         (XCALLOC): Optimize sizeof(T) = 1 case.
24045         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
24046
24047 2006-11-07  Bruno Haible  <bruno@clisp.org>
24048
24049         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
24050         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
24051         AC_C_INLINE.
24052         * modules/xalloc (Files): Add m4/inline.m4.
24053
24054 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24055
24056         * README: Fix typo.
24057         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
24058         (Miscellanous Notes): ...from this.
24059
24060 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
24061
24062         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
24063         Mention that offsetof should be used instead of sizeof.
24064         From Bruno Haible.
24065
24066 2006-11-07  Bruno Haible  <bruno@clisp.org>
24067
24068         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
24069
24070 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
24071
24072         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
24073         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
24074         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
24075         (gl_tree_add_before, gl_tree_add_after):
24076         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
24077         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
24078         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
24079         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
24080         (gl_linked_add_after, gl_linked_add_at): Likewise.
24081         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
24082         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
24083         (gl_tree_add_before, gl_tree_add_after): Likewise.
24084         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
24085         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
24086         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
24087
24088 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24089
24090         * lib/gl_oset.h: Use C comment style, not C++ comment style.
24091
24092 2006-11-06  Bruno Haible  <bruno@clisp.org>
24093
24094         * m4/inline.m4: New file.
24095         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
24096         * modules/list (Files): Add m4/inline.m4.
24097         * modules/oset (Files): Likewise.
24098
24099 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
24100
24101         * lib/idcache.c: Include <stddef.h>, for offsetof.
24102         (struct userid.name): Change from char * to a flexible array member.
24103         All uses changed.
24104         * modules/idcache (Depends-on): Add flexmember.
24105
24106         * MODULES.html.sh (Core language properties): New module flexmember.
24107         * modules/flexmember, m4/flexmember.m4: New files.
24108
24109         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
24110         inline functions that are identical with the old xnmalloc_inline,
24111         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
24112         that we can avoid some unnecessary integer multiplications and
24113         divisions in the common case where the element size is known at
24114         compile time.
24115         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
24116         needed.
24117         (xnboundedmalloc): Remove.
24118         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
24119         arguments, for consistency with rest of this header.
24120         (xcharalloc): Rewrite using XNMALLOC.
24121         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
24122         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
24123         versions have been moved to lib/xalloc.h and renamed to be the
24124         non-*_inline versions.
24125         (xmalloc, xrealloc): Implement without reference to the xnmalloc
24126         and xnrealloc functions, since those functions are now inline and
24127         now call us.
24128         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
24129         renaming described above.
24130         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
24131         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
24132         captures the dependency in AC_C_INLINE.
24133
24134         New module canonicalize-lgpl, proposed by Charles Wilson in
24135         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
24136         with a few small changes afterwards.
24137         * MODULES.html.sh (File system functions): New module
24138         canonicalize-lgpl.
24139         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
24140         and canonicalize_file_name.
24141         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
24142         * modules/canonicalize-lgpl: New files.
24143
24144 2006-11-05  Bruno Haible  <bruno@clisp.org>
24145
24146         * gnulib-tool (func_import, func_create_testdir): Create directories
24147         also for files in subdirectories of lib/.
24148
24149 2006-11-05  Bruno Haible  <bruno@clisp.org>
24150
24151         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
24152         ANSI C compliant.
24153
24154 2006-11-03  Bruno Haible  <bruno@clisp.org>
24155
24156         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
24157         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
24158         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
24159         (xnboundedmalloc): New inline function.
24160         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
24161         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
24162         xmalloc.
24163         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
24164         xmalloc.
24165         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
24166         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
24167         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
24168         xmalloc.
24169         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
24170         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
24171         xmalloc.
24172         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
24173         gl_tree_add_after): Use XMALLOC instead of xmalloc.
24174         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
24175         xmalloc.
24176         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
24177         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
24178         gl_tree_add_after): Use XMALLOC instead of xmalloc.
24179         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
24180         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
24181         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
24182         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
24183
24184 2006-11-03  Bruno Haible  <bruno@clisp.org>
24185
24186         * lib/c-ctype.h [C++]: Define functions without name mangling.
24187         * lib/fwriteerror.h [C++]: Likewise.
24188         * lib/gcd.h [C++]: Likewise.
24189         * lib/linebreak.h [C++]: Likewise.
24190
24191 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
24192
24193         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
24194         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
24195         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
24196         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
24197         Check for functions and headers just once.
24198         Check for declaration of canonicalize_file_name.
24199         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
24200
24201 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
24202
24203         * gnulib-tool (func_import): Fix typo in actioncmd.
24204
24205 2006-11-02  Bruno Haible  <bruno@clisp.org>
24206
24207         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
24208         newline sequence in the Makefile.am snippet as a space, like "make"
24209         does.
24210         Reported by Roger Persson <perrog@gmail.com>.
24211
24212 2006-11-01  Bruno Haible  <bruno@clisp.org>
24213
24214         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
24215         already declared in <string.h>.
24216         * lib/strcase.h (strncasecmp): Don't declare it if yes.
24217
24218 2006-11-01  Bruno Haible  <bruno@clisp.org>
24219
24220         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
24221         * lib/strcase.h: Include <string.h>.
24222         (strcasecmp): Define to rpl_strcasecmp here.
24223
24224 2006-11-01  Bruno Haible  <bruno@clisp.org>
24225
24226         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
24227
24228 2006-11-01  Eric Blake  <ebb9@byu.net>
24229
24230         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
24231
24232         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
24233
24234 2006-10-29  Bruno Haible  <bruno@clisp.org>
24235
24236         Make it compile in C++ mode.
24237         * lib/full-write.c (full_rw): Add a cast.
24238
24239 2006-11-01  Bruno Haible  <bruno@clisp.org>
24240
24241         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
24242         be POSIX compliant.
24243         Reported by Roger Persson <perrog@gmail.com>.
24244
24245 2006-11-01  Eric Blake  <ebb9@byu.net>
24246
24247         * lib/getopt_.h: Fix comments.
24248
24249 2006-10-31  Eric Blake  <ebb9@byu.net>
24250
24251         * modules/tmpdir (Depends-on): Add sys_stat.
24252         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
24253         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
24254         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
24255         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
24256         tempname.
24257
24258 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
24259
24260         Avoid some C++ diagnostics reported by Bruno Haible.
24261         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
24262         xmalloc.
24263         (quotearg_alloc): Use xcharalloc rather than xmalloc.
24264         (struct slotvec): Move to top level.
24265         (quotearg_n_options): Rewrite to avoid xmalloc.
24266         * lib/xalloc.h (xcharalloc): New function.
24267         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
24268         [defined __cplusplus]: Add function template that provides result
24269         type propagation.  This part of the change is from Bruno Haible.
24270
24271 2006-10-29  Bruno Haible  <bruno@clisp.org>
24272
24273         Make it compile in C++ mode.
24274         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
24275         * lib/strnlen1.c (strnlen1): Cast memchr result.
24276         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
24277         * lib/clean-temp.c (string_equals, string_hash): Add casts.
24278         (create_temp_dir): Rename local variable 'template'.
24279         (compile_csharp_using_sscli): Add cast.
24280         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
24281         * lib/findprog.c (find_in_path): Likewise.
24282         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
24283         * lib/wait-process.c (register_slave_subprocess): Likewise.
24284
24285 2006-10-22  Bruno Haible  <bruno@clisp.org>
24286
24287         * modules/tsearch: New file.
24288         * lib/tsearch.h: New file.
24289         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
24290         * m4/tsearch.m4: New file.
24291         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
24292
24293 2006-10-29  Eric Blake  <ebb9@byu.net>
24294
24295         * lib/arcfour.c: Assume config.h.
24296         * lib/arctwo.c: Likewise.
24297         * lib/base64.c: Likewise.
24298         * lib/check-version.c: Likewise.
24299         * lib/crc.c: Likewise.
24300         * lib/des.c: Likewise.
24301         * lib/gc-gnulib.c: Likewise.
24302         * lib/gc-libgcrypt.c: Likewise.
24303         * lib/gc-pbkdf2-sha1.c: Likewise.
24304         * lib/getaddrinfo.c: Likewise.
24305         * lib/getdelim.c: Likewise.
24306         * lib/getline.c: Likewise.
24307         * lib/hmac-md5.c: Likewise.
24308         * lib/hmac-sha1.c: Likewise.
24309         * lib/iconvme.c: Likewise.
24310         * lib/md2.c: Likewise.
24311         * lib/md4.c: Likewise.
24312         * lib/memxor.c: Likewise.
24313         * lib/read-file.c: Likewise.
24314         * lib/readline.c: Likewise.
24315         * lib/rijndael-alg-fst.c: Likewise.
24316         * lib/rijndael-api-fst.c: Likewise.
24317         * lib/xgetdomainname.c: Likewise.
24318
24319 2006-10-28  Eric Blake  <ebb9@byu.net>
24320
24321         * lib/xstrndup.c: Assume config.h.
24322
24323 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
24324
24325         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
24326         stat-macros.h is now for our own macros, whereas stat_h is for
24327         macros in the <sys/stat.h> name space.
24328         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
24329         (STAT_MACROS_H): Remove.
24330         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
24331         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
24332         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
24333         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
24334         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
24335         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
24336         Move these macros to ...
24337         * lib/stat_.h: here.  Don't include stat-macros.h.
24338         * lib/canonicalize.c: Don't include stat-macros.h.
24339         * lib/chown.c: Likewise.
24340         * lib/euidaccess.c: Likewise.
24341         * lib/file-type.c: Likewise.
24342         * lib/filemode.c: Likewise.
24343         * lib/glob.c: Likewise.
24344         * lib/isapipe.c: Likewise.
24345         * lib/lchown.c: Likewise.
24346         * lib/lstat.c: Likewise.
24347         * lib/mkdir-p.c: Likewise.
24348         * lib/rmdir.c: Likewise.
24349         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
24350         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
24351         unless mkdir isn't declared, to speed up 'configure'.
24352         Always create sys/stat.h, since it's unlikely any real sys/stat.h
24353         would define all the S_* symbols.
24354         * modules/canonicalize (Depends-on):
24355         Depend on sys_stat, not stat-macros.
24356         * modules/chown: Likewise.
24357         * modules/euidaccess: Likewise.
24358         * modules/filemode: Likewise.
24359         * modules/file-type: Likewise.
24360         * modules/glob: Likewise.
24361         * modules/isapipe: Likewise.
24362         * modules/lchown: Likewise.
24363         * modules/lstat: Likewise.
24364         * modules/mkancesdirs: Likewise.
24365         * modules/rmdir: Likewise.
24366         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
24367         * modules/modechange: Likewise.
24368         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
24369         (configure.ac): Remove gl_STAT_MACROS.
24370         * modules/sys_stat (Depends-on): Remove stat-macros.
24371
24372 2006-10-27  Bruno Haible  <bruno@clisp.org>
24373
24374         * m4/signed.m4: Remove file.
24375         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
24376         invocation.
24377         * modules/vasnprintf (Files): Remove m4/signed.m4.
24378
24379 2006-10-27  Bruno Haible  <bruno@clisp.org>
24380
24381         Update to GNU gettext 0.16.
24382         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
24383         m4/inttypes-h.m4, m4/signed.m4.
24384         * m4/gettext.m4: Update to GNU gettext 0.16.
24385         * m4/intl.m4: New file, from GNU gettext.
24386         * m4/intldir.m4: New file, from GNU gettext.
24387         * config/srclist.txt: Update
24388
24389 2006-10-27  Eric Blake  <ebb9@byu.net>
24390
24391         * MODULES.html.sh: Document tempname.
24392         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
24393         dependencies.
24394         (Files): Move lib/tempname.c...
24395         * modules/tempname: ...to this new module.
24396         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
24397         (gl_PREREQ_TEMPNAME): Move...
24398         * m4/tempname.m4: ...to this new file.
24399         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
24400         * modules/sys_stat (Depends-on): Add stat-macros.
24401         * lib/stat_.h (includes): Pick up stat macros.
24402         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
24403         if stat macros are broken.
24404         * lib/tempname.c (includes): No need to include "stat-macros.h".
24405         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
24406         (direxists, __path_search) [!_LIBC]: Don't compile these in
24407         gnulib; the tmpdir module covers that.
24408         * lib/tempname.h: New file.
24409
24410 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
24411
24412         * COPYING: Explain how gnulib-tool converts licence headers.
24413         Almost all wording by Eric Blake.
24414
24415 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
24416
24417         * lib/mbchar.h (is_basic_table): Make read-only.
24418         * lib/mbchar.c (is_basic_table): Likewise.
24419         Reported by John Darrington.
24420
24421 2006-10-25  Bruno Haible  <bruno@clisp.org>
24422
24423         * lib/progname.h (set_program_name): Undefine before defining.
24424
24425 2006-10-25  Bruno Haible  <bruno@clisp.org>
24426
24427         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
24428         false for non-gcc C++ compilers.
24429         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
24430
24431 2006-10-24  Bruno Haible  <bruno@clisp.org>
24432
24433         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
24434         iconv implementations like Irix iconv.
24435
24436 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24437
24438         * modules/vararrays: New file.
24439         * m4/vararrays.m4: New file, taken from diffutils.
24440         * MODULES.html.sh: New module vararrays.
24441
24442 2006-10-24  Karl Berry  <karl@gnu.org>
24443
24444         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
24445         Don't call GNU Unix.
24446
24447 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24448
24449         * users.txt: Add Libtool.
24450
24451         Sync from Libtool:
24452
24453         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24454
24455         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
24456         to gnulib's policy of including config.h unconditionally.
24457
24458 2006-10-24  Bruno Haible  <bruno@clisp.org>
24459
24460         * modules/wcwidth (Files): Add m4/wint_t.m4.
24461         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
24462         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
24463
24464 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24465
24466         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
24467         to pacify GCC with some -W flags enabled.  Problem reported by
24468         Bruno Haible.
24469
24470 2006-10-24  Jim Meyering  <jim@meyering.net>
24471
24472         * MODULES.html.sh: Remove uinttostr.  It's not a module.
24473         Reported by Karl Berry.
24474
24475 2006-10-23  Bruno Haible  <bruno@clisp.org>
24476
24477         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
24478
24479 2006-10-24  Bruno Haible  <bruno@clisp.org>
24480
24481         * lib/gl_list.h: Use C comment style, not C++ comment style.
24482
24483 2006-10-23  Eric Blake  <ebb9@byu.net>
24484
24485         * lib/getaddrinfo.c (includes): Add missing include.
24486
24487 2006-10-23  Bruno Haible  <bruno@clisp.org>
24488             Paul Eggert  <eggert@cs.ucla.edu>
24489
24490         Ability to rename obstack_free.
24491         * lib/obstack.h (__obstack_free): New macro. Declare instead of
24492         obstack_free.
24493         (obstack_free): Invoke the __obstack_free macro.
24494         * lib/obstack.c (obstack_free): Use __obstack_free macro.
24495
24496 2006-10-23  Bruno Haible  <bruno@clisp.org>
24497             Paul Eggert  <eggert@cs.ucla.edu>
24498
24499         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
24500         __argc, __argv from the declaration. (They are defined as macros on
24501         mingw.)
24502
24503 2006-10-22  Bruno Haible  <bruno@clisp.org>
24504
24505         * doc/gnulib-intro.texi: New file.
24506         * doc/gnulib.texi: Include it.
24507
24508 2006-10-21  Bruno Haible  <bruno@clisp.org>
24509
24510         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
24511         "Introduction", "Miscellanous Notes", "Particular Modules".
24512
24513 2006-10-21  Bruno Haible  <bruno@clisp.org>
24514
24515         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
24516         Change mostlyclean-local rule to avoid sh syntax error from bash
24517         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
24518
24519 2006-10-23  Jim Meyering  <jim@meyering.net>
24520
24521         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
24522         in place of snprintf.
24523
24524         * modules/inttostr (Files): Add lib/uinttostr.c.
24525         * lib/uinttostr.c (inttostr): New file/function.
24526         * lib/inttostr.h (uinttostr): Declare.
24527         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
24528         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
24529         Add uinttostr.
24530         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
24531
24532 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
24533
24534         * lib/canonicalize.c (ELOOP): Define if not already defined.
24535         Problem reported by Bruno Haible in
24536         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
24537
24538 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
24539
24540         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
24541         Problem reported by Perry Smith and Ville Laurikari.
24542
24543         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
24544         uses.
24545
24546 2006-10-19  Bruno Haible  <bruno@clisp.org>
24547
24548         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
24549         for mingw.
24550
24551 2006-10-19  Bruno Haible  <bruno@clisp.org>
24552
24553         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
24554         Needed for mingw.
24555
24556 2006-10-19  Bruno Haible  <bruno@clisp.org>
24557
24558         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
24559
24560 2006-10-19  Bruno Haible  <bruno@clisp.org>
24561
24562         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
24563         it.
24564
24565 2006-10-19  Bruno Haible  <bruno@clisp.org>
24566
24567         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
24568         invocation.
24569
24570 2006-10-19  Bruno Haible  <bruno@clisp.org>
24571
24572         * gnulib-tool (func_create_testdir): Don't include ftruncate and
24573         mountlist by default.
24574
24575 2006-10-16  Bruno Haible  <bruno@clisp.org>
24576
24577         * lib/c-strstr.c: Include c-strstr.h.
24578
24579 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
24580
24581         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
24582         in a slash.
24583
24584 2006-10-18  Bruno Haible  <bruno@clisp.org>
24585
24586         * lib/lock.h [C++]: Wrap definitions in extern "C".
24587
24588 2006-10-18  Bruno Haible  <bruno@clisp.org>
24589
24590         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
24591         gl_LIBOBJS list.
24592
24593 2006-10-18  Bruno Haible  <bruno@clisp.org>
24594
24595         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
24596
24597 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
24598
24599         * lib/xstrtol.h: Include gettext.h.
24600         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
24601         Problem reported by Eric Blake.
24602         * modules/xstrtol (Depends-on): Add gettext-h.
24603
24604 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
24605
24606         * lib/strftime.c (advance): New macro.
24607         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
24608         incomplete type, so you can't add 0 to it.  Problem and patch
24609         reported by Eelco Dolstra for dietlibc.
24610
24611 2006-10-18  Jim Meyering  <jim@meyering.net>
24612
24613         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
24614         type for a local, and rename it: s/up/user_proc/.
24615
24616 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
24617
24618         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
24619         READ_UTMP_USER_PROCESS.
24620         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
24621
24622 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
24623
24624         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
24625         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
24626
24627 2006-10-17  Eric Blake  <ebb9@byu.net>
24628
24629         * lib/sigprocmask.c (sigprocmask): Fix typo.
24630
24631         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
24632
24633         * modules/clean-temp (Makefile.am): Don't add to make output...
24634         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
24635         config.h.
24636
24637 2006-10-17  Bruno Haible  <bruno@clisp.org>
24638
24639         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
24640         differently if DEFAULT_TEXT_DOMAIN is set.
24641
24642 2006-10-16  Bruno Haible  <bruno@clisp.org>
24643
24644         * lib/clean-temp.c: Include fwriteerror.h.
24645
24646 2006-10-16  Bruno Haible  <bruno@clisp.org>
24647
24648         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
24649
24650 2006-10-16  Bruno Haible  <bruno@clisp.org>
24651
24652         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
24653         * lib/sigprocmask.h: Include <sys/types.h>.
24654         (sigset_t): Use the system's definition if present.
24655
24656 2006-10-17  Eric Blake  <ebb9@byu.net>
24657
24658         * lib/xvasprintf.c (includes): Assume config.h.
24659         * lib/xasprintf.c (includes): Likewise.
24660
24661 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
24662
24663         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
24664         at least as wide as intmax_t.
24665
24666 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
24667
24668         (Imported from Automake.)
24669         * build-aux/gnupload: Update to version 1.1 of directive file.
24670
24671 2006-10-16  Eric Blake  <ebb9@byu.net>
24672
24673         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
24674         match Automake 1.10a.
24675
24676 2006-10-14  Bruno Haible  <bruno@clisp.org>
24677
24678         * modules/sigprocmask: New file.
24679         * lib/sigprocmask.h: New file.
24680         * lib/sigprocmask.c: New file.
24681         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
24682         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
24683         request sigprocmask.o.
24684         (gl_PREREQ_SIGPROCMASK): New macro.
24685         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
24686         (Depends-on): Add sigprocmask.
24687         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
24688         gt_SIGNALBLOCKING. Test for 'raise' only once.
24689         * lib/fatal-signal.c: Include sigprocmask.h.
24690         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
24691         unblock_fatal_signals): Define always.
24692         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24693         sigprocmask.
24694
24695 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
24696
24697         Sync from Automake.
24698         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
24699         which incorrectly sets the mode of an existing destination
24700         directory.  In some cases the unpatched install-sh could do the
24701         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
24702         system.  We hope this is rare in practice, but it's clearly worth
24703         fixing.  Problem reported by Alex Unleashed in
24704         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
24705         Also, don't bother to check for -m bugs unless we're using -m;
24706         suggested by Stepan Kasal.
24707
24708 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24709
24710         Sync from Automake.
24711         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
24712         `-c' flag, so they appear at the same position as in %FASTDEP%
24713         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
24714         which ignores unknown options only after the first non-option.
24715         Bug report against M4 by Nelson H. F. Beebe.
24716
24717 2006-10-13  Jim Meyering  <jim@meyering.net>
24718
24719         Fix a bug in yesterday's change.
24720         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
24721         p->fts_statp->st_dev would be used uninitialized.
24722         Ensures that we always call fts_stat on the very first entry.
24723         Miklos Szeredi reported that find -xdev stopped working.
24724
24725 2006-10-12  Bruno Haible  <bruno@clisp.org>
24726
24727         * gnulib-tool (func_get_automake_snippet): Append an automatically
24728         computed EXTRA_DIST augmentation.
24729         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
24730         * modules/alloca-opt (Makefile.am): Likewise.
24731         * modules/allocsa (Makefile.am): Likewise.
24732         * modules/arcfour (Makefile.am): Likewise.
24733         * modules/arctwo (Makefile.am): Likewise.
24734         * modules/argmatch (Makefile.am): Likewise.
24735         * modules/argz (Makefile.am): Likewise.
24736         * modules/atexit (Makefile.am): Likewise.
24737         * modules/backupfile (Makefile.am): Likewise.
24738         * modules/byteswap (Makefile.am): Likewise.
24739         * modules/c-strtod (Makefile.am): Likewise.
24740         * modules/c-strtold (Makefile.am): Likewise.
24741         * modules/calloc (Makefile.am): Likewise.
24742         * modules/canon-host (Makefile.am): Likewise.
24743         * modules/canonicalize (Makefile.am): Likewise.
24744         * modules/chdir-long (Makefile.am): Likewise.
24745         * modules/chdir-safer (Makefile.am): Likewise.
24746         * modules/check-version (Makefile.am): Likewise.
24747         * modules/chown (Makefile.am): Likewise.
24748         * modules/cloexec (Makefile.am): Likewise.
24749         * modules/close-stream (Makefile.am): Likewise.
24750         * modules/closeout (Makefile.am): Likewise.
24751         * modules/crc (Makefile.am): Likewise.
24752         * modules/csharpexec (Makefile.am): Likewise.
24753         * modules/cycle-check (Makefile.am): Likewise.
24754         * modules/des (Makefile.am): Likewise.
24755         * modules/dev-ino (Makefile.am): Likewise.
24756         * modules/dirfd (Makefile.am): Likewise.
24757         * modules/dirname (Makefile.am): Likewise.
24758         * modules/dup2 (Makefile.am): Likewise.
24759         * modules/eealloc (Makefile.am): Likewise.
24760         * modules/error (Makefile.am): Likewise.
24761         * modules/euidaccess (Makefile.am): Likewise.
24762         * modules/exclude (Makefile.am): Likewise.
24763         * modules/exitfail (Makefile.am): Likewise.
24764         * modules/fcntl-safer (Makefile.am): Likewise.
24765         * modules/fcntl (Makefile.am): Likewise.
24766         * modules/file-type (Makefile.am): Likewise.
24767         * modules/fileblocks (Makefile.am): Likewise.
24768         * modules/filemode (Makefile.am): Likewise.
24769         * modules/filenamecat (Makefile.am): Likewise.
24770         * modules/fnmatch (Makefile.am): Likewise.
24771         * modules/fopen-safer (Makefile.am): Likewise.
24772         * modules/fpending (Makefile.am): Likewise.
24773         * modules/fprintftime (Makefile.am): Likewise.
24774         * modules/free (Makefile.am): Likewise.
24775         * modules/fsusage (Makefile.am): Likewise.
24776         * modules/ftruncate (Makefile.am): Likewise.
24777         * modules/fts (Makefile.am): Likewise.
24778         * modules/gc-arcfour (Makefile.am): Likewise.
24779         * modules/gc-des (Makefile.am): Likewise.
24780         * modules/gc-hmac-md5 (Makefile.am): Likewise.
24781         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
24782         * modules/gc-md4 (Makefile.am): Likewise.
24783         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
24784         * modules/gc-sha1 (Makefile.am): Likewise.
24785         * modules/gc (Makefile.am): Likewise.
24786         * modules/getaddrinfo (Makefile.am): Likewise.
24787         * modules/getcwd (Makefile.am): Likewise.
24788         * modules/getdelim (Makefile.am): Likewise.
24789         * modules/getdomainname (Makefile.am): Likewise.
24790         * modules/getgroups (Makefile.am): Likewise.
24791         * modules/gethostname (Makefile.am): Likewise.
24792         * modules/gethrxtime (Makefile.am): Likewise.
24793         * modules/getline (Makefile.am): Likewise.
24794         * modules/getloadavg (Makefile.am): Likewise.
24795         * modules/getlogin_r (Makefile.am): Likewise.
24796         * modules/getndelim2 (Makefile.am): Likewise.
24797         * modules/getopt (Makefile.am): Likewise.
24798         * modules/getpagesize (Makefile.am): Likewise.
24799         * modules/getpass-gnu (Makefile.am): Likewise.
24800         * modules/getpass (Makefile.am): Likewise.
24801         * modules/getsubopt (Makefile.am): Likewise.
24802         * modules/gettime (Makefile.am): Likewise.
24803         * modules/gettimeofday (Makefile.am): Likewise.
24804         * modules/getugroups (Makefile.am): Likewise.
24805         * modules/getusershell (Makefile.am): Likewise.
24806         * modules/glob (Makefile.am): Likewise.
24807         * modules/group-member (Makefile.am): Likewise.
24808         * modules/hard-locale (Makefile.am): Likewise.
24809         * modules/hash (Makefile.am): Likewise.
24810         * modules/hmac-md5 (Makefile.am): Likewise.
24811         * modules/hmac-sha1 (Makefile.am): Likewise.
24812         * modules/human (Makefile.am): Likewise.
24813         * modules/idcache (Makefile.am): Likewise.
24814         * modules/imaxabs (Makefile.am): Likewise.
24815         * modules/imaxdiv (Makefile.am): Likewise.
24816         * modules/inet_ntop (Makefile.am): Likewise.
24817         * modules/inet_pton (Makefile.am): Likewise.
24818         * modules/intprops (Makefile.am): Likewise.
24819         * modules/inttostr (Makefile.am): Likewise.
24820         * modules/inttypes (Makefile.am): Likewise.
24821         * modules/isapipe (Makefile.am): Likewise.
24822         * modules/javaversion (Makefile.am): Likewise.
24823         * modules/lchmod (Makefile.am): Likewise.
24824         * modules/lchown (Makefile.am): Likewise.
24825         * modules/localcharset (Makefile.am): Likewise.
24826         * modules/long-options (Makefile.am): Likewise.
24827         * modules/lstat (Makefile.am): Likewise.
24828         * modules/malloc (Makefile.am): Likewise.
24829         * modules/mathl (Makefile.am): Likewise.
24830         * modules/mbchar (Makefile.am): Likewise.
24831         * modules/md2 (Makefile.am): Likewise.
24832         * modules/md4 (Makefile.am): Likewise.
24833         * modules/md5 (Makefile.am): Likewise.
24834         * modules/memcasecmp (Makefile.am): Likewise.
24835         * modules/memchr (Makefile.am): Likewise.
24836         * modules/memcmp (Makefile.am): Likewise.
24837         * modules/memcoll (Makefile.am): Likewise.
24838         * modules/memcpy (Makefile.am): Likewise.
24839         * modules/memmem (Makefile.am): Likewise.
24840         * modules/memmove (Makefile.am): Likewise.
24841         * modules/mempcpy (Makefile.am): Likewise.
24842         * modules/memrchr (Makefile.am): Likewise.
24843         * modules/memset (Makefile.am): Likewise.
24844         * modules/memxor (Makefile.am): Likewise.
24845         * modules/mkancesdirs (Makefile.am): Likewise.
24846         * modules/mkdir-p (Makefile.am): Likewise.
24847         * modules/mkdir (Makefile.am): Likewise.
24848         * modules/mkdtemp (Makefile.am): Likewise.
24849         * modules/mkstemp (Makefile.am): Likewise.
24850         * modules/mktime (Makefile.am): Likewise.
24851         * modules/modechange (Makefile.am): Likewise.
24852         * modules/mountlist (Makefile.am): Likewise.
24853         * modules/nanosleep (Makefile.am): Likewise.
24854         * modules/obstack (Makefile.am): Likewise.
24855         * modules/openat (Makefile.am): Likewise.
24856         * modules/pagealign_alloc (Makefile.am): Likewise.
24857         * modules/pathmax (Makefile.am): Likewise.
24858         * modules/physmem (Makefile.am): Likewise.
24859         * modules/poll (Makefile.am): Likewise.
24860         * modules/posixtm (Makefile.am): Likewise.
24861         * modules/posixver (Makefile.am): Likewise.
24862         * modules/putenv (Makefile.am): Likewise.
24863         * modules/quote (Makefile.am): Likewise.
24864         * modules/quotearg (Makefile.am): Likewise.
24865         * modules/raise (Makefile.am): Likewise.
24866         * modules/read-file (Makefile.am): Likewise.
24867         * modules/readline (Makefile.am): Likewise.
24868         * modules/readlink (Makefile.am): Likewise.
24869         * modules/readtokens (Makefile.am): Likewise.
24870         * modules/readutmp (Makefile.am): Likewise.
24871         * modules/realloc (Makefile.am): Likewise.
24872         * modules/regex (Makefile.am): Likewise.
24873         * modules/rename-dest-slash (Makefile.am): Likewise.
24874         * modules/rename (Makefile.am): Likewise.
24875         * modules/rijndael (Makefile.am): Likewise.
24876         * modules/rmdir (Makefile.am): Likewise.
24877         * modules/rpmatch (Makefile.am): Likewise.
24878         * modules/safe-read (Makefile.am): Likewise.
24879         * modules/safe-write (Makefile.am): Likewise.
24880         * modules/same-inode (Makefile.am): Likewise.
24881         * modules/same (Makefile.am): Likewise.
24882         * modules/save-cwd (Makefile.am): Likewise.
24883         * modules/savedir (Makefile.am): Likewise.
24884         * modules/setenv (Makefile.am): Likewise.
24885         * modules/settime (Makefile.am): Likewise.
24886         * modules/sha1 (Makefile.am): Likewise.
24887         * modules/sig2str (Makefile.am): Likewise.
24888         * modules/snprintf (Makefile.am): Likewise.
24889         * modules/stat-macros (Makefile.am): Likewise.
24890         * modules/stat-time (Makefile.am): Likewise.
24891         * modules/stdbool (Makefile.am): Likewise.
24892         * modules/stdint (Makefile.am): Likewise.
24893         * modules/stdlib-safer (Makefile.am): Likewise.
24894         * modules/stpcpy (Makefile.am): Likewise.
24895         * modules/stpncpy (Makefile.am): Likewise.
24896         * modules/strcase (Makefile.am): Likewise.
24897         * modules/strcasestr (Makefile.am): Likewise.
24898         * modules/strchrnul (Makefile.am): Likewise.
24899         * modules/strcspn (Makefile.am): Likewise.
24900         * modules/strdup (Makefile.am): Likewise.
24901         * modules/strerror (Makefile.am): Likewise.
24902         * modules/strftime (Makefile.am): Likewise.
24903         * modules/strndup (Makefile.am): Likewise.
24904         * modules/strnlen (Makefile.am): Likewise.
24905         * modules/strpbrk (Makefile.am): Likewise.
24906         * modules/strsep (Makefile.am): Likewise.
24907         * modules/strstr (Makefile.am): Likewise.
24908         * modules/strtod (Makefile.am): Likewise.
24909         * modules/strtoimax (Makefile.am): Likewise.
24910         * modules/strtok_r (Makefile.am): Likewise.
24911         * modules/strtol (Makefile.am): Likewise.
24912         * modules/strtoll (Makefile.am): Likewise.
24913         * modules/strtoul (Makefile.am): Likewise.
24914         * modules/strtoull (Makefile.am): Likewise.
24915         * modules/strtoumax (Makefile.am): Likewise.
24916         * modules/strverscmp (Makefile.am): Likewise.
24917         * modules/sys_socket (Makefile.am): Likewise.
24918         * modules/sys_stat (Makefile.am): Likewise.
24919         * modules/sysexits (Makefile.am): Likewise.
24920         * modules/time_r (Makefile.am): Likewise.
24921         * modules/timegm (Makefile.am): Likewise.
24922         * modules/timespec (Makefile.am): Likewise.
24923         * modules/tmpfile-safer (Makefile.am): Likewise.
24924         * modules/trim (Makefile.am): Likewise.
24925         * modules/unistd-safer (Makefile.am): Likewise.
24926         * modules/unlinkdir (Makefile.am): Likewise.
24927         * modules/unlocked-io (Makefile.am): Likewise.
24928         * modules/userspec (Makefile.am): Likewise.
24929         * modules/utime (Makefile.am): Likewise.
24930         * modules/utimecmp (Makefile.am): Likewise.
24931         * modules/utimens (Makefile.am): Likewise.
24932         * modules/vasnprintf (Makefile.am): Likewise.
24933         * modules/vasprintf (Makefile.am): Likewise.
24934         * modules/vsnprintf (Makefile.am): Likewise.
24935         * modules/xalloc (Makefile.am): Likewise.
24936         * modules/xgetcwd (Makefile.am): Likewise.
24937         * modules/xnanosleep (Makefile.am): Likewise.
24938         * modules/xreadlink (Makefile.am): Likewise.
24939         * modules/xstrtod (Makefile.am): Likewise.
24940         * modules/xstrtol (Makefile.am): Likewise.
24941         * modules/xstrtold (Makefile.am): Likewise.
24942         * modules/yesno (Makefile.am): Likewise.
24943         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
24944
24945 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
24946
24947         * modules/error (Makefile.am): Distribute files through
24948         EXTRA_DIST, not lib_SOURCES.
24949
24950 2006-10-12  Eric Blake  <ebb9@byu.net>
24951
24952         * modules/error (Makefile.am): Distribute files in /lib.
24953         * modules/obstack (Makefile.am): Likewise.
24954
24955 2006-10-12  Bruno Haible  <bruno@clisp.org>
24956
24957         * modules/acl (Makefile.am): Distribute all files in lib/ through
24958         EXTRA_DIST.
24959         * modules/arcfour (Makefile.am): Likewise.
24960         * modules/arctwo (Makefile.am): Likewise.
24961         * modules/argmatch (Makefile.am): Likewise.
24962         * modules/argz (Makefile.am): Likewise.
24963         * modules/atexit (Makefile.am): Likewise.
24964         * modules/backupfile (Makefile.am): Likewise.
24965         * modules/c-strtod (Makefile.am): Likewise.
24966         * modules/c-strtold (Makefile.am): Likewise.
24967         * modules/calloc (Makefile.am): Likewise.
24968         * modules/canon-host (Makefile.am): Likewise.
24969         * modules/canonicalize (Makefile.am): Likewise.
24970         * modules/chdir-long (Makefile.am): Likewise.
24971         * modules/chdir-safer (Makefile.am): Likewise.
24972         * modules/check-version (Makefile.am): Likewise.
24973         * modules/chown (Makefile.am): Likewise.
24974         * modules/cloexec (Makefile.am): Likewise.
24975         * modules/close-stream (Makefile.am): Likewise.
24976         * modules/closeout (Makefile.am): Likewise.
24977         * modules/crc (Makefile.am): Likewise.
24978         * modules/cycle-check (Makefile.am): Likewise.
24979         * modules/des (Makefile.am): Likewise.
24980         * modules/dirfd (Makefile.am): Likewise.
24981         * modules/dirname (Makefile.am): Likewise.
24982         * modules/dup2 (Makefile.am): Likewise.
24983         * modules/euidaccess (Makefile.am): Likewise.
24984         * modules/exclude (Makefile.am): Likewise.
24985         * modules/exitfail (Makefile.am): Likewise.
24986         * modules/fcntl-safer (Makefile.am): Likewise.
24987         * modules/file-type (Makefile.am): Likewise.
24988         * modules/fileblocks (Makefile.am): Likewise.
24989         * modules/filemode (Makefile.am): Likewise.
24990         * modules/filenamecat (Makefile.am): Likewise.
24991         * modules/fnmatch (Makefile.am): Likewise.
24992         * modules/fopen-safer (Makefile.am): Likewise.
24993         * modules/fpending (Makefile.am): Likewise.
24994         * modules/fprintftime (Makefile.am): Likewise.
24995         * modules/free (Makefile.am): Likewise.
24996         * modules/fsusage (Makefile.am): Likewise.
24997         * modules/ftruncate (Makefile.am): Likewise.
24998         * modules/fts (Makefile.am): Likewise.
24999         * modules/gc (Makefile.am): Likewise.
25000         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
25001         * modules/getaddrinfo (Makefile.am): Likewise.
25002         * modules/getcwd (Makefile.am): Likewise.
25003         * modules/getdelim (Makefile.am): Likewise.
25004         * modules/getdomainname (Makefile.am): Likewise.
25005         * modules/getgroups (Makefile.am): Likewise.
25006         * modules/gethostname (Makefile.am): Likewise.
25007         * modules/gethrxtime (Makefile.am): Likewise.
25008         * modules/getline (Makefile.am): Likewise.
25009         * modules/getloadavg (Makefile.am): Likewise.
25010         * modules/getlogin_r (Makefile.am): Likewise.
25011         * modules/getopt (Makefile.am): Likewise.
25012         * modules/getpass (Makefile.am): Likewise.
25013         * modules/getpass-gnu (Makefile.am): Likewise.
25014         * modules/getsubopt (Makefile.am): Likewise.
25015         * modules/gettime (Makefile.am): Likewise.
25016         * modules/gettimeofday (Makefile.am): Likewise.
25017         * modules/getugroups (Makefile.am): Likewise.
25018         * modules/getusershell (Makefile.am): Likewise.
25019         * modules/glob (Makefile.am): Likewise.
25020         * modules/group-member (Makefile.am): Likewise.
25021         * modules/hard-locale (Makefile.am): Likewise.
25022         * modules/hash (Makefile.am): Likewise.
25023         * modules/hmac-md5 (Makefile.am): Likewise.
25024         * modules/hmac-sha1 (Makefile.am): Likewise.
25025         * modules/human (Makefile.am): Likewise.
25026         * modules/idcache (Makefile.am): Likewise.
25027         * modules/imaxabs (Makefile.am): Likewise.
25028         * modules/imaxdiv (Makefile.am): Likewise.
25029         * modules/inet_ntop (Makefile.am): Likewise.
25030         * modules/inet_pton (Makefile.am): Likewise.
25031         * modules/inttostr (Makefile.am): Likewise.
25032         * modules/isapipe (Makefile.am): Likewise.
25033         * modules/lchown (Makefile.am): Likewise.
25034         * modules/long-options (Makefile.am): Likewise.
25035         * modules/lstat (Makefile.am): Likewise.
25036         * modules/malloc (Makefile.am): Likewise.
25037         * modules/mathl (Makefile.am): Likewise.
25038         * modules/mbchar (Makefile.am): Likewise.
25039         * modules/md2 (Makefile.am): Likewise.
25040         * modules/md4 (Makefile.am): Likewise.
25041         * modules/md5 (Makefile.am): Likewise.
25042         * modules/memcasecmp (Makefile.am): Likewise.
25043         * modules/memchr (Makefile.am): Likewise.
25044         * modules/memcmp (Makefile.am): Likewise.
25045         * modules/memcoll (Makefile.am): Likewise.
25046         * modules/memcpy (Makefile.am): Likewise.
25047         * modules/memmem (Makefile.am): Likewise.
25048         * modules/memmove (Makefile.am): Likewise.
25049         * modules/mempcpy (Makefile.am): Likewise.
25050         * modules/memrchr (Makefile.am): Likewise.
25051         * modules/memset (Makefile.am): Likewise.
25052         * modules/memxor (Makefile.am): Likewise.
25053         * modules/mkancesdirs (Makefile.am): Likewise.
25054         * modules/mkdir (Makefile.am): Likewise.
25055         * modules/mkdir-p (Makefile.am): Likewise.
25056         * modules/mkdtemp (Makefile.am): Likewise.
25057         * modules/mkstemp (Makefile.am): Likewise.
25058         * modules/mktime (Makefile.am): Likewise.
25059         * modules/modechange (Makefile.am): Likewise.
25060         * modules/mountlist (Makefile.am): Likewise.
25061         * modules/nanosleep (Makefile.am): Likewise.
25062         * modules/openat (Makefile.am): Likewise.
25063         * modules/pagealign_alloc (Makefile.am): Likewise.
25064         * modules/physmem (Makefile.am): Likewise.
25065         * modules/poll (Makefile.am): Likewise.
25066         * modules/posixtm (Makefile.am): Likewise.
25067         * modules/posixver (Makefile.am): Likewise.
25068         * modules/putenv (Makefile.am): Likewise.
25069         * modules/quote (Makefile.am): Likewise.
25070         * modules/quotearg (Makefile.am): Likewise.
25071         * modules/raise (Makefile.am): Likewise.
25072         * modules/read-file (Makefile.am): Likewise.
25073         * modules/readline (Makefile.am): Likewise.
25074         * modules/readlink (Makefile.am): Likewise.
25075         * modules/readtokens (Makefile.am): Likewise.
25076         * modules/readutmp (Makefile.am): Likewise.
25077         * modules/realloc (Makefile.am): Likewise.
25078         * modules/regex (Makefile.am): Likewise.
25079         * modules/rename (Makefile.am): Likewise.
25080         * modules/rename-dest-slash (Makefile.am): Likewise.
25081         * modules/rijndael (Makefile.am): Likewise.
25082         * modules/rmdir (Makefile.am): Likewise.
25083         * modules/rpmatch (Makefile.am): Likewise.
25084         * modules/safe-read (Makefile.am): Likewise.
25085         * modules/safe-write (Makefile.am): Likewise.
25086         * modules/same (Makefile.am): Likewise.
25087         * modules/save-cwd (Makefile.am): Likewise.
25088         * modules/savedir (Makefile.am): Likewise.
25089         * modules/setenv (Makefile.am): Likewise.
25090         * modules/settime (Makefile.am): Likewise.
25091         * modules/sha1 (Makefile.am): Likewise.
25092         * modules/sig2str (Makefile.am): Likewise.
25093         * modules/snprintf (Makefile.am): Likewise.
25094         * modules/stdlib-safer (Makefile.am): Likewise.
25095         * modules/stpcpy (Makefile.am): Likewise.
25096         * modules/stpncpy (Makefile.am): Likewise.
25097         * modules/strcase (Makefile.am): Likewise.
25098         * modules/strcasestr (Makefile.am): Likewise.
25099         * modules/strchrnul (Makefile.am): Likewise.
25100         * modules/strcspn (Makefile.am): Likewise.
25101         * modules/strdup (Makefile.am): Likewise.
25102         * modules/strerror (Makefile.am): Likewise.
25103         * modules/strftime (Makefile.am): Likewise.
25104         * modules/strndup (Makefile.am): Likewise.
25105         * modules/strnlen (Makefile.am): Likewise.
25106         * modules/strpbrk (Makefile.am): Likewise.
25107         * modules/strsep (Makefile.am): Likewise.
25108         * modules/strstr (Makefile.am): Likewise.
25109         * modules/strtod (Makefile.am): Likewise.
25110         * modules/strtoimax (Makefile.am): Likewise.
25111         * modules/strtok_r (Makefile.am): Likewise.
25112         * modules/strtol (Makefile.am): Likewise.
25113         * modules/strtoll (Makefile.am): Likewise.
25114         * modules/strtoul (Makefile.am): Likewise.
25115         * modules/strtoull (Makefile.am): Likewise.
25116         * modules/strtoumax (Makefile.am): Likewise.
25117         * modules/strverscmp (Makefile.am): Likewise.
25118         * modules/time_r (Makefile.am): Likewise.
25119         * modules/timegm (Makefile.am): Likewise.
25120         * modules/tmpfile-safer (Makefile.am): Likewise.
25121         * modules/unistd-safer (Makefile.am): Likewise.
25122         * modules/unlinkdir (Makefile.am): Likewise.
25123         * modules/userspec (Makefile.am): Likewise.
25124         * modules/utime (Makefile.am): Likewise.
25125         * modules/utimecmp (Makefile.am): Likewise.
25126         * modules/utimens (Makefile.am): Likewise.
25127         * modules/vasnprintf (Makefile.am): Likewise.
25128         * modules/vasprintf (Makefile.am): Likewise.
25129         * modules/vsnprintf (Makefile.am): Likewise.
25130         * modules/xalloc (Makefile.am): Likewise.
25131         * modules/xgetcwd (Makefile.am): Likewise.
25132         * modules/xnanosleep (Makefile.am): Likewise.
25133         * modules/xreadlink (Makefile.am): Likewise.
25134         * modules/xstrtod (Makefile.am): Likewise.
25135         * modules/xstrtol (Makefile.am): Likewise.
25136         * modules/xstrtold (Makefile.am): Likewise.
25137         * modules/yesno (Makefile.am): Likewise.
25138
25139 2006-10-12  Jim Meyering  <jim@meyering.net>
25140
25141         * m4/getloadavg.m4: Revert the change below.
25142
25143         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
25144         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
25145         fail with a symlink, which is what coreutils' ./bootstrap now
25146         creates by default.
25147
25148 2006-10-12  Bruno Haible  <bruno@clisp.org>
25149
25150         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
25151         mingw.
25152         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
25153         MSVC and mingw explicitly.
25154
25155 2006-10-11  Simon Josefsson  <jas@extundo.com>
25156             Bruno Haible  <bruno@clisp.org>
25157
25158         Add support for multiple gnulib-tool invocations in the scope of a
25159         single configure.ac file.
25160         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
25161         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
25162         with the same contents as the _LIBADD variable.
25163         (func_emit_initmacro_start, func_emit_initmacro_end,
25164         func_emit_initmacro_done): New functions.
25165         (func_import, func_create_testdir): Invoke them. Allow the identifiers
25166         gl_LIBOBJS and gl_LTLIBOBJS.
25167
25168 2006-10-11  Bruno Haible  <bruno@clisp.org>
25169
25170         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
25171         (func_create_testdir): Don't create po/Makefile.am, don't invoke
25172         autoreconf. Instead, invoke autopoint explicitly but move back the
25173         *.m4 files from gnulib.
25174
25175 2006-10-11  Bruno Haible  <bruno@clisp.org>
25176
25177         * gnulib-tool (func_usage): Make module names after --create-testdir
25178         optional.
25179         (func_create_testdir): If no module was specified, use nearly all
25180         modules.
25181
25182 2006-10-12  Jim Meyering  <jim@meyering.net>
25183
25184         Big performance improvement for fts-based tools that use FTS_NOSTAT.
25185         Avoid spurious inode-mismatch problems on non-POSIX file systems.
25186         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
25187         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
25188         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
25189         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
25190         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
25191         (fts_set_stat_required): New function.
25192         (fts_open): Defer the calls to fts_stat, if possible or requested.
25193         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
25194         into fts_stat itself.
25195         (fts_read): Perform any required (deferred) fts_stat call.
25196         (fts_build): Likewise, for the directory we're about to open and read.
25197         In the readdir loop, carefully decide whether each entry will require
25198         an eventual call to fts_stat, using dirent.d_type info if available.
25199         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
25200         a command line argument into this function.  Update all callers.
25201         Map a return value of FTS_DOT to FTS_D for a command line argument.
25202         * modules/fts (Depends-on): Add d-type.  Alphabetize.
25203         Thanks to Miklos Szeredi for his tenacity and for the initial
25204         bug report about "find" failing on a FUSE-based file system.
25205
25206         * lib/fts.c (fts_open): Use consistent indentation.
25207
25208 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
25209
25210         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
25211         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
25212         reported by Jim Meyering.  All uses of cache variables renamed
25213         to match Autoconf's.
25214         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
25215         the other one.
25216
25217         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
25218         Fix misspelling in diagnostic.
25219
25220 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
25221
25222         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
25223         defined.  Problem reported by Matthew Woehlke.
25224
25225         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
25226         Add support for Tandem NonStop R series.
25227         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
25228         Use new macro.
25229
25230         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
25231         (has_trailing_slash): Omit size arg; all callers changed.
25232         Omit 'inline', since it doesn't help performance and we'd
25233         need to configure it.
25234         Don't count //, ///, etc. as having a trailing slash.
25235         As a side effect, this removes a C99ism reported by Matthew Woehlke.
25236         (rpl_rename_dest_slash): On failure, use rename's errno rather
25237         than (in some cases) an incorrect or junk errno.
25238         Simplify code by removing need to compute length; this does
25239         cause it to make two passes instead of one over the file name,
25240         but it's worth it.
25241
25242         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
25243         change, since Autoconf's version may no longer be appropriate now
25244         that we are using CVS Autoconf's version.  Add support for Tandem.
25245
25246 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
25247             Bruno Haible  <bruno@clisp.org>
25248
25249         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
25250         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
25251         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
25252         gl_AC_TYPE_LONG_LONG.
25253
25254         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
25255         instead of HAVE_LONG_LONG.
25256         * lib/printf-args.c (printf_fetchargs): Likewise.
25257         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
25258         * lib/vasnprintf.c (VASNPRINTF): Likewise.
25259         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
25260         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
25261         gl_AC_TYPE_LONG_LONG.
25262
25263 2006-10-11  Bruno Haible  <bruno@clisp.org>
25264
25265         * m4/longlong.m4: Add comments.
25266         * m4/ulonglong.m4: Likewise.
25267
25268 2006-10-10  Bruno Haible  <bruno@clisp.org>
25269
25270         Make it possible to #define stpcpy, strdup to aliases.
25271         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
25272         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
25273
25274 2006-10-10  Bruno Haible  <bruno@clisp.org>
25275
25276         Make it possible to #define gcd to an alias.
25277         * lib/gcd.c: Include config.h.
25278
25279 2006-10-10  Bruno Haible  <bruno@clisp.org>
25280
25281         Make it possible to #define c_isascii to an alias.
25282         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
25283         defined. Undefine the macros before defining them, to avoid gcc
25284         warnings.
25285         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
25286         define NO_C_CTYPE_MACROS early.
25287
25288 2006-10-10  Bruno Haible  <bruno@clisp.org>
25289
25290         Make it possible to #define set_program_name to an alias.
25291         * lib/progname.c: Don't undefine set_program_name; instead, undefine
25292         ENABLE_RELOCATABLE early.
25293
25294 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
25295
25296         Port to Tandem NSK OSS, which has 64-bit signed int but at most
25297         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
25298         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
25299         More generally, don't assume that 64-bit signed int is available
25300         if unsigned int is, and vice versa.
25301         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
25302         unsigned symbols, not on their signed counterparts.
25303         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
25304         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
25305         (UINT64_C, UINTMAX_C):
25306         Likewise.
25307         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
25308         unsigned counterparts.
25309         (Have_long_long, Unsigned): New macros.
25310         (Int): Renamed from INT.
25311         (strtoimax): Use the new macros.
25312         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
25313         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
25314         * modules/inttypes (inttypes.h): Substitute
25315         HAVE_UNSIGNED_LONG_LONG_INT.
25316         * modules/stdint (stdint.h): Likewise.
25317         (Files): Add m4/ulonglong.m4.
25318
25319 2006-10-10  Bruno Haible  <bruno@clisp.org>
25320
25321         Fix a gcc -Wshadow warning.
25322         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
25323         to 'bucket'.
25324         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
25325         gl_linked_indexof_from_to): Likewise.
25326         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
25327         Likewise.
25328         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
25329         Likewise.
25330         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
25331         Reported by Eric Blake.
25332
25333 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
25334
25335         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
25336         for NetBSD.  Problem reported by Bruno Haible.
25337
25338 2006-10-09  Jim Meyering  <jim@meyering.net>
25339
25340         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
25341         Patch from Bruno Haible.
25342
25343 2006-10-09  Jim Meyering  <jim@meyering.net>
25344
25345         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
25346         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
25347         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
25348
25349 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
25350
25351         Don't include <config.h> twice; this doesn't work in some cases,
25352         e.g., when config.h has "#define intmax_t long long int" and
25353         we include <config.h>, <inttypes.h>, <config.h> in that order.
25354         Problem reported by Matthew Woehlke in:
25355         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
25356         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
25357         * lib/fts-cycle.c: Don't include config.h.
25358         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
25359         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
25360         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
25361         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
25362         inttypes.h.
25363         * lib/xstrtoumax.c: Likewise.
25364         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
25365         __strtol and the like, so that this module is more like its siblings.
25366         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
25367         Remove; no longer needed now that we assume gnulib inttypes.h.
25368
25369 2006-10-08  Bruno Haible  <bruno@clisp.org>
25370
25371         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
25372         option.
25373
25374 2006-10-07  Jim Meyering  <jim@meyering.net>
25375
25376         * modules/inttypes (inttypes.h): Revert what seems to have been
25377         an inadvertent part of today's change: use "|", not "/" in the
25378         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
25379
25380 2006-10-07  Bruno Haible  <bruno@clisp.org>
25381
25382         * modules/sublist: New file.
25383
25384 2006-10-07  Bruno Haible  <bruno@clisp.org>
25385
25386         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
25387         * modules/argz (argz.h): Likewise.
25388         * modules/arpa_inet (arpa/inet.h): Likewise.
25389         * modules/byteswap (byteswap.h): Likewise.
25390         * modules/configmake (configmake.h): Likewise.
25391         * modules/fcntl (fcntl.h): Likewise.
25392         * modules/fnmatch (fnmatch.h): Likewise.
25393         * modules/getopt (getopt.h): Likewise.
25394         * modules/glob (glob.h): Likewise.
25395         * modules/inttypes (inttypes.h): Likewise.
25396         * modules/netinet_in (netinet/in.h): Likewise.
25397         * modules/poll (poll.h): Likewise.
25398         * modules/stdbool (stdbool.h): Likewise.
25399         * modules/stdint (stdint.h): Likewise.
25400         * modules/sys_select (sys/select.h): Likewise.
25401         * modules/sys_socket (sys/socket.h): Likewise.
25402         * modules/sys_stat (sys/stat.h): Likewise.
25403         * modules/sysexits (sysexits.h): Likewise.
25404         * modules/unistd (unistd.h): Likewise.
25405         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
25406         Add a "DO NOT EDIT" comment to the generated file.
25407         (func_import): Likewise for gnulib-comp.m4.
25408
25409 2006-10-07  Bruno Haible  <bruno@clisp.org>
25410
25411         * lib/gl_sublist.h: New file.
25412         * lib/gl_sublist.c: New file.
25413
25414 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
25415
25416         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
25417         name (relative to the original working directory) and the file
25418         name component (relative to the temporary working directory).  All
25419         callers changed.
25420         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
25421         * lib/mkdir-p.c (make_dir_parents): Likewise.
25422         * lib/mkdir-p.h (make_dir_parents): Likewise.
25423
25424 2006-10-06  Eric Blake  <ebb9@byu.net>
25425
25426         Define several macros for use by the clean-temp module.
25427         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
25428         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
25429         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
25430
25431         * lib/clean-temp.h (close_stream_temp): New declaration.
25432         * lib/clean-temp.c (includes): Pull in headers according to what
25433         other modules are in use.
25434         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
25435
25436 2006-10-06  Bruno Haible  <bruno@clisp.org>
25437
25438         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
25439         instead of fopen, fwriteerror.
25440
25441 2006-10-06  Bruno Haible  <bruno@clisp.org>
25442
25443         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
25444         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
25445         int.
25446         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
25447         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
25448         Return an error indicator.
25449         Suggested by Eric Blake.
25450
25451 2006-10-06  Bruno Haible  <bruno@clisp.org>
25452
25453         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
25454         Reported by Eric Blake.
25455
25456 2006-10-06  Bruno Haible  <bruno@clisp.org>
25457
25458         * modules/closeout (Description): Mention stderr too.
25459
25460 2006-10-06  Bruno Haible  <bruno@clisp.org>
25461         and Paul Eggert  <eggert@cs.ucla.edu>
25462
25463         * lib/closeout.c (close_stdout): Also close stderr.
25464         * lib/closeout.h: Update comment.
25465
25466 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
25467
25468         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
25469         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
25470         * lib/dirchownmod.c: Include lchown.h.
25471         * lib/lchown.c: Don't include files that lchown.h now includes.
25472         Don't declare chown, since lchown.h now does that.
25473         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
25474         (lchown): Define to rpl_chown if lchown is declared but
25475         does not exist.  Declare using a prototype if lchown is not
25476         declared.  Add a copyright notice.
25477         * lib/mkstemp.h: Include <unistd.h>.
25478         * lib/openat.c: Include lchown.h.
25479
25480         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
25481         we now test for that separately.
25482         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
25483         rather than O_NOFOLLOW, when testing whether it's possible to
25484         avoid a race condition reliably.
25485         * lib/savewd.c (savewd_chdir): Likewise.
25486
25487         Remove macros that are no longer needed now that stdint.h is
25488         reliable.
25489         * lib/fsusage.c (UINTMAX_MAX): Remove.
25490         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
25491         * lib/utimecmp.c (SIZE_MAX): Remove.
25492
25493         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
25494
25495         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
25496         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
25497         O_NOATIME works.
25498
25499 2006-10-05  Bruno Haible  <bruno@clisp.org>
25500
25501         * lib/gl_list.h (gl_sortedlist_search_from_to,
25502         gl_sortedlist_indexof_from_to): New declarations.
25503         (gl_list_implementation): New fields sortedlist_search_from_to,
25504         sortedlist_indexof_from_to.
25505         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
25506         inline functions.
25507         * lib/gl_list.c (gl_sortedlist_search_from_to,
25508         gl_sortedlist_indexof_from_to): New functions.
25509         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
25510         function.
25511         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
25512         (gl_array_sortedlist_search_from_to): New function.
25513         (gl_array_list_implementation): Update.
25514         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
25515         function.
25516         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
25517         (gl_carray_sortedlist_search_from_to): New function.
25518         (gl_carray_list_implementation): Update.
25519         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
25520         gl_linked_sortedlist_indexof_from_to): New functions.
25521         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
25522         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
25523         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
25524         gl_tree_sortedlist_indexof_from_to): New functions.
25525         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
25526         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
25527         Update.
25528         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
25529         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
25530         Update.
25531
25532 2006-10-05  Bruno Haible  <bruno@clisp.org>
25533
25534         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
25535         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
25536         (struct gl_list_implementation): Add fields search_from_to,
25537         indexof_from_to. Remove fields search, indexof.
25538         (gl_list_search): Use the search_from_to method.
25539         (gl_list_search_from, gl_list_search_from_to): New functions.
25540         (gl_list_indexof): Use the indexof_from_to method.
25541         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
25542         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
25543         (gl_list_search_from, gl_list_search_from_to): New functions.
25544         (gl_list_indexof): Use the indexof_from_to method.
25545         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
25546         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
25547         gl_array_indexof. Add start_index, end_index arguments.
25548         (gl_array_search_from_to): Renamed from gl_array_search. Add
25549         start_index, end_index arguments.
25550         (gl_array_remove, gl_array_list_implementation): Update.
25551         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
25552         gl_carray_indexof. Add start_index, end_index arguments.
25553         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
25554         start_index, end_index arguments.
25555         (gl_carray_remove, gl_carray_list_implementation): Update.
25556         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
25557         gl_linked_search. Add start_index, end_index arguments.
25558         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
25559         start_index, end_index arguments.
25560         (gl_linked_remove): Update.
25561         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
25562         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
25563         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
25564         field to 'size_t'.
25565         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
25566         gl_tree_search. Add start_index, end_index arguments.
25567         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
25568         start_index, end_index arguments.
25569         (gl_tree_remove): Update.
25570         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
25571         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
25572         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
25573         function.
25574         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
25575         gl_tree_search. Add start_index, end_index arguments.
25576         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
25577         start_index, end_index arguments.
25578         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
25579         Update.
25580         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
25581
25582 2006-10-05  Bruno Haible  <bruno@clisp.org>
25583
25584         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
25585
25586         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
25587         fwriteerror_temp): New declarations.
25588         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
25589         (descriptors): New variable.
25590         (cleanup): First, close the descriptors.
25591         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
25592         fclose_temp, fwriteerror_temp): New functions.
25593
25594 2006-10-04  Jim Meyering  <jim@meyering.net>
25595
25596         * lib/fts.c (fts_open): Tiny comment change.
25597
25598 2006-10-04  Bruno Haible  <bruno@clisp.org>
25599
25600         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
25601         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
25602         gl_LOCK_BODY.
25603         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
25604         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
25605         gl_LOCK_EARLY_BODY.
25606         (gl_LOCK): Require gl_LOCK_BODY.
25607
25608 2006-10-04  Bruno Haible  <bruno@clisp.org>
25609
25610         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
25611         (gl_oset_search_atleast): New declaration.
25612         (struct gl_oset_implementation): Add field 'search_atleast'.
25613         (gl_oset_search_atleast): New inline function.
25614         * lib/gl_oset.c (gl_oset_search_atleast): New function.
25615         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
25616         (gl_array_oset_implementation): Update.
25617         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
25618         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
25619         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
25620
25621 2006-10-04  Bruno Haible  <bruno@clisp.org>
25622
25623         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
25624
25625 2006-10-03  Bruno Haible  <bruno@clisp.org>
25626
25627         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
25628         from gl_avltreehash_list_implementation.
25629
25630 2006-10-03  Bruno Haible  <bruno@clisp.org>
25631
25632         * lib/gl_oset.c (gl_oset_add): Fix return type.
25633
25634 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
25635
25636         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
25637
25638 2006-10-02  Eric Blake  <ebb9@byu.net>
25639
25640         * modules/strnlen (Depends-on): Add extensions.
25641
25642 2006-10-02  Eric Blake  <ebb9@byu.net>
25643
25644         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
25645         definition in 2.60+.
25646
25647 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
25648
25649         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
25650         checks.
25651
25652 2006-10-02  Bruno Haible  <bruno@clisp.org>
25653
25654         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
25655         to the AUTOMAKE_OPTIONS.
25656         Reported by Jim Meyering.
25657
25658 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
25659
25660         Work around bug in Solaris 10 /proc file system:
25661         /proc/self/fd/NNN/.. isn't the parent directory of
25662         the directory whose file descriptor is NNN.  This needs to
25663         be worked around at run time, not compile time, since a
25664         program might be built on Solaris 8, where things work, and
25665         run on Solaris 10.
25666         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
25667         to use the following interface instead:
25668         (OPENAT_BUFFER_SIZE): New macro.
25669         (openat_proc_name): New function.
25670         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
25671         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
25672         Likewise.
25673         * lib/openat-proc.c: New file.
25674         * modules/openat (Files): Add lib/openat-proc.c.
25675         (Depends-on): Add same-inode, stdbool.
25676         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
25677
25678 2006-09-29  Bruno Haible  <bruno@clisp.org>
25679
25680         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
25681         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
25682         argument. Set stdout_closed before testing for ferror, not after.
25683         (fwriteerror, fwriteerror_no_ebadf): New functions.
25684
25685 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25686
25687         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
25688
25689 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
25690
25691         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
25692         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
25693
25694 2006-09-28  Jim Meyering  <jim@meyering.net>
25695
25696         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
25697         Include <unistd.h>.
25698
25699 2006-09-28  Bruno Haible  <bruno@clisp.org>
25700
25701         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
25702         * modules/linkedhash-list (Depends-on): Likewise.
25703         * modules/rbtreehash-list (Depends-on): Likewise.
25704
25705 2006-09-28  Bruno Haible  <bruno@clisp.org>
25706
25707         * lib/strndup.h: Simplify the redefinition of strndup.
25708         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
25709         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
25710
25711 2006-09-28  Bruno Haible  <bruno@clisp.org>
25712
25713         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
25714         * lib/gl_linkedhash_list.c: Likewise.
25715         * lib/gl_rbtreehash_list.c: Likewise.
25716
25717 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
25718
25719         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
25720         getaddrinfo.
25721
25722         * lib/__fpending.h: Don't include <stdio_ext.h> unless
25723         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
25724         it causes <stdio_ext.h> to cause a compile-time error.
25725         Problem reported by Nelson H. F. Beebe.
25726         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
25727         of HAVE_DECL___PENDING.
25728
25729         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
25730         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
25731         declaration.
25732
25733 2006-09-27  Jim Meyering  <jim@meyering.net>
25734
25735         This file could end up with a definition for a function
25736         named __strndup, rather than rpl_strndup on a system with
25737         incomplete weak_alias support.
25738         * lib/strndup.c (strndup): Rename from __strndup.
25739         Remove #defines that used to map __strndup to strndup.
25740         Don't use K&R prototypes.
25741         Remove LIBC-related code, since this file is not sync'd with glibc.
25742         * lib/strndup.h: Revamp, accordingly.
25743         * m4/strndup.m4: Modernize.
25744
25745 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
25746
25747         * modules/savewd (Depends-on): Add 'raise'.
25748         * lib/savewd.c: Include <signal.h>, for 'raise'.
25749
25750 2006-09-26  Jim Meyering  <jim@meyering.net>
25751
25752         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
25753         when we detect Darwin 8.7.0's acl_get_file bug.
25754         Rearrange to perform the new (below) run-test while $LIBS
25755         contains any acl-related library.  Set USE_ACL at the end.
25756         (gl_ACL_GET_FILE): New function.
25757
25758 2006-09-26  Eric Blake  <ebb9@byu.net>
25759
25760         * lib/verror.c: Include <config.h> unconditionally.
25761
25762 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
25763
25764         * modules/clock-time (Maintainer): Add self.
25765         * modules/getlogin_r (Depends-on): Add extensions.
25766
25767 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25768
25769         * modules/clock-time: New module.
25770         * modules/nanosleep (Depends-on): Add clock-time.
25771         * modules/gethrxtime (Depends-on): Likewise.
25772         * modules/gettime (Depends-on): Likewise.
25773         * modules/settime (Depends-on): Likewise.
25774
25775         * modules/fts-lgpl: Depend on openat.
25776         * modules/mkancesdirs: Depend on savewd.
25777         * modules/mkdir-p: Likewise.
25778
25779 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25780
25781         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
25782
25783         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
25784         `gl_have_arbitrary_file_name_length_limit' to
25785         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
25786         actually works between configure runs.
25787
25788 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25789             Bruno Haible  <bruno@clisp.org>
25790
25791         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
25792
25793 2006-09-25  Jim Meyering  <jim@meyering.net>
25794
25795         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
25796         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
25797
25798 2006-09-25  Eric Blake  <ebb9@byu.net>
25799
25800         * gnulib-tool (func_import, func_create_testdir): Fix typos in
25801         exec's in 2006-09-18 patch when shuffling fds.
25802
25803 2006-09-25  Bruno Haible  <bruno@clisp.org>
25804
25805         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
25806         Reported by Jim Meyering.
25807
25808 2006-09-24  Jim Meyering  <jim@meyering.net>
25809
25810         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
25811         compare a pointer against a literal "0".  That caused failures with
25812         at least HP-UX's hpcc.
25813
25814 2006-09-22  Simon Josefsson  <jas@extundo.com>
25815
25816         * modules/gc-sha1:
25817         * modules/gc-md4:
25818         * modules/gc-hmac-sha1:
25819         * modules/gc-hmac-md5:
25820         * modules/gc-des:
25821         * modules/gc-arcfour: Distribute more files.
25822
25823 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25824
25825         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
25826         (gl_linked_iterator_from_to): Initialize struct completely.
25827         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
25828         (gl_tree_iterator_from_to): Likewise
25829         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
25830         * lib/gl_array_list.c [lint] (gl_array_iterator)
25831         (gl_array_iterator_from_to): Likewise.
25832         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
25833         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
25834         (gl_carray_iterator_from_to): Likewise.
25835
25836         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
25837         * lib/md4.c (md4_process_block): Remove unused variable.
25838         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
25839         parentheses for clarity.
25840
25841 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25842
25843         * modules/bison-i18n (Depends-on): Add gettext.
25844
25845 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25846
25847         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
25848         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
25849         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
25850         also add missing comma that caused broken test.
25851         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
25852         stdlib.h, for `abort'.
25853         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
25854         variables.
25855         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
25856         include unistd.h if present, for `rmdir'.
25857         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
25858         variables.
25859         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
25860         in the process include standard headers for prototypes.
25861         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
25862         gets declared on GNU/Linux.
25863         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
25864         unistd.h, for `rmdir'.
25865         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
25866
25867         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
25868         always true.
25869         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
25870
25871         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
25872
25873 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25874
25875         * gnulib-tool (func_version): Create output all at once.  This
25876         may help avoid triggering unnecessary SIGPIPEs, and at any
25877         rate it doesn't hurt.
25878
25879 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25880             Bruno Haible  <bruno@clisp.org>
25881
25882         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
25883         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
25884         * m4/signed.m4 (bh_C_SIGNED): Likewise.
25885
25886         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
25887         (gl_FUNC_VASPRINTF): Invoke it.
25888
25889 2006-09-22  Bruno Haible  <bruno@clisp.org>
25890
25891         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
25892         getloadavg.c as first argument.
25893
25894 2006-09-22  Bruno Haible  <bruno@clisp.org>
25895
25896         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
25897         at the beginning of the gl_INIT macro.
25898         * modules/getloadavg (configure.ac): Pass $gl_source_base to
25899         gl_GETLOADAVG.
25900
25901 2006-09-22  Bruno Haible  <bruno@clisp.org>
25902
25903         * gnulib-tool (func_create_megatestdir): Don't include the config-h
25904         module.
25905         Suggested by Ralf Wildenhues.
25906
25907 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
25908
25909         Import this patch from libc:
25910
25911         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
25912
25913         * lib/regex_internal.c (re_string_reconstruct): Handle
25914         offset < pstr->valid_raw_len && pstr->offsets_needed case.
25915         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
25916         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
25917         re_string_context_at.
25918
25919         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
25920         now requires it.
25921         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
25922         gl_REGEX now does it for us.
25923         (gl_REGEX): Add test taken from
25924         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
25925
25926         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
25927         Check that large offsets work.  Modernize Autoconf usages.
25928         Prefer "yes" to mean a good thing rather than a bad.
25929         Don't put "#define mkstemp" in config.h, as this might interfere
25930         with standard system headers that "#define mkstemp mkstemp64".
25931
25932         * modules/mkstemp (Depends-on): Add extensions, so that
25933         mkstemp is visible on some platforms.
25934         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
25935         (Include): Change to "mkstemp.h" from <stdlib.h>.
25936         (Files): Add mkstemp.h.
25937
25938         * lib/mkstemp.h: New file, since some standard headers
25939         #define mkstemp.
25940         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
25941         Include "mkstemp.h".
25942         Make the _LIBC code resemble glibc original more,
25943         e.g., use K&R style.
25944         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
25945         (mkstemp): Remove, since mkstemp.h does this for us.
25946         * lib/stdlib--.h: Include mkstemp.h.
25947
25948         Import this patch from libc:
25949
25950         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
25951
25952         * lib/tempname.c (__gen_tempname): Change attempts_min
25953         into a macro.  Use preprocessor to decide how to initialize
25954         attempts [Coverity CID 67].
25955
25956 2006-09-20  Bruno Haible  <bruno@clisp.org>
25957
25958         * lib/mkdtemp.c: Import from libc.
25959         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
25960                 * sysdeps/posix/tempname.c (__gen_tempname): Change
25961                 attempts_min into a macro.  Use preprocessor to decide how to
25962                 initialize attempts [Coverity CID 67].
25963         2001-11-27  Paul Eggert  <eggert@twinsun.com>
25964                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
25965                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
25966
25967 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25968
25969         * gnulib-tool (func_exit): New function, to allow to pass the
25970         exit status portably through the trap.  Use everywhere.
25971         (--help, --version): Signal a write error.
25972         (trap): catch SIGPIPE, for write errors.
25973         Exit at the end of the trap, with the correct exit status.
25974
25975 2006-09-19  Karl Berry  <karl@gnu.org>
25976
25977         * doc/gnulib.texi: note about the license texinfo files.
25978
25979 2006-09-19  Eric Blake  <ebb9@byu.net>
25980
25981         * gnulib-tool: Avoid space-tab.
25982
25983 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
25984
25985         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
25986         that prevented coreutils 6.1 from building.  Problem reported
25987         by Petter Reinholdtsen.
25988
25989 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
25990
25991         * gnulib-tool (avoidlist): Fix typo that broke options like
25992         --avoid=lock that are used by coreutils bootstrap.
25993
25994 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
25995
25996         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
25997         more systematically.
25998
25999 2006-09-18  Jim Meyering  <jim@meyering.net>
26000
26001         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
26002
26003 2006-09-18  Bruno Haible  <bruno@clisp.org>
26004
26005         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
26006
26007 2006-09-18  Bruno Haible  <bruno@clisp.org>
26008
26009         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
26010         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
26011         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
26012         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
26013         * m4/gettext.m4: Require autoconf >= 2.52.
26014         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
26015         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
26016         of gl_cv_header_inttypes_h.
26017
26018 2006-09-18  Bruno Haible  <bruno@clisp.org>
26019
26020         * lib/javaversion.c: Include configmake.h.
26021
26022 2006-09-18  Bruno Haible  <bruno@clisp.org>
26023
26024         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
26025         avoid that the while loops be executed in a subshell.
26026
26027 2006-09-18  Bruno Haible  <bruno@clisp.org>
26028
26029         * MODULES.html.sh (func_module): Break long lines.
26030         Suggested by Bruce Korb <bkorb@gnu.org>.
26031
26032 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26033
26034         Speed up by a factor of 1.12.
26035         * gnulib-tool (nl): New variable.
26036         (func_import): Rewrite include directive extraction to only read each
26037         directive once.
26038
26039 2006-09-17  Bruno Haible  <bruno@clisp.org>
26040
26041         * modules/javaversion (Makefile.am): Remove DEFS setting.
26042         (Depends-on): Add configmake, for PKGDATADIR definition.
26043
26044 2006-09-17  Bruno Haible  <bruno@clisp.org>
26045
26046         * gnulib-tool (func_create_testdir): Rewrite all files at once.
26047
26048 2006-09-17  Bruno Haible  <bruno@clisp.org>
26049
26050         * gnulib-tool (func_append): New function, stolen from libtool.m4.
26051         (func_modules_transitive_closure, func_modules_add_dummy,
26052         func_modules_to_filelist, func_import, func_create_testdir,
26053         func_create_megatestdir, ...): Use it wherever possible.
26054         Suggested by Ralf Wildenhues.
26055
26056 2006-09-16  Karl Berry  <karl@gnu.org>
26057
26058         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
26059         to avoid sectioning errors.
26060         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
26061         [ifinfo]: blank line after @center-ed titles.
26062         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
26063         Spell FSF address consistently with others.
26064         (These changes approved by rms.)
26065
26066 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26067
26068         Speed up by a factor of 1.61.
26069         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
26070         already checked module names again.
26071
26072 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26073
26074         Speed up by a factor of 1.13.
26075         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
26076         for new_files, and the input to func_add_or_update.
26077
26078 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26079
26080         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
26081         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
26082
26083 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26084
26085         * modules/mkancesdirs (Depends-on): Add fcntl.
26086         * modules/savewd: New file.
26087         * MODULES.html.sh (File system functions): Add savewd.
26088
26089         * modules/configmake (Makefile.am): Add support for the
26090         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
26091
26092 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26093
26094         * m4/savewd.m4: New file.
26095
26096 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26097
26098         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
26099         (dirchownmod): New arg FD.  All callers changed.
26100         Use FD rather than opening the directory ourself, as opening is
26101         now the caller's responsibility.
26102         * lib/dirchownmod.h: Likewise.
26103         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
26104         hosts that require <sys/types.h> before <sys/stat.h>.  Include
26105         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
26106         (test_dir): Remove.
26107         (mkancesdirs): Return length of prefix of FILE that has already
26108         been made, or -2 if there is a child doing the work.  Redo
26109         algorithm so that it is O(N) rather than O(N**2).  Optimize away
26110         ".", and treat ".." specially since it might stray back into
26111         already-created areas.  Use a subprocess if necessary.  New arg
26112         WD; all users changed.  MAKE_DIR function should now return 1
26113         if it creates a directory that is not readable.  Return -2 if
26114         a child process is spun off.
26115         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
26116         Adjust signature to match code.
26117         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
26118         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
26119         all users changed.
26120         * lib/savewd.c, lib/savewd.h: New files.
26121
26122 2006-09-15  Jim Meyering  <jim@meyering.net>
26123
26124         * modules/rename-dest-slash: New module.
26125         * MODULES.html.sh (posix_compat): Add it here.
26126
26127         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
26128
26129 2006-09-15  Jim Meyering  <jim@meyering.net>
26130
26131         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
26132         file.
26133
26134         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
26135
26136 2006-09-15  Jim Meyering  <jim@meyering.net>
26137
26138         * lib/rename-dest-slash.c (has_trailing_slash): Use
26139         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
26140         (rpl_rename_dest_slash): Perform the cheaper trailing slash
26141         test before testing whether SRC is a directory.
26142         Suggestions from Bruno Haible.
26143
26144         Avoid a warning about an unused variable.
26145         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
26146         into the #ifdef block where it's used.
26147
26148         * lib/rename-dest-slash.c: New file.
26149
26150 2006-09-14  Bruno Haible  <bruno@clisp.org>
26151
26152         * lib/allocsa.c: Include <config.h> unconditionally.
26153         * lib/asnprintf.c: Likewise.
26154         * lib/asprintf.c: Likewise.
26155         * lib/c-strcasecmp.c: Likewise.
26156         * lib/c-strcasestr.c: Likewise.
26157         * lib/c-strncasecmp.c: Likewise.
26158         * lib/c-strstr.c: Likewise.
26159         * lib/classpath.c: Likewise.
26160         * lib/clean-temp.c: Likewise.
26161         * lib/concatpath.c: Likewise.
26162         * lib/copy-file.c: Likewise.
26163         * lib/csharpcomp.c: Likewise.
26164         * lib/csharpexec.c: Likewise.
26165         * lib/execute.c: Likewise.
26166         * lib/fatal-signal.c: Likewise.
26167         * lib/findprog.c: Likewise.
26168         * lib/fwriteerror.c: Likewise.
26169         * lib/gl_array_list.c: Likewise.
26170         * lib/gl_array_oset.c: Likewise.
26171         * lib/gl_avltree_list.c: Likewise.
26172         * lib/gl_avltree_oset.c: Likewise.
26173         * lib/gl_avltreehash_list.c: Likewise.
26174         * lib/gl_carray_list.c: Likewise.
26175         * lib/gl_linked_list.c: Likewise.
26176         * lib/gl_linkedhash_list.c: Likewise.
26177         * lib/gl_list.c: Likewise.
26178         * lib/gl_oset.c: Likewise.
26179         * lib/gl_rbtree_list.c: Likewise.
26180         * lib/gl_rbtree_oset.c: Likewise.
26181         * lib/gl_rbtreehash_list.c: Likewise.
26182         * lib/imaxabs.c: Likewise.
26183         * lib/imaxdiv.c: Likewise.
26184         * lib/javacomp.c: Likewise.
26185         * lib/javaexec.c: Likewise.
26186         * lib/javaversion.c: Likewise.
26187         * lib/linebreak.c: Likewise.
26188         * lib/localcharset.c: Likewise.
26189         * lib/lock.c: Likewise.
26190         * lib/mbchar.c: Likewise.
26191         * lib/mbswidth.c: Likewise.
26192         * lib/mkdtemp.c: Likewise.
26193         * lib/pipe.c: Likewise.
26194         * lib/printf-args.c: Likewise.
26195         * lib/printf-parse.c: Likewise.
26196         * lib/progname.c: Likewise.
26197         * lib/progreloc.c: Likewise.
26198         * lib/readlink.c: Likewise.
26199         * lib/sh-quote.c: Likewise.
26200         * lib/stpcpy.c: Likewise.
26201         * lib/stpncpy.c: Likewise.
26202         * lib/strcasecmp.c: Likewise.
26203         * lib/strcasestr.c: Likewise.
26204         * lib/strcspn.c: Likewise.
26205         * lib/striconv.c: Likewise.
26206         * lib/strncasecmp.c: Likewise.
26207         * lib/strnlen1.c: Likewise.
26208         * lib/strstr.c: Likewise.
26209         * lib/strtok_r.c: Likewise.
26210         * lib/tls.c: Likewise.
26211         * lib/tmpdir.c: Likewise.
26212         * lib/unicodeio.c: Likewise.
26213         * lib/unsetenv.c: Likewise.
26214         * lib/vasnprintf.c: Likewise.
26215         * lib/vasprintf.c: Likewise.
26216         * lib/wait-process.c: Likewise.
26217         * lib/xallocsa.c: Likewise.
26218         * lib/xsetenv.c: Likewise.
26219         * lib/xstriconv.c: Likewise.
26220
26221 2006-09-13  Simon Josefsson  <jas@extundo.com>
26222
26223         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
26224         that internally, suggested by Ralf Wildenhues
26225         <Ralf.Wildenhues@gmx.de>.
26226
26227 2006-09-13  Simon Josefsson  <jas@extundo.com>
26228
26229         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
26230         @LIBOBJS@.
26231         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
26232
26233 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
26234
26235         * lib/_fpending.c: Include <config.h> unconditionally, since we no
26236         longer worry about uses that don't define HAVE_CONFIG_H.
26237         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
26238         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
26239         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
26240         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
26241         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
26242         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
26243         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
26244         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
26245         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
26246         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
26247         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
26248         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
26249         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
26250         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
26251         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
26252         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
26253         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
26254         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
26255         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
26256         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
26257         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
26258         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
26259         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
26260         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
26261         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
26262         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
26263         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
26264         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
26265         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
26266         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
26267         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
26268         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
26269         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
26270         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
26271         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
26272         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
26273         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
26274         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
26275         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
26276         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
26277         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
26278         Likewise.
26279
26280 2006-09-13  Eric Blake  <ebb9@byu.net>
26281
26282         * lib/getopt.c: Fix typo in last commit.
26283
26284 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
26285
26286         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
26287         dgettext.
26288
26289 2006-09-12  Jim Meyering  <jim@meyering.net>
26290
26291         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
26292         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
26293         Reported by Nelson H. F. Beebe.
26294
26295 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
26296
26297         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
26298         program_invocation_name and program_invocation_short_name are
26299         initialized.
26300         * lib/argp-namefrob.h: Move declarations of program_invocation_name
26301         and program_invocation_short_name to argp.h, so they are visible
26302         to user programs.
26303         * lib/argp.h: Likewise
26304
26305 2006-09-10  Bruno Haible  <bruno@clisp.org>
26306
26307         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
26308         m4/inttypes_h.m4, m4/uintmax_t.m4.
26309
26310 2006-09-10  Bruno Haible  <bruno@clisp.org>
26311
26312         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
26313         gl_AC_TYPE_UINTMAX_T.
26314
26315 2006-09-10  Bruno Haible  <bruno@clisp.org>
26316
26317         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
26318
26319 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
26320
26321         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
26322         convention.  Text proposed by Bruno Haible.
26323         (struct argp_option): Document the use of N_() wrappers.
26324
26325         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
26326         '\v', and translate the two parts separately, instead of feeding
26327         the whole string to gettext.  This allows to exclude
26328         '\v' from the strings visible to the translator by writing doc
26329         strings as N_("..") "\v" N_("..").
26330
26331 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
26332
26333         * config/srclist.txt: Undo latest change; the bug was fixed.
26334
26335 2006-09-09  Bruno Haible  <bruno@clisp.org>
26336
26337         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
26338         assignments if building a library without libtool.
26339         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
26340         in func_emit_lib_Makefile_am.
26341         (func_import): When building a static library libfoo.a, arrange to
26342         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
26343         (func_create_testdir): Likewise.
26344         * modules/gc (configure.ac, Makefile.am): If building statically,
26345         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
26346         * modules/iconvme (configure.ac, Makefile.am): Likewise.
26347         * modules/striconv (configure.ac, Makefile.am): Likewise.
26348         Based on a suggestion by Ralf Wildenhues.
26349
26350 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26351
26352         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
26353         Check for unistd.h too, since Autoconf doesn't assume POSIX.
26354         Also:
26355
26356         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26357         Add year_2050_test to catch glibc bug 2821
26358         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
26359
26360         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26361         Prefer #ifdef to #if.
26362
26363         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
26364         Return from 'main' instead of calling 'exit'.
26365
26366 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26367
26368         * lib/mktime.c (guess_time_tm): Fix bug where mktime
26369         returned the maximum time_t value rather than (time_t) -1.
26370         Problem originally reported by William Bardwell
26371         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
26372
26373         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
26374         Moved to here ...
26375         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
26376         ... from here.
26377
26378 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26379
26380         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
26381         2821 is fixed.
26382
26383 2006-09-08  Jim Meyering  <jim@meyering.net>
26384
26385         Don't make generated files read-only.  That would bother too many
26386         people.  However, do retain the ability to work when targets are
26387         read-only: remove the destination and temporary files before writing
26388         them (when generated via sed or echo), or by using the -f option for
26389         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
26390         * modules/alloca-opt, modules/argz, modules/arpa_inet:
26391         * modules/byteswap, modules/configmake, modules/fcntl:
26392         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
26393         * modules/localcharset, modules/netinet_in, modules/poll:
26394         * modules/stdbool, modules/stdint, modules/sys_select:
26395         * modules/sys_socket, modules/sys_stat, modules/sysexits:
26396
26397 2006-09-08  Jim Meyering  <jim@meyering.net>
26398
26399         Avoid new build failure on FreeBSD 6.0.
26400         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
26401         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
26402         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
26403
26404 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26405
26406         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
26407
26408 2006-09-07  Jim Meyering  <jim@meyering.net>
26409
26410         Fix global typo in last change: use chmod u-w, not chmod u-x.
26411         Spotted by Paul Eggert and Bruce Korb.
26412         * modules/alloca-opt, modules/argz, modules/arpa_inet:
26413         * modules/byteswap, modules/configmake, modules/fcntl:
26414         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
26415         * modules/localcharset, modules/netinet_in, modules/poll:
26416         * modules/stdbool, modules/stdint, modules/sys_select:
26417         * modules/sys_socket, modules/sys_stat, modules/sysexits:
26418
26419 2006-09-06  Jim Meyering  <jim@meyering.net>
26420
26421         Make generated files be read-only.
26422         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
26423         Ensure that each generated file is now read-only.
26424         * modules/argz: Likewise.
26425         * modules/arpa_inet: Likewise.
26426         * modules/byteswap: Likewise.
26427         * modules/configmake: Likewise.
26428         * modules/fcntl: Likewise.
26429         * modules/fnmatch: Likewise.
26430         * modules/getopt: Likewise.
26431         * modules/glob: Likewise.
26432         * modules/inttypes: Likewise.
26433         * modules/netinet_in: Likewise.
26434         * modules/poll: Likewise.
26435         * modules/stdbool: Likewise.
26436         * modules/stdint: Likewise.
26437         * modules/sys_select: Likewise.
26438         * modules/sys_socket: Likewise.
26439         * modules/sys_stat: Likewise.
26440         * modules/sysexits: Likewise.
26441         * modules/localcharset: Same as above, but continue using temporary
26442         file named "t-$@" (why different?) rather than the "$@-t" used
26443         everywhere else.
26444
26445         * modules/sysexits (Makefile.am): Replace literal occurrences
26446         of "sysexit.h" more readable, and more consistent, "$@".
26447
26448 2006-09-06  Bruno Haible  <bruno@clisp.org>
26449
26450         * modules/striconv: New file.
26451         * modules/xstriconv: New file.
26452         * MODULES.html.sh (Internationalization functions): Add striconv,
26453         xstriconv.
26454
26455 2006-09-06  Bruno Haible  <bruno@clisp.org>
26456
26457         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
26458         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
26459         not using libtool correctly.
26460
26461 2006-09-06  Bruno Haible  <bruno@clisp.org>
26462
26463         * lib/striconv.h: New file.
26464         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
26465         iconvstring.c.
26466         * lib/xstriconv.h: New file.
26467         * lib/xstriconv.c: New file.
26468
26469 2006-09-06  Bruno Haible  <bruno@clisp.org>
26470
26471         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
26472         lib_..._LDFLAGS.
26473
26474 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26475
26476         * lib/argz_.h: Sync from Libtool.
26477
26478         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
26479                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
26480
26481         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
26482
26483 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
26484
26485         * modules/trim: New file.
26486
26487 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
26488
26489         * lib/trim.h: New file.
26490         * lib/trim.c: New file.
26491
26492 2006-09-05  Bruno Haible  <bruno@clisp.org>
26493
26494         * MODULES.html.sh (String handling): Add trim.
26495
26496 2006-09-04  Karl Berry  <karl@gnu.org>
26497
26498         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
26499         until next release.
26500
26501 2006-09-03  Bruno Haible  <bruno@clisp.org>
26502
26503         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
26504         correctly.
26505
26506 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26507
26508         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
26509         not gl_GETLOADAVG.  Omit unneeded semicolons.
26510         Problems reported by Ralf Wildenhues in
26511         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
26512         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
26513         at the end, which is the usual gnulib style.
26514
26515         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
26516         of doing all the work ourselves.
26517         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
26518         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
26519
26520 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26521
26522         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
26523         Problem reported by Ralf Wildenhues in
26524         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
26525
26526         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
26527         HAVE_STRUCT_STATFS_F_FSTYPENAME.
26528
26529 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26530
26531         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
26532         yesterday's patch by changing test -n to test -z.
26533
26534 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26535
26536         * modules/getloadavg (Files): Add m4/getloadavg.m4.
26537         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
26538         the former is now obsolescent.
26539
26540         * modules/chdir-long (Depends-on): Add fcntl.
26541
26542 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26543
26544         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
26545         obsolescent, and programs should use gnulib instead.
26546         * m4/getloadavg.m4: New file, with contents taken from Autoconf
26547         but with prefixes changed.
26548
26549 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26550
26551         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
26552         or stdbool.h, because they might not exist while configuring.
26553
26554         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
26555         Don't include unistd.h or limits.h; not needed, since chdir-long.h
26556         does that for us.
26557         (O_DIRECTORY): Remove.
26558
26559 2006-08-31  Eric Blake  <ebb9@byu.net>
26560
26561         * gnulib-tool: Don't let emacs change spaces to TAB.
26562
26563 2006-08-31  Bruno Haible  <bruno@clisp.org>
26564
26565         * gnulib-tool: When calling func_import more than once, do it in a
26566         subshell.
26567         Reported by Eric Blake <ebb9@byu.net>.
26568
26569 2006-08-31  Bruno Haible  <bruno@clisp.org>
26570
26571         * gnulib-tool (nl): Remove variable.
26572         (sed_transform_lib_file): Use more robust test for config-h module.
26573         (func_import): Fix typo in 2006-08-25 patch.
26574
26575 2006-08-31  Bruno Haible  <bruno@clisp.org>
26576
26577         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
26578         specified, augment Makefile.am variables instead of assigning them.
26579
26580 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
26581
26582         Work around a bug in both the Linux and SunOS 64-bit kernels:
26583         nanosleep mishandles sleeps for longer than 2**31 seconds.
26584         Problem reported by Frank v Waveren in
26585         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
26586         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
26587         Check for nanosleep bug.
26588         (LIB_NANOSLEEP): Append clock_gettime library if needed.
26589
26590 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
26591
26592         Work around a bug in both the Linux and SunOS 64-bit kernels:
26593         nanosleep mishandles sleeps for longer than 2**31 seconds.
26594         Problem reported by Frank v Waveren in
26595         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
26596         * lib/nanosleep.c (BILLION): New constant.
26597         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
26598         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
26599         implementation.
26600
26601 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
26602
26603         * modules/nanosleep (Depends-on): Add gettime.
26604
26605 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
26606         and Simon Josefsson  <jas@extundo.com>
26607         and Oskar Liljeblad  <oskar@osk.mine.nu>
26608
26609         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
26610         * gnulib-tool (func_import): New license type 'unmodifiable license
26611         text'.
26612         * modules/fdl: Use it.  Longer description.
26613         * module/gpl, module/lgpl: New files.
26614
26615 2006-08-30  Jim Meyering  <jim@meyering.net>
26616
26617         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
26618         shadowing the parameter.
26619
26620 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26621
26622         Sync from Libtool:
26623
26624         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26625
26626         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
26627         sharing with gnulib.  Report by Eric Blake.
26628
26629 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
26630
26631         * modules/isapipe: New file.
26632         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
26633
26634 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
26635
26636         * modules/configmake (Makefile.am): Add a comment, and omit
26637         the CONFIGMAKE_ prefix from generated macro names.  Suggested
26638         by Bruno Haible.
26639
26640 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
26641
26642         * m4/isapipe.m4: New file.
26643
26644 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
26645
26646         * lib/isapipe.c, lib/isapipe.h: New files.
26647
26648 2006-08-29  Jim Meyering  <jim@meyering.net>
26649
26650         * modules/configmake (Makefile.am): Make configmake.h depend on
26651         Makefile.  Otherwise, a stale configmake.h could hang around.
26652
26653 2006-08-29  Eric Blake  <ebb9@byu.net>
26654
26655         * lib/error.c (error_at_line, print_errno_message): Match libc, after
26656         resolution of upstream bug 3044.
26657
26658 2006-08-29  Bruno Haible  <bruno@clisp.org>
26659
26660         * modules/localcharset (Depends-on): Add configmake.
26661         (Makefile.am): Remove setting of LIBDIR through DEFS.
26662
26663 2006-08-29  Bruno Haible  <bruno@clisp.org>
26664
26665         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
26666         defined.
26667
26668 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
26669
26670         * modules/fcntl: New file.
26671         * modules/chdir-safer (Depends-on): Add fcntl.
26672         * modules/fts: Likewise.
26673         * modules/mkdir-p: Likewise.
26674
26675         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
26676         This undoes the most recent change, since we're now addressing the
26677         problem in a different way.
26678
26679         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
26680         into output, since the output might be called Makefile.am even
26681         if $makefile_name is something different.
26682         (func_import): Use $makefile_am rather than
26683         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
26684         empty.
26685
26686         * modules/inttypes (Files): Add m4/inttypes-h.m4.
26687
26688 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
26689
26690         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
26691         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
26692         recent change to stdint.m4, since we're now addressing the problem in a
26693         different way.
26694
26695 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
26696
26697         * m4/fcntl_h.m4: New file.
26698
26699 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
26700
26701         * lib/fcntl_.h: New file.
26702         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
26703         the fcntl module.
26704         * lib/dirchownmod.c: Likewise.
26705         * lib/fts.c: Likewise.
26706
26707         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
26708         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
26709         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
26710         just before including <inttypes.h>, to avoid circular inclusion.
26711
26712 2006-08-28  Jim Meyering  <jim@meyering.net>
26713
26714         * doc/visibility.texi: Actually read and correct the grammar of the
26715         sentence affected by yesterday's change.
26716
26717 2006-08-28  Eric Blake  <ebb9@byu.net>
26718
26719         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
26720         needs wrapper.
26721
26722 2006-08-28  Eric Blake  <ebb9@byu.net>
26723
26724         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
26725
26726 2006-08-28  Eric Blake  <ebb9@byu.net>
26727
26728         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
26729
26730 2006-08-28  Bruno Haible  <bruno@clisp.org>
26731
26732         * modules/c-strstr: New file, from GNU gettext.
26733         * MODULES.html.sh (String handling): Add c-strstr.
26734
26735 2006-08-28  Bruno Haible  <bruno@clisp.org>
26736
26737         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
26738         macros.
26739         Reported by Eric Blake.
26740
26741 2006-08-28  Bruno Haible  <bruno@clisp.org>
26742
26743         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
26744         (VASNPRINTF): Return a string of length > INT_MAX without failing.
26745         * lib/vasprintf.c: Include errno.h, limits.h.
26746         (EOVERFLOW): New fallback definition.
26747         (vasprintf): Test here whether the string length is > INT_MAX.
26748         * lib/vsnprintf.c: Include errno.h, limits.h.
26749         (EOVERFLOW): New fallback definition.
26750         (vsnprintf): Fix bug when generated string was too long for the buffer.
26751         Test here whether the string length is > INT_MAX.
26752
26753 2006-08-28  Bruno Haible  <bruno@clisp.org>
26754
26755         * lib/inttypes_.h (SCNX*): Remove definitions.
26756         Reported by Eric Blake.
26757
26758 2006-08-28  Bruno Haible  <bruno@clisp.org>
26759
26760         * lib/c-strstr.h: New file, from GNU gettext.
26761         * lib/c-strstr.c: New file, from GNU gettext.
26762
26763 2006-08-28  Bruno Haible  <bruno@clisp.org>
26764
26765         * gnulib-tool: Reorder some statements.
26766
26767 2006-08-28  Bruno Haible  <bruno@clisp.org>
26768
26769         * gnulib-tool: New option --makefile-name.
26770         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
26771         $makefile_name.
26772         (func_import): Write $makefile_name to the cache file, and read it from
26773         there unless explicitly specified. Use $makefile_name as file name
26774         instead of Makefile.am. Adjust the recommendations accordingly.
26775
26776 2006-08-28  Bruno Haible  <bruno@clisp.org>
26777
26778         * gnulib-tool (func_verify_module): Check against misapplying patch.
26779
26780 2006-08-28  Bruno Haible  <bruno@clisp.org>
26781
26782         * gnulib-tool (func_relativize, func_relconcat): New functions.
26783         Give an error if --local-dir is given with --update.
26784         Remove trailing slashes from $local_gnulib_dir.
26785         (func_import): Store the relativized $local_gnulib_dir in
26786         gnulib-cache.m4, and read it from there if not specified explicitly.
26787
26788 2006-08-28  Bruno Haible  <bruno@clisp.org>
26789
26790         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
26791         is the current directory. Respect also $local_gnulib_dir.
26792
26793 2006-08-28  Bruno Haible  <bruno@clisp.org>
26794             Simon Josefsson  <jas@extundo.com>
26795
26796         BeOS portability.
26797         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
26798
26799 2006-08-27  Jim Meyering  <jim@meyering.net>
26800
26801         * doc/visibility.texi: Remove duplicate word: "pointer".
26802
26803 2006-08-26  Bruno Haible  <bruno@clisp.org>
26804
26805         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
26806         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
26807         (Makefile.am): Create inttypes.h from inttypes_.h.
26808         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
26809
26810         * modules/imaxabs: New file.
26811
26812         * modules/imaxdiv: New file.
26813
26814 2006-08-26  Bruno Haible  <bruno@clisp.org>
26815
26816         * m4/inttypes.m4: New file.
26817         * m4/_inttypes_h.m4: Remove file.
26818         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
26819         PRI_MACROS_BROKEN.
26820         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
26821
26822         * m4/imaxabs.m4: New file.
26823
26824         * m4/imaxdiv.m4: New file.
26825
26826 2006-08-26  Bruno Haible  <bruno@clisp.org>
26827
26828         * lib/inttypes_.h: New file.
26829         * lib/inttypes.h: Remove file.
26830         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
26831
26832         * lib/imaxabs.c: New file.
26833
26834         * lib/imaxdiv.c: New file.
26835
26836 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26837
26838         New config-h module, so that "make" output needn't be cluttered
26839         by -DHAVE_CONFIG_H.
26840         * MODULES.html.sh (Support for building libraries and executables):
26841         Add config-h.
26842         * modules/config-h: New file.
26843         * gnulib-tool (nl, sed_transform_lib_file): New vars.
26844         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
26845         the config-h module is used.
26846
26847         New configmake module, so that "make" output needn't be cluttered
26848         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
26849         * MODULES.html.sh (Support for building libraries and executables):
26850         Add configmake.
26851         * modules/configmake: New file.
26852
26853 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26854
26855         * m4/config-h.m4: New file.
26856
26857 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26858
26859         * config/srclist.txt: Add elisp-comp.
26860
26861 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26862
26863         * MODULES.html.sh (Support for building libraries and executables):
26864         Add elisp-comp.
26865         * build-aux/elisp-comp: New file.
26866         * modules/elisp-comp: New file.
26867
26868 2006-08-24  Bruno Haible  <bruno@clisp.org>
26869
26870         * gnulib-tool (func_create_testdir): Use non-default values of
26871         sourcebase and m4base.
26872
26873 2006-08-24  Bruno Haible  <bruno@clisp.org>
26874
26875         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
26876         HTML structure.
26877
26878 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
26879
26880         * modules/openat (Depends-on): Add lchown.
26881
26882 2006-08-23  Bruno Haible  <bruno@clisp.org>
26883
26884         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
26885         of gl_LOCK_EARLY instead of gl_LOCK.
26886
26887 2006-08-23  Bruno Haible  <bruno@clisp.org>
26888
26889         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
26890         on OSF/1 to no.
26891         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
26892
26893 2006-08-23  Bruno Haible  <bruno@clisp.org>
26894
26895         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
26896         as unusable.
26897
26898         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
26899         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
26900         (gl_LOCK): New macro.
26901
26902 2006-08-22  Simon Josefsson  <jas@extundo.com>
26903
26904         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
26905         to md5 module.
26906
26907 2006-08-22  Simon Josefsson  <jas@extundo.com>
26908
26909         * MODULES.html.sh: Add "Support for maintaining and release
26910         projects".
26911
26912         * build-aux/gnupload: New file, from coreutils.
26913
26914 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
26915
26916         Avoid the need for AC_LIBSOURCES in m4 macros.
26917         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
26918         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
26919         * modules/check-version (EXTRA_DIST): Add check-version.h.
26920         * modules/crc (EXTRA_DIST): Add crc.h.
26921         * modules/des (EXTRA_DIST): Add des.h.
26922         * modules/gc (EXTRA_DIST): Add gc.h.
26923         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
26924         * modules/getline (EXTRA_DIST): Add getline.h.
26925         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
26926         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
26927         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
26928         * modules/md2 (EXTRA_DIST): Add md2.h.
26929         * modules/md4 (EXTRA_DIST): Add md4.h.
26930         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
26931         * modules/read-file (EXTRA_DIST): Add read-file.h.
26932         * modules/readline (EXTRA_DIST): Add readline.h.
26933         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
26934         rijndael-api-fst.h.
26935
26936 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
26937
26938         * m4/rijndael.m4 (gl_ARCFOUR):
26939         * m4/arctwo.m4 (gl_ARCTWO):
26940         * m4/check-version.m4 (gl_CHECK_VERSION):
26941         * m4/crc.m4 (gl_CRC):
26942         * m4/des.m4 (gl_DES):
26943         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
26944         * m4/gc.m4 (gl_GC):
26945         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
26946         * m4/getline.m4 (gl_FUNC_GETLINE):
26947         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
26948         * m4/hmac-md5.m4 (gl_HMAC_MD5):
26949         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
26950         * m4/md2.m4 (gl_MD2):
26951         * m4/md4.m4 (gl_MD4):
26952         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
26953         * m4/read-file.m4 (gl_FUNC_READ_FILE):
26954         * m4/readline.m4 (gl_FUNC_READLINE):
26955         * m4/rijndael.m4 (gl_RIJNDAEL):
26956         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
26957         to get the necessary .h files and whatnot.
26958
26959 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
26960
26961         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
26962         gnulib rather than the other way around.
26963         * config/srclistvars.sh (COREUTILS): Remove.
26964
26965 2006-08-22  Jim Meyering  <jim@meyering.net>
26966
26967         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
26968
26969         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
26970
26971 2006-08-22  Eric Blake  <ebb9@byu.net>
26972
26973         * modules/regexprops-generic: New file.
26974         * MODULES.html.sh (Support for building documentation): List it.
26975
26976 2006-08-22  Eric Blake  <ebb9@byu.net>
26977
26978         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
26979         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
26980         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
26981         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
26982
26983 2006-08-22  Bruno Haible  <bruno@clisp.org>
26984
26985         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
26986         and lib_LTLIBRARIES like the other lib_* variables.
26987
26988 2006-08-22  Bruno Haible  <bruno@clisp.org>
26989
26990         * build-aux/x-to-1.in: New file, from GNU gettext.
26991
26992 2006-08-22  Bruno Haible  <bruno@clisp.org>
26993
26994         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
26995         <utmpx.h> exists.
26996
26997 2006-08-22  Bruno Haible  <bruno@clisp.org>
26998
26999         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
27000         <utmpx.h> exists.
27001
27002 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27003
27004         BeOS portability.
27005         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
27006         exist.
27007         Problem reported by Bruno Haible.
27008
27009 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27010
27011         Avoid the need for AC_LIBSOURCES in m4 macros.
27012         * modules/acl (EXTRA_DIST): Add acl.h.
27013         * modules/argmatch (Files): Add m4/argmatch.m4.
27014         (configure.ac): Add gl_ARGMATCH.
27015         (EXTRA_DIST): Renamed from lib_SOURCES, for
27016         consistency with the other modules.  Remove argmatch.c.
27017         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
27018         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
27019         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
27020         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
27021         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
27022         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
27023         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
27024         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
27025         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
27026         * modules/closeout (EXTRA_DIST): Add closeout.h.
27027         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
27028         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
27029         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
27030         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
27031         dirname.h; remove basename.c and stripslash.c.
27032         * modules/exclude (EXTRA_DIST): Add exclude.h.
27033         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
27034         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
27035         * modules/file-type (EXTRA_DIST): Add file-type.h.
27036         * modules/filemode (EXTRA_DIST): Add filemode.h.
27037         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
27038         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
27039         * modules/fpending (EXTRA_DIST): Add __fpending.h.
27040         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
27041         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
27042         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
27043         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
27044         * modules/getdate (EXTRA_DIST): Add getdate.c.
27045         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
27046         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
27047         * modules/getpass (EXTRA_DIST): Add getpass.h.
27048         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
27049         * modules/group-member (EXTRA_DIST): Add group-member.h.
27050         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
27051         * modules/hash (EXTRA_DIST): Add hash.h.
27052         * modules/human (EXTRA_DIST): Add human.h.
27053         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
27054         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
27055         * modules/lchown (EXTRA_DIST): Add lchown.h.
27056         * modules/long-options (EXTRA_DIST): Add long-options.h.
27057         * modules/lstat (EXTRA_DIST): Add lstat.h.
27058         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
27059         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
27060         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
27061         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
27062         * modules/memxor (EXTRA_DIST): Add memxor.h.
27063         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
27064         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
27065         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
27066         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
27067         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
27068         * modules/physmem (EXTRA_DIST): Add physmem.h.
27069         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
27070         * modules/posixver (EXTRA_DIST): Add posixver.h.
27071         * modules/quote (EXTRA_DIST): Add quote.h.
27072         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
27073         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
27074         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
27075         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
27076         regex_internal.h regexec.c.
27077         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
27078         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
27079         * modules/same (EXTRA_DIST): Add same.h.
27080         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
27081         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
27082         * modules/savedir (EXTRA_DIST): Add savedir.h.
27083         * modules/sha1 (EXTRA_DIST): Add sha1.h.
27084         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
27085         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
27086         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
27087         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
27088         * modules/strdup (EXTRA_DIST): Add strdup.h.
27089         * modules/strftime (EXTRA_DIST): Add strftime.h.
27090         * modules/strndup (EXTRA_DIST): Add strndup.h.
27091         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
27092         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
27093         * modules/time_r (EXTRA_DIST): Add time_r.h.
27094         * modules/timespec (EXTRA_DIST): Add timespec.h.
27095         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
27096         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
27097         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
27098         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
27099         * modules/userspec (EXTRA_DIST): Add userspec.h.
27100         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
27101         * modules/utimens (EXTRA_DIST): Add utimens.h.
27102         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
27103         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
27104         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
27105         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
27106         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
27107         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
27108         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
27109         * modules/yesno (EXTRA_DIST): Add yesno.h.
27110
27111 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27112
27113         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
27114
27115         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
27116         * m4/dev-ino.m4, same-inode.m4: Remove.
27117
27118         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
27119         * m4/acl.m4 (AC_FUNC_ACL):
27120         * m4/backupfile.m4 (gl_BACKUPFILE):
27121         * m4/c-strtod.m4 (gl_C99_STRTOLD):
27122         * m4/canon-host.m4 (gl_CANON_HOST):
27123         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
27124         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
27125         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
27126         * m4/cloexec.m4 (gl_CLOEXEC):
27127         * m4/close-stream.m4 (gl_CLOSE_STREAM):
27128         * m4/closeout.m4 (gl_CLOSEOUT):
27129         * m4/dirfd.m4 (gl_FUNC_DIRFD):
27130         * m4/dirname.m4 (gl_DIRNAME):
27131         * m4/exclude.m4 (gl_EXCLUDE):
27132         * m4/exitfail.m4 (gl_EXITFAIL):
27133         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
27134         * m4/file-type.m4 (gl_FILE_TYPE):
27135         * m4/filemode.m4 (gl_FILEMODE):
27136         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
27137         * m4/fpending.m4 (gl_FUNC_FPENDING):
27138         * m4/fprintftime.m4 (gl_FPRINTFTIME):
27139         * m4/fts.m4 (gl_FUNC_FTS):
27140         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
27141         * m4/getdate.m4 (gl_GETDATE):
27142         * m4/gethrxtime.m4 (gl_GETHRXTIME):
27143         * m4/getpagesize.m4 (gl_GETPAGESIZE):
27144         * m4/getpass.m4 (gl_FUNC_GETPASS):
27145         * m4/gettime.m4 (gl_GETTIME):
27146         * m4/getugroups.m4 (gl_GETUGROUPS):
27147         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
27148         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
27149         * m4/hard-locale.m4 (gl_HARD_LOCALE):
27150         * m4/hash.m4 (gl_HASH):
27151         * m4/idcache.m4 (gl_IDCACHE):
27152         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
27153         * m4/lchown.m4 (gl_FUNC_LCHOWN):
27154         * m4/long-options.m4 (gl_LONG_OPTIONS):
27155         * m4/lstat.m4 (gl_FUNC_LSTAT):
27156         * m4/md5.m4 (gl_MD5):
27157         * m4/memcasecmp.m4 (gl_MEMCASECMP):
27158         * m4/memcoll.m4 (gl_MEMCOLL):
27159         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
27160         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
27161         * m4/memxor.m4 (gl_MEMXOR):
27162         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
27163         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
27164         * m4/modechange.m4 (gl_MODECHANGE):
27165         * m4/mountlist.m4 (gl_MOUNTLIST):
27166         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
27167         * m4/openat.m4 (gl_FUNC_OPENAT):
27168         * m4/pathmax.m4 (gl_PATHMAX):
27169         * m4/physmem.m4 (gl_PHYSMEM):
27170         * m4/posixtm.m4 (gl_POSIXTM):
27171         * m4/posixver.m4 (gl_POSIXVER):
27172         * m4/quote.m4 (gl_QUOTE):
27173         * m4/quotearg.m4 (gl_QUOTEARG):
27174         * m4/readtokens.m4 (gl_READTOKENS):
27175         * m4/readutmp.m4 (gl_READUTMP):
27176         * m4/regex.m4 (gl_REGEX):
27177         * m4/safe-read.m4 (gl_SAFE_READ):
27178         * m4/safe-write.m4 (gl_SAFE_WRITE):
27179         * m4/same.m4 (gl_SAME):
27180         * m4/save-cwd.m4 (gl_SAVE_CWD):
27181         * m4/savedir.m4 (gl_SAVEDIR):
27182         * m4/settime.m4 (gl_SETTIME):
27183         * m4/sha1.m4 (gl_SHA1):
27184         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
27185         * m4/stat-macros.m4 (gl_STAT_MACROS):
27186         * m4/stat-time.m4 (gl_STAT_TIME):
27187         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
27188         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
27189         * m4/strdup.m4 (gl_FUNC_STRDUP):
27190         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
27191         * m4/strndup.m4 (gl_FUNC_STRNDUP):
27192         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
27193         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
27194         * m4/time_r.m4 (gl_TIME_R):
27195         * m4/timespec.m4 (gl_TIMESPEC):
27196         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
27197         * m4/unlinkdir.m4 (gl_UNLINKDIR):
27198         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
27199         * m4/userspec.m4 (gl_USERSPEC):
27200         * m4/utimecmp.m4 (gl_UTIMECMP):
27201         * m4/utimens.m4 (gl_UTIMENS):
27202         * m4/xalloc.m4 (gl_XALLOC):
27203         * m4/xgetcwd.m4 (gl_XGETCWD):
27204         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
27205         * m4/xreadlink.m4 (gl_XREADLINK):
27206         * m4/xstrtod.m4 (gl_XSTRTOD):
27207         * m4/yesno.m4 (gl_YESNO):
27208         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
27209         to get the necessary .h files and whatnot.
27210
27211 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
27212             Bruno Haible  <bruno@clisp.org>
27213
27214         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
27215         /bin/sh understanding of '!' conditional negation.
27216
27217 2006-08-21  Jim Meyering  <jim@meyering.net>
27218
27219         * modules/openat (Depends-on): Really alphabetize.
27220
27221         * modules/acl (Depends-on): Add error and quote.
27222
27223         * check-module (find_included_lib_files): Add at-func.c to the
27224         ok-to-include-more-than-once white list.
27225
27226         * modules/openat (Depends-on): Add lstat.  Alphabetize.
27227
27228 2006-08-21  Bruno Haible  <bruno@clisp.org>
27229
27230         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
27231         Emit a pkgdata_DATA variable only if some snippets add contents to it.
27232         Reported by Martin Lambers <marlam@marlam.de>.
27233
27234 2006-08-21  Bruno Haible  <bruno@clisp.org>
27235
27236         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
27237         specify an installation location, don't emit a noinst_LIBRARIES or
27238         noinst_LTLIBRARIES assignment.
27239
27240 2006-08-21  Bruno Haible  <bruno@clisp.org>
27241
27242         BeOS portability.
27243         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
27244         BeOS has mbrtowc() but no <wctype.h>.
27245
27246 2006-08-21  Bruno Haible  <bruno@clisp.org>
27247
27248         BeOS portability.
27249         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
27250         exist.
27251
27252 2006-08-21  Bruno Haible  <bruno@clisp.org>
27253
27254         BeOS portability.
27255         * lib/mbchar.h: Include <wctype.h> only if it exists.
27256
27257 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27258
27259         Remove files that are no longer needed by their respective modules.
27260         * m4/obstack.m4: Remove.
27261         * m4/strerror_r.m4: Remove.
27262         * m4/uint32_t.m4: Remove.
27263         * m4/uintptr_t.m4: Remove.
27264         * m4/ullong_max.m4: Remove.
27265         * m4/xstrtoimax.m4: Remove.
27266         * m4/xstrtoumax.m4: Remove.
27267
27268         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
27269         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
27270         dependencies now capture this.
27271
27272         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
27273         Do not use AC_LIBSOURCES, since gnulib modules now do this.
27274         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
27275         * m4/human.m4 (gl_HUMAN): Likewise.
27276         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
27277         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
27278
27279         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
27280
27281         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
27282         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
27283         stdint.
27284         * m4/human.m4 (gl_HUMAN): Likewise.
27285         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
27286         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
27287         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
27288         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
27289         * m4/xstrtol (gl_XSTRTOL): Likewise.
27290
27291         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
27292         AC_TYPE_LONG_LONG_INT.
27293         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
27294         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
27295         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
27296         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
27297
27298         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
27299         on stdbool.
27300
27301         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
27302         (gl_PREREQ_XSTRTOUL): Remove.
27303
27304         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
27305
27306         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
27307         mode.
27308
27309 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27310
27311         Add and change modules to make it easier for coreutils to use
27312         gnulib-tool.
27313         * modules/backupfile (Files): Remove m4/d-ino.m4.
27314         (Depends-on): Add d-ino.
27315         * modules/cycle-check (Depends-on): Add stdint.
27316         (lib_SOURCES): Add cycle-check.h.
27317         * modules/d-ino: New module.
27318         * modules/d-type: New module.
27319         * modules/error (Files): Remove m4/strerror_r.m4.
27320         * modules/filemode (Files): Add m4/st_dm_mode.m4.
27321         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
27322         m4/inttypes_h.m4, m4/uintmax_t.m4.
27323         (Depends-on): Add stdint.
27324         (lib_SOURCES): Add fsusage.h.
27325         * modules/getcwd (Files): Remove d-ino.m4.
27326         (Depends-on): Add d-ino.
27327         * modules/getndelim2 (Depends-on): Add stdint.
27328         * modules/glob (Files): Remove m4/d-type.m4.
27329         (Depends-on): Add d-type.
27330         * modules/host-os: New module.
27331         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
27332         m4/inttypes_h.m4, m4/uintmax_t.m4.
27333         * Depends-on: Add stdint.
27334         (lib_SOURCES): Add human.h.
27335         * modules/inttostr (Files): Remove m4/intmax_t.m4,
27336         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
27337         m4/uintmax_t.m4, m4/ulonglong.m4.
27338         (Depends-on): Add stdint.
27339         (EXTRA_DIST): Add inttostr.h.
27340         * modules/lchmod: New module.
27341         * modules/link-follow: New module.
27342         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
27343         (Depends-on): Add lchmod.
27344         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
27345         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
27346         (Depends-on): Add stdint.
27347         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
27348         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
27349         (Depends-on): Add stdint.
27350         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
27351         * modules/perl: New module.
27352         * modules/regex (Depends-on): Add stdint.
27353         * modules/rmdir-errno: New module.
27354         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
27355         m4/intmax_t.m4.
27356         (Depends-on): Add stdint.
27357         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
27358         m4/uintmax_t.m4.
27359         (Depends-on): Add stdint.
27360         * modules/unlink-busy: New module.
27361         * modules/utimecmp (Depends-on): Add stdint.
27362         * modules/uptime: New module.
27363         * modules/winsz-ioctl: New module.
27364         * modules/winsz-termios: New module.
27365         * modules/xnanosleep (Depends-on): Add nanosleep.
27366         * modules/ullong_max: Remove.
27367         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
27368         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
27369         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
27370         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
27371         (Depends-on): Add inttypes.
27372         (lib_SOURCES): Add xstrtol.h.
27373         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
27374         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
27375         * MODULES.html.sh: Move 'assert' into the assert section.
27376         Move 'dummy' into the linking section.
27377         Remove ullong_max.
27378         Add section for compatibility checks for POSIX:2001 functions,
27379         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
27380         winsz-ioctl, and winsz-termios into it.
27381         Add lchmod.
27382         Add top-level Misc section and put host-os, perl, and uptime
27383         into it.
27384
27385 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27386
27387         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
27388         now assume the stdint module.  Do not include inttypes.h.
27389         * lib/fsusage.h: Likewise.
27390         * lib/getndelim2.c: Likewise.
27391         * lib/human.h: Likewise.
27392         * lib/inttostr.h: Likewise.
27393         * lib/obstack.c: Likewise.
27394         * lib/regex_internal.h: Likewise.
27395         * lib/tempname.c: Likewise.
27396         * lib/utimecmp.c: Likewise.
27397         * lib/xstrtol.h: Likewise.
27398
27399         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
27400
27401         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
27402         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
27403         * lib/xtime.h: Likewise.
27404
27405 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27406
27407         * modules/openat (Files): Add lib/fchmodat.c.
27408         Fixes problem reported by Jay Youngman.
27409
27410 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27411
27412         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
27413         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
27414
27415 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
27416             Bruno Haible  <bruno@clisp.org>
27417
27418         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
27419         and is a script that invokes bison. Tighten the code. Add comments.
27420
27421 2006-08-18  Jim Meyering  <jim@meyering.net>
27422
27423         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
27424         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
27425         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
27426         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
27427
27428 2006-08-18  Bruno Haible  <bruno@clisp.org>
27429
27430         * modules/bison-i18n: New file.
27431         * MODULES.html.sh (Internationalization functions): Add it.
27432
27433 2006-08-18  Bruno Haible  <bruno@clisp.org>
27434
27435         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
27436         sys/statvfs.h. When getmntinfo was found, check its declaration and
27437         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
27438
27439 2006-08-18  Bruno Haible  <bruno@clisp.org>
27440
27441         * m4/bison-i18n.m4: New file, from bison.
27442
27443 2006-08-18  Bruno Haible  <bruno@clisp.org>
27444
27445         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
27446         (ME_DUMMY): Treat "kernfs" as a dummy.
27447         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
27448
27449 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
27450
27451         Update from coreutils.
27452
27453         2006-08-15  Jim Meyering  <jim@meyering.net>
27454
27455         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
27456
27457         2006-01-17  Jim Meyering  <jim@meyering.net>
27458
27459         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
27460
27461         2006-01-11  Jim Meyering  <jim@meyering.net>
27462
27463         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
27464         Check for the lchmod function.
27465
27466 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
27467
27468         Update from coreutils.
27469
27470         * lib/__fpending.h: Add copyright notice.
27471         * lib/fprintftime.h: Likewise.
27472         * lib/savedir.c: Use (C) in copyright notice.
27473         * lib/savedir.h: Likewise.
27474
27475         2006-08-15  Jim Meyering  <jim@meyering.net>
27476
27477         * lib/at-func.c: New file, with the logic of all emulated at-functions.
27478         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
27479         in support of the EXPECTED_ERRNO macro.
27480         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
27481         definitions.  Instead, define the appropriate symbols and include
27482         "at-func.c".
27483         * lib/mkdirat.c (mkdirat): Likewise.
27484         * lib/fchmodat.c (fchmodat): Likewise.
27485         (ENOSYS): Remove definition.
27486         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
27487         it.  Don't include "unistd--.h" -- it wasn't ever used.
27488
27489         2006-01-17  Jim Meyering  <jim@meyering.net>
27490
27491         Rewrite fts.c not to change the current working directory,
27492         by using openat, fstatat, fdopendir, etc..
27493
27494         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
27495         (HAVE_OPENAT_SUPPORT): Define.
27496         [_LIBC] (fchdir): Don't undef or define; no longer used.
27497         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
27498         Now, this `function' always succeeds, and consumes its file descriptor
27499         parameter -- so callers must not close such FDs.  Update callers.
27500         (diropen_fd, opendirat, cwd_advance_fd): New functions.
27501         (diropen): Add parameter, SP.  Adjust all callers.
27502         Implement using diropen_fd, rather than open.
27503         (fts_open): Initialize new member, fts_cwd_fd.
27504         Remove fts_rft-setting code.
27505         (fts_close): Close fts_cwd_fd, if necessary.
27506         (__opendir2): Define in terms of opendir or opendirat,
27507         depending on whether the FST_NOCHDIR flag is set.
27508         (fts_build): Since fts_safe_changedir consumes its FD, and since
27509         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
27510         and close the dup'd file descriptor upon failure.
27511         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
27512         (fts_safe_changedir): Tweak semantics to reflect that this function
27513         now calls cwd_advance_fd and hence consumes its FD argument.
27514         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
27515         [struct FTS] (fts_rft): Remove now-unused member.
27516         [struct FTS] (fts_cycle.state): Improve comment.
27517
27518         * lib/openat.c (openat_needs_fchdir): New function.
27519         * lib/openat.h (openat_needs_fchdir): Declare it.
27520
27521 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
27522
27523         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
27524         Problem and fix reported by Pádraig Brady in
27525         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
27526
27527 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27528
27529         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
27530
27531 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27532
27533         * lib/memcoll.c (memcoll): Optimize for the common case where the
27534         arguments are bytewise equal.
27535
27536 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27537
27538         * doc/regexprops-generic.texi: Add a copyright notice.
27539
27540 2006-08-15  Bruno Haible  <bruno@clisp.org>
27541
27542         * modules/tmpdir (License): Change to LGPL.
27543
27544 2006-08-15  Bruno Haible  <bruno@clisp.org>
27545
27546         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
27547         module.
27548
27549 2006-08-14  Simon Josefsson  <jas@extundo.com>
27550
27551         * config/srclist.txt: Add gnupload.
27552
27553 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
27554
27555         Change copyright notice from LGPL 2 to GPL 2, since that's the
27556         standard form used in the gnulib repository.
27557         * tests/test-lock.c: Likewise.
27558         * tests/test-stdint.c: Likewise.
27559         * tests/test-tls.c: Likewise.
27560
27561         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
27562         prelude-manager.  User shorter URLs for GNU projects, without '?'.
27563         Add copyright notice.
27564
27565         * check-module: Add copyright notice.  Output a copyright
27566         notice if "--version" is specified.
27567         * modules/COPYING: New file.
27568         * tests/test-getaddrinfo.c: Add copyright notice.
27569         * tests/test-verify.c: Likewise.
27570
27571 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
27572
27573         Change copyright notice from LGPL 2 to GPL 2, since that's the
27574         standard form used in the gnulib repository.
27575         * lib/lock.c: LGPL -> GPL.
27576         * lib/lock.h: Likewise.
27577         * lib/strnlen1.c: Likewise.
27578         * lib/strnlen1.h: Likewise.
27579         * lib/tls.c: Likewise.
27580         * lib/tls.h: Likewise.
27581         * lib/tmpdir.c: Likewise.
27582
27583         * lib/TODO: Remove; this belongs only in coreutils.
27584
27585 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
27586
27587         Add copyright notices to long-enough files that lack them, since
27588         otherwise the files aren't clearly free.  Use the same notice that
27589         getdate.texi already uses.
27590         * doc/alloca-opt.texi: Add copyright notice.
27591         * doc/alloca.texi: Likewise.
27592         * doc/ctime.texi: Likewise.
27593         * doc/functions.texi: Likewise.
27594         * doc/gcd.texi: Likewise.
27595         * doc/gnulib-tool.texi: Likewise.
27596         * doc/inet_ntoa.texi: Likewise.
27597         * doc/visibility.texi: Likewise.
27598
27599         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
27600         * doc/quote.texi: Add copyright notice.
27601
27602         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
27603         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
27604         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
27605         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
27606         is now obsolete, and give a pointer to the Sun list.
27607         Add copyright notice.
27608
27609 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
27610
27611         * config/srclistvars.sh: Add copyright notice.
27612
27613 2006-08-14  Eric Blake  <ebb9@byu.net>
27614
27615         Import the following change from libc:
27616
27617         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
27618
27619         Upstream bug 2997.
27620         * lib/misc/error.c: Add space between program name and message if file
27621         name is missing.
27622
27623 2006-08-12  Karl Berry  <karl@gnu.org>
27624
27625         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
27626         remove, these originate in gnulib now.
27627
27628 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27629
27630         * doc/Makefile (standards.info standards.html standards.dvi):
27631         Also depend on make-stds.texi.
27632
27633 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
27634
27635         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
27636         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
27637
27638         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
27639         in wchar_t.  Problem reported by Eric Blake.
27640
27641         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
27642         LEN is smaller than SIZE.  Suggested by Bruno Haible.
27643         Also, help the compiler to keep LEN in a register.
27644
27645 2006-08-11  Eric Blake  <ebb9@byu.net>
27646
27647         * users.txt: Sort.  Add tar.
27648
27649 2006-08-11  Bruno Haible  <bruno@clisp.org>
27650
27651         * users.txt: New file.
27652
27653 2006-08-11  Bruno Haible  <bruno@clisp.org>
27654
27655         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
27656         before <wchar.h>. Needed for OSF/1 and BSD/OS.
27657
27658 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
27659
27660         * modules/snprintf (Depends-on): Remove minmax.
27661         (Maintainer): Add self and Bruno.
27662
27663 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
27664
27665         * lib/.cppi-disable: Add snprintf.h, socket_.h.
27666         * lib/snprintf.c: Include <errno.h> and <limits.h>.
27667         (EOVERFLOW): Define if the system does not.
27668         Do not include "minmax.h"; it wasn't used.
27669         (snprintf): Don't assume size_t promotes to an unsigned type.
27670         Fix bug when generated string was too long for the buffer: the
27671         buffer's contents are supposed to be the initial prefix of the
27672         output.  Don't assume vasnprintf returns EOVERFLOW if the size
27673         exceeds INT_MAX; do the check ourselves.
27674
27675         Import the following changes from libc:
27676
27677         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
27678
27679         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
27680         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
27681         set wc to the byte which couldn't be converted.
27682         (re_string_reconstruct): Don't clear valid_raw_len before calling
27683         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
27684         tip_context using re_string_context_at.
27685
27686         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
27687
27688         * lib/posix/regex.h: g++ still cannot handled [restrict].
27689
27690         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
27691
27692         * lib/posix/regex.h: Remove special handling for VMS.
27693
27694 2006-08-10  Jim Meyering  <jim@meyering.net>
27695
27696         * modules/same-inode: New module.
27697         * modules/dev-ino: New module.
27698         * modules/cycle-check: Depend on these modules, rather than simply
27699         including their .h files.
27700         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
27701         required via m4/cycle-check.m4.
27702         * modules/same: Depend on new same-inode module, rather than
27703         including same-inode.h.
27704         * modules/chdir-safer: New file.
27705
27706         * modules/chown (Depends-on): Add stat-macros.
27707
27708 2006-08-10  Jim Meyering  <jim@meyering.net>
27709
27710         * m4/cycle-check.m4: New file.
27711         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
27712         * m4/dev-ino.m4, m4/same-inode.m4: New files.
27713
27714 2006-08-10  Eric Blake  <ebb9@byu.net>
27715
27716         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
27717         in from original proposal.
27718
27719 2006-08-10  Eric Blake  <ebb9@byu.net>
27720         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
27721
27722         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
27723         namespace.
27724
27725 2006-08-10  Bruno Haible  <bruno@clisp.org>
27726
27727         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
27728         as well.
27729
27730 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27731
27732         Sync from coreutils.
27733
27734         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
27735
27736         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
27737         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
27738
27739 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27740
27741         * modules/restrict: Remove; no longer needed now that we assume
27742         Autoconf 2.59 or later.
27743         * MODULES.html.sh: Remove 'restrict'.
27744         * modules/argp (Depends-on): Remove 'restrict'.
27745         * modules/base64 (Depends-on): Likewise.
27746         * modules/gc (Depends-on): Likewise.
27747         * modules/getaddrinfo (Depends-on): Likewise.
27748         * modules/glob (Depends-on): Likewise.
27749         * modules/inet_ntop (Depends-on): Likewise.
27750         * modules/inet_pton (Depends-on): Likewise.
27751         * modules/memxor (Depends-on): Likewise.
27752         * modules/regex (Depends-on): Likewise.
27753         * modules/strtok_r (Depends-on): Likewise.
27754         * modules/time_r (Depends-on): Likewise.
27755
27756 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27757
27758         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
27759         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
27760         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
27761         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
27762         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
27763         * m4/memxor.m4 (gl_MEMXOR): Likewise.
27764         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
27765         gl_C_RESTRICT replaced by AC_C_RESTRICT.
27766
27767         Merge from coreutils.
27768         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
27769         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
27770         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
27771         * m4/time_r.m4 (gl_TIME_R): Likewise.
27772
27773 2006-08-09  Karl Berry  <karl@gnu.org>
27774
27775         * config/srclist.txt: no more gettext-tools, per Bruno.
27776
27777 2006-08-08  Eric Blake  <ebb9@byu.net>
27778
27779         * modules/verror: New module.
27780         * MODULES.html.sh: Document it.
27781
27782 2006-08-08  Eric Blake  <ebb9@byu.net>
27783
27784         * lib/verror.h, lib/verror.c: New files.
27785
27786 2006-08-08  Eric Blake  <ebb9@byu.net>
27787
27788         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
27789         verror_at_line output complies with GNU Coding Standards even when
27790         file is NULL.
27791
27792 2006-08-07  Bruno Haible  <bruno@clisp.org>
27793
27794         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
27795         versions of AIX.
27796         Reported by Ralf Wildenhues.
27797
27798 2006-08-07  Bruno Haible  <bruno@clisp.org>
27799
27800         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
27801         in an AC_DEFUN. Needed so that the autoconf snippets can use
27802         AC_REQUIRE.
27803
27804 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27805
27806         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
27807         Initialize pkgdata_DATA.
27808         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
27809         overriding it.
27810
27811 2006-08-06  Eric Blake  <ebb9@byu.net>
27812
27813         * lib/error.h: Fold in some upstream changes from glibc.
27814         * lib/error.c: Likewise.
27815
27816 2006-08-04  Bruno Haible  <bruno@clisp.org>
27817
27818         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
27819         Make the mostlyclean-local rule depend on mostlyclean-generic.
27820         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
27821
27822 2006-07-31  Bruno Haible  <bruno@clisp.org>
27823
27824         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
27825         <stdlib.h>, <string.h>.
27826
27827 2006-07-30  Bruno Haible  <bruno@clisp.org>
27828
27829         * modules/readlink (License): Change to LGPL.
27830
27831 2006-07-30  Bruno Haible  <bruno@clisp.org>
27832
27833         * modules/javaversion (Makefile.am): Distribute javaversion.java and
27834         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
27835         set PKGDATADIR to point to it.
27836
27837 2006-07-30  Bruno Haible  <bruno@clisp.org>
27838
27839         * modules/csharpexec (configure.ac): Comment out macro invocation.
27840         * modules/javaexec (configure.ac): Likewise.
27841         * modules/javacomp-script (configure.ac): Likewise.
27842
27843         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
27844
27845 2006-07-30  Bruno Haible  <bruno@clisp.org>
27846
27847         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
27848         linked-list.
27849
27850 2006-07-30  Bruno Haible  <bruno@clisp.org>
27851
27852         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
27853
27854 2006-07-30  Bruno Haible  <bruno@clisp.org>
27855
27856         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
27857         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
27858         get removed.
27859
27860 2006-07-29  Bruno Haible  <bruno@clisp.org>
27861
27862         Make it possible for gnulib-tool to work with locally modified or
27863         augmented gnulib repositories.
27864         * gnulib-tool (func_usage): Document --local-dir option.
27865         (local_gnulib_dir): New variable.
27866         Handle --local-dir option.
27867         (func_lookup_file): New function.
27868         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
27869         (func_get_description, func_get_filelist, func_get_description,
27870         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
27871         func_get_automake_snippet, func_get_include_directive,
27872         func_get_license, func_get_maintainer): Use func_lookup_file.
27873         (func_import, func_create_testdir): Use func_lookup_file.
27874
27875 2006-07-29  Bruno Haible  <bruno@clisp.org>
27876
27877         * modules/setenv (Depends-on): Add unistd.
27878
27879 2006-07-29  Bruno Haible  <bruno@clisp.org>
27880
27881         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
27882
27883 2006-07-29  Bruno Haible  <bruno@clisp.org>
27884
27885         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
27886
27887 2006-07-29  Bruno Haible  <bruno@clisp.org>
27888
27889         * gnulib-tool (import, update): If there is no Makefile.am, look at
27890         aclocal.m4, instead of bailing out.
27891
27892 2006-07-29  Bruno Haible  <bruno@clisp.org>
27893
27894         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
27895         Categorize the options by when they are useful.
27896
27897 2006-07-29  Bruno Haible  <bruno@clisp.org>
27898
27899         * gnulib-tool (func_usage): Document option --no-libtool.
27900         Handle option --no-libtool.
27901         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
27902         for changed semantics of $libtool variable.
27903         (func_import): Likewise. If libtool is not used, show this through
27904         an option --no-libtool.
27905         (func_create_testdir): Update.
27906
27907 2006-07-29  Bruno Haible  <bruno@clisp.org>
27908
27909         * gnulib-tool (func_import): Extend error message about missing
27910         --doc-base.
27911
27912 2006-07-29  Bruno Haible  <bruno@clisp.org>
27913
27914         * gnulib-tool (func_import): Don't create the $docbase directory if
27915         there is no file to store there.
27916
27917 2006-07-29  Bruno Haible  <bruno@clisp.org>
27918
27919         * gnulib-tool (autoconf_minversion): If a --dir option is given and
27920         relevant, look for configure.ac there, not in the current directory.
27921         Also use a simple search for AC_PREREQ, not "autoconf --trace".
27922
27923 2006-07-29  Bruno Haible  <bruno@clisp.org>
27924
27925         * gnulib-tool (SORT): New variable.
27926         (func_usage): Undocument --assume-autoconf option.
27927         Remove --assume-autoconf option handling.
27928         (autoconf_minversion): Determine from the contents of configure.ac.
27929         (func_import): Remove autoconf_minversion handling.
27930         Suggested by Eric Blake.
27931
27932 2006-07-29  Bruno Haible  <bruno@clisp.org>
27933
27934         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
27935
27936 2006-07-29  Bruno Haible  <bruno@clisp.org>
27937
27938         * config/srclist.txt (*setenv.[ch]): Remove rules.
27939
27940 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
27941
27942         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
27943
27944 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
27945
27946         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
27947         arpa/inet.h.
27948
27949 2006-07-28  Simon Josefsson  <jas@extundo.com>
27950
27951         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
27952         * modules/inet_pton (Depends-on): Likewise.
27953
27954 2006-07-28  Simon Josefsson  <jas@extundo.com>
27955
27956         * m4/netinet_in_h.m4: New file.
27957
27958 2006-07-28  Simon Josefsson  <jas@extundo.com>
27959
27960         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
27961         #include's.
27962
27963 2006-07-28  Simon Josefsson  <jas@extundo.com>
27964
27965         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
27966         #include's.
27967
27968 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
27969
27970         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
27971         setgid on directories only if they set these bits.
27972         * lib/modechange.h: Remove obsolete comment about masks.
27973
27974 2006-07-28  Eric Blake  <ebb9@byu.net>
27975
27976         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
27977         macro expansion.
27978
27979 2006-07-28  Bruno Haible  <bruno@clisp.org>
27980
27981         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
27982
27983 2006-07-28  Bruno Haible  <bruno@clisp.org>
27984
27985         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
27986
27987 2006-07-28  Bruno Haible  <bruno@clisp.org>
27988
27989         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
27990         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
27991         Define fallbacks.
27992         Avoids link error on FreeBSD 4.x.
27993         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
27994
27995         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
27996         encoding.
27997         * lib/mbswidth.c (iswcntrl): Likewise.
27998
27999 2006-07-27  Bruno Haible  <bruno@clisp.org>
28000
28001         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
28002         test.
28003
28004 2006-07-27  Bruno Haible  <bruno@clisp.org>
28005
28006         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
28007         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
28008         defined.
28009
28010 2006-07-26  Eric Blake  <ebb9@byu.net>
28011
28012         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
28013
28014 2006-07-26  Eric Blake  <ebb9@byu.net>
28015
28016         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
28017         like mingw that lack mkstemp.
28018         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
28019         avoid compilation warning on mingw.
28020
28021 2006-07-26  Bruno Haible  <bruno@clisp.org>
28022
28023         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
28024         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
28025         INT_FAST*_MIN, INTPTR_MIN.
28026
28027 2006-07-25  Bruno Haible  <bruno@clisp.org>
28028
28029         * modules/version-etc (Depends-on): Add stdarg.
28030
28031 2006-07-25  Bruno Haible  <bruno@clisp.org>
28032
28033         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
28034         complex commands.
28035
28036 2006-07-25  Bruno Haible  <bruno@clisp.org>
28037
28038         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
28039         defined in <stdarg.h> or config.h.
28040
28041 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
28042
28043         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
28044         (gl_STDIO_SAFER): Remove.
28045
28046 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
28047
28048         * MODULES.html.sh (File stream based Input/Output):
28049         Add fopen-safer, tmpfile-safer; remove stdio-safer.
28050         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
28051         * modules/fopen-safer, modules/tmpfile-safer: New files.
28052         * modules/stdio-safer: Remove.
28053
28054 2006-07-24  Bruno Haible  <bruno@clisp.org>
28055
28056         * modules/tmpdir: New file.
28057         * MODULES.html.sh (File system functions): Add it.
28058
28059 2006-07-24  Bruno Haible  <bruno@clisp.org>
28060
28061         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
28062         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
28063
28064 2006-07-24  Bruno Haible  <bruno@clisp.org>
28065
28066         * modules/clean-temp: New file.
28067
28068 2006-07-24  Bruno Haible  <bruno@clisp.org>
28069
28070         * m4/tmpdir.m4: New file, from GNU gettext.
28071
28072 2006-07-24  Bruno Haible  <bruno@clisp.org>
28073
28074         * lib/tmpdir.h: New file, from GNU gettext.
28075         * lib/tmpdir.c: New file, from GNU gettext.
28076
28077 2006-07-24  Bruno Haible  <bruno@clisp.org>
28078
28079         * lib/clean-temp.h: New file, from GNU gettext.
28080         * lib/clean-temp.c: New file, from GNU gettext.
28081
28082 2006-07-23  Eric Blake  <ebb9@byu.net>
28083
28084         * modules/stdio-safer (Files): Add tmpfile-safer.c.
28085         (Depends-on): Add binary-io.
28086
28087 2006-07-23  Eric Blake  <ebb9@byu.net>
28088
28089         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
28090
28091 2006-07-23  Eric Blake  <ebb9@byu.net>
28092
28093         * lib/tmpfile-safer.c: New file.
28094         * lib/stdio-safer.h (fopen_safer): Add prototype.
28095         * lib/stdio--.h (tmpfile): Make safer.
28096
28097 2006-07-23  Bruno Haible  <bruno@clisp.org>
28098
28099         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
28100         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
28101         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
28102         gl_linked_remove_at): Use it.
28103
28104 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28105         and Simon Josefsson <jas@extundo.com>
28106
28107         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
28108
28109         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
28110
28111 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
28112
28113         * modules/close-stream: New file.
28114         * modules/closeout (Description): Make it clear that it exits
28115         with a diagnostic on error.
28116         (Depends-on): Add close-stream.  Remove fpending, stdbool.
28117         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
28118
28119 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
28120
28121         * m4/close-stream.m4: New file.
28122
28123 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
28124
28125         * lib/close-stream.c, lib/close-stream.h: New files.
28126
28127 2006-07-22  Bruno Haible  <bruno@clisp.org>
28128
28129         Merge from GNU gettext 0.15.
28130
28131         2006-05-01  Bruno Haible  <bruno@clisp.org>
28132
28133                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
28134
28135         2006-07-22  Bruno Haible  <bruno@clisp.org>
28136
28137                 * modules/javaversion: New file.
28138                 * MODULES.html.sh (Java): Add javaversion.
28139
28140         2006-03-12  Bruno Haible  <bruno@clisp.org>
28141
28142                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
28143
28144         2005-12-04  Bruno Haible  <bruno@clisp.org>
28145
28146                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
28147                 (untested).
28148
28149         2006-06-21  Bruno Haible  <bruno@clisp.org>
28150
28151                 Avoid warnings from recent versions of mcs.
28152                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
28153                 -o, -L, -r any more. Use options documented since mcs-1.0
28154                 instead. Similarly for -g.
28155
28156         2005-12-04  Bruno Haible  <bruno@clisp.org>
28157
28158                 * build-aux/csharpcomp.sh.in: Suffix for resources is
28159                 .resources, not .resource.
28160
28161         2005-07-09  Bruno Haible  <bruno@clisp.org>
28162
28163                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
28164                 add a .dll suffix.
28165                 Reported by Mark Junker <mjscod@gmx.de>.
28166
28167         2006-07-22  Bruno Haible  <bruno@clisp.org>
28168
28169                 * modules/gettext: Upgrade to gettext-0.15.
28170                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
28171                 m4/visibility.m4.
28172                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
28173
28174 2006-07-22  Bruno Haible  <bruno@clisp.org>
28175
28176         Merge from GNU gettext 0.15.
28177
28178         2006-03-25  Bruno Haible  <bruno@clisp.org>
28179
28180                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
28181
28182         2006-07-21  Bruno Haible  <bruno@clisp.org>
28183
28184                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
28185                 "1.1".
28186
28187         2006-05-09  Bruno Haible  <bruno@clisp.org>
28188
28189                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
28190                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
28191                 for the conftestver execution.
28192
28193         2006-05-01  Bruno Haible  <bruno@clisp.org>
28194
28195                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
28196                 optional target-version argument. Verify that the compiler
28197                 groks source of the specified source-version, or add -source
28198                 option as necessary. Verify that the compiler produces
28199                 bytecode in the specified target-version, or add -target and
28200                 -source options as necessary. Make the result of the test
28201                 available as variable CONF_JAVAC. Also log error output in
28202                 config.log.
28203
28204         2006-03-11  Bruno Haible  <bruno@clisp.org>
28205
28206                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
28207
28208         2006-05-09  Bruno Haible  <bruno@clisp.org>
28209
28210                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
28211                 CLASSPATH_SEPARATOR to a semicolon.
28212
28213         2006-03-12  Bruno Haible  <bruno@clisp.org>
28214
28215                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
28216                 available as variable CONF_JAVA, for subsequent autoconf
28217                 tests. Also log error output in config.log.
28218
28219         2006-07-19  Bruno Haible  <bruno@clisp.org>
28220
28221                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
28222                 that getline works on glibc2 systems. Needed to avoid trouble
28223                 in relocatable.c.
28224                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
28225
28226         2005-12-04  Bruno Haible  <bruno@clisp.org>
28227
28228                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
28229                 launcher (untested).
28230
28231         2005-12-04  Bruno Haible  <bruno@clisp.org>
28232
28233                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
28234
28235         2006-07-22  Bruno Haible  <bruno@clisp.org>
28236
28237                 * gettext.m4: Update from GNU gettext-0.15.
28238                 * nls.m4: Likewise.
28239                 * po.m4: Likewise.
28240                 * inttypes-pri.m4: Likewise.
28241                 * inttypes-h.m4: Renamed from inttypes.m4.
28242                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
28243
28244 2006-07-22  Bruno Haible  <bruno@clisp.org>
28245
28246         Merge from GNU gettext 0.15.
28247
28248         2005-07-05  Bruno Haible  <bruno@clisp.org>
28249
28250                 * printf-args.c (printf_fetchargs): Work around broken
28251                 definition of wint_t on mingw.
28252
28253         2005-02-12  Bruno Haible  <bruno@clisp.org>
28254
28255                 * xallocsa.h: Add extern "C" for C++.
28256
28257         2006-05-17  Bruno Haible  <bruno@clisp.org>
28258
28259                 Cygwin portability.
28260                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
28261
28262         2006-04-30  Bruno Haible  <bruno@clisp.org>
28263
28264                 * progreloc.c: Include <mach-o/dyld.h> if available.
28265                 (find_executable): Use _NSGetExecutablePath when possible.
28266
28267         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
28268
28269                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
28270                 function.
28271
28272         2005-12-29  Bruno Haible  <bruno@clisp.org>
28273
28274                 * progreloc.c (set_program_name_and_installdir): Fix
28275                 compilation error.
28276
28277         2005-12-04  Bruno Haible  <bruno@clisp.org>
28278
28279                 Cygwin portability.
28280                 * progreloc.c: Include <windows.h> also on Cygwin.
28281                 (find_executable): Add support for Cygwin.
28282                 (set_program_name_and_installdir): Handle also platforms with
28283                 nonempty EXEEXT.
28284
28285         2006-07-11  Bruno Haible  <bruno@clisp.org>
28286
28287                 * javacomp.c: Fix a comment.
28288                 Reported by Jim Meyering.
28289
28290         2006-04-30  Bruno Haible  <bruno@clisp.org>
28291
28292                 * javacomp.h (compile_java_class): Add source_version,
28293                 target_version arguments.
28294                 * javacomp.c: Rewritten to choose only a compiler that
28295                 respects the specified source_version and target_version.
28296
28297         2006-06-27  Bruno Haible  <bruno@clisp.org>
28298
28299                 Assume correct S_ISDIR macro.
28300                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
28301
28302         2006-07-22  Bruno Haible  <bruno@clisp.org>
28303
28304                 * javaversion.h: New file, from GNU gettext.
28305                 * javaversion.c: New file, from GNU gettext.
28306                 * javaversion.java: New file, from GNU gettext.
28307                 * javaversion.class: New file, from GNU gettext.
28308
28309         2006-05-17  Bruno Haible  <bruno@clisp.org>
28310
28311                 Cygwin portability.
28312                 * javaexec.c (execute_java_class): Test for jview program
28313                 also on Cygwin.
28314
28315         2006-04-09  Bruno Haible  <bruno@clisp.org>
28316
28317                 * fatal-signal.c: Don't include string.h.
28318                 (at_fatal_signal): Use a copying loop instead of memcpy.
28319
28320         2005-12-04  Bruno Haible  <bruno@clisp.org>
28321
28322                 * csharpexec.c: Add support for 'clix' launcher (untested).
28323                 (execute_csharp_using_sscli): New function.
28324                 (execute_csharp_program): Call it.
28325
28326         2006-06-21  Bruno Haible  <bruno@clisp.org>
28327
28328                 Avoid warnings from recent versions of mcs.
28329                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
28330                 -o, -L, -r any more. Use options documented since mcs-1.0
28331                 instead. Similarly for -g.
28332
28333         2005-07-09  Bruno Haible  <bruno@clisp.org>
28334
28335                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
28336                 add a .dll suffix.
28337                 Reported by Mark Junker <mjscod@gmx.de>.
28338
28339         2006-06-17  Bruno Haible  <bruno@clisp.org>
28340
28341                 * config.charset: Update for NetBSD 3.0.
28342
28343         2006-05-17  Bruno Haible  <bruno@clisp.org>
28344
28345                 Cygwin portability.
28346                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
28347
28348         2006-05-16  Bruno Haible  <bruno@clisp.org>
28349
28350                 * localcharset.c [CYGWIN]: Include <windows.h>.
28351                 (get_charset_aliases): For Cygwin, return the same CPxxx
28352                 aliases list as under WIN32.
28353                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
28354                 the environment variables. Fall back to GetACP().
28355
28356         2006-04-05  Bruno Haible  <bruno@clisp.org>
28357
28358                 * config.charset: Update Juan Manuel Guerrero's address.
28359
28360         2005-02-12  Bruno Haible  <bruno@clisp.org>
28361
28362                 * allocsa.h: Add extern "C" for C++.
28363
28364         2005-02-10  Bruno Haible  <bruno@clisp.org>
28365
28366                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
28367                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
28368
28369         2006-07-22  Bruno Haible  <bruno@clisp.org>
28370
28371                 * gettext.h: Update to GNU gettext-0.15.
28372
28373 2006-07-22  Bruno Haible  <bruno@clisp.org>
28374
28375         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
28376         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
28377         lib-prefix.m4, longdouble.m4, ssize_t.m4.
28378
28379 2006-07-21  Eric Blake  <ebb9@byu.net>
28380
28381         * modules/stdlib-safer: New file.
28382         * MODULES.html.sh (File stream based Input/Output): Add
28383         stdlib-safer.
28384
28385 2006-07-21  Eric Blake  <ebb9@byu.net>
28386
28387         * lib/stdlib-safer.h: New file from coreutils, required by
28388         stdlib--.h.
28389
28390 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
28391
28392         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
28393
28394 2006-07-20  Bruno Haible  <bruno@clisp.org>
28395
28396         * gnulib-tool: Recognize new option --assume-autoconf.
28397         (autoconf_minversion): New variable.
28398         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
28399
28400 2006-07-20  Bruno Haible  <bruno@clisp.org>
28401
28402         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
28403
28404 2006-07-19  Derek R. Price  <derek@ximbiot.com>
28405
28406         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
28407         Reindent and repaginate.
28408
28409 2006-07-19  Derek Price  <derek@ximbiot.com>
28410
28411         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
28412         Correct grammar.
28413
28414 2006-07-17  Bruno Haible  <bruno@clisp.org>
28415
28416         * modules/list: New file.
28417         * modules/array-list: New file.
28418         * modules/carray-list, modules/carray-list-tests: New files.
28419         * modules/linked-list, modules/linked-list-tests: New files.
28420         * modules/avltree-list, modules/avltree-list-tests: New files.
28421         * modules/rbtree-list, modules/rbtree-list-tests: New files.
28422         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
28423         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
28424         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
28425         * modules/oset: New file.
28426         * modules/array-oset: New file.
28427         * modules/avltree-oset, modules/avltree-oset-tests: New files.
28428         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
28429         * tests/test-carray_list.c: New file.
28430         * tests/test-linked_list.c: New file.
28431         * tests/test-avltree_list.c: New file.
28432         * tests/test-rbtree_list.c: New file.
28433         * tests/test-linkedhash_list.c: New file.
28434         * tests/test-avltreehash_list.c: New file.
28435         * tests/test-rbtreehash_list.c: New file.
28436         * tests/test-avltree_oset.c: New file.
28437         * tests/test-rbtree_oset.c: New file.
28438         * MODULES.html.sh (Container data structures): New section.
28439
28440 2006-07-17  Bruno Haible  <bruno@clisp.org>
28441
28442         * m4/gl_list.m4: New file.
28443
28444 2006-07-17  Bruno Haible  <bruno@clisp.org>
28445
28446         * lib/gl_list.h: New file.
28447         * lib/gl_list.c: New file.
28448         * lib/gl_array_list.h: New file.
28449         * lib/gl_array_list.c: New file.
28450         * lib/gl_carray_list.h: New file.
28451         * lib/gl_carray_list.c: New file.
28452         * lib/gl_linked_list.h: New file.
28453         * lib/gl_linked_list.c: New file.
28454         * lib/gl_anylinked_list1.h: New file.
28455         * lib/gl_anylinked_list2.h: New file.
28456         * lib/gl_avltree_list.h: New file.
28457         * lib/gl_avltree_list.c: New file.
28458         * lib/gl_anyavltree_list1.h: New file.
28459         * lib/gl_anyavltree_list2.h: New file.
28460         * lib/gl_rbtree_list.h: New file.
28461         * lib/gl_rbtree_list.c: New file.
28462         * lib/gl_anyrbtree_list1.h: New file.
28463         * lib/gl_anyrbtree_list2.h: New file.
28464         * lib/gl_anytree_list1.h: New file.
28465         * lib/gl_anytree_list2.h: New file.
28466         * lib/gl_linkedhash_list.h: New file.
28467         * lib/gl_linkedhash_list.c: New file.
28468         * lib/gl_anyhash_list1.h: New file.
28469         * lib/gl_anyhash_list2.h: New file.
28470         * lib/gl_avltreehash_list.h: New file.
28471         * lib/gl_avltreehash_list.c: New file.
28472         * lib/gl_rbtreehash_list.h: New file.
28473         * lib/gl_rbtreehash_list.c: New file.
28474         * lib/gl_anytreehash_list1.h: New file.
28475         * lib/gl_anytreehash_list2.h: New file.
28476
28477         * lib/gl_oset.h: New file.
28478         * lib/gl_oset.c: New file.
28479         * lib/gl_array_oset.h: New file.
28480         * lib/gl_array_oset.c: New file.
28481         * lib/gl_avltree_oset.h: New file.
28482         * lib/gl_avltree_oset.c: New file.
28483         * lib/gl_rbtree_oset.h: New file.
28484         * lib/gl_rbtree_oset.c: New file.
28485         * lib/gl_anytree_oset.h: New file.
28486
28487 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
28488
28489         * m4/mkancesdirs.m4: New file.
28490         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
28491         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
28492         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
28493         it.
28494
28495 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
28496
28497         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
28498         * lib/mkancesdirs.h: New files.
28499         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
28500         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
28501         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
28502         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
28503         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
28504         callers changed.  Revamp internals significantly, by not
28505         attempting to create directories that are temporarily more
28506         permissive than the final results.  Do not attempt to use
28507         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
28508         This removes some race conditions, fixes some bugs, and simplifies
28509         things.  Use new dirchownmod function to do owner and mode changes.
28510         * lib/mkdir-p.h: Likewise.
28511         * lib/modechange.c (octal_to_mode): New function.
28512         (struct mode_change): New member mentioned.
28513         (make_node_op_equals): New arg mentioned.  All callers changed.
28514         (mode_compile): Keep track of which mode bits the user has explicitly
28515         mentioned.
28516         (mode_adjust): New arg DIR, so that we implement the X op correctly.
28517         New arg PMODE_BITS, to keep track of which mode bits the user
28518         mentioned; it treats S_ISUID and S_ISGID speciall.
28519         All callers changed.
28520         * lib/modechange.h: Likewise.
28521
28522 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
28523
28524         * MODULES.html.sh: Add mkancestors.
28525         * modules/mkancesdirs: New module.
28526         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
28527         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
28528         The chdir-safer and afs files are now orphans; I'll remove them
28529         unless someone speaks up.
28530         Add lib/dirchownmod.c, lib/dirchownmod.h.
28531         (Depends-on): Remove alloca, chown, save-cwd, dirname.
28532         Add lchown, mkancesdirs.
28533         (Maintainer): Add self.
28534
28535 2006-07-15  Karl Berry  <karl@gnu.org>
28536
28537         * gnulib-tool: help message wording/arrangement.
28538
28539 2006-07-14  Simon Josefsson  <jas@extundo.com>
28540
28541         * doc/gnulib.texi (Libtool and Windows): New section.
28542
28543 2006-07-12  Simon Josefsson  <jas@extundo.com>
28544
28545         * modules/gendocs (License): Fix license, approved by Karl.
28546
28547 2006-07-12  Eric Blake  <ebb9@byu.net>
28548
28549         * MODULES.html.sh: Add gendocs.
28550
28551 2006-07-11  Eric Blake  <ebb9@byu.net>
28552
28553         * modules/fdl: New module, to install doc/fdl.texi.
28554         * MODULES.html.sh: Add new section for documentation modules.
28555         * gnulib-tool: Avoid space-tab.
28556         (--doc-base): New option, to manage files from doc.
28557
28558 2006-07-11  Eric Blake  <ebb9@byu.net>
28559
28560         * m4/absolute-header.m4: Fix comments to match recent change.
28561
28562 2006-07-11  Eric Blake  <ebb9@byu.net>
28563
28564         * gnulib-tool: List --doc-base before --tests-base.
28565
28566 2006-07-11  Derek R. Price  <derek@ximbiot.com>
28567
28568         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
28569
28570 2006-07-11  Bruno Haible  <bruno@clisp.org>
28571
28572         * README: Mention where to put documentation.
28573
28574 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28575
28576         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
28577
28578 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
28579
28580         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
28581         to stdint.m4.
28582
28583 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
28584
28585         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
28586         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
28587         "no/such/file/stdint.h" when there is no such file, so that
28588         the resulting C code can be parsed by dodgy compilers.
28589         Problems reported by Bob Proulx.
28590
28591 2006-07-10  Derek R. Price  <derek@ximbiot.com>
28592
28593         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
28594         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
28595         macros into the GNU _D_EXACT_NAMLEN.
28596         * lib/savedir.c:  Likewise.
28597         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
28598
28599 2006-07-10  Derek R. Price  <derek@ximbiot.com>
28600         and Paul Eggert  <eggert@cs.ucla.edu>
28601
28602         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
28603         * m4/savedir.m4:
28604         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
28605         macros into the GNU _D_EXACT_NAMLEN.
28606
28607 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
28608
28609         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
28610         around the absolute name, to work around a problem with the HP-UX
28611         11.23 native C compiler, reported by Bob Proulx.
28612
28613 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
28614
28615         * doc/maintain.texi, make-stds.texi: Sync from
28616         <http://savannah.gnu.org/projects/gnustandards>.
28617
28618 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
28619
28620         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
28621
28622 2006-07-09  Jim Meyering  <jim@meyering.net>
28623
28624         * m4/glob.m4: Remove a doubled word in a comment.
28625
28626 2006-07-09  Jim Meyering  <jim@meyering.net>
28627
28628         * lib/argp-pv.c: Remove a doubled word in a comment.
28629         * lib/check-version.c (check_version): Likewise.
28630         * lib/javacomp.c (compile_java_class): Likewise.
28631
28632 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
28633
28634         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
28635         for the benefit of people using Autoconf 2.60.  If you want to
28636         support older Autoconf versions you can copy m4/onceonly_2_57.m4
28637         (or m4/onceonly.m4, if pre-2.57) manually.
28638
28639 2006-07-08  Jim Meyering  <jim@meyering.net>
28640
28641         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
28642         comment.
28643         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
28644         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
28645         comment.
28646
28647 2006-07-08  Jim Meyering  <jim@meyering.net>
28648
28649         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
28650
28651 2006-07-07  Simon Josefsson  <jas@extundo.com>
28652
28653         * tests/test-crc.c: Change expected crc value, the test vector
28654         were probably computed using the old broken crc.c?
28655
28656 2006-07-06  Simon Josefsson  <jas@extundo.com>
28657
28658         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
28659         now the canonical place for the M4 file).
28660
28661         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
28662         from the sys_socket dependency now.
28663
28664         * modules/inet_pton (Files): Ditto.
28665
28666         * modules/inet_ntop (Files): Ditto.
28667
28668 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
28669
28670         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
28671         not gl_PREREQ_GETUSERSHELL.
28672
28673 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28674
28675         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
28676         with only one argument, for Autoconf 2.60.
28677         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
28678         expand to nothing, so add a shell command to avoid syntax error.
28679         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
28680
28681 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28682
28683         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
28684
28685 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
28686
28687         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
28688         no longer needed.  Check for isblank decl.
28689         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
28690         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
28691         of existence.
28692
28693 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
28694
28695         * lib/getloadavg.c: Use __VMS, not VMS.
28696         * lib/getopt.c: Likewise.
28697         * lib/getpagesize.h: Likewise.
28698         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
28699         and probably does not work.
28700
28701 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
28702
28703         * lib/.cppi-disable: Add wcwidth.
28704         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
28705         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
28706         (ISGRAPH): Remove.  All uses changed to isgraph.
28707         (FOLD) [!defined _LIBC]: Remove special case.
28708         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
28709         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
28710         HAVE_ISBLANK.
28711         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
28712         case.
28713
28714 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
28715
28716         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
28717         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
28718         brackets.  Other minor changes to suppress some compiler
28719         warnings.
28720
28721 2006-07-06  Derek R. Price  <derek@ximbiot.com>
28722         and Paul Eggert  <eggert@cs.ucla.edu>
28723
28724         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
28725         of invoking obsolescent AC_HEADER_DIRENT macro.
28726         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
28727         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
28728         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
28729         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
28730         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
28731         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
28732         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
28733         * m4/readdir.m4: Remove; no longer needed.
28734
28735 2006-07-06  Derek R. Price  <derek@ximbiot.com>
28736         and Paul Eggert  <eggert@cs.ucla.edu>
28737
28738         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
28739         Don't worry about this obsolete case any more.
28740         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
28741         directories.
28742         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
28743         worry about this obsolete case any more.
28744         * lib/fts.c: Likewise.
28745         * lib/getcwd.c: Likewise.
28746         * lib/glob.h: Likewise.
28747         * lib/savedir.c: Likewise.
28748
28749 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28750
28751         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
28752         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
28753         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
28754         needed.
28755         All uses removed.
28756         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
28757         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
28758         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
28759         needed.
28760         * m4/getdate.m4 (gl_GETDATE): Likewise.
28761         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
28762         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
28763         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
28764         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
28765         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
28766         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
28767         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
28768         needed.
28769
28770 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28771
28772         * lib/memcasecmp.c: Include <limits.h>.
28773         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
28774         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
28775         Don't assume isdigit succeeds only on '0' through '9'.
28776
28777 2006-07-05  Eric Blake  <ebb9@byu.net>
28778
28779         * modules/getaddrinfo (Depends-on): Add snprintf.
28780
28781 2006-07-05  Eric Blake  <ebb9@byu.net>
28782
28783         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
28784         to avoid 'header present but could not be compiled' on cygwin.
28785
28786 2006-07-05  Eric Blake  <ebb9@byu.net>
28787
28788         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
28789         missing from netdb.h.
28790         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
28791
28792 2006-07-05  Derek R. Price  <derek@ximbiot.com>
28793
28794         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
28795         no longer needed.
28796         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
28797         * m4/getdate.m4 (gl_GETDATE): Likewise.
28798         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
28799         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
28800         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
28801         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
28802         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
28803
28804 2006-07-05  Derek R. Price  <derek@ximbiot.com>
28805
28806         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
28807         All uses of is_space replaced by isspace.
28808         * lib/exit.h: Don't talk about STDC_HEADERS.
28809         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
28810         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
28811         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
28812         replaced by isprint etc.
28813         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
28814         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
28815         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
28816         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
28817         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
28818         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
28819
28820 2006-07-05  Bruno Haible  <bruno@clisp.org>
28821
28822         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
28823         the function exists, before testing against AIX.
28824         Reported by Martin Lambers <marlam@marlam.de>.
28825
28826 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
28827
28828         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
28829         From Mark D. Baushke.
28830
28831 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
28832
28833         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
28834         to the absolute name, not just one, to bypass Sun C 5.8's
28835         "warning: #include of /usr/include/... may be non-portable".
28836
28837 2006-07-04  Eric Blake  <ebb9@byu.net>
28838
28839         * modules/dirname-tests: New test module.
28840         * tests/test-dirname.c: New file, replacing dirname.c
28841         TEST_DIRNAME section that was recently deleted.
28842
28843 2006-07-04  Bruno Haible  <bruno@clisp.org>
28844
28845         Assume ANSI C header files and <ctype.h> functions.
28846         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
28847         (mbsnwidth): Use isprint, iscntrl instead.
28848
28849 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28850
28851         Merge from coreutils.
28852         * MODULES.html.sh: Add xstrtold.
28853         * modules/xstrtold: New file.
28854         * modules/cycle-check (Files): Add lib/same-inode.h.
28855         * modules/dirname (Files): Add m4/double-slash-root.m4.
28856         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
28857         * modules/mkdir-p (Files): Add lib/same-inode.h.
28858         * modules/same (Files): Add lib/same-inode.h.
28859
28860 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28861
28862         * m4/absolute-header.m4: Renamed from full-header-path.m4.
28863         This is to keep the terminology clean; POSIX talks about
28864         "absolute pathnames", not "full pathnames", but the GNU
28865         Coding Standards say to use "path" for something else;
28866         so use "absolute" to keep both sides happy.
28867         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
28868         Set gl_absolute_header, not gl_full_header_path.
28869         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
28870         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
28871         All uses changed.
28872
28873         Merge from coreutils.
28874
28875         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28876
28877         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
28878         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
28879         want to require the building of c-strtod.o.
28880         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
28881         needs -lm directly.
28882         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
28883
28884         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
28885
28886         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
28887         --as-needed option if available.  Problem reported by Albert Chin in
28888         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
28889         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
28890         cc merely issues a bunch of annoying warnings for --as-needed
28891         (this problem was reported by Bob Proulx).  Also, try linking with
28892         -lm to detect a bug in binutils 2.16 (this problem was reported
28893         by Ralf Wildenhues).
28894
28895         2006-06-18  Jim Meyering  <jim@meyering.net>
28896
28897         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
28898         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
28899         macro.
28900         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
28901         also check for glibc-2.4's abort-inducing bug.
28902
28903         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
28904         Low-probability clean-up should be to use rmdir to get rid of
28905         the just-created directory, not unlink.
28906
28907         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
28908         configure fail, and request a bug report to inform us about it.
28909         Add a comment that, barring reports to the contrary, in 2007 we'll
28910         assume ftruncate is universally available.
28911
28912         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
28913
28914         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
28915
28916         2006-03-12  Jim Meyering  <jim@meyering.net>
28917
28918         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
28919         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
28920         * m4/same.m4 (gl_SAME): Likewise.
28921         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
28922
28923         2006-03-11  Eric Blake  <ebb9@byu.net>
28924
28925         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
28926         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
28927         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
28928         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
28929
28930 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28931
28932         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
28933         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
28934         reported by Mark D. Baushke, one in
28935         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
28936
28937         Merge from coreutils.
28938
28939         * lib/.cppi-disable: Add stdint_.h.
28940         * lib/.cvsignore: Add stdint.h.
28941
28942         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28943
28944         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
28945         both double and long double versions.
28946         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
28947         * lib/xstrtold.c: New file.
28948         * lib/xstrtod.h (xstrtold): New decl.
28949
28950         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
28951
28952         * lib/filemode.c (setst): Remove.
28953         (strmode): Rewrite to avoid setst.  This makes the code shorter,
28954         (arguably) clearer, and the generated code is a bit smaller on my
28955         Debian GNU/Linux stable x86 host.
28956
28957         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
28958
28959         * lib/filemode.c: Include "filemode.h" first, to test the interface.
28960         Assume that filemode.h includes sys/types.h and sys/stat.h.
28961         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
28962         (ftypelet): Reorder to put common cases first, for efficiency.
28963         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
28964         to do 'M'.
28965         (strmode): Renamed from mode_string, and now stores 12 bytes instead
28966         of 10, for compatibility with FreeBSD.  All callers changed.
28967         (filemodestring): Now stores 12 bytes instead of 10, and sets file
28968         types that can't be deduced solely from st_mode.  First arg is now a
28969         const pointer.
28970         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
28971         (strmode): Renamed from mode_string.
28972         (filemodestring): New decl.
28973         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
28974         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
28975         needed.
28976         (S_ISPORT, S_ISWHT): New macros, if not already defined.
28977
28978         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
28979
28980         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
28981         fsusage.h now does that.  Include fsusage.h first, to test interface.
28982         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
28983         at most one method (the old code could have generated decls that
28984         didn't conform to C89, not that this was ever exercised).
28985         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
28986
28987         2006-03-19  Jim Meyering  <jim@meyering.net>
28988
28989         Work even in a chroot where d_ino values for entries in "/"
28990         don't match the stat.st_ino values for the same names.
28991         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
28992         number, iterate through all entries again, using lstat instead.
28993         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
28994         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
28995
28996         * lib/getcwd.c (__getcwd): Clarify a comment.
28997         Use memcpy in place of a call to strcpy.
28998
28999         2006-03-12  Jim Meyering  <jim@meyering.net>
29000
29001         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
29002         matches that of the current directory (which we're about to chdir ".."
29003         out of), then save the dev-ino of the parent, instead.
29004
29005         * lib/same-inode.h (SAME_INODE): New file/macro.
29006         * lib/chdir-safer.c (SAME_INODE): Remove definition.
29007         Include "same-inode.h", instead.
29008         * lib/same.c: Likewise.
29009         * lib/cycle-check.h: Include "same-inode.h".
29010         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
29011         * lib/cycle-check.c (SAME_INODE): Remove definition.
29012         * lib/root-dev-ino.h: Include "same-inode.h".
29013
29014         2006-03-11  Eric Blake  <ebb9@byu.net>
29015
29016         * lib/same.c (same_name): s/base_name/last_component/
29017         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
29018         * lib/filenamecat.c (file_name_concat): Likewise.
29019
29020         2006-03-11  Eric Blake  <ebb9@byu.net>,
29021                     Paul Eggert  <eggert@cs.ucla.edu>
29022
29023         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
29024         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
29025         drive prefix.
29026         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
29027         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
29028         (last_component): New method.
29029         * lib/dirname.c (dir_len): Determine when drive letters need a
29030         subsequent slash.  Preserve // when it is special.
29031         (dir_name): Don't append dot when drive letter is absolute.
29032         [TEST_DIRNAME]: Move into a full-blown gnulib test.
29033         * lib/basename.c (base_name): New semantics - malloc the result.
29034         Preserve // when it is special.  Preserve relative files that look
29035         like drive letters.
29036         (base_len): Preserve // when it is special.
29037         (last_component): New method, similar to old base_name semantics.
29038         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
29039         base_name.  Strip redundant slashes from ///.
29040
29041 2006-07-03  Jim Meyering  <jim@meyering.net>
29042
29043         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
29044         macro is used before the first cycle_check call.
29045
29046 2006-07-03  Eric Blake  <ebb9@byu.net>
29047
29048         * modules/dirname (Depends-on): Add xstrndup.
29049
29050 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
29051
29052         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
29053         test cases, so that config.log is a bit easier to follow.
29054
29055 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
29056
29057         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
29058         both are 64 bits, since this seems to be the tradition, and this
29059         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
29060         we ever run into a host that prefers long long to long in this
29061         case, we'll need another configure-time test.  Problem reported by
29062         Jim Meyering.
29063
29064 2006-07-02  Eric Blake  <ebb9@byu.net>
29065
29066         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
29067
29068 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
29069
29070         * modules/inttypes (Depends-on): No longer depends on stdint.
29071         * modules/stdint (Description): Say more about assumptions.
29072         Say that the fast types might differ.  Say macros are used.
29073         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
29074         (Makefile.am): Revise list of substituted symbols to match
29075         new stdint.m4.
29076         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
29077         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
29078         * tests/test-stdint.c (verify_same_types)
29079         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
29080         the code conforms to C99/C89.
29081         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
29082         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
29083
29084 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
29085
29086         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
29087         but fix a bug, by requiring at least 64 bits.
29088         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
29089         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
29090         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
29091         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
29092
29093         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
29094         changes.  Make 2.59 a prerequisite.  Check and substitute for
29095         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
29096         inttypes.h.  Do not use special include files; just use the
29097         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
29098         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
29099         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
29100         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
29101         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
29102         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
29103         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
29104         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
29105         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
29106         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
29107         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
29108         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
29109         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
29110         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
29111         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
29112         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
29113         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
29114         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
29115         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
29116         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
29117         WINT_MAX.  Check for C99 conformance more strictly, by detecting
29118         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
29119         not check for things that C99 does not require, e.g., int8_t.  If
29120         a test isn't needed unless <stdint.h> isn't working, and is
29121         unlikely to be needed for any other reason, then don't do it
29122         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
29123         size_t, since we assume C89 freestanding at least.  Do not check
29124         for sig_atomic_t, wchar_t, or wint_t, since the code now does
29125         the right thing even if the types are not defined.  Instead use:
29126         (gl_STDINT_TYPE_PROPERTIES): New macro.
29127         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
29128         testing whether <sys/types.h> clashes, as Autoconf does this for
29129         us now.  All uses removed.
29130         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
29131         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
29132         (gl_CHECK_TYPE_SAME):
29133         Remove; no longer needed.
29134         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
29135         exists, since we'll return 0 anyway in that case.
29136         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
29137
29138 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
29139
29140         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
29141         possible collision with system files.
29142         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
29143         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
29144         WCHAR_MIN and WCHAR_MAX in this case.
29145         (<stddef.h>): Do not include; no longer needed.
29146         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
29147         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
29148         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
29149         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
29150         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
29151         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
29152         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
29153         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
29154         !defined(__c99))]: Include in this case too, since it's harmless
29155         now.
29156         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
29157         dangerous to do so.
29158         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
29159         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
29160         (_STDINT_MIN, _STDINT_MAX): New macros.
29161         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
29162         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
29163         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
29164         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
29165         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
29166         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
29167         macros, not typedefs; this simplifies things quite a bit.
29168         Use long int for all types narrower than int64_t.
29169         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
29170         Define in terms of long long int or int64_t or long int,
29171         not int64_t or int32_t.  This saves some compile-time testing.
29172         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
29173         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
29174         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
29175         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
29176         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
29177         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
29178         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
29179         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
29180         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
29181         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
29182         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
29183         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
29184         undef any previous version and define our own version, for
29185         simplicity and consistency with the new macros for types.
29186         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
29187         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
29188         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
29189         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
29190         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
29191         @WINT_T_SUFFIX@ to keep things simple here.
29192         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
29193         Simplify by assuming typical 8/16/32/64 host, since we're
29194         already doing that elsewhere anyway.
29195         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
29196         and assume long long int is 64 bits if available.  This
29197         speeds up 'configure'.
29198
29199 2006-07-01  Eric Blake  <ebb9@byu.net>
29200
29201         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
29202         Reported by Andreas Buening.
29203
29204 2006-07-01  Eric Blake  <ebb9@byu.net>
29205
29206         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
29207
29208 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
29209
29210         * lib/getaddrinfo.c: fixed typo
29211
29212 2006-06-29  Jim Meyering  <jim@meyering.net>
29213
29214         * modules/strftime (Maintainer): Add my name, since with the
29215         FPRINTFTIME changes strftime.c has forked from glibc.
29216
29217 2006-06-29  Eric Blake  <ebb9@byu.net>
29218
29219         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
29220
29221 2006-06-29  Eric Blake  <ebb9@byu.net>
29222
29223         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
29224
29225 2006-06-29  Eric Blake  <ebb9@byu.net>
29226
29227         * lib/stat_.h: New file.
29228
29229 2006-06-29  Eric Blake  <ebb9@byu.net>
29230
29231         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
29232         unused static function.
29233
29234 2006-06-29  Eric Blake  <ebb9@byu.net>
29235
29236         * doc/functions.texi (Function Portability): Document missing lstat
29237         on mingw.
29238
29239 2006-06-29  Eric Blake  <ebb9@byu.net>
29240
29241         * MODULES.html.sh: Add sys_stat.
29242         * modules/sys_stat: New module.
29243         * modules/mkstemp (Depends-on): Add sys_stat.
29244
29245 2006-06-29  Derek R. Price  <derek@ximbiot.com>
29246
29247         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
29248
29249 2006-06-29  Derek R. Price  <derek@ximbiot.com>
29250
29251         * m4/c-bs-a.m4: Removed.
29252
29253 2006-06-29  Derek R. Price  <derek@ximbiot.com>
29254
29255         * lib/strftime.c: Assume strftime() exists.
29256
29257 2006-06-29  Derek Price  <derek@ximbiot.com>
29258
29259         * modules/c-bs-a: Removed - \a is C89.
29260         * MODULES.html.sh: Remove c-bs-a.
29261
29262 2006-06-29  Bruno Haible  <bruno@clisp.org>
29263
29264         * modules/wcwidth (License): Change to LGPL.
29265
29266 2006-06-28  Simon Josefsson  <jas@extundo.com>
29267
29268         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
29269         on _WIN32.
29270
29271         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
29272         getnameinfo.
29273
29274 2006-06-28  Simon Josefsson  <jas@extundo.com>
29275
29276         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
29277
29278 2006-06-28  Simon Josefsson  <jas@extundo.com>
29279
29280         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
29281         functions there.  It will succeed on Windows XP, but on Windows
29282         2000 and (presumably) earlier, it will fail, and use the internal
29283         re-implementation.
29284         (use_win32_p): New function.
29285         (getaddrinfo): Use strtoul on servname, to support numeric ports.
29286         Support AI_NUMERICSERV to disable getservbyname.
29287         (getnameinfo): New function, only supports
29288         NI_NUMERICHOST|NI_NUMERICSERV for now.
29289
29290         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
29291         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
29292         getnameinfo.
29293
29294 2006-06-28  Eric Blake  <ebb9@byu.net>
29295
29296         * modules/wcwidth: New file.
29297         * modules/mbchar (Depends-on): Add wcwidth.
29298         * modules/mbswidth (Depends-on): Add wcwidth.
29299         * MODULES.html.sh: Add wcwidth.
29300
29301 2006-06-28  Eric Blake  <ebb9@byu.net>
29302
29303         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
29304         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
29305
29306 2006-06-28  Eric Blake  <ebb9@byu.net>
29307
29308         * lib/xvasprintf.h: Fix comments.
29309
29310 2006-06-28  Eric Blake  <ebb9@byu.net>
29311
29312         * lib/mbchar.h (wcwidth): Include wcwidth.h.
29313         * lib/mbswidth.c (wcwidth): Move from here...
29314         * lib/wcwidth.h: ...to this new file.
29315
29316 2006-06-28  Derek R. Price  <derek@ximbiot.com>
29317
29318         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
29319
29320         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
29321         it's obsolete.
29322         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
29323
29324 2006-06-28  Derek R. Price  <derek@ximbiot.com>
29325
29326         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
29327         Autoconf 2.60 says this stuff was obsolete.
29328
29329 2006-06-28  Bruno Haible  <bruno@clisp.org>
29330
29331         * modules/wcwidth (Files): Add m4/wchar_t.m4.
29332
29333 2006-06-28  Bruno Haible  <bruno@clisp.org>
29334
29335         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
29336         gt_TYPE_WCHAR_T.
29337
29338 2006-06-28  Bruno Haible  <bruno@clisp.org>
29339
29340         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
29341         declaration for wcwidth.
29342         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
29343
29344 2006-06-28  Bruno Haible  <bruno@clisp.org>
29345
29346         * lib/mkdtemp.c [MINGW]: Include <io.h>.
29347         (mkdir): Define using _mkdir.
29348
29349 2006-06-28  Bruno Haible  <bruno@clisp.org>
29350
29351         * lib/getaddrinfo.h: Fix POSIX URL.
29352         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
29353         _WIN32.
29354         (use_win32_p): Make static.
29355         (getaddrinfo): Reject service name if it is empty or does not consist
29356         solely of decimal digits, or if its value is > 65535.
29357         (getnameinfo): Remove useless casts.
29358
29359 2006-06-27  Simon Josefsson  <jas@extundo.com>
29360
29361         * modules/sys_select: New file, suggested by Bruno Haible, Paul
29362         Eggert and Martin Lambers.
29363
29364 2006-06-27  Simon Josefsson  <jas@extundo.com>
29365
29366         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
29367         Eggert and Martin Lambers.
29368
29369 2006-06-27  Bruno Haible  <bruno@clisp.org>
29370
29371         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
29372         result to 0, not to empty.
29373         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
29374
29375 2006-06-27  Bruno Haible  <bruno@clisp.org>
29376
29377         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
29378
29379 2006-06-26  Simon Josefsson  <jas@extundo.com>
29380
29381         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
29382         present.
29383
29384 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
29385
29386         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
29387         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
29388         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
29389
29390 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
29391
29392         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
29393
29394 2006-06-26  Bruno Haible  <bruno@clisp.org>
29395
29396         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
29397
29398 2006-06-26  Bruno Haible  <bruno@clisp.org>
29399
29400         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
29401
29402 2006-06-26  Bruno Haible  <bruno@clisp.org>
29403
29404         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
29405         SGI C compiler in pre-C99 mode.
29406         Suggested by Mark D. Baushke and Larry Jones.
29407
29408 2006-06-26  Bruno Haible  <bruno@clisp.org>
29409
29410         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
29411         WCHAR_MAX.
29412         Reported by Mark D. Baushke and Larry Jones.
29413
29414 2006-06-26  Bruno Haible  <bruno@clisp.org>
29415
29416         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
29417         in pre-C99 mode.
29418         Suggested by Mark D. Baushke and Larry Jones.
29419
29420 2006-06-23  Simon Josefsson  <jas@extundo.com>
29421             Bruno Haible  <bruno@clisp.org>
29422
29423         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
29424         Emit mostlyclean-local rule.
29425         (func_emit_tests_Makefile_am): Likewise.
29426         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
29427
29428 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
29429
29430         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
29431
29432 2006-06-23  Bruno Haible  <bruno@clisp.org>
29433
29434         * tests/test-stdint.c: Update to match ISO C 99 Technical
29435         Corrigendum 1.
29436
29437 2006-06-23  Bruno Haible  <bruno@clisp.org>
29438
29439         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
29440
29441 2006-06-23  Bruno Haible  <bruno@clisp.org>
29442
29443         * lib/stdint_.h: Treat IRIX like OpenBSD.
29444
29445 2006-06-23  Bruno Haible  <bruno@clisp.org>
29446
29447         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
29448         ISO C 99 Technical Corrigendum 1.
29449
29450 2006-06-22  Simon Josefsson  <jas@extundo.com>
29451
29452         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
29453         MinGW.
29454
29455 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
29456
29457         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
29458         needed.  Some compiler complained about some of them.  Problem reported
29459         by Larry Jones in
29460         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
29461
29462 2006-06-21  Simon Josefsson  <jas@extundo.com>
29463
29464         * tests/test-getaddrinfo.c: New file.
29465
29466         * modules/getaddrinfo-tests: New file.
29467
29468         * MODULES.html.sh: Add inet_pton.
29469
29470         * modules/inet_pton: New file.
29471
29472 2006-06-21  Simon Josefsson  <jas@extundo.com>
29473
29474         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
29475         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
29476         of using the (limited) gnulib implementation on Windows XP.
29477
29478         * m4/inet_pton.m4: New file.
29479
29480 2006-06-21  Simon Josefsson  <jas@extundo.com>
29481
29482         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
29483         variable.
29484
29485         * lib/socket_.h: Don't define WINVER.
29486
29487         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
29488         slightly modified to work in gnulib.
29489
29490 2006-06-21  Simon Josefsson  <jas@extundo.com>
29491
29492         * doc/gnulib.texi (Windows sockets): Add.
29493
29494 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
29495
29496         * lib/read-file.c (fread_file): Start with buffer allocation of
29497         0 bytes rather than 1 byte; this simplifies the code.
29498         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
29499         code to free buffer and save/restore errno.
29500         (internal_read_file): Remove unused local.
29501
29502 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
29503
29504         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
29505         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
29506         Problem reported by Denis Excoffier in
29507         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
29508
29509 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29510
29511         * modules/sys_socket, modules/socklen: Include sys/types since
29512         FreeBSD 4.x's sys/socket.h needs it.
29513
29514 2006-06-19  Simon Josefsson  <jas@extundo.com>
29515
29516         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
29517
29518 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
29519
29520         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
29521
29522 2006-06-19  Bruno Haible  <bruno@clisp.org>
29523
29524         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
29525         and FULL_PATH_INTTYPES_H in angle brackets.
29526         Reported by Mark D. Baushke <mdb@gnu.org>.
29527
29528 2006-06-17  Eric Blake  <ebb9@byu.net>
29529
29530         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
29531         errno.
29532
29533 2006-06-17  Bruno Haible  <bruno@clisp.org>
29534
29535         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
29536         <sys/inttypes.h>.
29537
29538 2006-06-17  Bruno Haible  <bruno@clisp.org>
29539
29540         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
29541         whether errno is declared. Assume <errno.h> declares errno.
29542
29543 2006-06-17  Bruno Haible  <bruno@clisp.org>
29544
29545         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
29546
29547 2006-06-17  Bruno Haible  <bruno@clisp.org>
29548
29549         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
29550         problem on Solaris 2.5.1.
29551
29552 2006-06-16  Eric Blake  <ebb9@byu.net>
29553
29554         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
29555         * lib/unicodeio.c [!defined errno]: Likewise.
29556         * lib/strtol.c [!defined errno]: Likewise.
29557         * lib/strtod.c [!defined errno]: Likewise.
29558
29559 2006-06-15  Eric Blake  <ebb9@byu.net>
29560
29561         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
29562
29563 2006-06-15  Eric Blake  <ebb9@byu.net>
29564
29565         * config/srclist.txt (ssize_t.m4): Lose sync.
29566
29567 2006-06-15  Bruno Haible  <bruno@clisp.org>
29568
29569         * modules/stdint (Files): Include m4/full-header-path.m4,
29570         m4/size_max.m4, m4/wchar_t.m4.
29571         (Makefile.am): Many more substitutions.
29572         * modules/stdint-tests: New file.
29573         * tests/test-stdint.c: New file.
29574
29575 2006-06-15  Bruno Haible  <bruno@clisp.org>
29576
29577         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
29578         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
29579         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
29580         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
29581         gl_CHECK_TYPE_SAME): New macros.
29582
29583 2006-06-15  Bruno Haible  <bruno@clisp.org>
29584
29585         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
29586
29587 2006-06-15  Bruno Haible  <bruno@clisp.org>
29588
29589         * lib/stdint_.h: Rewritten to be fully auto-configured.
29590         Fixes bug on HP-UX/IA64.
29591
29592 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
29593
29594         * lib/getdate.y (__attribute__): Don't define if already defined.
29595         Problem reported by Larry Jones.
29596         * lib/utimens.c (__attribute__): Likewise.
29597
29598 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
29599
29600         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
29601         reported by Andreas Schwab.
29602
29603 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29604             Bruno Haible  <bruno@clisp.org>
29605
29606         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
29607         check for the declaration of strnlen and a run test that exposes the
29608         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
29609         rpl_strndup.
29610
29611 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29612             Bruno Haible  <bruno@clisp.org>
29613
29614         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
29615
29616 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29617
29618         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
29619         compile test, for Tru64 4.0D.
29620
29621 2006-05-28  Karl Berry  <karl@gnu.org>
29622
29623         * config/srclist.txt (printf-args.c): lose sync.
29624
29625 2006-05-26  Martin Lambers  <marlam@marlam.de>
29626
29627         * lib/getpass.c: Updates the test for the native W32 API, and adds
29628         missing includes, thus fixing compilation warnings.
29629
29630 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
29631
29632         * lib/exclude.c (exclude_fnmatch): New function.
29633         (excluded_file_name): Call exclude_fnmatch.
29634         * lib/exclude.h (excluded_file_name): New prototype
29635
29636 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
29637
29638         * lib/tempname.c (small_open, large_open): New macros.
29639         (__open, __open64) [!_LIBC]: Remove.
29640         (__gen_tempname): Use small_open and large_open instead of __open
29641         and __open64.  This fixes a portability bug on HP-UX 11.11i
29642         reported by Simon Wing-Tang in
29643         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
29644
29645 2006-05-24  Bruno Haible  <bruno@clisp.org>
29646
29647         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
29648         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
29649         Reported by Thorsten Maerz <torte@netztorte.de> via
29650         Aaron Stone <aaron@serendipity.cx>.
29651
29652 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
29653
29654         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
29655         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
29656         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
29657         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
29658         not really conditional on the cache.
29659         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
29660
29661 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
29662
29663         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
29664         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
29665         (my_usleep): Don't mishandle maximum value.
29666
29667 2006-05-19  Jim Meyering  <jim@meyering.net>
29668
29669         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
29670
29671 2006-05-17  Bruno Haible  <bruno@clisp.org>
29672
29673         Cygwin portability.
29674         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
29675
29676 2006-05-17  Bruno Haible  <bruno@clisp.org>
29677
29678         * lib/stdint_.h: Fix recognition of Cygwin.
29679
29680 2006-05-15  Bruno Haible  <bruno@clisp.org>
29681
29682         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
29683         on libtool patch by Ralf Wildenhues.
29684
29685 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
29686
29687         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
29688         test for C99 conformance; (bool) 0.5 is an integer constant
29689         expression, but (bool) -0.5 is not.  Problem reported by Fedor
29690         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
29691
29692 2006-05-11  Simon Josefsson  <jas@extundo.com>
29693
29694         * m4/xvasprintf.m4: Fix obvious typo.
29695
29696 2006-05-11  Jim Meyering  <jim@meyering.net>
29697
29698         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
29699         James Lemley.
29700
29701 2006-05-10  Simon Josefsson  <jas@extundo.com>
29702
29703         * lib/md4.c: Typo fix, update copyright years.
29704         (K1, K2): Don't use L because it turn computations into 64-bit on
29705         64-bit platforms.
29706
29707 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
29708
29709         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
29710         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
29711         unwanted sign propagation, e.g., on hosts with 64-bit int.
29712         There still are some problems with reeelly weird theoretical hosts
29713         (e.g., 33-bit int) but it's not worth worrying about now.
29714         * lib/sha1.c (rol): Likewise.
29715         (K1, K2, K3, K4): Remove unnecessary L suffix.
29716
29717 2006-05-10  Bruno Haible  <bruno@clisp.org>
29718
29719         * lib/des.c: Cast to avoid warnings.
29720
29721 2006-05-09  Bruno Haible  <bruno@clisp.org>
29722
29723         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
29724         (Depends-on): Depend also on xsize, stdarg.
29725         (configure.ac): Add gl_XVASPRINTF.
29726
29727 2006-05-09  Bruno Haible  <bruno@clisp.org>
29728
29729         * m4/xvasprintf.m4: New file.
29730
29731 2006-05-09  Bruno Haible  <bruno@clisp.org>
29732
29733         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
29734         (EOVERFLOW): Define fallback value.
29735         (xstrcat): New function.
29736         (xvasprintf): Recognize the special case of a string concatenation.
29737
29738 2006-05-08  Eric Blake  <ebb9@byu.net>
29739
29740         * gnulib-tool (func_version): Base copyright year on CVS date.
29741         (func_emit_copyright_notice): New function.
29742         (func_emit_lib_Makefile_am): Use it.
29743         (func_emit_tests_Makefile_am): Likewise.
29744         (func_import): Likewise.
29745
29746 2006-05-08  Bruno Haible  <bruno@clisp.org>
29747
29748         * modules/stdarg: New file.
29749         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
29750
29751 2006-05-08  Bruno Haible  <bruno@clisp.org>
29752
29753         * m4/stdarg.m4: New file, from GNU gettext.
29754
29755 2006-05-08  Bruno Haible  <bruno@clisp.org>
29756
29757         * config/srclist.txt (build-aux/config.rpath): different from latest
29758         release.
29759
29760 2006-05-08  Bruno Haible  <bruno@clisp.org>
29761
29762         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
29763
29764 2006-05-05  Jim Meyering  <jim@meyering.net>
29765
29766         * m4/warning.m4: New file, derived from bison's file by the same name.
29767
29768 2006-05-03  Bruno Haible  <bruno@clisp.org>
29769
29770         * lib/stdint_.h: Shorter URL.
29771         * lib/inttypes.h: Likewise.
29772
29773 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
29774
29775         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
29776
29777 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
29778
29779         * lib/verify.h: Document the internals better.  Most of this change
29780         was written by Bruno Haible.
29781
29782 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
29783
29784         * doc/verify.texi: New file, partly based on a proposal by
29785         Bruno Haible.
29786
29787 2006-05-02  Bruno Haible  <bruno@clisp.org>
29788
29789         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
29790         test from here...
29791         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
29792
29793 2006-04-29  Bruno Haible  <bruno@clisp.org>
29794
29795         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
29796         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
29797
29798 2006-04-29  Bruno Haible  <bruno@clisp.org>
29799
29800         * gnulib-tool: Make --update option actually work.
29801
29802 2006-04-29  Bruno Haible  <bruno@clisp.org>
29803
29804         * doc/gcd.texi: New file.
29805         * doc/gnulib.texi: Include it.
29806
29807 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
29808
29809         * lib/getdate.y (get_date): When adding relative date, start with the
29810         initial time, not with the result of the first mktime call.
29811
29812 2006-04-25  Bruno Haible  <bruno@clisp.org>
29813
29814         * gnulib-tool (func_import): Output the include directives in three
29815         blocks, sorted separately.
29816         Reported by Ben Pfaff <blp@cs.stanford.edu>.
29817
29818 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
29819
29820         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
29821         to define main with arguments, for C++.  Reported by Eric Blake.
29822         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
29823         Prefer 'int main ()' to 'int main (void)', for C++.
29824         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
29825         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
29826         for 'main', for C99 and C++.
29827
29828 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
29829
29830         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
29831         Don't assume that exit status -1 is valid.
29832         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
29833         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
29834         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
29835         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
29836         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
29837         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
29838         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
29839         functions can be used without declaring them, or that you can
29840         exit with status -1.
29841         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
29842
29843 2006-04-24  Karl Berry  <karl@gnu.org>
29844
29845         * config/srclist.txt (longdouble.m4): sync lost.
29846
29847 2006-04-24  Eric Blake  <ebb9@byu.net>
29848
29849         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
29850
29851 2006-04-24  Bruno Haible  <bruno@clisp.org>
29852
29853         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
29854         poll() implementation in AIX.
29855         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
29856
29857 2006-04-24  Bruno Haible  <bruno@clisp.org>
29858
29859         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
29860         assigned exactly once.
29861
29862 2006-04-23  Claudio Fontana  <claudio@gnu.org>
29863             Bruno Haible  <bruno@clisp.org>
29864
29865         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
29866         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
29867         for AM_CPPFLAGS.
29868
29869 2006-04-23  Bruno Haible  <bruno@clisp.org>
29870
29871         * modules/copy-file: Depend on unistd.
29872         * modules/execute: Likewise.
29873         * modules/fatal-signal: Likewise.
29874         * modules/findprog: Likewise.
29875         * modules/mkdtemp : Likewise.
29876         * modules/pipe: Likewise.
29877         * modules/wait-process: Likewise.
29878
29879 2006-04-23  Bruno Haible  <bruno@clisp.org>
29880
29881         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
29882         condition was already detected.
29883         Reported by Ben Pfaff <blp@cs.stanford.edu>.
29884
29885 2006-04-23  Bruno Haible  <bruno@clisp.org>
29886
29887         * lib/copy-file.c: Include <unistd.h> unconditionally.
29888         * lib/execute.c: Likewise.
29889         * lib/fatal-signal.c: Likewise.
29890         * lib/findprog.c: Likewise.
29891         * lib/mkdtemp.c: Likewise.
29892         * lib/pipe.h: Likewise.
29893         * lib/pipe.c: Likewise.
29894         * lib/wait-process.h: Likewise.
29895
29896 2006-04-23  Bruno Haible  <bruno@clisp.org>
29897
29898         * gnulib-tool (func_usage): Fix --import description. Document
29899         --update.
29900         (func_import): Create temporary file in a temporary directory, if
29901         --dry-run is specified. Silence errors from 'grep' when there are no
29902         m4 files in $m4dir.
29903         (func_create_testdir): Silence errors from 'grep' when there are no
29904         m4 files in $m4dir.
29905         Reported by Karl Berry <karl@freefriends.org>.
29906
29907 2006-04-20  Bruno Haible  <bruno@clisp.org>
29908
29909         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
29910         one argument, so that the code will be portable to Autoconf 2.60.
29911         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
29912         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
29913         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
29914
29915 2006-04-19  Derek Price  <derek@ximbiot.com>
29916             Eric Blake  <ebb9@byu.net>
29917
29918         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
29919         rather than "/full/path.h".  Update comment to match.  Shorten &
29920         generalize m4_translit call via AS_TR_CPP.
29921
29922 2006-04-19  Derek Price  <derek@ximbiot.com>
29923             Eric Blake  <ebb9@byu.net>
29924
29925         * lib/inttypes.h: Correct grammar in comment.
29926
29927 2006-04-18  Derek Price  <derek@ximbiot.com>
29928             Paul Eggert  <eggert@cs.ucla.edu>
29929
29930         * modules/inttypes: New file.
29931         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
29932
29933 2006-04-18  Derek Price  <derek@ximbiot.com>
29934             Paul Eggert  <eggert@cs.ucla.edu>
29935
29936         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
29937         New files.
29938
29939 2006-04-18  Derek Price  <derek@ximbiot.com>
29940             Paul Eggert  <eggert@cs.ucla.edu>
29941
29942         * lib/inttypes.h: New file.
29943         * lib/strtoimax.c: Assume <inttypes.h>.
29944
29945 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
29946
29947         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
29948         isn't mounted.  Problem reported by Kir Kolyshkin.
29949
29950 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
29951
29952         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
29953         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
29954         Derek R. Price.
29955         * lib/regex.h (RE_DUP_MAX): Update comment to match current
29956         implementation.
29957
29958 2006-04-12  Eric Blake  <ebb9@byu.net>
29959
29960         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
29961         is now done automatically by the corresponding Autoconf macro.
29962
29963 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
29964
29965         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
29966         time_r.h.
29967
29968 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
29969
29970         Merge regex changes from libc, removing some of our
29971         POSIX-conformance changes that were rejected and redoing them in a
29972         less-intrusive way.
29973
29974         * lib/regcomp.c (re_compile_internal, init_dfa):
29975         Length arg is now size_t, not Idx.  All uses changed.
29976         (peek_token): Forward decl now says internal_function.
29977         (__re_error_msgid, __re_error_msgid_idx):
29978         Now static rather than extern with attribute_hidden.
29979         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
29980         For some reason libc prefers K&R style defns for external functions.
29981         (regerror) [!defined _LIBC]: Likewise.
29982         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
29983         (seek_collating_symbol_entry, lookup_collation_sequence_value):
29984         (build_range_exp, build_collating_symbol):
29985         Use K&R-style defn.
29986         (re_compile_fastmap): Use '\0' to memset, not 0.
29987         (utf8_sb_map): Make the calculations more obvious.
29988         (init_dfa, parse_bracket_exp, build_charclass_op):
29989         Call calloc and cast result, as glibc does.
29990         (init_word_char, fetch_token, peek_token, peek_token_bracket):
29991         (build_range_exp, build_collating_symbol):
29992         Now internal functions.
29993
29994         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
29995
29996         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
29997         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
29998         Don't depend on VMS; depend on __VMS instead, for POSIX
29999         namespace cleanness.
30000         (regoff_t): Define to ssize_t, not long int.
30001
30002         Remove the REG_ macros named below.  Instead, make the old names
30003         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
30004         __USE_GNU_REGEX.
30005         (REG_BACKSLASH_ESCAPE_IN_LISTS):
30006         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
30007         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
30008         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
30009         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
30010         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
30011         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
30012         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
30013         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
30014         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
30015         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
30016         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
30017         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
30018         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
30019         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
30020         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
30021         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
30022         (REG_NREGS):
30023         Remove.  All uses replaced by the old RE_* names.
30024         (RE_BACKSLASH_ESCAPE_IN_LISTS):
30025         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
30026         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
30027         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
30028         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
30029         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
30030         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
30031         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
30032         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
30033         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
30034         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
30035         Don't bother having these macros be independent of each others'
30036         values, since they no longer exist in the POSIX name space.
30037
30038         Rename the following member names back to their old names,
30039         unless !__USE_GNU_REGEX.  All uses changed back.
30040         (buffer): Renamed from re_buffer.
30041         (allocated): Renamed from re_allocated.
30042         (used): Renamed from re_used.
30043         (syntax): Renamed from re_syntax.
30044         (fastmap): Renamed from re_fastmap.
30045         (translate): Renamed from re_translate.
30046         (can_be_null): Renamed from re_can_be_null.
30047         (regs_allocated): Renamed from re_regs_allocated.
30048         (fastmap_accurate): Renamed from re_fastmap_accurate.
30049         (no_sub): Renamed from re_no_sub.
30050         (not_bol): Renamed from re_not_bol.
30051         (not_eol): Renamed from re_not_eol.
30052         (newline_anchor): Renamed from re_newline_anchor.
30053         (num_regs): Renamed from rm_num_regs.
30054         (start): Renamed from rm_start.
30055         (end): Renamed from rm_end.
30056
30057         (free_state): Move up a bit.
30058
30059         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
30060         #define to be empty.
30061         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
30062         when that is what is intended.
30063         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
30064         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
30065         (MAX): New macro.
30066         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
30067         All uses changed back to re_malloc, etc.  It's now the caller's
30068         responsibility to check for overflow; all callers changed.
30069         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
30070         (re_x2nrealloc): Remove.
30071         (free_state): Remove decl.
30072
30073         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
30074         (re_set_registers, re_exec):
30075         Use K&R-style defn.
30076
30077         2006-01-31  Roland McGrath  <roland@redhat.com>
30078
30079         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
30080         Reported by Mike Frysinger <vapier@gentoo.org>.
30081
30082         2006-01-15  Andreas Jaeger  <aj@suse.de>
30083
30084         [BZ #1950]
30085         * lib/regex_internal.c (re_string_reconstruct): Adjust for
30086         build_wcs_upper_buffer change.
30087         (build_wcs_upper_buffer): Change return type.
30088
30089         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
30090
30091         * lib/regex_internal.h: Include <stdint.h> if available.
30092
30093         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
30094
30095         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
30096
30097         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
30098
30099         * lib/regcomp.c: Adjust for changed secondary hash function.
30100
30101         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
30102
30103         * lib/regex.h: Pretty printing.
30104         Clean up namespace a bit.
30105
30106         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
30107
30108         * lib/regexec.c (update_cur_sifted_state, check_arrival,
30109         check_arrival_add_next_nodes): Avoid using uninitialized variable.
30110
30111         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
30112                     Ulrich Drepper  <drepper@redhat.com>
30113
30114         [BZ #1302]
30115         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
30116         changed.
30117         (bitset_word_t): Renamed from bitset_word.  All uses changed.
30118
30119         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
30120
30121         [BZ #281]
30122         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
30123         * lib/regcomp.c: Remove unnecessary uses of
30124         unsigned RE_TRANSLATE_TYPE.
30125         * lib/regex_internal.h: Likewise.
30126         * lib/regex_internal.c: Likewise.
30127         * lib/regexec.c: Likewise.
30128         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
30129
30130         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
30131
30132         * lib/regexec.c (find_recover_state): Remove unnecessary
30133         initialization.
30134         (transit_state_bkref): Make DFA a const pointer.
30135         (get_subexp): Likewise.
30136         (check_arrival): Likewise.
30137         (update_cur_sifted_state): Likewise.
30138         (re_search_internal): Likewise.
30139         (prune_impossible_nodes): Likewise.
30140         (acquire_init_state_context): Likewise.
30141         (proceed_next_node): Likewise.
30142         (set_regs): Likewise.
30143         (free_fail_stack_return): Likewise.
30144         (check_arrival_expand_ecl): Mark DFA parameter as const.
30145         (check_arrival_expand_ecl_sub): Likewise.
30146         (check_subexp_limits): Likewise.
30147         (sub_epsilon_src_nodes):  Likewise.
30148         (add_epsilon_src_nodes):  Likewise.
30149         (merge_state_array): Likewise.
30150         (update_regs): Likewise.
30151         (build_trtable): Likewise.
30152         (sift_states_backward): Mark MCTX parameter as const.
30153         (build_sifted_states): Likewise.
30154         (update_cur_sifted_state): Likewise.
30155         (sift_states_mkref): Likewise.
30156         (check_arrival_expand_ecl): Mark eclosure as const.
30157         (check_dst_limits_calc_pos_1): Likewise.
30158         * lib/regex_internal.h (re_match_context_t): Make dfa a const
30159         pointer.
30160
30161         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
30162
30163         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
30164         (transit_state_sb): Likewise.
30165         (transit_state_mb): Likewise.
30166         (sift_states_iter_mb): Likewise.
30167         (check_arrival_add_next_nodes): Likewise.
30168         (check_node_accept_bytes): Change first parameter to pointer-to-const.
30169         [_LIBC] (re_search_2_stub): Use mempcpy.
30170
30171         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
30172         mbrtowc for very simple UTF-8 case.
30173
30174         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
30175         a pointer-to-const.
30176         (re_acquire_state_context): Likewise.
30177         * lib/regex_internal.h: Adjust prototypes.
30178
30179         * lib/regex.c: Prevent using C++ compilers.
30180
30181         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
30182         (re_acquire_state_context): Likewise.
30183
30184 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
30185
30186         * modules/regex (Depends-on): Add ssize_t.
30187
30188 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
30189
30190         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
30191         translation table.
30192
30193 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
30194
30195         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
30196
30197 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
30198             Bruno Haible  <bruno@clisp.org>
30199
30200         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
30201         <sys/types.h> and <inttypes.h>.
30202
30203 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30204
30205         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
30206         `__error_t_defined', so argp.h will not typedef the former.
30207
30208 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
30209
30210         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
30211         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
30212         glibc names.  Even if glibc is changed to conform to POSIX, the
30213         traditional names will be available anyway, since regex depends on
30214         the extensions module.  Also, fix a longstanding typo in the
30215         implementation of Spencer ERE test #75 from grep 2.3.  Problems
30216         reported by Emanuele Giaquinta.  Also, change sense of cached
30217         variable, so that the message makes sense.
30218
30219 2006-03-24  Simon Josefsson  <jas@extundo.com>
30220
30221         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
30222         including some doc fixes.
30223         (base64_encode_alloc): Fix +1 bug on allocation failures.
30224
30225 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30226
30227         * lib/base64.c (base64_encode): Do not read past end of array with
30228         unsanitized input on systems with CHAR_BIT > 8.
30229
30230 2006-03-24  Eric Blake  <ebb9@byu.net>
30231
30232         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
30233
30234 2006-03-22  Karl Berry  <karl@gnu.org>
30235
30236         * config/srclist.txt (*setenv.[ch]): get from coreutils.
30237         * config/srclistvars.sh (COREUTILS): new var.
30238
30239 2006-03-17  Jim Meyering  <jim@meyering.net>
30240
30241         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
30242         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
30243
30244 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
30245
30246         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
30247         no longer needs it.  Instead, check that regoff_t is as least
30248         as wide as ptrdiff_t.
30249
30250         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
30251         so that our regex.h stays compatible with the installed regex.
30252         This is helpful for installers who configure --without-included-regex.
30253         Problem reported by Emanuele Giaquinta.
30254
30255 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
30256
30257         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
30258         Typedef to long int, not to off_, as POSIX will likely change
30259         in that direction.
30260
30261 2006-03-15  Eric Blake  <ebb9@byu.net>
30262
30263         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
30264
30265 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
30266
30267         * lib/argp-help.c (validate_uparams): Fix typo
30268         * lib/argp-parse.c (argp_default_options): Consistently begin help
30269         messages with a lowercase letter.
30270
30271 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
30272
30273         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
30274         overrun buffers and shouldn't be used (much as gets shouldn't be
30275         used).
30276         * lib/time_r.c (asctime_r, ctime_r): Likewise.
30277
30278 2006-03-08  Simon Josefsson  <jas@extundo.com>
30279
30280         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
30281         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30282
30283 2006-03-08  Simon Josefsson  <jas@extundo.com>
30284
30285         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
30286         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30287
30288 2006-03-08  Simon Josefsson  <jas@extundo.com>
30289
30290         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
30291         signal that configure disabled the device.
30292
30293 2006-03-08  Simon Josefsson  <jas@extundo.com>
30294
30295         * build-aux/maint.mk: Fix refresh-po, to handle no translated
30296         languages.
30297
30298 2006-03-07  Simon Josefsson  <jas@extundo.com>
30299
30300         * modules/getopt (Depends-on): Add unistd.
30301
30302         * modules/unistd: New file.
30303
30304 2006-03-07  Simon Josefsson  <jas@extundo.com>
30305
30306         * modules/gc-random: New file.
30307
30308 2006-03-07  Simon Josefsson  <jas@extundo.com>
30309
30310         * m4/unistd_h.m4: New file.
30311
30312 2006-03-07  Simon Josefsson  <jas@extundo.com>
30313
30314         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
30315         test to be side-effect free by storing the result in the cache
30316         variable gl_cv_lib_readline, and moving the assignment of
30317         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
30318         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30319
30320 2006-03-07  Simon Josefsson  <jas@extundo.com>
30321
30322         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
30323         error on missing devices (the functions will return an error).
30324
30325         * m4/gc.m4: Move random stuff to gc-random.m4
30326
30327 2006-03-07  Simon Josefsson  <jas@extundo.com>
30328
30329         * lib/unistd_.h: New file.
30330
30331 2006-03-07  Simon Josefsson  <jas@extundo.com>
30332
30333         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
30334
30335 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
30336
30337         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
30338         Problem reported by Juan Manuel Guerrero.
30339
30340 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
30341
30342         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
30343         the unistd module.
30344         * lib/getlogin_r.c: Likewise.
30345         * lib/getlogin_r.h: Likewise.
30346         * lib/glob.c: Likewise.
30347         * lib/pagealign_alloc.c: Likewise.
30348         * lib/unistd_.h: Remove; no longer needed.
30349
30350 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
30351
30352         * MODULES.html.sh (Support for systems lacking POSIX:2001):
30353         Add unistd.
30354         * modules/c-stack (Depends-on): Add unistd.
30355         * modules/getlogin_r: Likewise.
30356         * modules/glob: Likewise.
30357         * modules/pagealign_alloc: Likewise.
30358         * modules/unistd (Files): Remove lib/unistd_.h.
30359         (EXTRA_DIST): Remove.
30360         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
30361         need unistd_.h.
30362         (MOSTLYCLEANFILES): Remove unistd.h-t.
30363
30364 2006-03-03  Simon Josefsson  <jas@extundo.com>
30365
30366         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
30367
30368 2006-03-03  Simon Josefsson  <jas@extundo.com>
30369
30370         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
30371         libidn and bison.
30372
30373 2006-03-03  Simon Josefsson  <jas@extundo.com>
30374
30375         * build-aux/maint.mk: Add indent target.
30376
30377 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
30378
30379         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
30380         our replacement poll.h in any case, to avoid a differing
30381         declaration from a system header.  Seen on AIX.
30382
30383 2006-03-01  Simon Josefsson  <jas@extundo.com>
30384
30385         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
30386         <kasal@ucw.cz>.
30387
30388 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
30389
30390         * modules/gettime (Depends-on): Add extensions module.
30391         * modules/nanosleep (Depends-on): Likewise.
30392         * modules/settime (Depends-on): Likewise.
30393
30394 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
30395
30396         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
30397         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
30398         pedantically.
30399         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
30400         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
30401
30402         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
30403         not "==".  Reported by Ralf Wildenhues.
30404
30405 2006-03-01  Karl Berry  <karl@gnu.org>
30406
30407         * doc/Copyright/request-*: new files, synced from gnuorg.
30408
30409 2006-03-01  Karl Berry  <karl@gnu.org>
30410
30411         * config/srclist.txt (Copyright/*): new entries.
30412
30413 2006-02-28  Simon Josefsson  <jas@extundo.com>
30414
30415         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
30416
30417 2006-02-27  Simon Josefsson  <jas@extundo.com>
30418
30419         * lib/base64.h: Indent #define's.  From Jim Meyering
30420         <jim@meyering.net>.
30421
30422 2006-02-27  Jim Meyering  <jim@meyering.net>
30423
30424         Revert the change of 2006-02-24, so these files can continue
30425         to be sync'd from gettext.
30426         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
30427         of `config.h'.
30428
30429 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
30430
30431         * modules/intprops: New file.
30432         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
30433         Add intprops.
30434         * modules/getloadavg (Files): Remove lib/intprops.h.
30435         (Depends-on): Add intprops.
30436         * modules/human: Likewise.
30437         * modules/inttostr: Likewise.
30438         * modules/openat: Likewise.
30439         * modules/sig2str: Likewise.
30440         * modules/userspec: Likewise.
30441         * modules/utimecmp: Likewise.
30442         * modules/xnanosleep: Likewise.
30443         * modules/xstrtol: Likewise.
30444
30445 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
30446
30447         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
30448         * modules/lock-tests (TESTS): Use $(EXEEXT).
30449         * modules/tls-tests: Likewise.
30450         * modules/argp-tests: Likewise.
30451         (check_PROGRAMS): New var, replacing...
30452         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
30453
30454 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30455
30456         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
30457         `config.h'.
30458
30459 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
30460
30461         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
30462
30463 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30464
30465         Sync from coreutils.
30466         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
30467         gl_CHDIR_SAFER.
30468
30469 2006-02-22  Jim Meyering  <jim@meyering.net>
30470
30471         Sync from coreutils.
30472         * m4/chdir-safer.m4: New file.
30473
30474 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
30475
30476         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
30477         AT_FDCWD exceeds INT_MAX.
30478         * lib/openat.h (AT_FDCWD): Likewise.
30479
30480 2006-02-17  Eric Blake  <address@hidden>
30481
30482         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
30483
30484 2006-02-16  Simon Josefsson  <jas@extundo.com>
30485
30486         * modules/getaddrinfo (Depends-on): Add sys_socket.
30487
30488 2006-02-15  Simon Josefsson  <jas@extundo.com>
30489
30490         * build-aux/maint.mk: Add dsyntax-check rule.
30491
30492 2006-02-15  Eric Blake  <ebb9@byu.net>
30493
30494         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
30495         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
30496         'present but cannot compile' warnings on cygwin.
30497         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
30498         use ws2tcpip.h if sys/socket.h works.
30499         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
30500         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
30501
30502 2006-02-14  Simon Josefsson  <jas@extundo.com>
30503
30504         * modules/maintainer-makefile (Files): Rename.
30505
30506         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
30507         and (the local) Makefile.cfg to maint-cfg.mk.
30508
30509         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
30510         to the latter.
30511
30512         * modules/maintainer-makefile: New module.
30513
30514         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
30515         severaly stripped to make it possible to build it up from scratch
30516         with reliable tests.
30517
30518         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
30519         fixes to permit overriding the default actions when configure and
30520         makefile are not available.
30521
30522 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
30523
30524         Sync from coreutils.
30525         * modules/lstat (Depends-on): Don't depend on xalloc.
30526         (License): Change from GPL to LGPL, since this is now simply a
30527         replacement for a libc function.
30528
30529 2006-02-14  Jim Meyering  <jim@meyering.net>
30530
30531         Sync from coreutils.
30532
30533         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
30534         failure on deficient systems, and simplify gnulib lgpl dependencies.
30535         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
30536         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
30537
30538         * lib/xalloc-die.c: Remove unused definition of N_.
30539
30540 2006-02-14  Jim Meyering  <jim@meyering.net>
30541
30542         Sync from coreutils.
30543         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
30544         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
30545         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
30546         double-quote uses of that variable, to accommodate the rare case in
30547         which getmntent is available in none of the libraries checked.  This
30548         happens at least on FreeBSD 5.0.
30549
30550 2006-02-13  Simon Josefsson  <jas@extundo.com>
30551
30552         * gnulib-tool (Usage): Fix --import, from
30553         karl@freefriends.org (Karl Berry).
30554
30555 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
30556
30557         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
30558
30559 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
30560
30561         * lib/argp-namefrob.h: Restore changes accidentally lost during the
30562         "autoupdate" on 2005-12-12.
30563
30564 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
30565
30566         * modules/closeout (Depends-on): Remove atexit.
30567
30568 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
30569
30570         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
30571         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
30572
30573 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
30574
30575         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
30576         __EXTENSIONS__ if this causes compilation to fail.  Problem
30577         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
30578         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
30579
30580 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
30581
30582         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
30583         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
30584         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
30585         All uses changed.
30586
30587 2006-01-26  Simon Josefsson  <jas@extundo.com>
30588
30589         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
30590         prototype is visible on mingw32.
30591
30592         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
30593         for mingw32.
30594
30595         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
30596         mingw32).
30597
30598 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
30599
30600         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
30601         attempt to open for write; this always fails, at least on POSIX
30602         hosts.  This reinstates the 2006-01-09 change, which was
30603         inadvertently removed.
30604
30605 2006-01-26  Bruno Haible  <bruno@clisp.org>
30606
30607         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
30608         Reported by Paul Eggert.
30609
30610 2006-01-26  Bruno Haible  <bruno@clisp.org>
30611             Paul Eggert  <eggert@cs.ucla.edu>
30612
30613         * lib/stdbool_.h (_Bool)
30614         [(! (defined __cplusplus || defined __BEOS__)
30615           && !defined __GNUC__
30616           && !(defined __HP_cc || defined __xlc__
30617                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
30618                || defined __sgi))]:
30619         #define to signed char in these cases too; this simplifies
30620         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
30621         etc., separately) and makes it more conservative.
30622
30623 2006-01-25  Simon Josefsson  <jas@extundo.com>
30624
30625         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
30626         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
30627         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
30628
30629 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
30630
30631         * lib/argp-namefrob.h: Bugfix. Remove stray #
30632
30633 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
30634
30635         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
30636         so that we test the test.
30637         Check for yet another HP-UX cc bug involving *bool |= bool.
30638
30639 2006-01-25  Karl Berry  <karl@gnu.org>
30640
30641         * config/srclist.txt (vasnprintf.c): sync lost.
30642
30643 2006-01-25  Jim Meyering  <jim@meyering.net>
30644
30645         Sync from the stable (b5) branch of coreutils:
30646
30647         * lib/fts.c (fts_children): Don't let close() clobber errno from
30648         failed fchdir().
30649
30650         * lib/fts.c (fts_stat): When following a symlink-to-directory,
30651         don't necessarily interpret stat-fails+lstat-succeeds as indicating
30652         a dangling symlink.  That can also happen at least for ELOOP.
30653         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
30654         FYI, this bug predates the inclusion of fts.c in coreutils.
30655
30656         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
30657         in their own block, so pre-c99 compilers don't object.
30658
30659         Avoid the double-free (first in fts_read, second in fts_close) that
30660         would occur when an `active' directory is made inaccessible (e.g.,
30661         via chmod a-x) during a traversal.
30662         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
30663         before returning.  Reproduce this failure by
30664         mkdir -p a/b; cd a; chmod a-x . b
30665         Reported by Stavros Passas.
30666
30667 2006-01-25  Jim Meyering  <jim@meyering.net>
30668
30669         * lib/fileblocks.c: Remove more useless parentheses.
30670         * lib/readutmp.h: Likewise.
30671
30672 2006-01-25  Bruno Haible  <bruno@clisp.org>
30673
30674         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
30675         warnings.
30676         Reported by Paul Eggert.
30677
30678 2006-01-25  Bruno Haible  <bruno@clisp.org>
30679
30680         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
30681         rid of a trap command. For Solaris sh.
30682         Reported by Mark D. Baushke <mdb@gnu.org>.
30683
30684 2006-01-24  Simon Josefsson  <jas@extundo.com>
30685
30686         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
30687         Bruno.
30688
30689 2006-01-24  Karl Berry  <karl@gnu.org>
30690
30691         * config/srclist.txt (argp-namefrob.h): sync lost.
30692
30693 2006-01-24  Jim Meyering  <jim@meyering.net>
30694
30695         * modules/openat (Files): Add lib/intprops.h.
30696         From Mark D. Baushke.
30697
30698 2006-01-24  Jim Meyering  <jim@meyering.net>
30699
30700         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
30701         Reported by Mark D. Baushke.
30702
30703 2006-01-24  Jim Meyering  <jim@meyering.net>
30704
30705         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
30706
30707 2006-01-24  Bruno Haible  <bruno@clisp.org>
30708
30709         * modules/strnlen (Maintainer): Change from glibc to all.
30710
30711 2006-01-24  Bruno Haible  <bruno@clisp.org>
30712
30713         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
30714         Patch by Paul Eggert.
30715
30716 2006-01-24  Bruno Haible  <bruno@clisp.org>
30717
30718         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
30719         already has it.
30720         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
30721         2005-11-26.
30722
30723         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
30724         'signed char' to avoid problems with the built-in _Bool type.
30725         Reported by Paul Eggert on 2005-11-26.
30726
30727 2006-01-24  Bruno Haible  <bruno@clisp.org>
30728
30729         * gnulib-tool (func_import): Avoid constructing complicated sed
30730         expressions inside backquote.
30731         Report and solution by Mark D. Baushke <mdb@gnu.org>.
30732
30733 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
30734
30735         These changes imported from libc.
30736         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
30737         test and two separate function calls.
30738         * lib/strndup.c (__strndup): Add libc_hidden_def.
30739
30740 2006-01-23  Simon Josefsson  <jas@extundo.com>
30741
30742         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
30743         Remove the test_*_SOURCES variable: automake infers it by default.
30744         * modules/tls-tests: Likewise.
30745
30746 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
30747
30748         Work around porting bugs reported by Dieter in
30749         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
30750         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
30751         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
30752         Include "getopt.h" first, to check interface.
30753         (getenv): Declare only if defined HAVE_DECL_GETENV &&
30754         !HAVE_DECL_GETENV.
30755         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
30756         (__strndup): Revert to K&R-style function dfns, the glibc style.
30757         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
30758         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
30759         Include strnlen.h first, to get prototype properly.
30760         (strnlen): Renamed from __strnlen.
30761         Remove weak alias.
30762
30763 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
30764
30765         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
30766
30767 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
30768
30769         * config/srclist.txt: Adjust to reflect glibc reorganization.
30770         This affects only comments.
30771
30772 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
30773
30774          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
30775          Reported by Bruce Korb <bkorb@gnu.org>.
30776
30777 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
30778
30779         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
30780         to pacify gcc -Wswitch-default.
30781
30782 2006-01-22  Bruno Haible  <bruno@clisp.org>
30783
30784         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
30785         temporary buffer for sprintf, take into account the precision also
30786         for 'd', 'i', 'u', 'o', 'x', 'X'.
30787
30788 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
30789
30790         * modules/argp-tests: New module
30791         * tests/test-argp.c: New file
30792         * tests/test-argp-2.sh: New file
30793
30794 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
30795
30796         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
30797         (__argp_base_name): Removed
30798         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
30799         typo.
30800         (__argp_base_name): Provide macro definition or extern declaration
30801         depending on the configuration
30802
30803 2006-01-20  Simon Josefsson  <jas@extundo.com>
30804
30805         * modules/inet_ntop (Depends-on): Depend on sys_socket.
30806
30807 2006-01-20  Simon Josefsson  <jas@extundo.com>
30808
30809         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
30810
30811 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
30812
30813         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
30814         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
30815         Suggested by Bruno Haible.
30816
30817 2006-01-20  Karl Berry  <karl@gnu.org>
30818
30819         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
30820         until changes propagate, I guess.
30821
30822 2006-01-19  Simon Josefsson  <jas@extundo.com>
30823
30824         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
30825
30826 2006-01-19  Simon Josefsson  <jas@extundo.com>
30827
30828         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
30829
30830 2006-01-19  Simon Josefsson  <jas@extundo.com>
30831
30832         * gnulib-tool: Set check_PROGRAMS.
30833
30834         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
30835         modules/des-tests, modules/gc-arcfour-tests,
30836         modules/gc-arctwo-tests, modules/gc-des-tests,
30837         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
30838         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
30839         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
30840         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
30841         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
30842         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
30843         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
30844         test_*_SOURCES.
30845
30846 2006-01-18  Simon Josefsson  <jas@extundo.com>
30847
30848         * modules/socklen (Depends-on): Depend on sys_socket.
30849
30850 2006-01-18  Simon Josefsson  <jas@extundo.com>
30851
30852         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
30853         modules/des-tests, modules/gc-arcfour-tests,
30854         modules/gc-arctwo-tests, modules/gc-des-tests,
30855         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
30856         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
30857         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
30858         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
30859         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
30860         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
30861         $(EXEEXT) to automake TESTS variable, for mingw32.
30862
30863 2006-01-17  Simon Josefsson  <jas@extundo.com>
30864
30865         * modules/socklen (Include): Need sys/socket.h.
30866
30867 2006-01-17  Bruno Haible  <bruno@clisp.org>
30868
30869         * modules/ssize_t (Include): Add <sys/types.h>.
30870
30871 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
30872
30873         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
30874         it's not portable and it doesn't work with cross-compiles.
30875         Problem reported by Bruno Haible.  Fix missing-$ typo in
30876         'test "gl_cv_ignore_unused_libraries" ...' that prevented
30877         -zignore from being used with Sun's C compiler.
30878
30879 2006-01-12  Simon Josefsson  <jas@extundo.com>
30880
30881         * lib/base64.c: Fix warning, reported by Bruno Haible
30882         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
30883
30884 2006-01-12  Bruno Haible  <bruno@clisp.org>
30885
30886         * modules/ldd: New file.
30887         * build-aux/ldd.sh.in: New file.
30888         * MODULES.html.sh (Support for building libraries and executables): Add
30889         ldd.
30890
30891 2006-01-12  Bruno Haible  <bruno@clisp.org>
30892
30893         * m4/ldd.m4: New file.
30894
30895 2006-01-12  Bruno Haible  <bruno@clisp.org>
30896
30897         * gnulib-tool (func_import, func_create_testdir): Don't go into an
30898         endless loop while replacing $auxdir with build-aux.
30899
30900 2006-01-11  Simon Josefsson  <jas@extundo.com>
30901
30902         * lib/stdint_.h (SIZE_MAX): Add missing (.
30903
30904 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
30905
30906         Sync from coreutils.
30907         * lib/md5.c: Fix commentary typos.
30908         (alignof, UNALIGNED_P): No need for a GCC-specific version.
30909         * lib/md5.h (__attribute__): Remove; unused.
30910         * lib/sha1.c: Fix commentary to match md5 better.
30911         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
30912         so that we don't need to worry about alignment.  All uses changed.
30913         This merges the 2005-10-28 md5 change into sha1.
30914
30915 2006-01-11  Jim Meyering  <jim@meyering.net>
30916
30917         Sync from coreutils.
30918         * lib/md5.c (OP): Fix spacing.
30919
30920 2006-01-11  Bruno Haible  <bruno@clisp.org>
30921
30922         Ensure automatic ordering between gl_LOCK and gl_ARGP.
30923         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
30924         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
30925
30926 2006-01-11  Bruno Haible  <bruno@clisp.org>
30927
30928         Ensure automatic ordering between gl_LOCK and gl_ARGP.
30929         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
30930         the "early" section as well.
30931
30932 2006-01-11  Bruno Haible  <bruno@clisp.org>
30933
30934         Avoid "ar: no archive members specified" error on MacOS X.
30935         * gnulib-tool (func_modules_add_dummy): New function.
30936         (func_import, func_create_testdir): Invoke it.
30937
30938 2006-01-11  Bruno Haible  <bruno@clisp.org>
30939
30940         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
30941         with $auxdir in AC_CONFIG_FILES statements.
30942
30943 2006-01-11  Bruno Haible  <bruno@clisp.org>
30944
30945         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
30946         Initialize also noinst_HEADERS to empty.
30947
30948 2006-01-11  Bruno Haible  <bruno@clisp.org>
30949
30950         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
30951         variables.
30952         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
30953         autoreconf.
30954
30955 2006-01-11  Bruno Haible  <bruno@clisp.org>
30956
30957         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
30958         overridable by the user.
30959         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30960
30961 2006-01-10  Simon Josefsson  <jas@extundo.com>
30962
30963         * modules/sys_socket: New file.
30964
30965 2006-01-10  Simon Josefsson  <jas@extundo.com>
30966
30967         * m4/sys_socket_h.m4: New file.
30968
30969 2006-01-10  Simon Josefsson  <jas@extundo.com>
30970
30971         * lib/socket_.h: New file.
30972
30973 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
30974
30975         * modules/readutmp (Maintainer): Add myself.
30976
30977 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
30978
30979         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
30980         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
30981         People who are still concerned with buggy memcmp implementations
30982         can invoke gl_FUNC_MEMCMP themselves.
30983
30984 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
30985
30986         * lib/regex_internal.h (BITSET_WORD_BITS):
30987         Work around a bug in 64-bit PGC (before version 6.1-2), where the
30988         preprocessor mishandles large unsigned values as if they were signed.
30989         Problem reported by Claudio Fontana in
30990         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
30991
30992 2006-01-10  Jim Meyering  <jim@meyering.net>
30993
30994         Avoid the double-free (first in fts_read, second in fts_close) that
30995         would occur when an `active' directory is made inaccessible (e.g.,
30996         via chmod a-x) during a traversal.
30997         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
30998         before returning.  Reproduce this failure by
30999         mkdir -p a/b; cd a; chmod a-x . b
31000         Reported by Stavros Passas.
31001
31002         Sync from coreutils.
31003         * lib/sha1.c: Tweak grammar in a comment.
31004
31005 2006-01-10  Jim Meyering  <jim@meyering.net>
31006
31007         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
31008         Patch by Joerg Sonnenberger.
31009
31010 2006-01-10  Bruno Haible  <bruno@clisp.org>
31011
31012         * modules/readutmp: Depend on module free.
31013         * modules/strtok_r: Depend on module restrict.
31014
31015 2006-01-10  Bruno Haible  <bruno@clisp.org>
31016
31017         * modules/gettext (configure.ac): Add an invocation of
31018         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
31019
31020 2006-01-10  Bruno Haible  <bruno@clisp.org>
31021
31022         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
31023         Reported by Werner Lemberg <wl@gnu.org>.
31024
31025 2006-01-10  Bruno Haible  <bruno@clisp.org>
31026
31027         * lib/localcharset.c: Update from GNU gettext.
31028
31029 2006-01-10  Bruno Haible  <bruno@clisp.org>
31030
31031         * lib/argp.h (__const): Remove macro. Use const instead.
31032         * lib/argp-fmtstream.h (__const): Likewise.
31033         * lib/glob_.h (__const): Remove macro.
31034         * lib/glob-libc.h: Use const instead of __const.
31035
31036 2006-01-10  Bruno Haible  <bruno@clisp.org>
31037
31038         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
31039         variable.
31040         Needed to avoid an automake error regarding the 'gettext' module.
31041
31042 2006-01-09  Simon Josefsson  <jas@extundo.com>
31043
31044         * modules/inet_ntop (Depends-on): Add restrict.
31045
31046 2006-01-09  Simon Josefsson  <jas@extundo.com>
31047
31048         * modules/gc-rijndael-tests (License): Put under LGPL.
31049
31050         * modules/gc-des-tests (License): Likewise.
31051
31052         * modules/gc-arcfour-tests (License): Likewise.
31053
31054         * modules/gc-arctwo-tests (License): Likewise.
31055
31056         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
31057
31058         * modules/gc-hmac-sha1-tests (Files): Likewise.
31059
31060         * modules/gc-hmac-md5-tests (License): Likewise.
31061
31062         * modules/gc-sha1-tests (License): Likewise.
31063
31064         * modules/gc-md5-tests (License): Likewise.
31065
31066         * modules/gc-md4-tests (License): Likewise.
31067
31068         * modules/gc-md2-tests (License): Likewise.
31069
31070         * modules/gc-tests (License): Likewise.
31071
31072         * modules/des-tests (License): Likewise.
31073
31074         * modules/md4-tests (License): Likewise.
31075
31076         * modules/md2-tests (License): Likewise.
31077
31078 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
31079
31080         Sync from coreutils:
31081
31082         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
31083         * modules/lib-ignore: New file.
31084         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
31085         chdir-safer.m4, lchmod.m4.
31086         * modules/openat: Add mkdirat.c, openat-priv.h.
31087
31088 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
31089
31090         Sync from coreutils.
31091         * m4/lib-ignore.m4: New file.
31092         * m4/lchmod.m4: New file.
31093
31094 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
31095
31096         Sync from coreutils.
31097         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
31098         for write access: POSIX says that must fail.
31099         * lib/fts.c (diropen): Likewise.
31100         * lib/save-cwd.c (save_cwd): Likewise.
31101         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
31102         well, for minor improvements on hosts that lack O_DIRECTORY.
31103         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
31104         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
31105         Fall back on chown if open failed with EACCES.
31106
31107         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
31108         Report an error at compile-time if only a 1-second nominal clock
31109         resolution is found.
31110
31111         * lib/lchmod.h: New file.
31112         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
31113         (make_dir_parents): Use lchown rather than chown, and
31114         lchmod rather than chmod.
31115
31116         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
31117         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
31118         "proc" reported by n0dalus.
31119
31120         * lib/mountlist.c: Include <limits.h>.
31121         (dev_from_mount_options)
31122         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
31123         New function.  It no longer assumes "dev=" has the System V meaning
31124         on Linux (since it doesn't).  It also parses "dev=" more carefully.
31125         (read_file_system_list)
31126         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
31127         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
31128         dev= in that case.
31129
31130         * lib/posixtm.h (PDS_PRE_2000): New macro.
31131         * lib/posixtm.c (year): Arg is now syntax_bits rather than
31132         allow_century.  All usages changed.  Reject dates outside the range
31133         1969-1999 if PDS_PRE_2000 is used.
31134
31135 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
31136
31137         Sync from coreutils.
31138         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
31139         (Time of day items): Mention the possibility of leap seconds.
31140         Problem reported by Dr. David Alan Gilbert.
31141
31142 2006-01-09  Jim Meyering  <jim@meyering.net>
31143
31144         Sync from coreutils.
31145
31146         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
31147
31148         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
31149
31150         * lib/modechange.c (mode_compile): Reject an invalid mode string
31151         that starts with an octal digit.  From Andreas Gruenbacher.
31152
31153         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
31154         and dup to open_safer and dup_safer, respectively.
31155         (openat_permissive): Fix typo in comment.
31156
31157         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
31158         "gettext.h"; either no longer needed or are guaranteed by openat.h.
31159         (_): Remove; no longer needed.
31160         (openat): Renamed from rpl_openat; no need for rpl_openat
31161         since openat.h renames openat for us.
31162         Replace most of the body with a call to openat_permissive,
31163         to avoid duplicate code.
31164         Port to (probably hypothetical) environments were mode_t is
31165         wider than int.
31166         (openat_permissive): Require mode arg, so that we can check
31167         types better.  Put it just after flags.  Change cwd failure
31168         indicator from pointer-to-bool to pointer-to-errno-value.
31169         All callers changed.
31170         Invoke openat_save_fail and/or openat_restore_fail if
31171         cwd_errno is null, so that openat can call us.
31172         (openat_permissive, fdopendir, fstatat, unlinkat):
31173         Simplify errno handling to avoid some duplicate code,
31174         as it's OK to set errno on success.
31175         * lib/openat.h: Revamp code so that function macros depend on
31176         __OPENAT_PREFIX only, not also on AT_FDCWD.
31177         (openat_ro): Remove.  Caller changed to use openat_permissive.
31178         (openat_permissive): Now a macro, if not a function.
31179         (openat_restore_fail, openat_save_fail): Now always functions,
31180         since mkdirat needs them even if __OPENAT_PREFIX is defined.
31181
31182         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
31183         and openat.c.
31184         * lib/mkdirat.c: Include openat-priv.h.
31185         Remove definitions of macros defined therein.
31186         * lib/openat.c: Likewise.
31187
31188         * lib/mkdirat.c (mkdirat): New file and function.
31189         * lib/openat.h (mkdirat): Declare.
31190
31191         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
31192
31193         * lib/openat.h (openat_permissive): Declare.
31194         (openat_ro): Define.
31195
31196         * lib/openat.c (EXPECTED_ERRNO): New macro.
31197         (openat_permissive): New function -- used in remove.c rewrite.
31198         (all functions): Set errno just before returning, only if there
31199         was an actual failure.
31200         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
31201
31202         Emulate openat-family functions using Linux's procfs, if possible.
31203         Idea and some code based on Ulrich Drepper's glibc changes.
31204
31205         * lib/openat.c: (BUILD_PROC_NAME): New macro.
31206         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
31207         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
31208         before falling back on save_cwd and restore_cwd.
31209         (fdopendir, fstatat, unlinkat): Likewise.
31210
31211         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
31212         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
31213
31214         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
31215         as second argument to va_arg.  Otherwise, some versions of gcc
31216         warn that `if this code is reached, the program will abort'.
31217
31218 2006-01-09  Jim Meyering  <jim@meyering.net>
31219
31220         Sync from coreutils.
31221         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
31222         Require openat-priv.h.
31223
31224 2006-01-09  Bruno Haible  <bruno@clisp.org>
31225
31226         * modules/strnlen (Include): Use strnlen.h.
31227
31228 2006-01-09  Bruno Haible  <bruno@clisp.org>
31229
31230         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
31231
31232 2006-01-09  Bruno Haible  <bruno@clisp.org>
31233
31234         * lib/sysexit_.h (EX_OK): New macro.
31235         Suggested by Martin Lambers <marlam@marlam.de>.
31236
31237 2006-01-09  Bruno Haible  <bruno@clisp.org>
31238
31239         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
31240         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
31241
31242 2006-01-09  Bruno Haible  <bruno@clisp.org>
31243
31244         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
31245         numbers.
31246
31247 2006-01-09  Bruno Haible  <bruno@clisp.org>
31248
31249         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
31250         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
31251         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
31252         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
31253
31254 2006-01-09  Bruno Haible  <bruno@clisp.org>
31255
31256         * build-aux/javacomp.sh.in: New file, moved from lib/.
31257         * modules/javacomp-script (Files): Update.
31258         (configure.ac): Add AC_CONFIG_FILES invocation.
31259         (EXTRA_DIST): Remove variable.
31260
31261         * build-aux/javaexec.sh.in: New file, moved from lib/.
31262         * modules/javaexec (Files): Update.
31263         (configure.ac): Add AC_CONFIG_FILES invocation.
31264         (EXTRA_DIST): Remove javaexec.sh.in.
31265
31266         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
31267         * modules/csharpcomp-script (Files): Update.
31268         (configure.ac): Add AC_CONFIG_FILES invocation.
31269         (EXTRA_DIST): Remove variable.
31270
31271         * build-aux/csharpexec.sh.in: New file, moved from lib/.
31272         * modules/csharpexec (Files): Update.
31273         (configure.ac): Add AC_CONFIG_FILES invocation.
31274         (EXTRA_DIST): Remove csharpexec.sh.in.
31275
31276 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
31277
31278         Sync from coreutils.
31279
31280         Add POSIX ACL support
31281         * lib/acl.h (copy_acl, set_acl): Add declarations.
31282         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
31283         systems other than Linux.
31284         (chmod_or_fchmod): New function: use fchmod when possible,
31285         and chmod otherwise.
31286         (file_has_acl): Add a POSIX ACL implementation, with a
31287         Linux-specific subcase.
31288         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
31289         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
31290         acls are unsupported.
31291         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
31292         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
31293         are unsupported.
31294
31295 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
31296
31297         Sync from coreutils.
31298         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
31299
31300 2006-01-07  Bruno Haible  <bruno@clisp.org>
31301
31302         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
31303         gl_EARLY.
31304
31305 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
31306
31307         * lib/strftime.c (tzname): Don't declare if it is already #defined.
31308         Problem reported for Mingw by Mark Junker.
31309
31310 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
31311
31312         * README: Gnulib normally doesn't generate a tarball.
31313
31314 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
31315
31316         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
31317         long int, not int, for nanosecond counts, so that people who are
31318         used to POSIX struct timespec won't be surprised.  Reported by Jim
31319         Meyering.
31320
31321 2005-12-28  Bruno Haible  <bruno@clisp.org>
31322
31323         * build-aux/config.rpath: Update from GNU gettext.
31324
31325 2005-12-16  Jim Meyering  <jim@meyering.net>
31326
31327         * modules/fprintftime: New module.
31328         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
31329
31330 2005-12-16  Jim Meyering  <jim@meyering.net>
31331
31332         * m4/fprintftime.m4: New file.
31333
31334 2005-12-16  Jim Meyering  <jim@meyering.net>
31335
31336         * lib/fprintftime.c, lib/fprintftime.h: New files.
31337
31338 2005-12-15  Simon Josefsson  <jas@extundo.com>
31339
31340         * modules/socklen (configure.ac): Fix M4 macro name, to align with
31341         new m4/socklen.m4.
31342
31343 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
31344
31345         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
31346         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
31347
31348 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
31349
31350         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
31351         * lib/argp-help.c (fill_in_uparams): Check if the constructed
31352         struct uparams is valid. Fall back to the default values if it is
31353         not.
31354
31355 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
31356
31357         * modules/argp (Files): Add argp-pin.c
31358         (Depends-on): dirname
31359         (lib_SOURCES): Add argp-pin.c
31360
31361 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
31362
31363         * m4/argp.m4:  Check if program_invocation_name and
31364         program_invocation_short_name are declared and define appropriate
31365         macros if they are not.
31366
31367 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
31368
31369         * lib/argp-help.c (__argp_base_name): New function
31370         (__argp_short_program_name): Rewrite using __argp_base_name
31371         * lib/argp-namefrob.h: Define program_invocation_name and
31372         program_invocation_short_name if requested
31373         (__argp_base_name): Add prototype
31374         * lib/argp-parse.c (argp_def): Use gettext wrappers
31375         (argp_default_parser): Use __argp_base_name
31376         * lib/argp-pin.c: New file. Defines program_invocation_name and
31377         program_invocation_short_name on systems that lack them.
31378
31379 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
31380
31381         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
31382         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
31383         porting problem reported by Georg Schwarz in
31384         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
31385
31386 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
31387
31388         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
31389         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
31390         porting problem reported by Georg Schwarz in
31391         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
31392
31393 2005-12-05  Bruno Haible  <bruno@clisp.org>
31394
31395         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
31396         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
31397         Reported by Mark Junker <mjscod@gmx.de>.
31398
31399 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
31400
31401         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
31402         Use implementation from Albert Chin, with some
31403         comments/corrections by Stepan Kasal and myself.
31404
31405 2005-12-02  Bruno Haible  <bruno@clisp.org>
31406
31407         * gnulib-tool (func_import): Accept GPLed build tool modules when
31408         --lgpl is given.
31409         * modules/csharpcomp-script: New file.
31410         * modules/csharpcomp: Depend on it.
31411         * modules/javacomp-script: New file.
31412         * modules/javacomp: Depend on it.
31413         Suggested by Simon Josefsson.
31414
31415 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
31416
31417         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
31418         statement, to work around an HP-UX 10.20 compiler bug reported by
31419         Peter O'Gorman.
31420
31421 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
31422
31423         * modules/savedir (Depends-on): Add openat.
31424
31425 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
31426
31427         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
31428         (uintmax_t) [defined uintmax_t]: Do not declare.
31429         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
31430         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
31431         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
31432         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
31433         sake of portability to weird hosts that C allows (though we don't
31434         know of any practical examples).
31435
31436         * lib/savedir.h (fdsavedir): New decl.
31437         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
31438         contains most of the former guts of savedir.
31439         (savedir): Use savedirstream.
31440         Include "openat.h".
31441
31442 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
31443
31444         * modules/obstack (Files): Add m4/ulonglong.m4.
31445         Problem reported by Davide Angelocola.
31446
31447 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
31448
31449         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
31450         coreutils no longer futzes with rounding modes.
31451
31452 2005-11-14  Jim Meyering  <jim@meyering.net>
31453
31454         * lib/mkstemp-safer.c: Include <config.h>, required for possible
31455         replacement of mkstemp.
31456
31457 2005-11-10  Simon Josefsson  <jas@extundo.com>
31458
31459         * lib/readline.c: Remove EOL.
31460
31461 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
31462
31463         * modules/gethrxtime (Depends-on): Add gettime.
31464
31465 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
31466
31467         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
31468         or gettimeofday; no longer needed.
31469
31470 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
31471
31472         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
31473         time business.
31474         (gethrxtime) [! (HAVE_NANOUPTIME
31475         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
31476         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
31477         our own approximation.
31478
31479 2005-11-08  Eric Blake  <ebb9@byu.net>
31480
31481         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
31482
31483 2005-11-08  Eric Blake  <ebb9@byu.net>
31484
31485         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
31486
31487 2005-11-04  Bruno Haible  <bruno@clisp.org>
31488
31489         * gnulib-tool: Implement --update mode.
31490
31491 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
31492
31493         Fix porting problem reported by Theodoros V. Kalamatianos.
31494         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
31495         Don't assume that futimes failing means we must fail.
31496
31497 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
31498
31499         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
31500         variables to suggest the intended function of the PATH_MAX check.
31501
31502 2005-10-30  Kean Johnston  <jkj@sco.com>
31503
31504         Trivial changes to support SCO systems.
31505         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
31506         as PATH_MAX.
31507         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
31508         where __ptr is null when no I/O is pending.
31509
31510 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
31511
31512         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
31513         leave errno alone.  Problem reported by Dmitry V. Levin.
31514
31515 2005-10-28  Simon Josefsson  <jas@extundo.com>
31516
31517         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
31518         Test more.
31519
31520         * tests/test-gc-md2.c, tests/test-md2.c: New files.
31521
31522         * modules/md2, modules/md2-tests: New files.
31523
31524 2005-10-28  Simon Josefsson  <jas@extundo.com>
31525
31526         * m4/inet_ntop.m4: More tests.
31527
31528         * m4/gc-md2.m4, md2.m4: New file.
31529
31530 2005-10-28  Simon Josefsson  <jas@extundo.com>
31531
31532         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
31533         "restrict" keywords, as per POSIX.  Protect the function
31534         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
31535         Don't use K&R prototypes.  Check the sprintf return values.
31536         Re-define EAFNOSUPPORT if not present.  Indent.
31537
31538         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
31539         suggested by Bruno Haible <bruno@clisp.org>.
31540
31541         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
31542
31543         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
31544
31545         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
31546         libgcrypt).
31547
31548         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
31549
31550         * lib/md2.h, lib/md2.c: New files.
31551
31552 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
31553
31554         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
31555         errno alone.  Problem reported by Frederic Jolliton.
31556
31557 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
31558
31559         * modules/verify (License): Change from GPL to LGPL.  This is a
31560         tiny module and there are apparently near-equivalents that are
31561         under the BSD license.
31562
31563 2005-10-24  Simon Josefsson  <jas@extundo.com>
31564
31565         * modules/sha1: Relicense to LGPL.
31566
31567 2005-10-24  Simon Josefsson  <jas@extundo.com>
31568
31569         * lib/md4.h: Shrink buffer size, now that we changed the type.
31570
31571 2005-10-23  Simon Josefsson  <jas@extundo.com>
31572
31573         * gnulib-tool (func_import): Fix --tests-base.
31574
31575 2005-10-22  Simon Josefsson  <jas@extundo.com>
31576
31577         * modules/arcfour (Depends-on): Need stdint.
31578
31579 2005-10-22  Simon Josefsson  <jas@extundo.com>
31580
31581         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
31582         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
31583
31584 2005-10-22  Simon Josefsson  <jas@extundo.com>
31585
31586         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
31587         suggested by Bruno Haible <bruno@clisp.org>.
31588
31589 2005-10-22  Simon Josefsson  <jas@extundo.com>
31590
31591         * lib/crc.h: Include stddef.h, for size_t.
31592
31593 2005-10-22  Simon Josefsson  <jas@extundo.com>
31594
31595         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
31596         arcfour_context struct (simplify test vector testing in GNU
31597         Shishi).
31598
31599 2005-10-21  Simon Josefsson  <jas@extundo.com>
31600
31601         * modules/des, modules/des-tests: New files.
31602
31603         * modules/gc-des, modules/gc-des-tests: New files.
31604
31605         * tests/test-des.c, tests/test-gc-des.c: New file.
31606
31607 2005-10-21  Simon Josefsson  <jas@extundo.com>
31608
31609         * modules/arctwo, modules/arctwo-tests: New files.
31610
31611         * tests/test-arctwo.c: New file.
31612
31613         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
31614
31615         * tests/test-gc-arctwo.c: New file.
31616
31617 2005-10-21  Simon Josefsson  <jas@extundo.com>
31618
31619         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
31620         Bruno Haible <bruno@clisp.org>.
31621
31622         * m4/gc-des.m4: New file.
31623
31624 2005-10-21  Simon Josefsson  <jas@extundo.com>
31625
31626         * m4/arctwo.m4: New file.
31627
31628         * m4/gc-arctwo.m4: New file.
31629
31630 2005-10-21  Simon Josefsson  <jas@extundo.com>
31631
31632         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
31633         block.
31634
31635 2005-10-21  Simon Josefsson  <jas@extundo.com>
31636
31637         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
31638         <bruno@clisp.org>.
31639
31640         * lib/hmac-sha1.c (hmac_sha1): Likewise.
31641
31642         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
31643         Bruno Haible <bruno@clisp.org>.
31644
31645         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
31646         <bruno@clisp.org>.
31647
31648 2005-10-21  Simon Josefsson  <jas@extundo.com>
31649
31650         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
31651
31652 2005-10-21  Simon Josefsson  <jas@extundo.com>
31653
31654         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
31655
31656 2005-10-21  Simon Josefsson  <jas@extundo.com>
31657
31658         * lib/des.h, lib/des.c: New files.
31659
31660         * lib/gc-gnulib.c: Support DES.c
31661
31662 2005-10-21  Simon Josefsson  <jas@extundo.com>
31663
31664         * lib/arctwo.h, lib/arctwo.c: New files.
31665
31666         * lib/gc-gnulib.c: Support ARCTWO.
31667
31668 2005-10-21  Simon Josefsson  <jas@extundo.com>
31669
31670         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
31671         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31672
31673 2005-10-21  Simon Josefsson  <jas@extundo.com>
31674
31675         * gnulib-tool (func_import, func_create_testdir): Define automake
31676         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
31677         Makefile.am snippet),
31678         suggested by Bruno Haible <bruno@clisp.org>.
31679
31680         * modules/gc (Makefile.am): Use it.
31681
31682 2005-10-21  Bruno Haible  <bruno@clisp.org>
31683
31684         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
31685         patch.
31686
31687 2005-10-19  Simon Josefsson  <jas@extundo.com>
31688
31689         * tests/test-gc-rijndael.c: New file.
31690
31691         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
31692
31693 2005-10-19  Simon Josefsson  <jas@extundo.com>
31694
31695         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
31696         interface too.
31697
31698 2005-10-19  Simon Josefsson  <jas@extundo.com>
31699
31700         * tests/test-gc-arcfour.c: New file.
31701
31702         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
31703
31704 2005-10-19  Simon Josefsson  <jas@extundo.com>
31705
31706         * modules/gc-md4, modules/gc-md4-tests: New file.
31707
31708         * tests/test-gc-md4.c: New file.
31709
31710 2005-10-19  Simon Josefsson  <jas@extundo.com>
31711
31712         * m4/gc-md4.m4: New file.
31713
31714 2005-10-19  Simon Josefsson  <jas@extundo.com>
31715
31716         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
31717         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
31718         <kasal@ucw.cz>.
31719
31720 2005-10-19  Simon Josefsson  <jas@extundo.com>
31721
31722         * m4/gc-arcfour.m4: New file.
31723
31724         * m4/gc-rijndael.m4: New file.
31725
31726 2005-10-19  Simon Josefsson  <jas@extundo.com>
31727
31728         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
31729
31730 2005-10-19  Simon Josefsson  <jas@extundo.com>
31731
31732         * lib/gc-gnulib.c: Support ARCFOUR.
31733
31734 2005-10-19  Simon Josefsson  <jas@extundo.com>
31735
31736         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
31737         support.
31738
31739         * lib/gc.h: Add ECB enum type.
31740
31741         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
31742
31743 2005-10-18  Simon Josefsson  <jas@extundo.com>
31744
31745         * tests/test-md5.c: New file.
31746
31747         * modules/md5-tests: New file.
31748
31749 2005-10-18  Simon Josefsson  <jas@extundo.com>
31750
31751         * tests/test-md4.c: New file.
31752
31753         * modules/md4, modules/md4-tests: New files.
31754
31755 2005-10-18  Simon Josefsson  <jas@extundo.com>
31756
31757         * m4/md4.m4: New file.
31758
31759 2005-10-18  Simon Josefsson  <jas@extundo.com>
31760
31761         * lib/md4.h, lib/md4.c: New files, based on md5.?.
31762
31763 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
31764
31765         * gnulib-tool (func_create_testdir): Omit the second check whether
31766         BUILT_SOURCES in nonempty.
31767
31768 2005-10-17  Simon Josefsson  <jas@extundo.com>
31769
31770         * tests/test-rijndael.c: New file.
31771
31772 2005-10-17  Simon Josefsson  <jas@extundo.com>
31773
31774         * modules/sha1: Depend on stdint instead of md5.
31775
31776         * modules/md5: Depend on stdint, remove uint32_t.
31777
31778 2005-10-17  Simon Josefsson  <jas@extundo.com>
31779
31780         * modules/gc-sha1-tests: New file.
31781
31782         * tests/test-gc-sha1.c: New file.
31783
31784 2005-10-17  Simon Josefsson  <jas@extundo.com>
31785
31786         * m4/md5.m4: Remove call to uint32_t.m4.
31787
31788 2005-10-17  Simon Josefsson  <jas@extundo.com>
31789
31790         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
31791
31792         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
31793         md5.h.
31794
31795         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
31796
31797         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
31798
31799 2005-10-17  Simon Josefsson  <jas@extundo.com>
31800
31801         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
31802
31803 2005-10-17  Simon Josefsson  <jas@extundo.com>
31804
31805         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
31806
31807 2005-10-17  Simon Josefsson  <jas@extundo.com>
31808
31809         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
31810
31811         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
31812
31813 2005-10-17  Bruno Haible  <bruno@clisp.org>
31814
31815         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
31816         that it can also be used in a test.
31817
31818 2005-10-16  Bruno Haible  <bruno@clisp.org>
31819
31820         * gnulib-tool (func_emit_tests_Makefile_am): Also define
31821         TESTS_ENVIRONMENT, so that individual tests can augment it.
31822
31823         * gnulib-tool (func_create_testdir): Use an intermediate target for
31824         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
31825         macros, like $(ALLOCA_H), which cannot be passed through the command
31826         line.
31827
31828 2005-10-15  Simon Josefsson  <jas@extundo.com>
31829
31830         * modules/rijndael-tests: New file.
31831
31832         * modules/rijndael: New file.
31833
31834 2005-10-15  Simon Josefsson  <jas@extundo.com>
31835
31836         * m4/rijndael.m4: New file.
31837
31838 2005-10-15  Simon Josefsson  <jas@extundo.com>
31839
31840         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
31841
31842         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
31843
31844 2005-10-14  Simon Josefsson  <jas@extundo.com>
31845
31846         * tests/test-arcfour.c: New file.
31847
31848         * modules/arcfour, modules/arcfour-tests: New files.
31849
31850 2005-10-14  Simon Josefsson  <jas@extundo.com>
31851
31852         * m4/arcfour.m4: New file.
31853
31854 2005-10-14  Simon Josefsson  <jas@extundo.com>
31855
31856         * lib/arcfour.h, lib/arcfour.c: New files.
31857
31858 2005-10-14  Roland McGrath  <roland@redhat.com>
31859
31860         Import from libc.  [BZ #1331]
31861         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
31862         macro argument.
31863         Reported by Matej Vela <vela@debian.org>.
31864
31865 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
31866
31867         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
31868         include <wchar.h>; no longer needed.
31869
31870 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
31871
31872         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
31873
31874 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
31875         and  Ulrich Drepper  <drepper@redhat.com>
31876
31877         Import from libc.
31878         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
31879         instead of inline stream orientation test and two separate
31880         function calls.  Pay no attention to USE_IN_LIBIO.
31881
31882 2005-10-13  Simon Josefsson  <jas@extundo.com>
31883
31884         * modules/gc-hmac-md5-tests: New file.
31885
31886         * tests/test-gc-hmac-sha1.c: New file.
31887
31888         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
31889
31890         * modules/gc-hmac-md5-tests: New file.
31891
31892         * tests/test-gc-md5.c: New file.
31893
31894         * modules/gc-md5-tests: New file.
31895
31896 2005-10-13  Simon Josefsson  <jas@extundo.com>
31897
31898         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
31899         Move memory allocation outside of loop.
31900
31901 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
31902
31903         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
31904         intermediate directory is in a read-only file system.  Problem
31905         reported by Eric Blake.
31906
31907 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
31908
31909         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
31910
31911 2005-10-12  Simon Josefsson  <jas@extundo.com>
31912
31913         * tests/test-hmac-sha1.c: New file.
31914
31915         * modules/hmac-sha1-tests: New file.
31916
31917         * modules/hmac-sha1: New file.
31918
31919 2005-10-12  Simon Josefsson  <jas@extundo.com>
31920
31921         * modules/gc-sha1: New file.
31922
31923 2005-10-12  Simon Josefsson  <jas@extundo.com>
31924
31925         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
31926
31927         * tests/test-gc-pbkdf2-sha1.c: New file.
31928
31929 2005-10-12  Simon Josefsson  <jas@extundo.com>
31930
31931         * modules/gc-md5, modules/gc-hmac-md5: New files.
31932
31933         * modules/gc (Files): Remove md5, memxor and hmac files.
31934
31935 2005-10-12  Simon Josefsson  <jas@extundo.com>
31936
31937         * m4/gc-pbkdf2-sha1.m4: New file.
31938
31939         * m4/gc-hmac-sha1.m4: New file.
31940
31941         * m4/gc-sha1: New file.
31942
31943         * m4/hmac-sha1.m4: New file.
31944
31945 2005-10-12  Simon Josefsson  <jas@extundo.com>
31946
31947         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
31948
31949         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
31950
31951 2005-10-12  Simon Josefsson  <jas@extundo.com>
31952
31953         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
31954         suggested by Bruno Haible <bruno@clisp.org>.
31955
31956 2005-10-12  Simon Josefsson  <jas@extundo.com>
31957
31958         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
31959
31960 2005-10-12  Simon Josefsson  <jas@extundo.com>
31961
31962         * lib/gc-pbkdf2-sha1.c: New file.
31963
31964         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
31965
31966 2005-10-12  Simon Josefsson  <jas@extundo.com>
31967
31968         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
31969
31970         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
31971
31972 2005-10-12  Simon Josefsson  <jas@extundo.com>
31973
31974         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
31975         GC_USE_HMAC_MD5, respectively.
31976
31977         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
31978         (gc_md5): Fix typo.
31979
31980         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
31981
31982         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
31983
31984         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
31985
31986 2005-10-12  Bruno Haible  <bruno@clisp.org>
31987
31988         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
31989         Reported by Stepan Kasal <kasal@ucw.cz>.
31990
31991 2005-10-11  Simon Josefsson  <jas@extundo.com>
31992
31993         * tests/test-crc.c: New file.
31994
31995         * modules/crc, modules/crc-tests: New files.
31996
31997 2005-10-11  Simon Josefsson  <jas@extundo.com>
31998
31999         * m4/crc.m4: New file.
32000
32001 2005-10-11  Simon Josefsson  <jas@extundo.com>
32002
32003         * lib/gc.h: Add gc_hash and gc_hash_buffer.
32004
32005         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
32006
32007         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
32008
32009 2005-10-11  Simon Josefsson  <jas@extundo.com>
32010
32011         * lib/crc.h, lib/crc.c: New files.
32012
32013         * lib/gc.h (gc_hash_buffer): Add doc.
32014
32015 2005-10-11  Bruno Haible  <bruno@clisp.org>
32016
32017         * modules/c-strcasestr: New file.
32018         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
32019
32020 2005-10-11  Bruno Haible  <bruno@clisp.org>
32021
32022         * modules/c-strcase: New file.
32023         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
32024
32025 2005-10-11  Bruno Haible  <bruno@clisp.org>
32026
32027         * lib/strcasecmp.c: Include limits.h.
32028         (strcasecmp): Avoid integer overflow on exotic platforms.
32029         * lib/strncasecmp.c: Include limits.h.
32030         (strncasecmp): Avoid integer overflow on exotic platforms.
32031         Reported by Paul Eggert.
32032
32033 2005-10-11  Bruno Haible  <bruno@clisp.org>
32034
32035         * lib/c-strcasestr.h: New file, from GNU gettext.
32036         * lib/c-strcasestr.c: New file, from GNU gettext.
32037
32038 2005-10-11  Bruno Haible  <bruno@clisp.org>
32039
32040         * lib/c-strcase.h: New file, from GNU gettext.
32041         * lib/c-strcasecmp.c: New file, from GNU gettext.
32042         * lib/c-strncasecmp.c: New file, from GNU gettext.
32043
32044 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
32045
32046         * modules/mempcpy (License): GPL -> LGPL.
32047         * modules/strchrnul (License): Likewise.
32048         * modules/sysexits (License): Likewise.
32049
32050 2005-10-08  Simon Josefsson  <jas@extundo.com>
32051
32052         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
32053
32054 2005-10-07  Simon Josefsson  <jas@extundo.com>
32055
32056         * m4/memxor.m4: Remove gl_C_RESTRICT call.
32057
32058 2005-10-06  Simon Josefsson  <jas@extundo.com>
32059
32060         * tests/test-hmac-md5.c: New file.
32061
32062         * modules/hmac-md5-tests: New file.
32063
32064         * modules/hmac-md5: New file.
32065
32066 2005-10-06  Simon Josefsson  <jas@extundo.com>
32067
32068         * m4/hmac-md5.m4: New file.
32069
32070         * m4/memxor.m4: Require gl_C_RESTRICT.
32071
32072 2005-10-06  Simon Josefsson  <jas@extundo.com>
32073
32074         * lib/memxor.c (memxor): Avoid casts and warnings.
32075
32076 2005-10-06  Simon Josefsson  <jas@extundo.com>
32077
32078         * lib/hmac-md5.c: New file.
32079
32080         * lib/hmac.h: New file.
32081
32082 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
32083
32084         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
32085         promotes to int, not unsigned int, to catch the AIX 5.3
32086         compiler bug.
32087
32088 2005-10-05  Simon Josefsson  <jas@extundo.com>
32089
32090         * modules/memxor: New file.
32091
32092         * modules/iconv (Files): Move config.rpath to havelib, it is used
32093         there.
32094
32095         * modules/havelib (Files): Add config.rpath.
32096
32097 2005-10-05  Simon Josefsson  <jas@extundo.com>
32098
32099         * m4/memxor.m4: New file.
32100
32101 2005-10-05  Simon Josefsson  <jas@extundo.com>
32102
32103         * lib/memxor.c (memxor): Fix compiler error.
32104
32105         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
32106         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
32107
32108         * lib/memxor.h, lib/memxor.c: New files.
32109
32110         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
32111         we assume all systems have it, suggested by Jim Meyering
32112         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
32113         any systems lack sys/socket.h; mingw32 is known to lack it, but we
32114         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
32115         same reasons.
32116
32117 2005-10-05  Simon Josefsson  <jas@extundo.com>
32118
32119         * config/srclist.txt: Add glibc bug 1423 for md5.h.
32120
32121 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
32122
32123         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
32124         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
32125         needed, since the source code now assumes these .h files.
32126
32127 2005-10-05  Derek Price  <derek@ximbiot.com>
32128
32129         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
32130
32131 2005-10-05  Bruno Haible  <bruno@clisp.org>
32132
32133         * modules/stdint (License): Change to LGPL.
32134
32135 2005-10-04  Simon Josefsson  <jas@extundo.com>
32136
32137         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
32138         D. Baushke" <mdb@gnu.org>.
32139
32140 2005-10-04  Bruno Haible  <bruno@clisp.org>
32141
32142         * lib/verify.h (verify_true): Provide alternative definition for C++.
32143
32144 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
32145
32146         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
32147         (SSIZE_MAX): New macro, if not already defined.
32148         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
32149         than 2 GiB.
32150
32151 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
32152
32153         Sync from coreutils.
32154         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
32155         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
32156         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
32157         ULLONG_MAX doesn't work with 2.7.2.1.
32158
32159 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
32160
32161         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
32162         From Ben Pfaff.
32163
32164         * modules/exclude (Depends-on): Depend on verify.
32165         * modules/strtoimax (Depends-on): Likewise.
32166         * modules/utimecmp (Depends-on): Likewise.
32167
32168 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
32169
32170         * lib/exclude.c: Include verify.h.
32171         (verify): Remove.  All callers changed to use verify.h's version.
32172         * lib/strtoimax.c: Likewise.
32173         * lib/utimecmp.c: Likewis.e
32174
32175         Sync from coreutils.
32176         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
32177         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
32178         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
32179         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
32180         bother returning ENOSYS if settimeofday or stime fails; just let
32181         them return whatever errno they want to return.
32182         * lib/utimens.c: Include unistd.h, for dup2.
32183         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
32184         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
32185
32186 2005-10-02  Jim Meyering  <jim@meyering.net>
32187
32188         Sync from coreutils.
32189         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
32190         from glibc-2.2.5 that fails for read-only files.
32191
32192 2005-10-02  Jim Meyering  <jim@meyering.net>
32193
32194         Sync from coreutils.
32195         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
32196         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
32197         `#if HAVE_CONFIG_H'.
32198         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
32199         Remove AT_FDCWD test.
32200         Do not consume the fd unless successful.
32201         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
32202         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
32203         block, so that we don't even try to compile it if settimeofday is
32204         available.  This works around a compilation failure on OSF1 V5.1,
32205         due to stime requiring a `long int*' while tv_sec is `int'.
32206
32207 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
32208
32209         Sync from coreutils.
32210         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
32211         against `yes', rather than just testing for nonempty.
32212
32213 2005-10-01  Simon Josefsson  <jas@extundo.com>
32214
32215         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
32216         and Darwin.
32217
32218         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
32219         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
32220         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
32221         freeaddrinfo and gai_strerror are declared by the POSIX headers.
32222         Check if struct addrinfo is declared.
32223
32224 2005-10-01  Simon Josefsson  <jas@extundo.com>
32225
32226         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
32227         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
32228         AI_* and EAI_* definitions.  Protect function declarations.
32229
32230 2005-10-01  Jim Meyering  <jim@meyering.net>
32231
32232         Sync from coreutils.
32233
32234         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
32235         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
32236         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
32237         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
32238         in the inet and nsl libraries.  Required on Solaris 5.7.
32239
32240 2005-10-01  Jim Meyering  <jim@meyering.net>
32241
32242         Sync from coreutils.
32243         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
32244         in the inet and nsl libraries.  Required on Solaris 5.7.
32245
32246 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
32247
32248         * lib/getdelim.c (getdelim): Remove unused variables.
32249
32250 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
32251
32252         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
32253         so that the code works even with ancient cpp.  Portability problem
32254         with GCC 2.7.2.1 reported by Thomas M.Ott.
32255
32256 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
32257
32258         * modules/regex (Depends-on): Add strcase.
32259
32260         * modules/gethostname (Licence): Change from GPL to LGPL, since
32261         gethostname.c is a trivial implementation of a standard library
32262         function.
32263         * modules/poll (License): Change from GPL to LGPL, since it's
32264         derived from LGPL code.
32265
32266 2005-09-27  Jim Meyering  <jim@meyering.net>
32267
32268         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
32269         HAVE_CONFIG_H.
32270
32271         * lib/intprops.h (signed_type_or_expr__): Define.
32272         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
32273         for unsigned types.
32274
32275 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
32276
32277         * lib/verify.h (verify_expr): Remove, replacing with:
32278         (verify_true): New macro that returns true instead of void.
32279         (verify_type__): Remove.
32280         (verify): Use verify_true rather than verify_type__.
32281
32282 2005-09-26  Bruno Haible  <bruno@clisp.org>
32283
32284         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
32285         is necessary.
32286         (lib_SOURCES): Remove mbchar.c.
32287         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
32288         (Files): Add m4/mbrtowc.m4.
32289         * modules/mbiter: Likewise.
32290         * modules/mbuiter: Likewise.
32291
32292 2005-09-26  Bruno Haible  <bruno@clisp.org>
32293
32294         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
32295         compile mbchar.c if they are not both present.
32296         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
32297         * m4/mbiter.m4 (gl_MBITER): Likewise.
32298         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
32299         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
32300         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
32301
32302 2005-09-25  Jim Meyering  <jim@meyering.net>
32303
32304         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
32305         also uses socklen_t.
32306
32307 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
32308
32309         * lib/utimens.c (ENOSYS): Define if not already defined.
32310         (futimens): Support having a null PATH if the file descriptor
32311         is nonnegative.
32312
32313         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
32314         Remove.
32315         (__attribute): Define to empty unless GCC 3.1 or later.
32316         This works around a core dump on OpenBSD 3.4, which has GCC
32317         2.95.3, which dumps core when given __attribute__(()).  It also
32318         simplifies other tests, since we really don't want to bother with
32319         worrying about which ancient version of GCC supported what.
32320         Original problem reported by Yoann Vandoorselaere, with part of
32321         the fix suggested by Derek Price.
32322
32323 2005-09-24  Jim Meyering  <jim@meyering.net>
32324
32325         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
32326         so we can once again use a positive bitfield width of 1 -- now we
32327         don't have to explain why we were using a bitfield width of 2.
32328
32329 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
32330
32331         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
32332         and similarly for the other external symbols.  Problem reported
32333         by James Gallager.
32334
32335         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
32336         bug reported by Jim Meyering.
32337
32338         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
32339         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
32340         not needed, since socklen is a prerequisite module.
32341
32342 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
32343
32344         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
32345         Problem reported by Eric Blake.
32346         (getaddrinfo): Initialize se so that it's not garbage.
32347         Redo internal storage allocation so that it doesn't make unportable
32348         assumptions about alignment.
32349         Fix a memory leak.
32350
32351         * lib/utimens.c (futimens): Use futimesat if available.
32352         Prefer it to futimes since it doesn't have the futimes bug.
32353
32354         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
32355         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
32356         Instead, declare a function that returns a pointer to an array,
32357         and use verify_type__ to declare the size of the array.
32358         Problem and germ of a solution reported by Bruno Haible.
32359         (verify_type__): Use 2, not 1, for bitfield size, to avoid
32360         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
32361
32362 2005-09-23  Jim Meyering  <jim@meyering.net>
32363
32364         Sync from coreutils.
32365         Correct build failure (socklen_t not defined) on at least
32366         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
32367         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
32368
32369 2005-09-23  Jim Meyering  <jim@meyering.net>
32370
32371         * modules/getaddrinfo (Depends-on): Add socklen.
32372
32373 2005-09-23  Bruno Haible  <bruno@clisp.org>
32374
32375         * tests/test-verify.c: New file.
32376
32377 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
32378
32379         Sync from coreutils.
32380
32381         * modules/argmatch (Depends-on): Add verify.
32382         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
32383         unistd-safer.
32384         * modules/save-cwd (Depends-on): Likewise.
32385
32386         * modules/openat (Files): Add lib/openat-die.c.
32387         (Depends-on): Remove error, exitfail.
32388         Add dirname.
32389
32390         * modules/verify: New file.
32391         * MODULES.html.sh (Diagnostics <assert.h>): New section,
32392         with "verify" module.
32393
32394 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
32395
32396         Sync from coreutils.
32397
32398         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
32399         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
32400         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
32401         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
32402         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
32403         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
32404         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
32405         Don't bother checking for string.h, stdlib.h, unistd.h.
32406         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
32407         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
32408         module's job.
32409         * m4/jm-macros.m4 (gl_MACROS): Likewise.
32410         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
32411
32412         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
32413         (gl_GETDATE): Use it.
32414
32415         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
32416
32417 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
32418
32419         Sync from coreutils.
32420
32421         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
32422         stat-time.h.
32423         * lib/argmatch.h: Include verify.h
32424         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
32425         (ARGMATCH_ASSERT): Remove; unused.
32426         * lib/canonicalize.c: Assume STDC_HEADERS.
32427         * lib/exclude.c: Include "strcase.h".
32428         * lib/regex_internal.h [!defined _LIBC]: Likewise.
32429         * lib/getusershell.c: Include stdio--.h rather than stdio.h
32430         and stdio-safer.h.
32431         (getusershell): Call fopen, not fopen_safer.
32432         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
32433         Do not include unistd-safer.h.
32434         (save_cwd): Don't call fd_safer; no longer needed
32435         now that we include fcntl--.h.
32436
32437         * lib/getdate.y (relative_time): New type.
32438         (RELATIVE_TIME_0): New constant.
32439         (parser_control): Use relative_time instead of doing it ourselves.
32440         (%union): Add new relative_time rel member.
32441         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
32442         Now typeless.
32443         (relunit, relunit_snumber): Now of type rel.
32444         (zone, rel, relunit, get_date): Adjust to above changes.
32445
32446         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
32447         Do not include unistd-safer.h.
32448         (getloadavg): Don't call fd_safer; no longer needed
32449         now that we include fcntl--.h.
32450
32451         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
32452         (make_dir_parents): Treat ENOSYS like EEXIST.
32453
32454         Improve quality of diagnostics on restore_cwd failure.
32455         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
32456         (make_dir_parents): Last arg is now int * (for errno), not bool *.
32457         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
32458         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
32459         each time through the loop.  Do not diagnose restore_cwd failure;
32460         that is the caller's job (and perhaps the caller does not care).
32461
32462         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
32463         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
32464         If the file already exists but is not a directory, don't bother
32465         to try to make its parents.
32466         Close potential file descriptor leak if we can't chdir("/") (!).
32467         Don't always return true if chdir($PWD) fails; return true only
32468         if the requested action was done successfully (except for the
32469         chdir($PWD)).
32470         Don't log final directory unless we actually made it.
32471         Refactor to avoid duplicate code to fix up permissions.
32472         Don't attempt to fix up parent permissions if chdir($PWD) fails.
32473
32474         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
32475         to make it a bit faster and (I hope) clearer.
32476         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
32477         Fix bug in formats like %2N.
32478
32479         * lib/verify.h: New file.
32480
32481 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
32482
32483         Sync from coreutils.
32484         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
32485
32486 2005-09-22  Jim Meyering  <jim@meyering.net>
32487
32488         Sync from coreutils.
32489
32490         * m4/lstat.m4 (gl_FUNC_LSTAT):
32491         Use AC_LIBSOURCES to require lstat.c and lstat.h.
32492         Remove obsolete comment.
32493         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
32494         * m4/xstrtod.m4: Likewise.
32495
32496         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
32497
32498 2005-09-22  Jim Meyering  <jim@meyering.net>
32499
32500         Sync from coreutils.
32501
32502         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
32503
32504         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
32505         the .tm_year member, since otherwise gcc-4.0 would now warn about
32506         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
32507
32508         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
32509         order to avoid an unsuppressible warning from gcc on 64-bit systems.
32510
32511         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
32512         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
32513         when run in a time zone for which daylight savings time is in effect
32514         for the starting date.
32515
32516         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
32517         stop us from restricting permissions of just-created absolute-named
32518         directories.
32519         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
32520         to restore initial working directory.
32521         * lib/mkdir-p.c (make_dir_parents): New parameter:
32522         different_working_dir, to tell caller if/when we change the working
32523         directory and are unable to return to the initial one.
32524         * lib/mkdir-p.h (make_dir_parents): Update prototype.
32525         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
32526         `return false'.  This fixes a bug introduced on 2004-07-30.
32527
32528         * lib/openat.c (fdopendir): Be sure to close the supplied
32529         file descriptor before returning.  This makes our replacement
32530         implementation a little closer to Solaris's, where fdopendir
32531         ties the file descriptor to the returned DIR* pointer.
32532         * lib/openat.c (unlinkat): New function.
32533         * lib/openat.h (unlinkat): Add prototype.
32534         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
32535         (openat_restore_fail): Rename from openat_restore_die.
32536         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
32537
32538         Provide an alternative to exiting immediately upon save_cwd or
32539         restore_cwd failure.  Now, an application can arrange e.g.,
32540         to perform a longjump in that case.
32541         * lib/openat.c: Include dirname.h.
32542         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
32543         (rpl_openat, fdopendir, fstatat): Call openat_save_die
32544         and openat_restore_die rather than calling error directly.
32545         Don't include "error.h" or "exitfail.h"; they're no longer needed.
32546
32547         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
32548         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
32549         define.
32550
32551         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
32552         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
32553                             int utc, int nanoseconds);
32554         Background:
32555         date should not have to allocate a megabyte of virtual memory to
32556         handle a format argument like +%1048575T.  When implemented with
32557         strftime, it must allocate such a buffer, use strftime to fill it
32558         in, print it, then free it.
32559         With fprintftime, it simply prints everything and exits.
32560         With no need for memory allocation, that's one fewer way to fail.
32561         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
32562         optional field width, not before, so we accept %9:z, not %:9z.
32563         (my_strftime): Be sure to use L_('x') for literals.
32564
32565         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
32566         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
32567         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
32568         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
32569         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
32570         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
32571         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
32572         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
32573         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
32574         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
32575         * lib/xgethostname.c, lib/xreadlink.c:
32576         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
32577
32578         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
32579         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
32580         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
32581         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
32582         and don't include <sys/file.h>).
32583
32584 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
32585
32586         Sync from coreutils.
32587
32588         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
32589         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
32590         [!LDAV_DONE]: Avoid unused variable warning.
32591
32592 2005-09-21  Bruno Haible  <bruno@clisp.org>
32593
32594         * lib/unicodeio.h (unicode_to_mb): New declaration.
32595
32596 2005-09-20  Derek Price  <derek@ximbiot.com>
32597
32598         * lib/getaddrinfo.c: Don't include <netdb.h> included from
32599         getaddrinfo.h.
32600
32601 2005-09-20  Bruno Haible  <bruno@clisp.org>
32602
32603         * gnulib-tool: Remove trailing slashes from the values specified for
32604         --source-base, --m4-base, --tests-base, --aux-dir.
32605         Suggested by Simon Josefsson <jas@extundo.com>.
32606
32607 2005-09-20  Bruno Haible  <bruno@clisp.org>
32608
32609         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
32610         func_modules_to_filelist, func_import, func_create_testdir): Make all
32611         sorting results locale-independent, so that gnulib-cache.m4 doesn't
32612         change when gnulib-tool is invoked in a different locale.
32613
32614 2005-09-19  Simon Josefsson  <jas@extundo.com>
32615
32616         * m4/socklen.m4: Fix typo.
32617
32618 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32619
32620         Use a consistent style for including <config.h>.
32621         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
32622         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
32623         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
32624         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
32625         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
32626         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
32627         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
32628         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
32629         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
32630         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
32631         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
32632         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
32633         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
32634         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
32635         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
32636         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
32637         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
32638         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
32639         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
32640         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
32641         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
32642         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
32643         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
32644         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
32645         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
32646         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
32647         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
32648         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
32649         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
32650         lib/xstrtoumax.c, lib/yesno.c:
32651         Standardize inclusion of config.h.
32652         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
32653         lib/inttostr.h:  Removed inclusion of config.h from header files.
32654         * lib/inttostr.c:  Adjusted in-tree users.
32655         * lib/timespec.h: Remove superfluous warning to include config.h.
32656         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
32657         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
32658         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
32659         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
32660         config.h with HAVE_CONFIG_H.
32661
32662 2005-09-19  Jim Meyering  <jim@meyering.net>
32663
32664         * modules/pathmax (License): Change to LGPL.
32665
32666 2005-09-19  Derek Price  <derek@ximbiot.com>
32667
32668         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
32669
32670 2005-09-19  Bruno Haible  <bruno@clisp.org>
32671
32672         * gnulib-tool (import): Provide default for --tests-base.
32673
32674 2005-09-19  Bruno Haible  <bruno@clisp.org>
32675
32676         * doc/quote.texi: New file, extracted from gnulib.texi.
32677         * doc/ctime.texi: New file, extracted from gnulib.texi.
32678         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
32679         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
32680         * doc/gnulib.texi: Include them.
32681
32682 2005-09-18  Bruno Haible  <bruno@clisp.org>
32683
32684         Portability fix.
32685         * gnulib-tool (func_readlink): New function.
32686         (func_ln_if_changed): Use it.
32687
32688 2005-09-18  Bruno Haible  <bruno@clisp.org>
32689
32690         * gnulib-tool: Support --with-tests also with --import.
32691         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
32692         (func_import): Use variables $testsbase and $inctests. Emit a
32693         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
32694         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
32695         SUBDIRS += $testsdir.
32696         (func_create_testdir): Update.
32697
32698 2005-09-18  Bruno Haible  <bruno@clisp.org>
32699
32700         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
32701         instead of $dry_run.
32702         (func_cp_if_changed, func_mv_if_changed): Remove functions.
32703         (func_ln_if_changed): Don't handle dry-run here.
32704         (func_import): In dry-run mode, detect more precisely which actions
32705         would be performed, and don't use "...ing" verbs.
32706
32707 2005-09-18  Bruno Haible  <bruno@clisp.org>
32708
32709         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
32710         (func_import): Use join on two temporary files instead of three nested
32711         loops, in order to determine which files are new or old.
32712
32713 2005-09-18  Bruno Haible  <bruno@clisp.org>
32714
32715         * gnulib-tool (func_import): Comment out code that spits out the
32716         new files with --dry-run.
32717
32718 2005-09-18  Bruno Haible  <bruno@clisp.org>
32719
32720         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
32721
32722 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
32723
32724         * lib/stat-time.h: New file.
32725         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
32726         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
32727         in a different way.
32728         (timespec_cmp): New function.
32729         * lib/utimecmp.c: Include stat-time.h.
32730         (SYSCALL_RESOLUTION): Depend on whether various struct stat
32731         members exist, not on the obsolescent ST_MTIM_NSEC.
32732         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
32733
32734 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
32735
32736         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
32737
32738 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
32739
32740         * MODULES.html.sh (File system functions): Add stat-time.
32741         * modules/stat-time: New file.
32742         * modules/timespec (Files): Remove m4/st_mtim.m4; this
32743         is now done in a different way, by the stat-time module.
32744         * modules/utimecmp (Depends-on): Add stat-time.
32745
32746 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
32747
32748         * m4/st_mtim.m4: Remove.  Superseded by...
32749         * m4/stat-time.m4: New file.
32750         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
32751         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
32752
32753 2005-09-15  Derek Price  <derek@ximbiot.com>
32754
32755         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
32756
32757 2005-09-15  Derek Price  <derek@ximbiot.com>
32758
32759         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
32760         * lib/regex_internal.c: Ditto, using this...
32761         (__GNUC_PREREQ): ...new macro.
32762         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
32763         using...
32764         (__GNUC_PREREQ): ...this new macro.
32765
32766         * lib/strstr.h: Include string.h. Define strstr as a macro here.
32767
32768 2005-09-15  Derek Price  <derek@ximbiot.com>
32769             Paul Eggert  <eggert@cs.ucla.edu>
32770
32771         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
32772         changes, consolidating in...
32773         * lib/regex_internal.h: ...this file.
32774
32775 2005-09-13  Jim Meyering  <jim@meyering.net>
32776
32777         * lib/canon-host.c: Filter through gnu indent and reword comments
32778         slightly.
32779         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
32780
32781 2005-09-13  Derek Price  <derek@ximbiot.com>
32782
32783         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
32784         failure.
32785         Reported by Jim Meyering  <jim@meyering.net>.
32786
32787 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
32788
32789         * lib/base64.c: Typo.
32790         (base64_encode): Put b64str in initialized data section.
32791
32792 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
32793
32794         Merge glibc and coreutils changes into gnulib, plus a few
32795         extra fixes.
32796         * lib/md5.c: Use #error rather than a string.
32797         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
32798         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
32799         (__attribute__): Define to empty for non recent-GCC.
32800         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
32801         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
32802         Renamed from their non-__ counterparts, with new macros replacing
32803         them if not _LIBC.  Add __THROW attribute.
32804         (rol): Remove.
32805         (struct md5_ctx): Align buffer if using GCC.
32806         * lib/sha1.h (struct sha1_ctx): Likewise.
32807         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
32808         The old name was backwards.
32809         (NOTSWAP): Remove; not used.
32810         (rol): New macro, moved here from md5.h.
32811         (sha1_process_block): Remove a FIXME that doesn't make sense.
32812
32813 2005-09-12  Derek Price  <derek@ximbiot.com>
32814
32815         Return usable errors from canon-host.
32816         * lib/canon-host.h: New file.
32817         * lib/canon-host.c (canon_host): Wrap...
32818         (canon_host_r): ...this new function, which now relies exclusively on
32819         getaddrinfo.
32820         (ch_strerror): New function.
32821         (last_cherror): New global.
32822         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
32823         interface.
32824         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
32825         void *.
32826         (freeaddrinfo): Free ai->ai_canonname when set.
32827
32828 2005-09-12  Derek Price  <derek@ximbiot.com>
32829
32830         Make canon-host require getaddrinfo.
32831         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
32832         AC_LIBSOURCE canon-host.h.  Call...
32833         (gl_PREREQ_CANON_HOST): ...this new function, which requires
32834         gl_GETADDRINFO.
32835         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
32836
32837 2005-09-12  Derek Price  <derek@ximbiot.com>
32838
32839         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
32840         LGPL.
32841         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
32842
32843 2005-09-12  Derek Price  <derek@ximbiot.com>
32844
32845         * lib/gai_strerror.c: Include config.h when available.  Include
32846         getaddrinfo.h before other headers to test interface.
32847         Reported by Larry Jones <lawrence.jones@ugs.com>.
32848
32849 2005-09-12  Derek Price  <derek@ximbiot.com>
32850             Paul Eggert  <eggert@cs.ucla.edu>
32851
32852         * modules/glob (Files): Add glob-libc.h.
32853
32854 2005-09-12  Derek Price  <derek@ximbiot.com>
32855             Paul Eggert  <eggert@cs.ucla.edu>
32856
32857         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
32858         glob_.h, glob-libc.h.
32859         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
32860
32861 2005-09-12  Derek Price  <derek@ximbiot.com>
32862             Paul Eggert  <eggert@cs.ucla.edu>
32863
32864         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
32865         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
32866         protecting things that should be done only in gnulib contexts.
32867         * lib/glob_.h: New file, containing only the glob things needed for
32868         gnulib.
32869         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
32870         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
32871         (glob, globfree, glob_pattern_p): Now defined simply in terms of
32872         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
32873         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
32874         and to respect the namespace rules better.
32875
32876 2005-09-08  Simon Josefsson  <jas@extundo.com>
32877
32878         * modules/socklen: New file.
32879
32880 2005-09-08  Simon Josefsson  <jas@extundo.com>
32881
32882         * m4/socklen.m4: New file.
32883
32884 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32885
32886         * modules/utimens (Files): Add m4/utimbuf.m4, since
32887         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
32888         Reported by Sergey Poznyakoff.
32889
32890 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32891
32892         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
32893         definitions, since that's the preferred style in glibc.
32894         Fix a minor spacing issue, and update copyright notice to match
32895         glibc's.
32896
32897 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32898
32899         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
32900
32901 2005-09-06  Simon Josefsson  <jas@extundo.com>
32902
32903         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
32904         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
32905
32906 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
32907
32908         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
32909         warning.
32910
32911 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
32912
32913         * config/srclist.txt: Add glibc bug 1302.
32914
32915 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
32916
32917         Change bitset word type from unsigned int to unsigned long int,
32918         as this has better performance on typical 64-bit hosts.
32919         Port bitset code to hosts with unusual word sizes.
32920         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
32921         (build_collating_symbol):
32922         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
32923         argument is a bitset.  This is merely a style issue, but it makes
32924         it clearer that an entire array is expected.
32925         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
32926         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
32927         Port to the case where bitset_word is not the same as unsigned int.
32928         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
32929         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
32930         Likewise.
32931         * lib/regexec.c (check_dst_limits_calc_pos_1,
32932         check_subexp_matching_top):
32933         (build_trtable, group_nodes_into_DFAstates):
32934         Likewise.
32935         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
32936         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
32937         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
32938         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
32939         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
32940         * lib/regcomp.c (optimize_subexps, lower_subexp):
32941         Work even if bitset_word has holes in its bitwise representation.
32942         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
32943         * lib/regexec.c (check_dst_limits_calc_pos_1,
32944         check_subexp_matching_top):
32945         Likewise.
32946         * lib/regex_internal.c (re_string_reconstruct):
32947         Don't assume UCHAR_MAX == 255.
32948         * lib/regex_internal.h (bitset_set_all): Likewise.
32949         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
32950         All uses changed.
32951         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
32952         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
32953         All uses changed.
32954         (BITSET_WORD_MAX): New macro.
32955         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
32956         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
32957         (bitset_empty, bitset_copy):
32958         Prefer sizeof (bitset) to multiplying it out ourselves.
32959         (bitset_not_merge): Remove; unused.
32960         (bitset_contain): Return bool, not unsigned int with one bit on.
32961         All callers changed.
32962         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
32963         alignment than re_node_set; do this by defining a new internal
32964         type struct dests_alloc and using it to allocate memory.
32965
32966 2005-09-05  Bruno Haible  <bruno@clisp.org>
32967
32968         * gnulib-tool (func_import): Fix comparison in handling of symbolic
32969         links.
32970
32971 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
32972
32973         * modules/size_max (Makefile.am): Add size_max.h
32974
32975 2005-09-04  Derek Price  <derek@ximbiot.com>
32976
32977         * gnulib-tool (func_import): Fix reversed $symbolic logic.
32978
32979 2005-09-03  Simon Josefsson  <jas@extundo.com>
32980
32981         * gnulib-tool: Fix typo.
32982
32983 2005-09-03  Simon Josefsson  <jas@extundo.com>
32984
32985         * config/srclist.txt: Add glibc bug 1293.
32986
32987 2005-09-03  Derek Price  <derek@ximbiot.com>
32988
32989         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
32990         From Larry Jones <lawrence.jones@ugs.com>.
32991
32992 2005-09-02  Simon Josefsson  <jas@extundo.com>
32993
32994         * modules/socklen: New file.
32995
32996 2005-09-02  Simon Josefsson  <jas@extundo.com>
32997
32998         * modules/havelib: New module.
32999
33000         * modules/gettext, modules/iconv, modules/lock, modules/readline:
33001         Use havelib.
33002
33003 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
33004
33005         Check for arithmetic overflow when calculating sizes, to prevent
33006         some buffer-overflow issues.  These patches are conservative, in the
33007         sense that when I couldn't determine whether an overflow was possible,
33008         I inserted a run-time check.
33009         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
33010         macros.
33011         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
33012         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
33013         (re_xnrealloc, re_x2nrealloc): New inline functions.
33014         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
33015         parse_bracket_exp):
33016         (build_equiv_class, build_charclass): Check for arithmetic overflow
33017         in size expression calculations.
33018         * lib/regex_internal.c (re_string_realloc_buffers):
33019         (build_wcs_upper_buffer, re_node_set_add_intersect):
33020         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
33021         (re_dfa_add_node, register_state): Likewise.
33022         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
33023         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
33024         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
33025         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
33026
33027 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
33028
33029         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
33030         m4/ulonglong.m4.  Problem reported by Martin Lambers.
33031
33032 2005-09-02  Bruno Haible  <bruno@clisp.org>
33033
33034         Support for lib vs. lib64 distinction on biarch platforms.
33035         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
33036         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
33037         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
33038
33039 2005-09-02  Bruno Haible  <bruno@clisp.org>
33040
33041         * gnulib-tool (import): In the other first-use case, provide defaults
33042         as well.
33043
33044 2005-09-02  Bruno Haible  <bruno@clisp.org>
33045
33046         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
33047         patches not yet found in the latest gettext release.
33048
33049 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
33050
33051         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
33052         to avoid a collision with bits/local_lim.h in glibc.
33053         All uses changed.  Problem reported by Dmitry V. Levin in
33054         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
33055
33056         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
33057         bugs in int versus size_t comparisons.
33058         (re_string_context_at): Fix bug where the code assumed that
33059         Idx is signed.
33060
33061         Use bool where appropriate.
33062         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
33063         All callers changed.
33064         (calc_eclosure_iter): Likewise, for ROOT arg.
33065         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
33066         (build_charclass_op): Likewise, for NON_MATCH arg.
33067         * lib/regex_internal.c (re_string_allocate, re_string_construct):
33068         (re_string_construct_common): Likewise, for ICASE arg.
33069         * lib/regexec.c (re_search_2_stub, re_search_stub):
33070         Likewise, for RET_LEN arg.
33071         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
33072         (set_regs): Likewise, for FL_BACKTRACK arg.
33073         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
33074         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
33075         (calc_eclosure_iter, parse_bracket_exp):
33076         Use bool for internal variables that are booleans.
33077         * lib/regexec.c (re_search_internal, check_matching,
33078         proceed_next_node):
33079         (set_regs, build_sifted_states, sift_states_bkref):
33080         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
33081         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
33082         (find_collation_sequence_value):
33083         Likewise.
33084         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
33085         (re_node_set_compare):
33086         Return bool, not int. All callers changed.
33087         * lib/regexec.c (check_halt_node_context, check_dst_limits):
33088         (build_trtable, check_node_accept): Likewise.
33089         * lib/regex_internal.h: Include stdbool.h.
33090
33091         Fix bugs uncovered when converting to bool.
33092         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
33093         failure instead of charging ahead blindly.
33094         * lib/regex_internal.c (register_state): Likewise.
33095         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
33096         for freeing internal storage.
33097         (group_nodes_into_DFA_states): Use unsigned int, not int, for
33098         bitset pieces used as boolean, to avoid undefined behavior
33099         on hosts that do int overflow checking.
33100
33101 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
33102
33103         * config/srclist.txt: Add glibc bugs 1285-1287.
33104
33105 2005-09-01  Jim Meyering  <jim@meyering.net>
33106
33107         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
33108         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
33109         Require gl_STAT_MACROS, too.
33110
33111 2005-09-01  Bruno Haible  <bruno@clisp.org>
33112
33113         * gnulib-tool (import): In the first-use case, provide defaults.
33114
33115 2005-09-01  Bruno Haible  <bruno@clisp.org>
33116
33117         * gnulib-tool (func_import): Remove the .tmp files.
33118
33119 2005-09-01  Bruno Haible  <bruno@clisp.org>
33120
33121         * gnulib-tool (func_import): Fix handling of symbolic links.
33122
33123 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
33124
33125         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
33126         old glibc regex code mishandles strings longer than 2**31 bytes.
33127         This patch fixes this when the regex code is used in gnulib
33128         (i.e., outside glibc).
33129
33130         This patch should not affect the use of the regex code inside
33131         glibc.  No doubt this problem also needs to be handled for glibc
33132         as well, but the result will be an incompatible change to the
33133         glibc ABI, and the old ABI will have to be supported too.  That
33134         can be the the subject for another patch.
33135
33136         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
33137         governing whether the rest of this patch is active.  By default,
33138         the macro is disabled and the patch has no effect.
33139         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
33140         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
33141         (struct re_pattern_buffer, re_search, re_search_2, re_match):
33142         (re_match_2, re_set_registers): Use the new types.
33143         * lib/regex_internal.h (Idx, re_hashval_t): New types.
33144         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
33145         New macros.
33146         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
33147         (re_string_context_at, bin_tree_t, re_dfastate_t):
33148         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
33149         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
33150         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
33151         (re_string_char_size_at, re_string_wchar_at):
33152         (re_string_elem_size_at):
33153         Use the new types and macros to port to 64-bit hosts.
33154         Use unsigned types for internal values, so that the code
33155         mostly works even for arrays larger than SSIZE_MAX.
33156         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
33157         (search_duplicated_node, calc_eclosure_iter, fetch_number):
33158         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
33159         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
33160         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
33161         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
33162         (calc_inveclosure, parse_dup_op, build_range_exp):
33163         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
33164         (fetch_number, create_token_tree, mark_opt_subexp):
33165         Likewise.
33166         * lib/regex_internal.c (re_string_construct_common,
33167         create_ci_newstate):
33168         (create_cd_newstate, re_string_allocate, re_string_construct):
33169         (re_string_realloc_buffers, build_wcs_upper_buffer):
33170         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
33171         (re_string_reconstruct, re_string_peek_byte_case):
33172         (re_string_fetch_byte_case, re_string_context_at):
33173         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
33174         (re_node_set_init_copy, re_node_set_add_intersect):
33175         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
33176         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
33177         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
33178         (re_acquire_state, re_acquire_state_context, register_state):
33179         Likewise.
33180         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
33181         search_cur_bkref_entry):
33182         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
33183         (re_search_internal, re_search_2_stub, re_search_stub)
33184         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
33185         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
33186         (update_cur_sifted_state, check_dst_limits):
33187         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
33188         (check_subexp_limits, sift_states_bkref, merge_state_array):
33189         (check_subexp_matching_top, get_subexp, get_subexp_sub):
33190         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
33191         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
33192         (expand_bkref_cache, check_node_accept_bytes):
33193         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
33194         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
33195         (acquire_init_state_context, check_halt_node_context):
33196         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
33197         (sift_states_backward, clean_state_log_if_needed):
33198         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
33199         (find_recover_state, transit_state_sb, transit_state_mb):
33200         (transit_state_bkref, build_trtable, match_ctx_clean):
33201         Likewise.
33202         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
33203         to work around an assumption that REG_MISSING is negative.
33204
33205         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
33206         (seek_collating_symbol_entry) [defined _LIBC]:
33207         (lookup_collation_sequence_value) [defined _LIBC]:
33208         (build_range_exp, build_collating_symbol) [defined _LIBC]:
33209         Use prototypes rather than old-style function definitions.
33210         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
33211         (transit_state_sb) [0]:
33212         (find_collation_sequence_value) [defined _LIBC]: Likewise.
33213
33214         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
33215         rm_eo.
33216
33217         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
33218         (optimize_subexps, lower_subexp):
33219         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
33220         since the signed shift might overflow.  Use 1u<<31 instead.
33221         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
33222         Likewise.
33223         * lib/regexec.c (check_dst_limits_calc_pos_1,
33224         check_subexp_matching_top): Likewise.
33225
33226         * lib/regcomp.c (optimize_subexps, lower_subexp):
33227         Use CHAR_BIT rather than 8, for clarity.
33228         * lib/regexec.c (check_dst_limits_calc_pos_1):
33229         (check_subexp_matching_top): Likewise.
33230         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
33231         have to worry about portability issues when shifting it left.
33232         Remove no-longer-needed test for table_size > 0.
33233         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
33234         in a word, as the resulting behavior is undefined.
33235         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
33236         in one case, a <= should have been an <, and in another case the
33237         whole test was missing.
33238         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
33239         the standard name CHAR_BIT.
33240         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
33241         this is not true on one's complement and signed-magnitude hosts.
33242
33243         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
33244         next_last_offset.
33245         (struct re_dfa_t): Remove unused member states_alloc.
33246         * lib/regcomp.c (init_dfa): Don't initialize unused members.
33247
33248 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
33249
33250         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
33251         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
33252         and large-file glibc and in 32-bit large-file Solaris.
33253
33254 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
33255
33256         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
33257         lengths fit in regoff_t; this isn't true if regoff_t is the same
33258         width as size_t.
33259         * lib/regex.c (re_search_internal): 5th arg is LAST_START
33260         (= START + RANGE) instead of RANGE.  This avoids overflow
33261         problems when regoff_t is the same width as size_t.
33262         All callers changed.
33263         (re_search_2_stub): Check for overflow when adding the
33264         sizes of the two strings.
33265         (re_search_stub): Check for overflow when adding START
33266         to RANGE; if it occurs, substitute the extreme value.
33267
33268 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
33269
33270         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
33271
33272 2005-08-31  Jim Meyering  <jim@meyering.net>
33273
33274         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
33275         a pointer-to-const.
33276         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
33277         (register_state): Likewise.
33278         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
33279         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
33280         (group_nodes_into_DFAstates): Likewise.
33281
33282 2005-08-31  Jim Meyering  <jim@meyering.net>
33283
33284         * check-module: Add a FIXME comment.
33285
33286 2005-08-31  Eric Blake  <ebb9@byu.net>
33287
33288         * modules/unistd-safer (Files): Add unistd--.h.
33289         * modules/stdio-safer (Files): Add stdio--.h.
33290
33291 2005-08-31  Derek Price  <derek@ximbiot.com>
33292
33293         * lib/getdelim.c (getdelim): Return EOF on EOF.
33294         Reported by Larry Jones <lawrence.jones@ugs.com>.
33295
33296 2005-08-31  Bruno Haible  <bruno@clisp.org>
33297
33298         Avoid unnecessary diffs in the generated lib/Makefile.am.
33299         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
33300         the generated files.
33301         (func_import): Don't set cmd.
33302
33303 2005-08-31  Bruno Haible  <bruno@clisp.org>
33304
33305         * lib/strstr.c: Include <stddef.h>, for NULL.
33306         * lib/strcasestr.c: Likewise.
33307         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
33308
33309 2005-08-31  Bruno Haible  <bruno@clisp.org>
33310
33311         * gnulib-tool: New option --macro-prefix.
33312         (func_import): Use macro_prefix.
33313         (import): Handle option --macro-prefix.
33314
33315 2005-08-31  Bruno Haible  <bruno@clisp.org>
33316
33317         * gnulib-tool (import): Rename most ac_* variables to cached_*.
33318         Also use new variables cached_lgpl, cached_libtool.
33319
33320 2005-08-31  Bruno Haible  <bruno@clisp.org>
33321
33322         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
33323         always instantiating them.
33324
33325 2005-08-31  Bruno Haible  <bruno@clisp.org>
33326
33327         * gnulib-tool (func_import): Read the previous cached settings
33328         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
33329         earlier added by gnulib but are now dropped. Warn when a gnulib file
33330         overwrites a non-gnulib file.
33331
33332 2005-08-31  Bruno Haible  <bruno@clisp.org>
33333
33334         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
33335         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
33336         projects that don't keep autogenerated files in CVS. Put into
33337         actioncmd only the specified modules, not the transitive closure.
33338
33339 2005-08-31  Bruno Haible  <bruno@clisp.org>
33340
33341         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
33342         Create directories that shall be filled.
33343         (import): Don't look for gl_* macros in configure.ac. Recurse across
33344         all directories containing a gnulib-cache.m4 files, if meaningful.
33345
33346 2005-08-31  Bruno Haible  <bruno@clisp.org>
33347
33348         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
33349         (import): Set seen_libtool when we see gl_LIBTOOL.
33350
33351 2005-08-31  Bruno Haible  <bruno@clisp.org>
33352
33353         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
33354         declaration macro definitions from generated gnulib.m4.
33355
33356 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
33357
33358         * lib/iconvme.h: Add prototype for iconv_alloc.
33359
33360 2005-08-29  Simon Josefsson  <jas@extundo.com>
33361
33362         * lib/iconvme.c: Fix errno.
33363
33364 2005-08-29  Bruno Haible  <bruno@clisp.org>
33365
33366         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
33367         that it works when the directory contains spaces.
33368
33369 2005-08-29  Bruno Haible  <bruno@clisp.org>
33370
33371         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
33372
33373 2005-08-29  Bruno Haible  <bruno@clisp.org>
33374
33375         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
33376         Emit more advice.
33377
33378 2005-08-29  Bruno Haible  <bruno@clisp.org>
33379         and Stepan Kasal  <kasal@ucw.cz>
33380
33381         * check-module: If more parameters are given, check each of them
33382         separately; add more exceptions, as noted by Jim Meyering.
33383         (check_module): New procedure.
33384         (%exempt_header): Now contains all exceptions.
33385
33386 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
33387
33388         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
33389
33390 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
33391
33392         * lib/iconvme.c: Split iconv_string into iconv_alloc.
33393
33394 2005-08-28  Bruno Haible  <bruno@clisp.org>
33395
33396         * m4/gnulib-tool.m4: New file.
33397
33398 2005-08-27  Jim Meyering  <jim@meyering.net>
33399
33400         * modules/unistd-safer (Files): Add pipe-safer.c.
33401         * modules/fcntl-safer (Files): Add creat-safer.c.
33402
33403 2005-08-27  Jim Meyering  <jim@meyering.net>
33404
33405         * m4/stdlib-safer.m4: New file.  From coreutils.
33406         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
33407         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
33408         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
33409         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
33410         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
33411
33412 2005-08-27  Jim Meyering  <jim@meyering.net>
33413
33414         * lib/fopen-safer.c: Merge minor changes from coreutils.
33415         * lib/dup-safer.c: Likewise.
33416         * lib/fd-safer.c: Likewise.
33417
33418         Merge from coreutils.
33419         * lib/stdio--.h: New file.
33420         * lib/stdlib--.h: New file.
33421         * lib/mkstemp-safer.c: New file.
33422
33423         GNU tar needs these.
33424         * lib/pipe-safer.c: New file.
33425         * lib/creat-safer.c: New file.
33426         * lib/fcntl--.h (creat): Define to creat_safer.
33427         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
33428         * lib/unistd--.h (pipe): Define to pipe_safer.
33429         * lib/unistd-safer.h: Declare pipe_safer.
33430
33431 2005-08-26  Simon Josefsson  <jas@extundo.com>
33432
33433         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
33434         Haible <bruno@clisp.org>.
33435
33436 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
33437
33438         * lib/regex_internal.h: Remove all references to
33439         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
33440         or better.
33441         (bitset_not, bitset_merge, bitset_not_merge):
33442         (bitset_mask, re_string_allocate, re_string_construct):
33443         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
33444         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
33445         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
33446         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
33447         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
33448         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
33449         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
33450         (re_acquire_state_context):
33451         Remove unnecessary forward decls.
33452         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
33453         Put __attribute at function definition,
33454         now that the function decl has been removed.
33455         * lib/regex_internal.c (re_string_peek_byte_case):
33456         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
33457         Likewise.
33458
33459 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
33460
33461         * m4/regex.m4: Add AC_PREREQ(2.50).
33462         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
33463
33464 2005-08-25  Simon Josefsson  <jas@extundo.com>
33465
33466         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
33467         __fsetlocking.
33468
33469 2005-08-25  Simon Josefsson  <jas@extundo.com>
33470
33471         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
33472         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
33473         GLIBC specific code.
33474
33475 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33476
33477         Make regex safe for g++.  This fixes one real bug (an "err"
33478         that should have been "*err").  g++ problem reported by
33479         Sam Steingold.
33480         * lib/regex_internal.h (re_calloc): New macro, consistent with
33481         re_malloc etc.  All callers of calloc changed to use re_calloc.
33482         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
33483         not int.  All callers changed.
33484         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
33485         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
33486         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
33487         (find_recover_state): Change "err" to "*err"; this fixes what
33488         appears to be a real bug.
33489         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
33490         versus int.
33491
33492 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33493
33494         * modules/regex (Depends-on): Add malloc, since the code
33495         assumes that !malloc(0) means failure.
33496
33497 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33498
33499         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
33500
33501         alloca modernization/simplification for regex.
33502         * lib/regex.c: Remove portability cruft for alloca.  This no longer
33503         needs to be at the start of the file, and can be moved into
33504         regex_internal.h and simplified.
33505         * lib/regex_internal.h: Include <alloca.h>.
33506         (__libc_use_alloca) [!defined _LIBC]: New macro.
33507         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
33508         now works outside glibc.
33509
33510 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33511
33512         * config/srclist.txt: Add glibc bugs 1241, 1245.
33513
33514 2005-08-25  Jim Meyering  <jim@meyering.net>
33515
33516         * lib/open-safer.c: Include <config.h>.
33517         Otherwise, we'd lose LARGEFILE support in any file using
33518         e.g. "fcntl--.h"
33519
33520 2005-08-25  Bruno Haible  <bruno@clisp.org>
33521
33522         * m4/minmax.m4: Require autoconf 2.52.
33523         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
33524         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
33525         alternatives of translit over the alphabet.
33526         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
33527
33528 2005-08-24  Simon Josefsson  <jas@extundo.com>
33529
33530         * tests/test-getpass.c: New file.
33531
33532 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
33533
33534         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
33535         for GNU regex features.
33536
33537 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
33538
33539         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
33540         * lib/regex.h (regerror): Likewise.
33541
33542         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
33543         requires this.  (The code never needed it.)
33544
33545         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
33546         All uses of recently-renamed identifiers changed to use the new,
33547         POSIX-compliant names.  The code will build and run just fine
33548         without these changes, but it's better to eat our own dog food
33549         and use the standard-conforming names.
33550
33551         * lib/regex.h: Fix a multitude of POSIX name space violations.
33552         These changes have an effect only for programs that define
33553         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
33554         do not change anything for programs compiled in the normal way.
33555         Also, there is no effect on the ABI.
33556
33557         (_REGEX_SOURCE): New macro.
33558         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
33559         defined and _GNU_SOURCE is not; this fixes a name space violation.
33560
33561         Rename the following macros to obey POSIX requirements.
33562         The old names are still visible as macros if _REGEX_SOURCE is defined.
33563         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
33564         RE_BACKSLASH_ESCAPE_IN_LISTS.
33565         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
33566         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
33567         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
33568         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
33569         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
33570         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
33571         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
33572         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
33573         (REG_INTERVALS): renamed from RE_INTERVALS.
33574         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
33575         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
33576         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
33577         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
33578         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
33579         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
33580         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
33581         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
33582         RE_UNMATCHED_RIGHT_PAREN_ORD.
33583         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
33584         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
33585         (REG_DEBUG): renamed from RE_DEBUG.
33586         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
33587         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
33588         unusual, since we can't clash with the POSIX REG_ICASE.
33589         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
33590         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
33591         (REG_NO_SUB): renamed from RE_NO_SUB.
33592         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
33593         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
33594         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
33595         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
33596         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
33597         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
33598         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
33599         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
33600         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
33601         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
33602         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
33603         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
33604         RE_SYNTAX_POSIX_MINIMAL_BASIC.
33605         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
33606         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
33607         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
33608         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
33609         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
33610         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
33611         (REG_FIXED): Renamed from REGS_FIXED.
33612         (REG_NREGS): Renamed from RE_NREGS.
33613
33614         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
33615         of other REG_* macros, since POSIX says the user is allowed to
33616         #undef these macros selectively.
33617
33618         (reg_errcode_t): Update comment stating what other tables need
33619         to be consistent.
33620
33621         Rename the following enum values to obey POSIX requirements.
33622         The old names are still visible as macros.
33623         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
33624         is not defined, since GNU is supposed to be a superset of POSIX as
33625         much as possible, and since we want reg_errcode_t to be a signed
33626         type for implementation consistency.
33627         (_REG_NOERROR): Renamed from REG_NOERROR.
33628         (_REG_NOMATCH): Renamed from REG_NOMATCH.
33629         (_REG_BADPAT): Renamed from REG_BADPAT.
33630         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
33631         (_REG_ECTYPE): Renamed from REG_ECTYPE.
33632         (_REG_EESCAPE): Renamed from REG_EESCAPE.
33633         (_REG_ESUBREG): Renamed from REG_ESUBREG.
33634         (_REG_EBRACK): Renamed from REG_EBRACK.
33635         (_REG_EPAREN): Renamed from REG_EPAREN.
33636         (_REG_EBRACE): Renamed from REG_EBRACE.
33637         (_REG_BADBR): Renamed from REG_BADBR.
33638         (_REG_ERANGE): Renamed from REG_ERANGE.
33639         (_REG_ESPACE): Renamed from REG_ESPACE.
33640         (_REG_BADRPT): Renamed from REG_BADRPT.
33641         (_REG_EEND): Renamed from REG_EEND.
33642         (_REG_ESIZE): Renamed from REG_ESIZE.
33643         (_REG_ERPAREN): Renamed from REG_ERPAREN.
33644         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
33645         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
33646         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
33647         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
33648
33649         (_REG_RE_NAME, _REG_RM_NAME): New macros.
33650         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
33651         changed.  But support the old name if the new one is not defined
33652         and if _REGEX_SOURCE.
33653
33654         Change the following member names in struct re_pattern_buffer.
33655         The old names are still supported if !_REGEX_SOURCE.
33656         The new names are always supported, regardless of _REGEX_SOURCE.
33657         (re_buffer): Renamed from buffer.
33658         (re_allocated): Renamed from allocated.
33659         (re_used): Renamed from used.
33660         (re_syntax): Renamed from syntax.
33661         (re_fastmap): Renamed from fastmap.
33662         (re_translate): Renamed from translate.
33663         (re_can_be_null): Renamed from can_be_null.
33664         (re_regs_allocated): Renamed from regs_allocated.
33665         (re_fastmap_accurate): Renamed from fastmap_accurate.
33666         (re_no_sub): Renamed from no_sub.
33667         (re_not_bol): Renamed from not_bol.
33668         (re_not_eol): Renamed from not_eol.
33669         (re_newline_anchor): Renamed from newline_anchor.
33670
33671         Change the following member names in struct re_registers.
33672         The old names are still supported if !_REGEX_SOURCE.
33673         The new names are always supported, regardless of _REGEX_SOURCE.
33674         (rm_num_regs): Renamed from num_regs.
33675         (rm_start): Renamed from start.
33676         (rm_end): Renamed from end.
33677
33678         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
33679         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
33680         Prepend __ to parameter names.
33681
33682         Undo yesterday's changes.
33683
33684 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
33685
33686         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
33687         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
33688         lib/regex.c.
33689
33690 2005-08-24  Jim Meyering  <jim@meyering.net>
33691
33692         Sync from coreutils.
33693         * m4/fcntl-safer.m4: New file.
33694
33695         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
33696         and object files for this module.
33697
33698 2005-08-24  Jim Meyering  <jim@meyering.net>
33699
33700         Sync from coreutils.
33701         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
33702
33703 2005-08-24  Jim Meyering  <jim@meyering.net>
33704
33705         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
33706         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
33707
33708 2005-08-24  Jim Meyering  <jim@meyering.net>
33709
33710         * modules/fcntl-safer: New module.
33711         * modules/fts (Depends-on): Add fcntl-safer.
33712         * MODULES.html.sh (File descriptor based Input/Output):
33713         Add fcntl-safer.
33714
33715 2005-08-24  Bruno Haible  <bruno@clisp.org>
33716
33717         Support for unit test modules.
33718         * modules/README: Mention tests modules.
33719         * modules/TEMPLATE-TESTS: New file.
33720         * gnulib-tool: New options --extract-tests-module, --with-tests and
33721         --tests-base (unused for the moment).
33722         (testsbase, inctests): New variables.
33723         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
33724         (func_verify_module): Exclude TEMPLATE-TESTS.
33725         (func_verify_nontests_module, func_verify_tests_module): New functions.
33726         (func_get_dependencies): Add implicit dependency for tests modules.
33727         (func_get_tests_module): New function.
33728         (func_modules_transitive_closure): When --with-tests was specified,
33729         include the unit tests as well, unless explicitly avoided.
33730         (func_emit_lib_Makefile_am): Ignore the tests modules here.
33731         (func_emit_tests_Makefile_am): New function.
33732         (func_create_testdir): When --with-tests was specified, emit a
33733         tests/ directory.
33734         * MODULES.html.sh (Future developments): Update.
33735
33736 2005-08-24  Bruno Haible  <bruno@clisp.org>
33737
33738         * modules/tls-tests: New file.
33739         * tests/test-tls.c: New file, from GNU gettext.
33740
33741 2005-08-24  Bruno Haible  <bruno@clisp.org>
33742
33743         * modules/lock-tests: New file.
33744         * tests/test-lock.c: New file, from GNU gettext.
33745
33746 2005-08-24  Bruno Haible  <bruno@clisp.org>
33747
33748         * lib/lock.h: Add multiple inclusion guard.
33749         * lib/tls.h: Add multiple inclusion guard.
33750
33751 2005-08-24  Bruno Haible  <bruno@clisp.org>
33752
33753         * gnulib-tool: Add support for the --aux-dir option to
33754         --create-testdir, --create-megatestdir, --test, --megatest.
33755         (func_create_testdir, func_create_megatestdir): Optionally emit a
33756         AC_CONFIG_AUX_DIR directive.
33757         (create-testdir, create-megatestdir, test, megatest): Provide a
33758         default value for $auxdir.
33759
33760 2005-08-24  Bruno Haible  <bruno@clisp.org>
33761
33762         * gnulib-tool (import): Use compound statement instead of subshell
33763         where possible.
33764
33765 2005-08-24  Bruno Haible  <bruno@clisp.org>
33766
33767         * gnulib-tool (import): Change --aux-dir default to "build-aux".
33768
33769 2005-08-24  Bruno Haible  <bruno@clisp.org>
33770
33771         * gnulib-tool (func_version): Update.
33772
33773 2005-08-24  Bruno Haible  <bruno@clisp.org>
33774
33775         * gnulib-tool (func_import, func_create_testdir,
33776         func_create_megatestdir): Quote all autoconf macro arguments.
33777
33778 2005-08-24  Bruno Haible  <bruno@clisp.org>
33779
33780         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
33781         option --force, because --force causes the aclocal.m4 of each
33782         subdirectory to be newer than the corresponding config.h.in.
33783
33784 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
33785
33786         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
33787         All contents moved to gl_REGEX.
33788         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
33789         assume that it does.
33790
33791 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
33792
33793         * lib/regex.h (REG_NOSYS)
33794         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
33795         Define, since POSIX requires it as of 2001.
33796         (_REG_ENOSYS)
33797         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
33798         New private symbol, used to keep the enum signed in all cases.
33799         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
33800         Youngman in
33801         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
33802
33803         * lib/regex_internal.c (re_string_skip_chars, register_state):
33804         (calc_state_hash):
33805         Remove forward decls; no longer needed now that we use prototypes.
33806         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
33807         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
33808         (clean_state_log_if_needed): Likewise.
33809
33810 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
33811
33812         * config/srclist.txt: Add glibc bugs 1231-1233.
33813
33814 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33815
33816         Fix problems reported by Sam Steingold in
33817         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
33818         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
33819         assumed that reg_errcode_t is a signed type, which is not
33820         necessarily true if _XOPEN_SOURCE is not defined.
33821         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
33822         since some compilers warn about it otherwise.
33823
33824 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33825
33826         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
33827         (init_word_char, create_initial_state, duplicate_node_closure):
33828         (fetch_token, peek_token_bracket, build_range_exp):
33829         (build_collating_symbol): Remove forward decls; no longer needed
33830         now that we use prototypes.
33831
33832         * lib/regcomp.c:
33833         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
33834         (re_compile_fastmap_iter, regcomp, regerror, regfree):
33835         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
33836         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
33837         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
33838         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
33839         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
33840         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
33841         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
33842         (build_range_exp, build_collating_symbol, parse_bracket_exp):
33843         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
33844         (build_charclass, build_charclass_op, fetch_number, create_tree):
33845         (create_token_tree, mark_opt_subexp, duplicate_tree):
33846         Use prototypes rather than old-style definitions.
33847
33848         * lib/regex_internal.c:
33849         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
33850         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
33851         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
33852         (re_string_reconstruct, re_string_peek_byte_case):
33853         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
33854         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
33855         (re_node_set_init_copy, re_node_set_add_intersect):
33856         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
33857         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
33858         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
33859         (re_acquire_state, re_acquire_state_context, register_state):
33860         (create_ci_newstate, create_cd_newstate, free_state):
33861         Likewise.
33862         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
33863         re_search_2):
33864         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
33865         (re_search_internal, prune_impossible_nodes):
33866         (acquire_init_state_context, check_matching, static):
33867         (check_halt_node_context, check_halt_state_context, proceed_next_node):
33868         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
33869         (update_regs, sift_states_backward, build_sifted_states):
33870         (clean_state_log_if_needed, merge_state_array):
33871         (update_cur_sifted_state, add_epsilon_src_nodes):
33872         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
33873         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
33874         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
33875         (find_recover_state, check_subexp_matching_top, transit_state_mb):
33876         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
33877         (check_arrival, check_arrival_add_next_nodes):
33878         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
33879         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
33880         (check_node_accept_bytes, check_node_accept, extend_buffers):
33881         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
33882         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
33883         (sift_ctx_init):
33884         Likewise.
33885
33886         * lib/regex_internal.h:
33887         (re_string_allocate, re_string_construct, re_string_reconstruct):
33888         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
33889         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
33890         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
33891         (re_string_context_at, re_string_peek_byte_case):
33892         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
33893         is defined, since we now use prototypes always.
33894
33895         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
33896         C89 or better.  All uses removed.
33897
33898 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33899
33900         * config/srclist.txt: Add glibc bugs 1220-1227.
33901
33902 2005-08-20  Jim Meyering  <jim@meyering.net>
33903
33904         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
33905         of unused local, dfa.
33906
33907 2005-08-20  Bruno Haible  <bruno@clisp.org>
33908
33909         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
33910
33911 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33912
33913         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
33914         (re_node_set_insert_last, re_dfa_add_node):
33915         Rename local variables to avoid GCC shadowing warnings.
33916
33917 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33918
33919         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
33920         [defined lint]: Suppress bogus uninitialized-variable warnings.
33921
33922         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
33923         and let the caller return REG_ESPACE if out of space.  This
33924         removes an uninitialied-variable warning with GCC 4.0.1, and also
33925         avoids taking the address of a local variable.  All callers
33926         changed.
33927
33928 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33929
33930         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
33931         $LIBCSRC/posix/regexec.c.
33932         Add glibc bug 1217 for regcomp.c.
33933
33934 2005-08-19  Jim Meyering  <jim@meyering.net>
33935
33936         * lib/regexec.c (proceed_next_node): Redo local variables to
33937         avoid GCC shadowing warnings.
33938
33939 2005-08-18  Bruno Haible  <bruno@clisp.org>
33940
33941         * lib/strstr.c (strstr): Fix return value in multibyte case.
33942         * lib/strcasestr.c (strcasestr): Likewise.
33943
33944 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
33945
33946         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
33947
33948 2005-08-17  Jim Meyering  <jim@meyering.net>
33949
33950         Make the %s format (seconds since the epoch) work for a negative
33951         number and when used with a zero-padded field width, e.g. %015s.
33952
33953         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
33954         label so that it precedes the code to set `digits'.  Otherwise,
33955         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
33956         print `00-22'.  Now, it prints `-0022', as it should.
33957
33958 2005-08-17  Bruno Haible  <bruno@clisp.org>
33959
33960         * modules/strstr (Files): Add m4/mbrtowc.m4.
33961         (Depends-on): Add mbuiter.
33962
33963 2005-08-17  Bruno Haible  <bruno@clisp.org>
33964
33965         * modules/strcasestr: New file.
33966         * MODULES.html.sh (String handling, based on ANSI C 89): Add
33967         strcasestr.
33968
33969 2005-08-17  Bruno Haible  <bruno@clisp.org>
33970
33971         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
33972
33973 2005-08-17  Bruno Haible  <bruno@clisp.org>
33974
33975         * modules/mbuiter: New file.
33976         * MODULES.html.sh (Extended multibyte and wide character utilities):
33977         Add mbuiter.
33978
33979 2005-08-17  Bruno Haible  <bruno@clisp.org>
33980
33981         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
33982         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
33983
33984 2005-08-17  Bruno Haible  <bruno@clisp.org>
33985
33986         * m4/strcasestr.m4: New file.
33987
33988 2005-08-17  Bruno Haible  <bruno@clisp.org>
33989
33990         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
33991         * lib/strstr.c: Completely rewritten, with multibyte locale support.
33992
33993 2005-08-17  Bruno Haible  <bruno@clisp.org>
33994
33995         * lib/strcasestr.h: New file.
33996         * lib/strcasestr.c: New file.
33997
33998 2005-08-17  Bruno Haible  <bruno@clisp.org>
33999
34000         * lib/strcasecmp.c: Use mbuiter.h.
34001
34002 2005-08-17  Bruno Haible  <bruno@clisp.org>
34003
34004         * lib/mbuiter.h: New file.
34005
34006 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
34007
34008         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
34009         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
34010         and gl_GETOPT are both invoked via different paths (as happens
34011         with GNU tar CVS because it uses both argp and getopt), the former
34012         wins.
34013
34014 2005-08-16  Bruno Haible  <bruno@clisp.org>
34015
34016         * modules/tls: New file.
34017         * MODULES.html.sh (Multithreading): Add tls.
34018
34019 2005-08-16  Bruno Haible  <bruno@clisp.org>
34020
34021         * modules/strnlen1: New file.
34022         * MODULES.html.sh (String handling): Add strnlen1.
34023
34024 2005-08-16  Bruno Haible  <bruno@clisp.org>
34025
34026         * modules/strcase (Files): Add m4/mbrtowc.m4.
34027         (Depends-on): Add strnlen1, mbchar.
34028
34029 2005-08-16  Bruno Haible  <bruno@clisp.org>
34030
34031         * modules/mbiter: New file.
34032         * MODULES.html.sh (Extended multibyte and wide character utilities):
34033         Add mbiter.
34034
34035 2005-08-16  Bruno Haible  <bruno@clisp.org>
34036
34037         * modules/mbfile: New file.
34038         * MODULES.html.sh (Extended multibyte and wide character utilities):
34039         Add mbfile.
34040
34041 2005-08-16  Bruno Haible  <bruno@clisp.org>
34042
34043         * modules/mbchar: New file.
34044         * MODULES.html.sh (Extended multibyte and wide character utilities):
34045         New section.
34046
34047 2005-08-16  Bruno Haible  <bruno@clisp.org>
34048
34049         * m4/tls.m4: New file, from GNU gettext.
34050
34051 2005-08-16  Bruno Haible  <bruno@clisp.org>
34052
34053         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
34054         always.
34055         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
34056
34057 2005-08-16  Bruno Haible  <bruno@clisp.org>
34058
34059         * m4/mbiter.m4: New file.
34060
34061 2005-08-16  Bruno Haible  <bruno@clisp.org>
34062
34063         * m4/mbfile.m4: New file.
34064
34065 2005-08-16  Bruno Haible  <bruno@clisp.org>
34066
34067         * m4/mbchar.m4: New file.
34068
34069 2005-08-16  Bruno Haible  <bruno@clisp.org>
34070
34071         * lib/tls.h: New file, from GNU gettext.
34072         * lib/tls.c: New file, from GNU gettext.
34073
34074 2005-08-16  Bruno Haible  <bruno@clisp.org>
34075
34076         * lib/strnlen1.h: New file.
34077         * lib/strnlen1.c: New file.
34078
34079 2005-08-16  Bruno Haible  <bruno@clisp.org>
34080
34081         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
34082         (mbi_init): Update.
34083         (mbi_avail, mbi_advance): Let the iteration end before the terminating
34084         NUL byte, not after it.
34085
34086 2005-08-16  Bruno Haible  <bruno@clisp.org>
34087
34088         * lib/strcase.h (strcasecmp): Add note in comments.
34089         * lib/strncasecmp.c: Use code from strcasecmp.c.
34090         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
34091         (strcasecmp): Work correctly in multibyte locales.
34092
34093 2005-08-16  Bruno Haible  <bruno@clisp.org>
34094
34095         * lib/mbiter.h: New file.
34096
34097 2005-08-16  Bruno Haible  <bruno@clisp.org>
34098
34099         * lib/mbfile.h: New file.
34100
34101 2005-08-16  Bruno Haible  <bruno@clisp.org>
34102
34103         * lib/mbchar.h: New file.
34104         * lib/mbchar.c: New file.
34105
34106 2005-08-16  Bruno Haible  <bruno@clisp.org>
34107
34108         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
34109         the valid ones. Makes the comparison operations transitive:
34110         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
34111         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
34112
34113 2005-08-15  Simon Josefsson  <jas@extundo.com>
34114
34115         * modules/ssize_t (License): Change to 'unlimited'.
34116
34117         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
34118
34119 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
34120
34121         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
34122         Add comments for each pending glibc patch.
34123
34124 2005-08-15  Bruno Haible  <bruno@clisp.org>
34125
34126         * lib/regex.h (__restrict_arr): Don't define to __restrict if
34127         __cplusplus is defined.
34128
34129 2005-08-14  Jim Meyering  <jim@meyering.net>
34130
34131         Sync from coreutils.
34132
34133         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
34134         Use the hash-table-based cycle-detection code not just when
34135         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
34136         Reported by James Youngman in
34137         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
34138         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
34139         FTS_TIGHT_CYCLE_CHECK.
34140         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
34141         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
34142         once again.
34143         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
34144         * lib/fts.c (fd_safer): Remove decl.
34145         Include fcntl--.h rather than unistd-safer.h
34146         (fts_safe_changedir): Don't call fd_safer; no longer needed
34147         now that we include fcntl--.h.
34148
34149 2005-08-12  Simon Josefsson  <jas@extundo.com>
34150
34151         * modules/getndelim2: Use ssize_t module.
34152         * modules/getnline: Likewise.
34153         * modules/safe-read: Likewise.
34154         * modules/xreadlink: Likewise.
34155
34156         * modules/ssize_t: New file.
34157
34158 2005-08-12  Simon Josefsson  <jas@extundo.com>
34159
34160         * m4/readline.m4: Look for termcap, curses or ncurses if required.
34161
34162 2005-08-12  Simon Josefsson  <jas@extundo.com>
34163
34164         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
34165         ssize_t.
34166
34167 2005-08-12  Simon Josefsson  <jas@extundo.com>
34168
34169         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
34170         readline, getdelim and check_version.
34171         (Support for systems lacking ISO C 99: Sizes of integer types):
34172         Add size_max.
34173
34174 2005-08-12  Bruno Haible  <bruno@clisp.org>
34175
34176         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
34177
34178 2005-08-11  Simon Josefsson  <jas@extundo.com>
34179
34180         * modules/readline: New file.
34181
34182         * modules/strnlen (Files): Add strnlen.h.
34183
34184 2005-08-11  Simon Josefsson  <jas@extundo.com>
34185
34186         * m4/readline.m4: New file.
34187
34188 2005-08-11  Simon Josefsson  <jas@extundo.com>
34189
34190         * lib/readline.h, readline.c: New file.
34191
34192 2005-08-11  Simon Josefsson  <jas@extundo.com>
34193
34194         * doc/gnulib.texi (Initial import, Finishing touches): Mention
34195         gl_AVOID.
34196
34197 2005-08-11  Bruno Haible  <bruno@clisp.org>
34198
34199         * lib/strnlen.h (strnlen): Change parameter name to match comment.
34200
34201 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
34202
34203         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
34204
34205 2005-08-10  Simon Josefsson  <jas@extundo.com>
34206
34207         * tests/test-iconvme.c: New file.
34208
34209 2005-08-10  Simon Josefsson  <jas@extundo.com>
34210
34211         * m4/strnlen.m4: New file.
34212
34213         * m4/strndup.m4: Don't check for strnlen declaration, done in
34214         strnlen.m4.
34215
34216 2005-08-10  Simon Josefsson  <jas@extundo.com>
34217
34218         * lib/strndup.c: Use strnlen.h.
34219
34220         * lib/strnlen.h: New file.
34221
34222 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
34223
34224         * README: Typos.
34225
34226 2005-08-02  Simon Josefsson  <jas@extundo.com>
34227
34228         * modules/readline: New file.
34229
34230 2005-08-02  Simon Josefsson  <jas@extundo.com>
34231
34232         * modules/getdelim: New file.
34233
34234         * modules/getline: Rewrite, don't use getndelim2.
34235
34236 2005-08-02  Simon Josefsson  <jas@extundo.com>
34237
34238         * m4/getline.m4: Separate out getdelim stuff into separate module.
34239
34240         * m4/getdelim.m4: New file.
34241
34242 2005-08-02  Simon Josefsson  <jas@extundo.com>
34243
34244         * lib/getline.h, getline.c: Rewrite.
34245
34246         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
34247
34248 2005-07-31  Bruno Haible  <bruno@clisp.org>
34249
34250         * lib/lock.h (gl_lock_initializer): New macro.
34251         (gl_lock_define_initialized): Use it.
34252         (gl_rwlock_initializer): New macro.
34253         (gl_rwlock_define_initialized): Use it.
34254         (gl_recursive_lock_initializer): New macro.
34255         (gl_recursive_lock_define_initialized): Use it.
34256
34257 2005-07-30  Karl Berry  <karl@gnu.org>
34258
34259         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
34260         Report from Ben Pfaff, regarding getopt.
34261
34262 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
34263
34264         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
34265         normal way.
34266         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
34267         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
34268         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
34269         (gl_GETOPT): Use the new macros.  Most of the implementation
34270         is moved to the new macros.  This is for programs like Emacs
34271         that don't want all the functionality of gl_GETOPT.
34272
34273 2005-07-26  Bruno Haible  <bruno@clisp.org>
34274
34275         * m4/lock.m4: Update from GNU gettext.
34276
34277 2005-07-26  Bruno Haible  <bruno@clisp.org>
34278
34279         * lib/lock.h: Update from GNU gettext.
34280         * lib/lock.c: Update from GNU gettext.
34281
34282 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
34283
34284         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
34285         obsolescent AC_TRY_RUN.  Include the default includes files, for
34286         'exit'.
34287
34288 2005-07-24  Bruno Haible  <bruno@clisp.org>
34289
34290         * modules/visibility: New file.
34291         * MODULES.html.sh (Misc): Add visibility.
34292
34293 2005-07-24  Bruno Haible  <bruno@clisp.org>
34294
34295         * m4/visibility.m4: New file.
34296
34297 2005-07-24  Bruno Haible  <bruno@clisp.org>
34298
34299         * doc/visibility.texi: New file.
34300
34301 2005-07-22  Bruno Haible  <bruno@clisp.org>
34302
34303         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
34304         $(ALLOCA_H), redundant through BUILT_SOURCES.
34305         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
34306         redundant through BUILT_SOURCES.
34307         * modules/byteswap (Makefile.am): Remove explicit dependency on
34308         $(BYTESWAP_H), redundant through BUILT_SOURCES.
34309         * modules/fnmatch (Makefile.am): Remove explicit dependency on
34310         $(FNMATCH_H), redundant through BUILT_SOURCES.
34311         * modules/getopt (Makefile.am): Remove explicit dependency on
34312         $(GETOPT_H), redundant through BUILT_SOURCES.
34313         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
34314         redundant through BUILT_SOURCES.
34315         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
34316         redundant through BUILT_SOURCES.
34317         * modules/stdbool (Makefile.am): Remove explicit dependency on
34318         $(STDBOOL_H), redundant through BUILT_SOURCES.
34319         * modules/stdint (Makefile.am): Remove explicit dependency on
34320         $(STDINT_H), redundant through BUILT_SOURCES.
34321         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
34322         Remove explicit dependency on $(SYSEXITS_H).
34323         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
34324
34325 2005-07-18  Simon Josefsson  <jas@extundo.com>
34326
34327         * lib/check-version.c (check_version): Accept identical versions too.
34328
34329 2005-07-18  Bruno Haible  <bruno@clisp.org>
34330
34331         * modules/lock: New file.
34332         * MODULES.html.sh (Multithreading): New section.
34333
34334 2005-07-18  Bruno Haible  <bruno@clisp.org>
34335
34336         * m4/lock.m4: New file, from GNU gettext.
34337
34338 2005-07-18  Bruno Haible  <bruno@clisp.org>
34339
34340         * lib/lock.h: New file, from GNU gettext.
34341         * lib/lock.c: New file, from GNU gettext.
34342
34343 2005-07-18  Bruno Haible  <bruno@clisp.org>
34344
34345         * lib/lock.h (gl_once_t): New type.
34346         (gl_once_define, gl_once): New macros.
34347         * lib/lock.c (fresh_once): New variable.
34348         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
34349         functions.
34350
34351 2005-07-16  Simon Josefsson  <jas@extundo.com>
34352
34353         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
34354         workaround, suggested by Bruno.
34355
34356 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
34357
34358         * modules/xalloc (Depends-on): Add xalloc-die.
34359         * modules/xvasprintf (Depends-on): Add xalloc-die.
34360
34361 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
34362
34363         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
34364         with a minor change.
34365
34366 2005-07-15  Bruno Haible  <bruno@clisp.org>
34367
34368         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
34369         When using lib/poll.c, define poll as rpl_poll.
34370
34371 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
34372
34373         * modules/argp (Depends-on): Remove unlocked-io.
34374
34375 2005-07-14  Derek Price  <derek@ximbiot.com>
34376
34377         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
34378         for glob symlink bug.
34379
34380 2005-07-14  Bruno Haible  <bruno@clisp.org>
34381
34382         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
34383         Instead, test for *_unlocked function declarations directly.
34384
34385 2005-07-11  Simon Josefsson  <jas@extundo.com>
34386
34387         * modules/size_max: New file.
34388
34389         * modules/xsize: Depend on size_max module for size_max.m4.
34390
34391 2005-07-11  Simon Josefsson  <jas@extundo.com>
34392
34393         * lib/size_max.h: New file.
34394
34395 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
34396
34397         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
34398         copyright symbol and the year.
34399         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
34400         (version_etc_va): Use parameterized copyright notice.
34401         Reword to conform to the current GNU coding standards.
34402
34403 2005-07-11  Karl Berry  <karl@gnu.org>
34404
34405         * doc/gnulib.texi (Quoting): new node.
34406         (Initial import): more info, from Patrice.
34407
34408 2005-07-11  Bruno Haible  <bruno@clisp.org>
34409
34410         * gnulib-tool (func_usage): Document option --avoid.
34411         (Command line options): Handle --avoid.
34412         (func_acceptable): New function.
34413         (func_modules_transitive_closure): Use it.
34414
34415 2005-07-11  Bruno Haible  <bruno@clisp.org>
34416
34417         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
34418         Reported by Jim Meyering.
34419
34420 2005-07-10  Bruno Haible  <bruno@clisp.org>
34421
34422         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
34423         Needed when size_t is smaller than 'unsigned int'.
34424         Reported by Paul Eggert.
34425
34426 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
34427
34428         * modules/argp (Depends-on): Add unlocked-io
34429
34430 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
34431
34432         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
34433         block of defines.
34434
34435 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
34436
34437         * config/srclist.txt: Comment out regcomp.c, since we have a porting
34438         fix now.
34439
34440 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
34441         and Paul Eggert  <eggert@cs.ucla.edu>
34442
34443         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
34444         in wint_t, not wchar_t.  Remove now-unnecessary cast.
34445
34446 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
34447
34448         * modules/regex (Files): Add lib/regex_internal.c,
34449         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
34450         (Depends-on): Add extensions.
34451         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
34452
34453 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
34454
34455         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
34456         pathconf.
34457         * m4/same.m4 (gl_SAME): Likewise.
34458         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
34459
34460         * m4/regex.m4: Adjust to new libc regex implementation.
34461         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
34462         all the .c and .h parts of (the new) regex.
34463         Quote the m4 stuff better.
34464         Check for RE_ICASE bug of old gnulib.
34465         Check for REG_STARTEND of recent libc.
34466         Rename local variables from jm_* to gl_*.
34467         Quote operand of "test -f".
34468         Say "recent enough" version of libc, not "version 2".
34469         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
34470         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
34471         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
34472         Remove check for btowc, isascii.
34473         Require AM_LANGINFO_CODESET.
34474
34475 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
34476
34477         * lib/regex.c, regex.h: Sync from libc.
34478         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
34479         * lib/regexec.c:
34480         New files, synced from libc, except that regex_internal.h
34481         currently has a small porting fix.
34482
34483 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
34484
34485         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
34486         regex_internal.c, regexec.c.
34487         Add regex_internal.h too, but as a comment, since the libc version
34488         is currently broken in gnulib mode.
34489
34490 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
34491
34492         Support programs like Emacs that use gnulib but not gettext.
34493         * MODULES.html.sh (Internationalization functions): Add gettext-h.
34494         * modules/gettext-h: New file.
34495         * modules/gettext (Files): Remove lib/gettext.h.
34496         (Depends-on): Add gettext-h.
34497         (Makefile.am): Remove lib_SOURCES.
34498         * modules/argmatch, modules/c-stack, modules/closeout:
34499         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
34500         * modules/execute, modules/file-type, modules/getaddrinfo:
34501         * modules/getopt, modules/human, modules/javacomp:
34502         * modules/javaexec, modules/mkdir-p, modules/obstack:
34503         * modules/openat, modules/pagealign_alloc, modules/pipe:
34504         * modules/quotearg, modules/regex, modules/rpmatch:
34505         * modules/unicodeio, modules/userspec, modules/version-etc:
34506         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
34507         * modules/xsetenv:
34508         Depend on gettext-h, not gettext.
34509
34510 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
34511
34512         * gnulib-tool (func_import): Add support for 'public domain' license.
34513         * modules/alloca, modules/atexit, modules/memmove:
34514         Now public domain, not GPL.
34515         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
34516         * modules/realloc, modules/strerror, modules/strtod:
34517         Now LGPL, not GPL.
34518
34519 2005-07-05  Bruno Haible  <bruno@clisp.org>
34520
34521         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
34522         autoconf CVS. Needed for mingw.
34523
34524 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
34525
34526         Remove the dependency of the strftime module on the tzset module.
34527         * modules/strftime (Depends-on): Remove dependency on tzset.
34528
34529 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
34530
34531         Remove the dependency of the strftime module on the tzset module.
34532         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
34533         gl_FUNC_TZSET_CLOBBER.
34534
34535 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
34536
34537         Remove the dependency of the strftime module on the tzset module.
34538         * lib/strftime.c (my_strftime)
34539         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
34540         Copy the input structure, to work around some of the bug with
34541         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
34542         Solaris releases, you should also use the tzset module, but we won't
34543         require it as a dependency any more since we don't want LGPLed code
34544         to depend on GPLed code.
34545
34546 2005-07-02  Jim Meyering  <jim@meyering.net>
34547
34548         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
34549         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
34550         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
34551         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
34552
34553 2005-07-02  Jim Meyering  <jim@meyering.net>
34554
34555         * lib/backupfile.c (backup_args): Change a `0' to NULL.
34556
34557 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
34558
34559         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
34560         declares only 'struct timespec;' (!).
34561
34562 2005-07-01  Jim Meyering  <jim@meyering.net>
34563
34564         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
34565         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
34566         * lib/save-cwd.c, tempname.c:
34567         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
34568         and don't include <sys/file.h>).
34569
34570 2005-06-29  Jim Meyering  <jim@meyering.net>
34571
34572         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
34573         type name.  Use the variable name instead.
34574         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
34575         Likewise.
34576
34577 2005-06-28  Simon Josefsson  <jas@extundo.com>
34578
34579         * modules/check-version (Files): Add check-version.m4.
34580
34581 2005-06-28  Simon Josefsson  <jas@extundo.com>
34582
34583         * m4/check-version.m4: New file, suggested by Jim Meyering
34584         <jim@meyering.net>.
34585
34586 2005-06-28  Simon Josefsson  <jas@extundo.com>
34587
34588         * lib/check-version.h, lib/check-version.c: New files.
34589
34590 2005-06-28  Simon Josefsson  <jas@extundo.com>
34591
34592         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
34593         collision with global variable.  Better indentation.  Don't
34594         increment buffer pointer beyond buffer end.  Based on comments
34595         from Paul Eggert <eggert@cs.ucla.edu>.
34596
34597         * lib/base64.h: Indent.
34598
34599 2005-06-28  Simon Josefsson  <jas@extundo.com>
34600
34601         * doc/gnulib.texi (Library version handling): New section.
34602
34603 2005-06-28  Jim Meyering  <jim@meyering.net>
34604
34605         * check-module (find_included_lib_files): Hard-code another
34606         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
34607         but modules/fts-lgpl (correctly) does not list those files.
34608
34609         * modules/canonicalize (Files): Add lib/pathmax.h.
34610
34611 2005-06-25  Simon Josefsson  <jas@extundo.com>
34612
34613         * modules/check-version: New file.
34614
34615 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
34616
34617         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
34618         initializer of struct addrinfo, as an indication that we don't
34619         care how many members the structure has.
34620
34621 2005-06-24  Derek Price  <derek@ximbiot.com>
34622         and Bruno Haible  <bruno@clisp.org>
34623
34624         Remove stat module & update lstat.
34625         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
34626         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
34627         * m4/stat.m4: Remove this file.
34628
34629 2005-06-24  Derek Price  <derek@ximbiot.com>
34630         and Bruno Haible  <bruno@clisp.org>
34631
34632         Remove stat module & update lstat.
34633         * lib/stat.c: Remove this file...
34634         (slash_aware_lstat): ...moving this content and its support...
34635         * lib/lstat.c (rpl_lstat): ...into here.
34636         * lib/lstat.h: New file.
34637
34638 2005-06-24  Derek Price  <derek@ximbiot.com>
34639         and Bruno Haible  <bruno@clisp.org>
34640
34641         Remove stat module & update lstat.
34642         * config/srclist.txt (libc sources): Remove stat.
34643
34644 2005-06-24  Derek Price  <derek@ximbiot.com>
34645         and Bruno Haible  <bruno@clisp.org>
34646
34647         Remove stat module & update lstat.
34648         * MODULES.html.sh (stat): Remove.
34649         * MODULES.html: Regenerated.
34650         * modules/lstat (Description): Correct function name.
34651         (Files): Add "lstat.h".
34652         (Depends-on): Remove stat, add xalloc, stat-macros.
34653         * modules/stat: Remove this file.
34654         (Include): Add "lstat.h", remove <sys/stat.h>.
34655
34656 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
34657
34658         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
34659         (ranged_convert): Don't save conversion in a temporary struct.
34660         This causes a warning with GCC 4.0.0, and anyway in the typical
34661         case it's not worth the extra 100 bytes or so of code.
34662         (ranged_convert, __mktime_internal): When calling a function via a
34663         pointer P, use P () rather than (*P) (), as we now assume C89 or
34664         better.
34665
34666 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
34667
34668         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
34669         "who -r" failed to give output.  Problem reported by Tim Waugh.
34670
34671         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
34672         (xcalloc): Use it to avoid needless tests.
34673         Problem reported by Jim Meyering.
34674
34675 2005-06-20  Derek Price  <derek@ximbiot.com>
34676
34677         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
34678         unnecessary for Autoconfs > 2.59c.
34679
34680 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
34681
34682         * lib/argp.h (__option_is_short): Check upper limit of
34683         __key. Isprint() requires its argument to have the value
34684         of an unsigned char or EOF.
34685
34686 2005-06-16  Jim Meyering  <jim@meyering.net>
34687
34688         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
34689         when either N or S is zero.
34690
34691 2005-06-16  Derek Price  <derek@ximbiot.com>
34692
34693         * m4/bison.m4: Declare YACC & YFLAGS precious.
34694
34695 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
34696
34697         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
34698         multibyte string or pattern, fall back on unibyte matching.
34699         Problem reported by James Youngman.
34700
34701 2005-06-08  Bruno Haible  <bruno@clisp.org>
34702
34703         * modules/csharpcomp: New file.
34704         * MODULES.html.sh (C#): Add csharpcomp.
34705
34706 2005-06-08  Bruno Haible  <bruno@clisp.org>
34707
34708         * m4/csharpcomp.m4: New file, from GNU gettext.
34709
34710 2005-06-08  Bruno Haible  <bruno@clisp.org>
34711
34712         * lib/csharpcomp.h: New file, from GNU gettext.
34713         * lib/csharpcomp.c: New file, from GNU gettext.
34714         * lib/csharpcomp.sh.in: New file, from GNU gettext.
34715
34716 2005-06-08  Bruno Haible  <bruno@clisp.org>
34717
34718         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
34719         warning on mingw.
34720
34721 2005-06-07  Derek Price  <derek@ximbiot.com>
34722
34723         Sync from CVS.
34724         * lib/glob_.h: Indent nested #ifdef.
34725
34726 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
34727
34728         Sync from coreutils.
34729         Use "file name" when talking about file names, instead of "filename"
34730         or "path", as per the GNU coding standards.
34731         * lib/mkdir-p.c: Renamed from makepath.c.
34732         (make_dir_parents): Renamed from make_path.  All callers changed.
34733         * lib/mkdir-p.h: Likewise.  All includers changed.
34734         * lib/filenamecat.c: Renamed from path-concat.c.
34735         (file_name_concat): Renamed from path_concat.  All callers changed.
34736         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
34737         * lib/filenamecat.h: Likewise.  All includers changed.
34738         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
34739         in comments or local variable names.
34740         * lib/basename.c: Likewise.
34741         * lib/canonicalize.c, canonicalize.h: Likewise.
34742         * lib/dirname.c, dirname.h: Likewise.
34743         * lib/euidaccess.c: Likewise.
34744         * lib/exclude.c: Likewise
34745         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
34746         * lib/fsusage.c, fsuage.h: Likewise.
34747         * lib/fts.c, fts_.h: Likewise.
34748         * lib/getcwd.c: Likewise.
34749         * lib/getloadavg.c: Likewise.
34750         * lib/mkstemp.c: Likewise.
34751         * lib/mountlist.c, mountlist.h: Likewise.
34752         * lib/openat.c, openat.h: Likewise.
34753         * lib/readlink-stub.c: Likewise.
34754         * lib/readutmp.c, readutmp.h: Likewise.
34755         * lib/rename.c: Likewise.
34756         * lib/rmdir.c: Likewise.
34757         * lib/same.c: Likewise.
34758         * lib/savedir.c: Likewise.
34759         * lib/stripslash.c: Likewise.
34760         * lib/tempname.c: Likewise.
34761         * lib/xreadlink.c: Likewise.
34762         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
34763         All uses changed.
34764         * lib/exclude.h: Likewise.
34765
34766         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
34767         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
34768         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
34769         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
34770         * lib/pathmax.h: Include <limits.h> unconditionally, since other
34771         files have been getting away with it for years (MORE/BSD 4.3
34772         is extinct now).
34773         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
34774         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
34775
34776         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
34777         Define to 256, not 255, as per modern POSIX.
34778
34779 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
34780
34781         Sync from coreutils.
34782         Use "file name" when talking about file names, instead of "filename"
34783         or "path", as per the GNU coding standards.
34784         * MODULES.html.sh: mkdir-p renamed from makepath.
34785         filenamecat renamed from path-concat.
34786         * modules/filenamecat: Renamed from modules/path-concat.
34787         (Files): filenamecat.h and filenamecat.c renamed from
34788         path-concat.h and path-concat.c.
34789         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
34790         (Include): filenamecat.h, not path-concat.h.
34791         * modules/mkdir-p: Renamed from modules/makepath.
34792         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
34793         makepath.c.
34794         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
34795         (Include): mkdir-p.h, not makepath.h.
34796
34797 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
34798
34799         Sync from coreutils.
34800         * m4/mkdir-p.m4: Renamed from makepath.m4.
34801         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
34802         Rename files from makepath.c to mkdir-p.c, and from
34803         makepath.h to mkdir-p.h.
34804         * m4/filenamecat.m4: Renamed from path-concat.m4.
34805         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
34806         Rename files from path-concat.c to filenamecat.c,
34807         and from path-concat.h to filenamecat.h.
34808         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
34809         "file name" in local variables or comments.
34810         * m4/rename.m4: Likewise.
34811
34812 2005-06-01  Bruno Haible  <bruno@clisp.org>
34813
34814         * modules/csharpexec: New file.
34815         * MODULES.html.sh (C#): New section.
34816
34817 2005-06-01  Bruno Haible  <bruno@clisp.org>
34818
34819         * m4/csharp.m4: New file, from GNU gettext.
34820         * m4/csharpexec.m4: New file, from GNU gettext.
34821
34822 2005-06-01  Bruno Haible  <bruno@clisp.org>
34823
34824         * lib/csharpexec.h: New file, from GNU gettext.
34825         * lib/csharpexec.c: New file, from GNU gettext.
34826         * lib/csharpexec.sh.in: New file, from GNU gettext.
34827
34828 2005-05-31  Derek Price  <derek@ximbiot.com>
34829             Paul Eggert  <eggert@cs.ucla.edu>
34830
34831         Sync from cvs.
34832         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
34833
34834 2005-05-31  Derek Price  <derek@ximbiot.com>
34835             Paul Eggert  <eggert@cs.ucla.edu>
34836
34837         Sync from cvs.
34838         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
34839
34840 2005-05-29  Derek Price  <derek@ximbiot.com>
34841
34842         * config/srclist.txt (glob_.h, glob.c): Add these files.
34843
34844 2005-05-29  Derek Price  <derek@ximbiot.com>
34845
34846         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
34847         * modules/glob: New file.
34848         * modules/getlogin_r: Add link to POSIX spec in description.
34849
34850 2005-05-29  Derek Price  <derek@ximbiot.com>
34851             Paul Eggert  <eggert@cs.ucla.edu>
34852
34853         * m4/glob.m4: New file.
34854
34855 2005-05-29  Derek Price  <derek@ximbiot.com>
34856             Paul Eggert  <eggert@cs.ucla.edu>
34857
34858         * lib/glob_.h, lib/glob.c: New files.
34859
34860 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
34861
34862         * modules/fts (Files): Remove m4/inttypes-pri.m4.
34863         * modules/fts-lgpl (Depends-on): Remove gettext.
34864
34865 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
34866
34867         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
34868         and don't require gt_INTTYPES_PRI.
34869
34870 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
34871
34872         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
34873
34874         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
34875         the configuration hassle isn't worth it.
34876         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
34877         (LONGEST_MODIFIER, PRIuMAX): Remove.
34878
34879 2005-05-27  Bruno Haible  <bruno@clisp.org>
34880
34881         * lib/getlogin_r.h: Remove second include of <stddef.h>.
34882
34883 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
34884
34885         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
34886         _POSIX_PTHREAD_SEMANTICS for Solaris.
34887
34888 2005-05-25  Derek Price  <derek@ximbiot.com>
34889
34890         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
34891
34892 2005-05-25  Derek Price  <derek@ximbiot.com>
34893             Paul Eggert  <eggert@cs.ucla.edu>
34894
34895         * modules/getlogin_r, m4/getlogin_r.m4: New files.
34896         * lib/getlogin_r.c, getlogin_r.h: New files.
34897
34898 2005-05-25  Bruno Haible  <bruno@clisp.org>
34899             Derek Price  <derek@ximbiot.com>
34900
34901         * lib/getlogin_r.h: Simplify API documentation.
34902
34903 2005-05-23  Derek Price  <derek@ximbiot.com>
34904
34905         * modules/minmax (Files): Add m4/minmax.m4.
34906         (configure.ac): Add gl_MINMAX.
34907
34908 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
34909
34910         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
34911         so that unistd-safer.h (GPL'ed code) need not be included.
34912
34913 2005-05-22  Bruno Haible  <bruno@clisp.org>
34914
34915         * m4/minmax.m4: New file.
34916         Based on a patch by Derek Price <derek@ximbiot.com>.
34917
34918 2005-05-22  Bruno Haible  <bruno@clisp.org>
34919
34920         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
34921         (INT64_MIN): Fix definition.
34922         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
34923
34924         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
34925         NEED_SIGNED_INT_TYPES.
34926
34927         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
34928         HAVE_SYSTEM_INTTYPES.
34929
34930 2005-05-22  Bruno Haible  <bruno@clisp.org>
34931
34932         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
34933         Also include <sys/param.h> if it defines MIN, MAX.
34934         Based on a patch by Derek Price <derek@ximbiot.com>.
34935
34936 2005-05-21  Jim Meyering  <jim@meyering.net>
34937
34938         * modules/fts (Files): Add m4/inttypes-pri.m4.
34939         (Depends-on): Add lstat and remove gettext.  Alphabetize.
34940
34941 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
34942
34943         New fts module.
34944         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
34945         (setup_dir, free_dir): New functions.
34946         (enter_dir, leave_dir): Define trivial
34947         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
34948         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
34949         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
34950         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
34951         Move to fts-cycle.c.
34952         (fts_open): Use setup_dir.
34953         (fts_close): Use free_dir.
34954         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
34955         This adds a label and some gotos, but the alternatives were messier.
34956         Check for memory allocation failure when entering a dir.
34957         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
34958         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
34959         (FTS): New member fts_cycle, that is a union that contains the
34960         old active_dir_ht and cycle_state.  All uses changed to mention
34961         fts_cycle.ht and fts_cycle.state.
34962         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
34963         fts.c, with the following changes:
34964         (setup_dir, free_dir): New functions.
34965         (enter_dir): Now returns bool.  Return true if successful, false
34966         if memory exhausted.  All callers changed.
34967         Do not bother partly cleaning up on
34968         memory allocation failure; that is free_dir's job.
34969         However, free ad if hash_insert fails, to avoid memory leak.
34970         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
34971         fts->fts_options to see which union member to use.
34972
34973 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
34974
34975         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
34976         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
34977
34978 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
34979
34980         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
34981
34982 2005-05-20  Jim Meyering  <jim@meyering.net>
34983
34984         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
34985         Now a macro, to pacify GCC.
34986
34987 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
34988
34989         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
34990         of -1.
34991
34992 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
34993
34994         * lib/chown.c (rpl_chown): Return -1 on failure.
34995
34996 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
34997
34998         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
34999         Don't check for stddef.h.
35000         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
35001         don't use its results.
35002         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
35003         since we include them unconditionally.  Don't require
35004         AM_STDBOOL_H, since stdbool is a prerequisite.
35005         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
35006         since we assume C89 or better.
35007         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
35008         as we don't use their results.
35009         Don't check for fchdir, memmove, memset, strrchr, as we use
35010         them unconditionally.
35011         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
35012         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
35013
35014 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
35015
35016         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
35017         Include <stddef.h> unconditionally, since we assume C89 now.
35018         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
35019         * lib/fts.c: Include fts_.h first, to check interface.
35020         Do not include intprops.h; no longer needed.
35021         Include cycle-check.h and hash.h, since fts_.h no longer does.
35022         Remove unnecessary casts of closedir to void.
35023         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
35024         decide whether to decrement nlinks.
35025         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
35026         (FTS): Use struct hash_table * instead of Hash_table, so that
35027         we no longer need to include hash.h here.
35028
35029 2005-05-18  Jim Meyering  <jim@meyering.net>
35030
35031         * modules/dirfd (License): Change to LGPL.  Most of the code
35032         is already in the public domain.
35033
35034 2005-05-18  Jim Meyering  <jim@meyering.net>
35035
35036         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
35037         Reported by Yoann Vandoorselaere.
35038
35039 2005-05-17  Jim Meyering  <jim@meyering.net>
35040
35041         * m4/fts.m4: New file, from coreutils.
35042
35043 2005-05-17  Jim Meyering  <jim@meyering.net>
35044
35045         * lib/fts.c, lib/fts_.h: New files, from coreutils.
35046
35047 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
35048
35049         Sync from coreutils.
35050         * m4/unlinkdir.m4: New file.
35051
35052 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
35053
35054         Sync from coreutils.
35055         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
35056         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
35057         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
35058         White space changes only.
35059         * lib/makepath.c (make_path): Port to hosts where leading "//" is
35060         special.
35061         * lib/yesno.c: Include getline.h, not ctype.h.
35062         (yesno): Don't remove leading white space; POSIX doesn't allow it.
35063         Use getline to remove arbitrary restriction on response length.
35064
35065 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
35066
35067         * config/srclist-update: Spell out "Street" in FSF postal
35068         mail address; this is the style the FSF seems to prefer.
35069
35070         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
35071         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
35072         this updates FSF postal mail address.
35073
35074         Sync from coreutils.
35075         * modules/unlinkdir: New file.
35076         * modules/yesno (Depends-on): Add getline.
35077         * MODULES.html.sh (File system functions): Add unlinkdir.
35078
35079 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
35080
35081         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
35082         lib/strsep.h:
35083         Change the initial comment to refer to GPL, not LGPL.
35084         gnulib-tool will change it to LGPL as needed.
35085
35086         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
35087         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
35088         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
35089         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
35090         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
35091         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
35092         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
35093         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
35094         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
35095         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
35096         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
35097         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
35098         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
35099         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
35100         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
35101         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
35102         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
35103         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
35104         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
35105         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
35106         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
35107         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
35108         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
35109         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
35110         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
35111         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
35112         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
35113         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
35114         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
35115         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
35116         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
35117         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
35118         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
35119         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
35120         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
35121         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
35122         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
35123         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
35124         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
35125         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
35126         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
35127         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
35128         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
35129         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
35130         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
35131         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
35132         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
35133         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
35134         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
35135         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
35136         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
35137         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
35138         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
35139         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
35140         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
35141         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
35142         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
35143         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
35144         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
35145         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
35146         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
35147         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
35148         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
35149         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
35150         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
35151         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
35152         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
35153         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
35154         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
35155         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
35156         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
35157         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
35158         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
35159         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
35160         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
35161         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
35162         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
35163         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
35164         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
35165         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
35166         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
35167         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
35168         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
35169         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
35170         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
35171         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
35172         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
35173         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
35174         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
35175         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
35176         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
35177         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
35178         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
35179         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
35180         lib/yesno.c, lib/yesno.h:
35181         Update FSF postal mail address.
35182
35183 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
35184
35185         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
35186         tests/test-memmem.c, tests/test-stpncpy.c:
35187         Update FSF postal mail address.
35188
35189 2005-05-13  Bruno Haible  <bruno@clisp.org>
35190
35191         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
35192         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
35193         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
35194         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
35195         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
35196         Add support for 64-bit integers in the MSVC compiler.
35197
35198 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35199
35200         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
35201
35202 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
35203
35204         * gnulib-tool (func_import): Sort and uniquify recommended includes.
35205
35206 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
35207
35208         * doc/getdate.texi (General date syntax): Don't say that date
35209         date --iso-8601=ns generates acceptable dates; it doesn't yet.
35210         Problem reported by Nic Ferrier.
35211
35212 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
35213
35214         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
35215         specified in ai_socktype. Fix invalid ai_protocol
35216         check. ai_protocol is usually set to 0 or depending on
35217         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
35218         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
35219         ai_socktype / ai_protocol in the returned addrinfo structure.
35220
35221 2005-05-10  Simon Josefsson  <jas@extundo.com>
35222
35223         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
35224         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
35225
35226 2005-05-10  Karl Berry  <karl@gnu.org>
35227
35228         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
35229         (from http://www.gnu.org/licenses).
35230         * doc/COPYING.LIB: also rename to COPYING.LESSER.
35231         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
35232         fdl.texi suffices.
35233
35234 2005-05-10  Karl Berry  <karl@gnu.org>
35235
35236         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
35237         (COPYING.DOC): remove.
35238
35239         * config/srclist-update: new FSF address.
35240
35241 2005-05-10  Derek Price  <derek@ximbiot.com>
35242
35243         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
35244         possible.
35245
35246 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
35247             Bruno Haible  <bruno@clisp.org>
35248
35249         * modules/inet_ntop: New file.
35250         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
35251         inet_ntop.
35252
35253 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
35254             Bruno Haible  <bruno@clisp.org>
35255
35256         * m4/inet_ntop.m4: New file.
35257
35258 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
35259             Bruno Haible  <bruno@clisp.org>
35260
35261         * lib/inet_ntop.h: New file.
35262         * lib/inet_ntop.c: New file, from glibc with modifications.
35263
35264 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
35265
35266         * modules/time_r (License): Change to LGPL.
35267         * modules/extensions (License): Change to LGPL.  Actually,
35268         the license is more permissive than that, but currently gnulib-tool
35269         doesn't know how to handle more-permissive licenses.
35270
35271         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
35272         Problem reported by Dave Love.
35273
35274 2005-05-08  Jim Meyering  <jim@meyering.net>
35275
35276         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
35277         blank.
35278
35279 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
35280
35281         * modules/argmatch (Depends-on): Add stdbool.
35282         * modules/backupfile (Depends-on): Likewise.
35283         * modules/chdir-long (Depends-on): Likewise.
35284         * modules/closeout (Depends-on): Likewise.
35285         * modules/cycle-check (Depends-on): Likewise.
35286         * modules/dirname (Depends-on): Likewise.
35287         * modules/fnmatch (Depends-on): Likewise.
35288         * modules/fsusage (Depends-on): Likewise.
35289         * modules/fwriteerror (Depends-on): Likewise.
35290         * modules/getcwd (Depends-on): Likewise.
35291         * modules/getloadavg (Depends-on): Likewise.
35292         * modules/hard-locale (Depends-on): Likewise.
35293         * modules/makepath (Depends-on): Likewise.
35294         * modules/mountlist (Depends-on): Likewise.
35295         * modules/nanosleep (Depends-on): Likewise.
35296         * modules/posixtm (Depends-on): Likewise.
35297         * modules/quotearg (Depends-on): Likewise.
35298         * modules/readtokens (Depends-on): Likewise.
35299         * modules/readtokens0 (Depends-on): Likewise.
35300         * modules/readutmp (Depends-on): Likewise.
35301         * modules/save-cwd (Depends-on): Likewise.
35302         * modules/strftime (Depends-on): Likewise.
35303         * modules/userspec (Depends-on): Likewise.
35304         * modules/utimecmp (Depends-on): Likewise.
35305         * modules/xgetcwd (Depends-on): Likewise.
35306         * modules/xnanosleep (Depends-on): Likewise.
35307         * modules/xstrtod (Depends-on): Likewise.
35308         * modules/yesno (Depends-on): Likewise.
35309
35310 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
35311
35312         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
35313         needless checks.
35314
35315 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
35316
35317         Merge from coreutils.  Among other things,
35318         add bulletproofing for cases where stdin, stdout, or stderr are closed.
35319         * lib/fd-safer.c: New file.
35320         * lib/fcntl-safer.h, open-safer.c: Remove.
35321         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
35322         * lib/dup-safer.c: Include unistd-safer.h first.
35323         Don't include errno.h.
35324         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
35325         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
35326         * lib/file-type.c: Rely on file-type.h change.
35327         * lib/getloadavg.c: Include unistd-safer.h.
35328         (getloadavg): Use safer open.
35329         * lib/getusershell.c: Include "stdio-safer.h".
35330         (getusershell): Use safer fopen.
35331         * lib/long-options.c (long_options): Use NULL rather than 0.
35332         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
35333         'free'.
35334         * lib/modechange.c: Likewise.
35335         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
35336         (MODE_DONE): New constant.
35337         (struct mode_change): Remove 'next' member.
35338         (make_node_op_equals): New function; like the old one of the
35339         same name, except it allocates an array.
35340         (mode_compile, mode_create_from_ref): Use it.
35341         (mode_compile): Allocate result as an array, not a linked list.
35342         Parse octal string ourself, so that we catch mistakes like "+0".
35343         (mode_adjust): Arg is an array, not a linked list.
35344         * lib/modechange.c: Include stat-macros.h, xalloc.h.
35345         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
35346         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
35347         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
35348         Remove.  This is now stat-macros.h's job.
35349         (talloc): Remove.  All callers replaced by xalloc, so that
35350         our invokers don't have to worry about reporting memory failures.
35351         (make_node_op_equals): Remove.
35352         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
35353         New constants.
35354         (struct mode_change): Moved here from modechange.h.
35355         (mode_append_entry): Remove.
35356         (mode_compile): Remove MASKED_OPS arg, since it encouraged
35357         apps to have incorrect behavior.  Use simpler algorithm for head
35358         and tail.  Don't futz with umask; that's now the job of mode_adjust.
35359         Detect more invalid usages rather than having somewhat-random behavior.
35360         Don't insert an "a=" action, as that leads to incorrect behavior.
35361         (mode_compile, mode_create_from_ref): Return NULL on error instead
35362         of an enum, since now there's only one way to have an error.  All
35363         callers changed.
35364         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
35365         at the correct time.  Simplify calculation of "+u" and its ilk.
35366         Don't mishandle "+X".
35367         (mode_free): Remove "register" and localize decls.
35368         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
35369         (struct mode_change): Move to modechange.c; callers don't
35370         need to see this stuff.
35371         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
35372         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
35373         (mode_change, mode_adjust): Reflect the new signatures noted above.
35374         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
35375         that might redefine system include files.
35376         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
35377         (my_usleep): Use NULL rather than (void *) 0.
35378         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
35379         Use siginterrupt to specify that system calls should be interrupted.
35380         (rpl_nanosleep): Move initialization of suspended closer to call of
35381         my_usleep.
35382         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
35383         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
35384         (desirable_utmp_entry): New function.
35385         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
35386         using x2nrealloc, to simplify logic.
35387         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
35388         size calculation.  Do not assume utmp file is a regular file.
35389         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
35390         (READ_UTMP_CHECK_PIDS): New constant.
35391         * lib/save-cwd.c: Include unistd-safer.h.
35392         (save_cwd): Use fd_safer.
35393         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
35394         [!_LIBC] Include "stat-macros.h" instead.
35395         * lib/unistd-safer.h (fd_safer): New decl.
35396
35397 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
35398
35399         * modules/getloadavg (Depends-on): Add unistd-safer.
35400         * modules/getusershell (Depends-on): Add stdio-safer.
35401         * modules/lstat (Depends-on): Remove xalloc.
35402         * modules/mkstemp (Depends-on): Add stat-macros.
35403         * modules/modechange (Depends-on): Remove xstrtol.
35404         Add stat-macros, xalloc.
35405         * modules/save-cwd (Depends-on): Add unistd-safer.
35406         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
35407         * modules/unistd-safer (Files): Add lib/fd-safer.c
35408         (Makefile.am): Remove lib_SOURCES.
35409
35410         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
35411         Remove fcntl-safer; unistd-safer supersedes it.
35412
35413 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
35414
35415         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
35416         AC_HEADER_STAT.
35417         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
35418         (gl_PREREQ_CHOWN): Remove.
35419         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
35420         it.  Don't require AC_HEADER_STAT.
35421         (gl_PREREQ_LSTAT): Remove.
35422         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
35423         Don't require AC_HEADER_STAT.
35424         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
35425         (gl_PREREQ_RMDIR): Remove.
35426         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
35427         mention stat-macros.h or AC_HEADER_STAT, since we'll make
35428         the stat-macros module a prerequisite.
35429         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
35430         * m4/filemode.m4 (gl_FILEMODE): Likewise.
35431         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
35432         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
35433         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
35434         variable names.
35435         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
35436         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
35437         variable prefixes.
35438         * m4/fcntl-safer.m4: Remove.
35439         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
35440         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
35441         Invoke gl_PREREQ_FD_SAFER.
35442         (gl_PREREQ_FD_SAFER): New macro.
35443         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
35444         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
35445         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
35446         Remove duplicate call to AC_LIBOBJ(readutmp).
35447         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
35448
35449         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
35450         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
35451
35452 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
35453
35454         * MODULES.html.sh (Misc): Add byteswap.
35455
35456 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
35457
35458         * modules/getcwd (Depends-on): Add extensions.
35459         * modules/openat (Depends-on): Likewise.
35460
35461 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
35462
35463         * modules/byteswap: New file.
35464
35465 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
35466
35467         * m4/byteswap.m4: New file.
35468
35469 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
35470
35471         * lib/byteswap_.h: New file.
35472
35473 2005-04-25  Karl Berry  <karl@gnu.org>
35474
35475         * m4/gettext.m4: Update from GNU gettext 0.14.4.
35476
35477 2005-04-25  Albert Chin  <china@thewrittenword.com>
35478
35479         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
35480         Toolkit C bug.
35481
35482 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
35483
35484         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
35485         (func_ln_if_changed) Remove forcibly for no error message
35486         in case file does not exist.
35487
35488 2005-04-19  Simon Josefsson  <jas@extundo.com>
35489
35490         * gnulib-tool (Options): Make --symlink mean --symbolic.
35491
35492 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
35493
35494         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
35495
35496 2005-04-16  Simon Josefsson  <jas@extundo.com>
35497
35498         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
35499
35500 2005-04-15  Simon Josefsson  <jas@extundo.com>
35501
35502         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
35503
35504 2005-04-15  Simon Josefsson  <jas@extundo.com>
35505
35506         * gnulib-tool: Rename --symlink to --symbolic.
35507
35508 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
35509
35510         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
35511         symbolic links to files instead of copying/moving.  Add --aux-dir,
35512         specifying directory relative --dir where auxiliary build tools
35513         are placed.
35514
35515 2005-04-14  Bruno Haible  <bruno@clisp.org>
35516
35517         * modules/allocsa (License): Change to LGPL.
35518         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
35519
35520 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
35521
35522         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
35523         that "UTC +1 second" continues to work.  Problem reported
35524         by Dmitry V. Levin.
35525         (relunit_snumber): New rule.
35526         (relunit): Use it.
35527
35528 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
35529
35530         * lib/getdate.y (universal_time_zone_table): New constant.
35531         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
35532         universal_time_zone_table.
35533         (lookup_zone): Prefer universal_time_zone_table to
35534         local_time_zone_table, so that "GMT" time stamps are allowed in
35535         London during the summer.  Problem reported by Ian Abbott.
35536
35537 2005-04-12  Jim Meyering  <jim@meyering.net>
35538
35539         * lib/human.c (humblock): Set *options even when returning due to
35540         xstrtoumax conversion failure.  Thanks to a used-uninitialized
35541         warning from gcc-4.
35542
35543 2005-04-09  Jim Meyering  <jim@meyering.net>
35544
35545         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
35546         -Wuninitialized: initialize tm0.tm_year.
35547
35548 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
35549
35550         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
35551         count, since there's no maximum.  All uses changed.
35552         Add member dsts_seen.
35553         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
35554         not being INT_MAX.
35555         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
35556         Use pc_rels_seen to decide whther a date is absolute.
35557
35558         * lib/getdate.y (number): Don't overwrite year.
35559         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
35560         check.
35561
35562 2005-04-02  Simon Josefsson  <jas@extundo.com>
35563
35564         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
35565         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
35566
35567 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
35568
35569         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
35570         where no absolute path name can be longer than PATH_MAX.
35571
35572 2005-03-27  Jim Meyering  <jim@meyering.net>
35573
35574         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
35575
35576 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
35577
35578         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
35579         "one's complement" -> "ones' complement" in comment, as per Knuth.
35580         "value of type" -> "type or expression" in comment.
35581         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
35582
35583 2005-03-26  Jim Meyering  <jim@meyering.net>
35584
35585         Comment nits.
35586         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
35587         Correct typos: s/or/of/.
35588
35589 2005-03-26  Jim Meyering  <jim@meyering.net>
35590
35591         * modules/check-include-files: Move to ../ and rename to...
35592         * check-module: ...this.
35593
35594 2005-03-25  Jim Meyering  <jim@meyering.net>
35595
35596         * modules/xvasprintf (Files): Add xalloc.h.
35597
35598 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
35599
35600         * modules/gettext (Files): config/config.rpath ->
35601         build-aux/config.rpath
35602         * modules/iconv (Files): Likewise.
35603         Problem reported by Oskar Liljeblad.
35604
35605 2005-03-23  Jim Meyering  <jim@meyering.net>
35606
35607         * modules/check-include-files: New script to check for
35608         missing dependencies, multiple includes, etc.
35609
35610         * modules/c-strtold (Depends-on): Add xalloc.
35611         * modules/c-strtod (Depends-on): Add xalloc.
35612         * modules/hash (Depends-on): Add xalloc.
35613         (Files): Remove lib/xalloc.h.
35614
35615         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
35616         * modules/userspec (Files): Add lib/inttostr.h.
35617
35618 2005-03-23  Jim Meyering  <jim@meyering.net>
35619
35620         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
35621
35622 2005-03-22  Jim Meyering  <jim@meyering.net>
35623
35624         * modules/stat-macros: New module.
35625         * modules/canonicalize, modules/euidaccess, modules/file-type,
35626         * modules/filemode, modules/lchown, modules/makepath,
35627         * modules/rmdir, modules/stat: Depend on new stat-macros module
35628         rather than listing lib/stat-macros.h manually.
35629         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
35630
35631 2005-03-22  Jim Meyering  <jim@meyering.net>
35632
35633         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
35634
35635 2005-03-22  Bruno Haible  <bruno@clisp.org>
35636
35637         * config/srclist.txt: Replace target directory 'config' with
35638         'build-aux'.
35639         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
35640         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
35641         ../build-aux/.
35642
35643 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
35644
35645         * modules/chdir-long (Depends-on): Add mempcpy.
35646
35647         * modules/acl, modules/backupfile, modules/c-strtod,
35648         modules/c-strtold, modules/canon-host, modules/canonicalize,
35649         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
35650         modules/exclude, modules/exitfail, modules/file-type,
35651         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
35652         modules/getdate, modules/getline, modules/getpagesize,
35653         modules/getpass, modules/getugroups, modules/group-member,
35654         modules/hard-locale, modules/hash, modules/human, modules/idcache,
35655         modules/inttostr, modules/long-options, modules/makepath,
35656         modules/md5, modules/memcasecmp, modules/memcoll,
35657         modules/modechange, modules/mountlist, modules/path-concat,
35658         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
35659         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
35660         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
35661         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
35662         modules/strftime, modules/strndup, modules/strverscmp,
35663         modules/timespec, modules/unlocked-io, modules/userspec,
35664         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
35665         modules/yesno:
35666         Remove lib_SOURCES line from Makefile.am section, as this is now
35667         done automatically by the corresponding Autoconf macro.
35668
35669 2005-03-21  Jim Meyering  <jim@meyering.net>
35670
35671         Changes imported from coreutils.
35672
35673         * lib/cycle-check.c: Don't include xalloc.h.
35674
35675         * lib/path-concat.c: Don't include assert.h.
35676         (path_concat): Remove assertion that would have triggered
35677         for ABASE starting with more than one slash.
35678         Reported by Andreas Schwab.
35679
35680         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
35681         properly when ABASE is an absolute file name.
35682         Correct the description of this function.
35683         Include <assert.h>.
35684         Add an assertion and a test driver.
35685         This fixes a bug introduced on 2004-07-02.
35686         Andreas Schwab reported the resulting failure of cp --parents:
35687         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
35688
35689 2005-03-21  Jim Meyering  <jim@meyering.net>
35690
35691         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
35692         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
35693
35694 2005-03-21  Jim Meyering  <jim@meyering.net>
35695         and  Paul Eggert  <eggert@cs.ucla.edu>
35696
35697         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
35698         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
35699         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
35700         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
35701         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
35702         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
35703         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
35704         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
35705         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
35706         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
35707         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
35708         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
35709         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
35710         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
35711         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
35712         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
35713         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
35714         for these modules.
35715
35716 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
35717
35718         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
35719         (which shouldn't happen), generate nothing instead of returning 0
35720         immediately, so that nstrftime (NULL, ...) doesn't return 0.
35721
35722 2005-03-16  Bruno Haible  <bruno@clisp.org>
35723
35724         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
35725         HAVE_LONGLONG_64BIT.
35726
35727 2005-03-16  Bruno Haible  <bruno@clisp.org>
35728
35729         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
35730         HAVE_LONGLONG_64BIT.
35731
35732 2005-03-16  Bruno Haible  <bruno@clisp.org>
35733
35734         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
35735         HAVE_LONGLONG_64BIT.
35736
35737 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
35738
35739         * lib/strftime.c (my_strftime): Prepend space to format so that we can
35740         reliably distinguish strftime failure from empty output on POSIX
35741         hosts.
35742
35743 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
35744
35745         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
35746         (iconv_string): Don't guess a size-zero buffer, as that might cause
35747         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
35748         result would be 'too large', where 'too large' is (heuristically)
35749         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
35750         overflow concerns.  This will prevent some unwanted malloc failures
35751         when the inputs are very large.
35752
35753 2005-03-15  Karl Berry  <karl@gnu.org>
35754
35755         * config/srclist.txt (config.rpath): from gettext.
35756         * config/config.rpath: update.
35757
35758 2005-03-15  Bruno Haible  <bruno@clisp.org>
35759
35760         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
35761         to 'negate'.
35762
35763         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
35764         variable.
35765
35766         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
35767         results.
35768
35769 2005-03-14  Simon Josefsson  <jas@extundo.com>
35770
35771         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
35772         <fx@gnu.org>.
35773
35774 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
35775
35776         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
35777         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
35778         intprops.h.
35779         * lib/strtol.c: Likewise.
35780
35781 2005-03-14  Jim Meyering  <jim@meyering.net>
35782
35783         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
35784         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
35785         to be nonzero so that we (and caller) can detect the difference
35786         between a valid zero-length expansion and an error return, even
35787         when the underlying strftime fails before writing anything into
35788         that location.
35789
35790 2005-03-14  Bruno Haible  <bruno@clisp.org>
35791
35792         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
35793         Update from GNU gettext 0.14.3.
35794
35795 2005-03-10  Jim Meyering  <jim@meyering.net>
35796
35797         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
35798
35799 2005-03-10  Jim Meyering  <jim@meyering.net>
35800
35801         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
35802         so that this module works on systems without fchdir.
35803
35804 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
35805
35806         Factor int-properties macros into a single file, except for
35807         glibc-related files.
35808         * lib/intprops.h: New file.
35809         * lib/getloadavg.c: Include it instead of limits.h.
35810         (INT_STRLEN_BOUND): Remove.
35811         * lib/human.c: Include intprops.h.
35812         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
35813         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
35814         302/1000.
35815         * lib/inttostr.h: Include intprops.h instead of limits.h.
35816         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
35817         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
35818         for consistency with intprops.h.
35819         (time_t_is_integer, twos_complement_arithmetic): Use them.
35820         * lib/sig2str.h: Include <signal.h>, intprops.h.
35821         (INT_STRLEN_BOUND): Remove.
35822         * lib/strftime.c (TYPE_SIGNED): Remove.
35823         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
35824         * lib/strtol.c: Adjust comments to match intprops.h.
35825         * lib/userspec.c: Include intprops.h.
35826         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
35827         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
35828         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
35829         instead of rolling our own expressions.
35830         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
35831
35832         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
35833         instead of int.
35834         (my_strftime): Do not mishandle years close to INT_MAX, by doing
35835         the right thing even if adding 1900 would overflow.  Similarly
35836         for tm_mon + 1 and tm_yday + 1.
35837         Make %Y always equivalent to %C%y, and similarly for %G and %g.
35838         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
35839         (DO_SIGNED_NUMBER): New macro.
35840         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
35841
35842 2005-03-07  Bruno Haible  <bruno@clisp.org>
35843
35844         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
35845
35846 2005-03-07  Bruno Haible  <bruno@clisp.org>
35847
35848         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
35849
35850 2005-03-04  Derek R. Price  <derek@ximbiot.com>
35851
35852         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
35853         (func_import): Only replace files via --import when they have actually
35854         changed.
35855
35856 2005-03-03  Derek R. Price  <derek@ximbiot.com>
35857
35858         * m4/mmap-anon.m4: New file.
35859         * m4/pagealign_alloc.m4: New file.
35860
35861 2005-03-03  Derek R. Price  <derek@ximbiot.com>
35862             Bruno Haible  <bruno@clisp.org>
35863
35864         * modules/pagealign_alloc: New file.
35865         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
35866
35867 2005-03-03  Derek R. Price  <derek@ximbiot.com>
35868             Bruno Haible  <bruno@clisp.org>
35869
35870         * lib/pagealign_alloc.h: New file.
35871         * lib/pagealign_alloc.c: New file.
35872
35873 2005-03-03  Bruno Haible  <bruno@clisp.org>
35874
35875         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
35876         Use an all-permissive copyright notice, recommended by RMS.
35877
35878 2005-03-02  Bruno Haible  <bruno@clisp.org>
35879
35880         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
35881         of AIX, the replacement has to be done only after <string.h> is
35882         included, therefore not in config.h. stpncpy.h does the replacement,
35883         and stpncpy.c uses it.
35884
35885 2005-03-02  Bruno Haible  <bruno@clisp.org>
35886
35887         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
35888         stpncpy.c uses it.
35889
35890 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
35891
35892         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
35893         The workaround isn't strictly needed for POSIX conformance, and
35894         it's too much of a pain to configure and maintain.  We'll ask
35895         people to fix their kernels instead.
35896         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
35897         (NANOSLEEP_BUG_WORKAROUND): Remove.
35898         (xnanosleep): Remove the workaround.
35899
35900 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
35901
35902         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
35903         Reported by Derek Price.
35904         (Include): Add "timespec.h".
35905
35906         * modules/xnanosleep (Depends-on): Remove gethrxtime.
35907
35908 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
35909
35910         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
35911         to detect nanosleep bug.
35912
35913 2005-03-01  Bruno Haible  <bruno@clisp.org>
35914
35915         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
35916
35917 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
35918
35919         * modules/gethrxtime: New file.
35920         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
35921         (Depends-on): Add gethrxtime.
35922         (configure.ac): Add gl_XNANOSLEEP.
35923         (Makefile.am): Remove lib_SOURCES line.
35924
35925 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
35926
35927         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
35928         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
35929
35930 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
35931
35932         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
35933         * lib/timespec.h (gettime): Return void, since it always
35934         succeeds now.  All uses changed.
35935         * lib/gettime.c (gettime) Likewise.
35936         [HAVE_NANOTIME]: Prefer nanotime.
35937         Assume gettimeofday succeeds, as POSIX requires.
35938         Assime time () succeeds, since other code already does.
35939         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
35940         (timespec_subtract): Remove.
35941         (NANOSLEEP_BUG_WORKAROUND): New constant.
35942         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
35943         things considerably.  Use it only on GNU/Linux hosts, since the
35944         workaround shouldn't be needed elsewhere.
35945
35946 2005-02-24  Bruno Haible  <bruno@clisp.org>
35947
35948         * modules/gettext (Files): Add m4/glibc2.m4.
35949
35950 2005-02-24  Bruno Haible  <bruno@clisp.org>
35951
35952         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
35953         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
35954         * m4/progtest.m4:
35955         Update from GNU gettext 0.14.2.
35956         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
35957
35958 2005-02-24  Bruno Haible  <bruno@clisp.org>
35959
35960         * lib/localcharset.c: Update from GNU gettext 0.14.2.
35961         * lib/config.charset: Update from GNU gettext 0.14.2.
35962
35963 2005-02-24  Bruno Haible  <bruno@clisp.org>
35964
35965         * lib/gettext.h: Update from GNU gettext 0.14.2.
35966
35967 2005-02-23  Simon Josefsson  <jas@extundo.com>
35968
35969         * m4/iconvme.m4: New file.
35970
35971 2005-02-23  Jim Meyering  <jim@meyering.net>
35972
35973         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
35974         change.
35975         Thanks to Bruno Haible for catching it.
35976
35977 2005-02-22  Simon Josefsson  <jas@extundo.com>
35978
35979         * modules/iconvme: New file.
35980
35981         * MODULES.html.sh: Add iconvme.
35982
35983 2005-02-22  Simon Josefsson  <jas@extundo.com>
35984
35985         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
35986
35987 2005-02-22  Simon Josefsson  <jas@extundo.com>
35988
35989         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
35990
35991 2005-02-22  Jim Meyering  <jim@meyering.net>
35992
35993         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
35994         s/ifndef/ifdef/.
35995
35996 2005-02-20  Neil Conway  <neilc@samurai.com>
35997
35998         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
35999         returned by OSX/Darwin if the specified buffer is not large
36000         enough for the hostname.
36001
36002 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36003
36004         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
36005         pass it to _help, otherwise the latter coredumps trying to
36006         dereference state.root_argp.
36007
36008 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
36009
36010         * modules/chdir-long (Depends-on): Add memrchr.
36011         * modules/memrchr (Files): Add lib/memrchr.h.
36012         (Include): "memrchr.h".
36013
36014 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
36015
36016         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
36017
36018 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
36019
36020         * lib/memrchr.h: New file.
36021         * lib/chdir-long.c: Include it.
36022         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
36023         Don't bother including stddef.h.
36024
36025 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
36026
36027         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
36028         inclusion.
36029         Include <sys/types.h>, for dev_t.
36030         (ME_DUMMY, ME_REMOTE): Move from here....
36031         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
36032         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
36033         Dmitry V. Levin.
36034         Include mountlist.h first, to test the interface.
36035
36036 2005-01-29  Bruno Haible  <bruno@clisp.org>
36037
36038         * lib/progname.c (program_name): Initialize.
36039         Needed when linking statically on MacOS X.
36040
36041 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
36042
36043         Sync from coreutils.
36044         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
36045         (Depends-on): Add c-strtod.
36046         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
36047
36048 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
36049
36050         Sync from coreutils.
36051         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
36052
36053         Remove files that are specific to coreutils.
36054         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
36055
36056 2005-01-28  Bruno Haible  <bruno@clisp.org>
36057
36058         * modules/javacomp: New file.
36059         * MODULES.html.sh (Java): Add javacomp.
36060
36061 2005-01-28  Bruno Haible  <bruno@clisp.org>
36062
36063         * m4/javacomp.m4: New file, from GNU gettext.
36064
36065 2005-01-28  Bruno Haible  <bruno@clisp.org>
36066
36067         * lib/javacomp.sh.in: New file, from GNU gettext.
36068         * lib/javacomp.h: New file, from GNU gettext.
36069         * lib/javacomp.c: New file, from GNU gettext.
36070
36071 2005-01-26  Simon Josefsson  <jas@extundo.com>
36072
36073         * lib/gai_strerror.c: Use GPL in header.
36074
36075 2005-01-26  Bruno Haible  <bruno@clisp.org>
36076
36077         * modules/javaexec: New file.
36078         * MODULES.html.sh (Java): Add javaexec.
36079
36080 2005-01-26  Bruno Haible  <bruno@clisp.org>
36081
36082         * m4/javaexec.m4: New file, from GNU gettext.
36083
36084 2005-01-26  Bruno Haible  <bruno@clisp.org>
36085
36086         * lib/javaexec.sh.in: New file, from GNU gettext.
36087         * lib/javaexec.h: New file, from GNU gettext.
36088         * lib/javaexec.c: New file, from GNU gettext.
36089
36090 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36091
36092         * modules/lchown (Depends-on): Remove lchown.h
36093
36094 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36095
36096         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
36097         must be defined if the header file was not found, in order
36098         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
36099
36100 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36101
36102         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
36103         initializers for struct pentry_state.
36104         (__argp_error): Check return value of __asprintf
36105         (__argp_failure): Translate error message
36106
36107         * lib/argp-parse.c: Removed braces around the expansion of N_()
36108
36109 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
36110
36111         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
36112         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
36113         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
36114         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
36115         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
36116         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
36117         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
36118         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
36119         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
36120         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
36121         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
36122         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
36123         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
36124         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
36125         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
36126         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
36127         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
36128         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
36129         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
36130         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
36131         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
36132         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
36133         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
36134         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
36135         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
36136         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
36137         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
36138         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
36139         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
36140         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
36141         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
36142         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
36143         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
36144         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
36145         xstrtol.m4, xstrtoumax.m4, yesno.m4:
36146         Use an all-permissive copyright notice, recommended by RMS.
36147
36148 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
36149
36150         * modules/chdir-long (Depends-on): Remove mempcpy.
36151
36152 2005-01-21  Jim Meyering  <jim@meyering.net>
36153
36154         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
36155         same value as for Solaris 9.
36156
36157         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
36158         component length.  This included changing the parameter to be
36159         of type `char *' rather than `char const *'.
36160         * lib/chdir-long.h (chdir_long): Update prototype.
36161
36162         * lib/openat.c (fdopendir, fstatat): New functions.
36163         * lib/openat.h: Include headers required for use of DIR and struct
36164         stat.
36165         [AT_SYMLINK_NOFOLLOW]: Define.
36166         (fdopendir, fstatat): Add prototypes.
36167
36168 2005-01-21  Bruno Haible  <bruno@clisp.org>
36169
36170         * modules/classpath: New file.
36171         * MODULES.html.sh (Java): Add classpath.
36172
36173 2005-01-21  Bruno Haible  <bruno@clisp.org>
36174
36175         * lib/classpath.h: New file, from GNU gettext.
36176         * lib/classpath.c: New file, from GNU gettext.
36177
36178 2005-01-20  Simon Josefsson  <jas@extundo.com>
36179
36180         * modules/version-etc-fsf: New file.
36181
36182 2005-01-20  Simon Josefsson  <jas@extundo.com>
36183
36184         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
36185         * lib/version-etc.c: Remove version_etc_copyright.
36186         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
36187         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
36188
36189 2005-01-20  Simon Josefsson  <jas@extundo.com>
36190
36191         * lib/base64.h (isbase64): Add.
36192
36193         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
36194         using a unsigned prototype, don't inline.
36195         (base64_decode): Use it.
36196
36197 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
36198
36199         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
36200         it.
36201
36202 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
36203
36204         * lib/save-cwd.c (save_cwd): Remove code to support the case
36205         where fchdir is missing or flaky.
36206
36207 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
36208
36209         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
36210
36211 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
36212
36213         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
36214         AC_LIBSOURCES now does this.
36215         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
36216         with new ullong_max module.
36217
36218 2005-01-19  Bruno Haible  <bruno@clisp.org>
36219
36220         * modules/sh-quote: New file.
36221         * MODULES.html.sh (Executing programs): Add sh-quote.
36222
36223 2005-01-19  Bruno Haible  <bruno@clisp.org>
36224
36225         * lib/sh-quote.h: New file, from GNU gettext.
36226         * lib/sh-quote.c: New file, from GNU gettext.
36227
36228 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
36229
36230         Merge from coreutils.
36231         * m4/ullong_max.m4: New file.
36232         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
36233         (gl_MACROS): Assume localeconv exists.
36234
36235 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
36236
36237         Merge changes from coreutils, as described below in several
36238         changelogs dated today.
36239
36240         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
36241         (O_DIRECTORY): Remove; not needed here, since "." must be
36242         a directory.  All uses removed.
36243         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
36244         universal on Suns, and we also need to test for IRIX.
36245         Revamp code to use 'if' rather than '#if'.
36246         Avoid unnecessary comparison of cwd->desc to 0.
36247
36248         * lib/utimens.c (futimens): Robustify the previous patch, by checking
36249         for known valid error numbers rather than observed invalid ones.
36250
36251 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
36252
36253         * modules/ullong_max: New file.
36254
36255         * modules/chdir-long, modules/openat: New files.
36256         * modules/save-cwd (Depends-on): Depend on chdir-long.
36257         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
36258
36259 2005-01-18  Jim Meyering  <jim@meyering.net>
36260
36261         Merge from coreutils.
36262         * m4/chdir-long.m4, m4/openat.m4: New files.
36263         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
36264         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
36265         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
36266         is sane and DOES follow symlinks.  Besides, testing 20 different
36267         systems found no broken chown implementations.
36268         Prompted by a change in rsync's copy of this macro.
36269         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
36270
36271         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
36272
36273         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
36274         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
36275         NULL-means-set-to-current-time semantics.
36276         Remove temporary file immediately, rather than waiting
36277         for configure's at-exit trap code to do it.
36278
36279 2005-01-18  Jim Meyering  <jim@meyering.net>
36280
36281         * lib/version-etc.c (version_etc_copyright): Update copyright date.
36282
36283         * lib/utimens.c (futimens): Account for the fact that futimes
36284         can also fail with errno == ENOSYS or errno == ENOENT.
36285         Patch from Dmitry V. Levin.
36286
36287         Change the name of the robust chdir function from chdir to chdir_long.
36288         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
36289         (restore_cwd): Use chdir_long, not chdir.
36290         * lib/chdir-long.c: Renamed from chdir.c.
36291         * lib/chdir-long.h: Renamed from chdir.h.
36292         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
36293         Hurd.
36294
36295 2005-01-18  Bruno Haible  <bruno@clisp.org>
36296
36297         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
36298         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
36299         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
36300         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
36301         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
36302         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
36303         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
36304         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
36305         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
36306         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
36307         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
36308         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
36309         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
36310         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
36311         Use an all-permissive copyright notice, recommended by RMS.
36312
36313 2005-01-18  Bob Proulx  <bob@proulx.com>
36314
36315         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
36316         simplify offsetof() macro construct to avoid compile failure with
36317         native HP-UX 11.0 ANSI C compiler.
36318
36319 2005-01-17  Bruno Haible  <bruno@clisp.org>
36320
36321         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
36322         redundant because stpncpy.m4 takes care of it.
36323
36324 2005-01-17  Bruno Haible  <bruno@clisp.org>
36325
36326         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
36327
36328 2005-01-17  Bruno Haible  <bruno@clisp.org>
36329
36330         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
36331         used.
36332
36333 2005-01-17  Bruno Haible  <bruno@clisp.org>
36334
36335         * lib/fwriteerror.h (fwriteerror): Change specification to include
36336         fclose.
36337         * lib/fwriteerror.c: Include <stdbool.h>.
36338         (fwriteerror): At the end, close the file stream. Record whether
36339         stdout was already closed.
36340
36341 2005-01-17  Bruno Haible  <bruno@clisp.org>
36342
36343         * lib/execute.c (environ): Declare if needed.
36344         * lib/pipe.c (environ): Likewise.
36345         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
36346
36347 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36348
36349         * modules/argp: Depend on vsnprintf
36350
36351 2005-01-10  Jim Meyering  <jim@meyering.net>
36352
36353         * modules/closeout (Depends-on): Add atexit.
36354
36355 2005-01-06  Bruno Haible  <bruno@clisp.org>
36356
36357         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
36358
36359 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
36360
36361         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
36362         definitions to be after all include files, to avoid collisions.
36363         Problem reported by Bob Proulx.
36364
36365 2005-01-04  Jim Meyering  <jim@meyering.net>
36366
36367         Changes imported from coreutils.
36368         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
36369         as the mkstemp template, use a temporary directory and an
36370         8.3-friendly template to avoid trouble on systems like DJGPP.
36371         Reported by Juan M. Guerrero via Stepan Kasal.
36372         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
36373         close. Remove the temporary directory right away, rather than waiting
36374         for configure's at-exit trap code to do it.
36375         Suggestion from Stepan Kasal.
36376
36377 2005-01-01  Simon Josefsson  <jas@extundo.com>
36378
36379         * gnulib-tool: Print #include directives when --import'ing.
36380
36381 2004-12-28  Simon Josefsson  <jas@extundo.com>
36382
36383         * tests/test-base64.c: Include required header files.  Remove
36384         unused variables.
36385
36386 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
36387
36388         * modules/error (Depends-on): Remove gettext.
36389
36390 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
36391
36392         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
36393         not needed.  This removes a dependency on the gettext module.
36394         [defined _LIBC]: Do not include <libintl.h>; not needed.
36395
36396 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
36397
36398         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
36399         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
36400
36401 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
36402
36403         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
36404         HAVE_DECL_STRTOLD.
36405
36406 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
36407
36408         * modules/getdate (Depends-on): Remove alloca-opt.
36409
36410 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
36411
36412         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
36413
36414 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
36415
36416         * lib/argp-parse.c: Include <stddef.h>.
36417         (alignof, alignto): New macros.
36418         (parser_init): Don't assume that void * is aligned sufficiently
36419         for struct option.
36420
36421         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
36422         need to extend the stack.
36423         (YYINITDEPTH): New macro, so that the initial stack isn't overly
36424         large.
36425
36426 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36427
36428         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
36429
36430 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
36431
36432         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
36433         (2004-10-24) change.  Apparently this was a false alarm.
36434
36435         * modules/getdate: Depend on alloca-opt, not alloca.
36436
36437 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
36438
36439         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
36440         Remove now-obsolete comment about AIX.
36441         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
36442         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
36443         (YYMAXDEPTH): New macro.
36444
36445 2004-12-18  Simon Josefsson  <jas@extundo.com>
36446
36447         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
36448
36449 2004-12-18  Bruno Haible  <bruno@clisp.org>
36450
36451         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
36452
36453 2004-12-18  Bruno Haible  <bruno@clisp.org>
36454
36455         * lib/fatal-signal.c (fatal_signals): Make non-const.
36456         (init_fatal_signals): New function.
36457         (uninstall_handlers, install_handlers): Ignore signals that were set to
36458         SIG_IGN.
36459         (at_fatal_signal): Call init_fatal_signals.
36460         (init_fatal_signal_set): Likewise. Ignore signals that were set to
36461         SIG_IGN.
36462         Reported by Paul Eggert.
36463
36464 2004-12-18  Bruno Haible  <bruno@clisp.org>
36465
36466         * doc/alloca.texi: New file.
36467         * doc/alloca-opt.texi: New file.
36468
36469 2004-12-17  Jim Meyering  <jim@meyering.net>
36470
36471         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
36472         Otherwise, install-sh could exit with improper exit status when
36473         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
36474
36475 2004-12-16  Simon Josefsson  <jas@extundo.com>
36476
36477         * tests/test-base64.c: Add license.
36478
36479 2004-12-15  Stepan Kasal  <address@hidden>
36480
36481         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
36482
36483 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
36484
36485         * modules/getcwd (Files): Add m4/d-ino.m4.
36486         Suggested by Mark D. Baushke.
36487
36488 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
36489
36490         * lib/getdate.y (textint): New member "negative".
36491         (time_zone_hhmm): New function.
36492         Expect 14 shift-reduce conflicts, not 13.
36493         (o_colon_minutes): New rule.
36494         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
36495         (yylex): Set the "negative" member of signed numbers.
36496
36497 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
36498
36499         * doc/getdate.texi (Time of day items, Time zone items):
36500         Describe new formats +00:00, UTC+00:00.
36501
36502 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
36503
36504         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
36505         spurious "-l"s.  Problem reported by Stepan Kasal.
36506
36507 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
36508
36509         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
36510         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
36511
36512 2004-12-04  Simon Josefsson  <jas@extundo.com>
36513
36514         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
36515         Vandoorselaere <yoann@prelude-ids.org>.
36516
36517 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
36518
36519         Changes imported from coreutils.
36520         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
36521         exist.
36522         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
36523
36524 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
36525
36526         Changes imported from coreutils.
36527         * lib/hard-locale.c: Assume <locale.h> exists.
36528         Include "strdup.h".
36529         (GLIBC_VERSION): New macro.
36530         (hard_locale): Assume setlocale exists.
36531         Rewrite to avoid #ifdef.
36532         Use strdup rather than malloc + strcpy.
36533         * lib/human.c: Assume <locale.h> exists.
36534         (human_readable): Assume localeconv exists.
36535
36536 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
36537
36538         * modules/hard-locale (Depends-on): Add strdup.
36539
36540 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
36541
36542         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
36543         convert T2, not T.  (Imported from libc.)
36544
36545 2004-11-30  Simon Josefsson  <jas@extundo.com>
36546
36547         * modules/restrict (License): Change to LGPL.
36548
36549 2004-11-30  Simon Josefsson  <jas@extundo.com>
36550
36551         * m4/restrict.m4: Add copyright and copying conditions.
36552
36553 2004-11-30  Simon Josefsson  <jas@extundo.com>
36554
36555         * m4/base64.m4: New file.
36556
36557 2004-11-30  Simon Josefsson  <jas@extundo.com>
36558
36559         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
36560         base64.
36561
36562         * tests/test-base64.c: New file.
36563
36564         * modules/base64: New file.
36565
36566 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
36567
36568         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
36569         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
36570
36571         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
36572
36573 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
36574
36575         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
36576         (__getcwd.c): Don't restore errno; glibc doesn't.
36577         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
36578         first, falling back to our code only if its results look suspicious.
36579         Ensure that the resulting buffer is only as large as necessary.
36580
36581         * lib/readutmp.c: Include readutmp.h first.
36582         Include <errno.h>, since readutmp.h no longer does that.
36583         * lib/readutmp.h: Don't include <errno.h>,
36584         <sys/param.h>, <time.h>; not needed to establish interface.
36585         (errno): Remove decl.
36586         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
36587         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
36588         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
36589
36590 2004-11-28  Simon Josefsson  <jas@extundo.com>
36591
36592         * lib/base64.h, base64.c: New file.
36593
36594 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
36595
36596         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
36597
36598 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
36599
36600         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
36601         (Depends-on): Remove pathmax, same.  Add mempcpy.
36602         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
36603         (Makefile.am): Append getcwd.h to lib_SOURCES.
36604         (Include): Add getcwd.h.
36605         (Maintainer): Change from Jim Meyering to "all, glibc",
36606         since getdate now uses intended-for-glibc code.
36607         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
36608         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
36609
36610 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
36611
36612         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
36613         HP's ANSI C compiler.
36614         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
36615         Declaring int functions causes warnings on some modern systems and
36616         shouldn't be needed to compile on ancient ones.
36617         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
36618         defined.
36619
36620         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
36621         with the following changes.
36622         (__set_errno): Parenthesize properly.
36623         Include <stdbool.h>.
36624         (MIN, MAX, MATCHING_INO): New macros.
36625         (__getcwd): Define with prototype, not K&R form.
36626         Use heuristics to allocate default buffer on stack if possible.
36627         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
36628         behavior, and to avoid the PATH_MAX limit when computing
36629         ../../../../...
36630         Use MATCHING_INO to compare inode number to file.
36631         Check for arithmetic overflow in size calculations.
36632         Fix bug in reallocation of dot array that caused getcwd to fail
36633         on directories nested deeper than 75.
36634         Be more careful about saving errno on error.
36635         Do not use realloc; use only free+malloc, as this is a bit
36636         more flexible and avoids a needless copy operation.
36637         Do not inspect st_dev and st_ino for symbolic links; POSIX
36638         doesn't specify the latter.
36639         Check for closedir errors.
36640         Avoid needless casts.
36641         Use "#ifdef weak_alias" around weak_alias, to be like other
36642         glibc code.
36643         The following changes to getcwd.c have effect only when used in
36644         gnulib; they have no effect inside glibc proper.
36645         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
36646         as alloca isn't used.
36647         (alloca, __alloca): Likewise.
36648         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
36649         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
36650         unconditionally, as gnulib assumes C89 or better.
36651         Do not include <sys/param.h>.
36652         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
36653         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
36654         better.
36655         (NULL) [!defined NULL]: Remove; we assume C89 or better.
36656         Include <dirent.h> in a way that is compatible with modern Autoconf.
36657         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
36658         New macros, if not already defined.
36659         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
36660         Use "_LIBC", not "defined _LIBC", for consistency.
36661         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
36662         a mempcpy module.
36663         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
36664         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
36665         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
36666         credit only to Jim Meyering and adjust the copyright dates.
36667         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
36668         <stdlib.h>, <unistd.h>, "pathmax.h".
36669         Instead, include "xgetcwd.h" (first) and "getcwd.h".
36670         (INITIAL_BUFFER_SIZE): Remove.
36671         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
36672
36673 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
36674
36675         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
36676         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
36677         Use the _ONCE methods, for efficiency.
36678         Check for fcntl.h.  In test program, include <errno.h>
36679         and <fcntl.h> if available.  Remove old K&R cruft from
36680         test program.  Check for common errors in GNU/Linux,
36681         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
36682         don't do AC_LIBOBJ, as that's getcwd.m4's job.
36683         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
36684         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
36685         name accordingly.
36686         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
36687         accommodate new getcwd.c.
36688         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
36689         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
36690         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
36691         that's all we need now.
36692
36693 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36694
36695         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
36696         argp-parse.c depends on getopt internals, that means we should
36697         always use our getopt, to be on the safe side.
36698         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
36699         order not to spoil the result of an eventual previous invocation
36700         of gl_GETOPT_SUBSTITUTE.
36701
36702 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36703
36704         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
36705         redefinition warnings. To avoid them, include the defines
36706         in `#if !defined __need_getopt ... #endif'. The only place
36707         where __getopt_argv_const is used is in definitions
36708         of getopt_long and getopt_long_only below, which are as well
36709         protected by `#ifndef __need_getopt'.
36710         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
36711         __need_getopt after including <stdio.h> and <unistd.h> These
36712         headers might have defined it.
36713
36714 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
36715
36716         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
36717
36718 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
36719
36720         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
36721         (futimens): New function, which uses futimes if available.
36722         (futimens, utimens): Support timespec==NULL, with same semantics
36723         as utime and utimens.
36724         * lib/utimens.h (futimens): New decl.
36725
36726 2004-11-23  Jim Meyering  <jim@meyering.net>
36727
36728         * lib/getopt_.h: Remove trailing blanks.
36729
36730 2004-11-23  Jim Meyering  <jim@meyering.net>
36731
36732         * lib/__fpending.c: Add comment.
36733
36734 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
36735
36736         * modules/canonicalize (Depends-on): Add xreadlink.
36737         Problem reported by James Youngman.
36738
36739 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
36740
36741         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
36742         New macros.
36743         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
36744         optopt): Use them instead of invoking ## directly; otherwise, the
36745         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
36746
36747 2004-11-19  Bruno Haible  <bruno@clisp.org>
36748
36749         * lib/strtok_r.c: Move comments from here...
36750         * lib/strtok_r.h: ... to here.
36751
36752 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
36753
36754         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
36755         implementations that mishandle size_t overflow.
36756
36757 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
36758
36759         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
36760         might fail.  Problem reported by Yoann Vandoorselaere.
36761         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
36762         implementations that mishandle size_t overflow.
36763
36764 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
36765
36766         * modules/canon-host (Depends-on): Add strdup.
36767
36768 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
36769
36770         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
36771
36772 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
36773
36774         * lib/canon-host.c: Include "strdup.h".
36775         (canon_host): Use getaddrinfo if available, so that IPv6 works.
36776         Use strdup instead of malloc/strcpy to duplicate strings.
36777
36778         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
36779         (human_space_before_unit): New constant.
36780         * lib/human.c (human_readable): Support it.
36781
36782         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
36783         (xgetcwd): Set errno correctly when failing.
36784         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
36785         the failure is actually due to a PATH_MAX problem.
36786
36787         Further getopt changes to make it more likely that glibc will
36788         buy the changes back.
36789         * lib/getopt.c (POSIXLY_CORRECT): New constant.
36790         (getopt): Use it, so to preserve glibc semantic
36791         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
36792         when compiling for libc.
36793         * lib/getopt_.h (__getopt_argv_const): Bring it back.
36794         (getopt_long, getopt_long_only): Use it.
36795
36796         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
36797         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
36798         (getopt): Argv is now char * const *, as per standard.
36799         (_getopt_internal_r, _getopt_internal): Argv is now char **,
36800         not char *__getopt_argv_const *.
36801         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
36802         _getopt_long_only_r): Likewise.
36803         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
36804         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
36805         _getopt_long_r, _getopt_long_only_r): Likewise.
36806         * lib/getopt_.h (__getopt_argv_const): Remove.
36807         (getopt): Argv is now char * const *, as per standard.
36808
36809         * lib/getdate.y (tORDINAL): New token.
36810         (day, relunit): Allow it for relative times.
36811         (relative_time_table): Use tORDINAL for ordinals.
36812
36813 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
36814
36815         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
36816         Document that "second" isn't allowed as an ordinal number.
36817
36818 2004-11-16  Jim Meyering  <jim@meyering.net>
36819
36820         * modules/closeout (Depends-on): Add fpending.
36821
36822 2004-11-15  Jim Meyering  <jim@meyering.net>
36823
36824         * lib/closeout.c: Include "__fpending.h" once again.
36825         Include <stdbool.h>.
36826         (close_stdout): Don't fail just because stdout was closed initially,
36827         since some programs don't write to stdout in the normal course of
36828         operation (other than --version and --help), and we don't want this
36829         function to make e.g. `touch file >&-' fail.
36830         But do fail if it was closed and someone has tried to write to it.
36831         E.g., `printf foo >&-' must fail.
36832
36833 2004-11-13  Jim Meyering  <jim@meyering.net>
36834
36835         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
36836
36837 2004-11-12  Simon Josefsson  <jas@extundo.com>
36838
36839         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
36840         small doc fix is still pending.
36841
36842 2004-11-11  Simon Josefsson  <jas@extundo.com>
36843
36844         * modules/strtok_r: New file.
36845
36846         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
36847         strtok_r.
36848
36849 2004-11-11  Simon Josefsson  <jas@extundo.com>
36850
36851         * m4/strtok_r.m4: New file.
36852
36853         * m4/getopt.m4: Replace opterr.
36854
36855 2004-11-11  Simon Josefsson  <jas@extundo.com>
36856
36857         * lib/strtok_r.h, strtok_r.c: New file.
36858
36859 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
36860
36861         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
36862         of replacing opterr, getopt, etc.  This should handle the
36863         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
36864
36865 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
36866
36867         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
36868         we can stop lying to compilers about the constness of argv when we
36869         are compiled outside glibc.
36870         (getopt, getopt_long, getopt_long_only): Use it.
36871         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
36872         _getopt_internal, getopt): Likewise.
36873         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
36874         _getopt_long_only_r): Likewise.
36875         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
36876         _getopt_long_r, _getopt_long_only_r): Likewise.
36877
36878         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
36879         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
36880         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
36881         the other external symbols.
36882         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
36883         declaration, since the above renaming now works around collisions.
36884
36885 2004-11-11  Jim Meyering  <jim@meyering.net>
36886
36887         * lib/linebreak.c: Remove trailing blanks.
36888         * lib/alloca_.h: Likewise.
36889         * lib/acosl.c: Likewise.
36890         * lib/euidaccess.c: Likewise.
36891         * lib/allocsa.h: Likewise.
36892
36893 2004-11-10  Simon Josefsson  <jas@extundo.com>
36894
36895         * m4/getaddrinfo.m4: New file.
36896
36897 2004-11-10  Simon Josefsson  <jas@extundo.com>
36898
36899         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
36900
36901 2004-11-10  Simon Josefsson  <jas@extundo.com>
36902
36903         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
36904         getaddrinfo.
36905
36906         * modules/getaddrinfo: New file.
36907
36908 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
36909
36910         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
36911
36912 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
36913
36914         * lib/mktime.c (SHR): New macro, which is a portable
36915         substitute for >> that should work even on Crays.
36916         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
36917         Problem reported by Mark D. Baushke in
36918         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
36919         * lib/getdate.y (SHR): Likewise.
36920         (tm_diff): Use it.
36921         * lib/strftime.c (SHR): Likewise.
36922         (tm_diff): Use it.
36923         * lib/quotearg.c (struct quoting_options): Use unsigned int for
36924         quote_these_too, so that right shifts are well defined.  All uses
36925         changed.
36926
36927 2004-11-10  Jim Meyering  <jim@meyering.net>
36928
36929         Ensure that no close failure goes unreported.
36930         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
36931         return early when it seems there's nothing to flush.
36932         Don't include __fpending.h.
36933
36934 2004-11-10  Jim Meyering  <jim@meyering.net>
36935
36936         * modules/closeout (Depends-on): Remove fpending.
36937
36938 2004-11-10  Jim Meyering  <jim@meyering.net>
36939
36940         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
36941
36942 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
36943
36944         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
36945         gl_FUNC_STRFTIME.
36946         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
36947         and AC_REQUIRE when possible, to avoid duplicate checks.
36948         Check for <wchar.h>.
36949
36950 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
36951
36952         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
36953
36954 2004-11-09  Bruno Haible  <bruno@clisp.org>
36955
36956         * m4/sockpfaf.m4: New file.
36957
36958 2004-11-05  Bruno Haible  <bruno@clisp.org>
36959
36960         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
36961         Reported by Mark D. Baushke <mdb@cvshome.org>.
36962
36963 2004-11-04  Bruno Haible  <bruno@clisp.org>
36964
36965         2004-09-11  Bruno Haible  <bruno@clisp.org>
36966                 * allocsa.valgrind: New file.
36967         2004-02-06  Bruno Haible  <bruno@clisp.org>
36968                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
36969                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
36970                 Reported by Christopher Seip <chris.seip@hp.com>.
36971
36972 2004-11-04  Bruno Haible  <bruno@clisp.org>
36973
36974         * modules/allocsa (Files): Add lib/allocsa.valgrind.
36975         (Makefile.am): Distribute it.
36976
36977 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
36978
36979         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
36980         with errno == ERANGE if the buffer is too small.
36981         Problem reported by Mark D. Baushke.
36982
36983 2004-11-03  Albert Chin  <china@thewrittenword.com>
36984             Paul Eggert  <eggert@cs.ucla.edu>
36985
36986         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
36987         equivalent, substitute $ac_type for equivalent type rather than
36988         blindly using uint32_t *always* which won't work if uint32_t is not
36989         available.  Define _UINT32_T to work around typedef of uint32_t if
36990         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
36991         2.5.1.
36992
36993 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
36994
36995         * m4/jm-macros.m4: Sync from coreutils.
36996         (gl_MACROS): Check for mbrlen, for pathchk.
36997         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
36998
36999 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
37000
37001         * lib/xreadlink.c (MAXSIZE): New macro.
37002         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
37003         size does not exceed MAXSIZE.  Avoid cast.
37004         As suggested by Mark D. Baushke in
37005         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
37006         if readlink fails with buffer size just under MAXSIZE, try again
37007         with MAXSIZE.
37008
37009 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
37010
37011         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
37012
37013 2004-11-02  Derek R. Price  <derek@ximbiot.com>
37014         and  Paul Eggert  <eggert@cs.ucla.edu>
37015
37016         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
37017         (get_date): Overparenthesize to avoid GCC warning.
37018
37019 2004-11-02  Bruno Haible  <bruno@clisp.org>
37020
37021         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
37022         returns void.
37023
37024 2004-11-02  Bruno Haible  <bruno@clisp.org>
37025
37026         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
37027         function returns void.
37028
37029 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
37030
37031         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
37032         fflush_unlocked, flockfile, funlockfile, funlockfile,
37033         fputs_unlocked, putc_unlocked.
37034
37035 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
37036
37037         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
37038         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
37039         already declared.
37040
37041 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
37042
37043         * modules/getdate (Files): Add doc/getdate.texi.
37044         (Depends-on): Add setenv, xalloc.
37045
37046 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
37047
37048         * lib/getdate.y: Add support for TZ="foo" within a date string.
37049         Fix some bugs near time_t boundaries.  Reject dates with
37050         out-of-range components, e.g., "Sept 31".
37051         Include <stdlib.h>, "setenv.h", "xalloc.h".
37052         (ISDIGIT_LOCALE): Remove; unused.
37053         Note that the TZ and time functions used here are not reentrant.
37054         (mktime_ok, get_tz): New functions.
37055         (TZBUFSIZE): New constant.
37056         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
37057         This requires that we sometimes generate our own TZ="XXX..." setting.
37058
37059 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
37060
37061         * doc/getdate.texi: New file, from coreutils with modifications for
37062         the new TZ parsing.
37063
37064 2004-10-27  Derek R. Price  <derek@ximbiot.com>
37065
37066         * lib/mktime.c (not_equal_tm): Remove redundant check.
37067
37068 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
37069
37070         * modules/regex (lib_SOURCES): Add regex.c.
37071         Reported by James Youngman in
37072         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
37073
37074 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
37075
37076         * lib/getdate.y: Use Bison 1.875 features, and some minor
37077         code cleanups.  This change does not affect semantics.
37078         Don't include <stdlib.h>; no longer needed.
37079         Don't include unlocked-io.h; only the "#if TEST" code uses
37080         stdio, and performance isn't crucial there.
37081         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
37082         Bison 1.875 features as described below.
37083         All uses of "PC." replaced by "pc->".
37084         (YYSTYPE): Add a forward declaration.
37085         (yylex, yyerror): Use full prototypes in forward decls.
37086         Use "%pure-parser" rather than obsolescent "%pure_parser".
37087         Use %parse-param and %lex-param instead of obsolescent
37088         YYPARSE_PARAM and YYLEX_PARAM.
37089         (meridian_table, month_and_day_table, time_units_table,
37090         relative_time_table, time_zone_table, military_table,
37091         lookup_zone, lookup_word, get_date):
37092         Use NULL instead of 0 where appropriate.
37093         (to_hour): Avoid abort (), to avoid a dependency on
37094         stdlib.h.
37095         (yyerror, yylex): Now accepts parser_control * arg.
37096         (main) [TEST]: Use '\0' rather than 0 for char.
37097
37098 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
37099
37100         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
37101
37102 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
37103
37104         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
37105         It's now the caller's responsibility to handle the case where
37106         !HAVE_GETPAGESIZE && !defined getpagesize.
37107
37108         * lib/mktime.c (leapyear): Arg is long int, not int.
37109
37110 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
37111
37112         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
37113
37114 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
37115
37116         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
37117         missing.  Problem reported by James Youngman.
37118
37119 2004-10-16  Simon Josefsson  <jas@extundo.com>
37120
37121         * gnulib-tool: Fix comments.  Fix parse problem.
37122         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
37123
37124 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
37125
37126         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
37127         implementation of getopt_long.  Problem reported by Alexander Taler in:
37128         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
37129
37130 2004-10-15  Bruno Haible  <bruno@clisp.org>
37131
37132         * gnulib-tool: Untabify. Initialize supplied_libname.
37133         (func_usage): More homogenous output.
37134         (func_modules_transitive_closure, func_modules_to_filelist,
37135         func_emit_lib_Makefile_am): New functions.
37136         (func_import): New function, extracted from big case statement. Use
37137         func_get_license, func_modules_transitive_closure,
37138         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
37139         opt_lgpl. Don't use test -a, as it's not portable.
37140         (func_create_testdir): Use func_modules_transitive_closure,
37141         func_modules_to_filelist, func_emit_lib_Makefile_am.
37142
37143 2004-10-15  Bruno Haible  <bruno@clisp.org>
37144
37145         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
37146
37147 2004-10-15  Bruno Haible  <bruno@clisp.org>
37148
37149         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
37150         the portions belonging to each module.
37151         Suggested by Derek Robert Price <derek@ximbiot.com>.
37152
37153 2004-10-12  Simon Josefsson  <jas@extundo.com>
37154
37155         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
37156         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
37157         to real functions.
37158
37159 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37160
37161         * modules/vsnprintf: New file.
37162
37163 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37164
37165         * m4/vsnprintf.m4: New file.
37166
37167 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37168
37169         * lib/vsnprintf.h: New file.
37170         * lib/vsnprintf.c: New file.
37171
37172 2004-10-11  Bruno Haible  <bruno@clisp.org>
37173
37174         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
37175         vsnprintf.
37176
37177 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
37178
37179         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
37180
37181 2004-10-07  Bruno Haible  <bruno@clisp.org>
37182
37183         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
37184         fits into the provided buffer.
37185
37186 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
37187
37188         * lib/diacrit.c, diacrit.h: Add GPL notice.
37189
37190         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
37191         notice.
37192         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
37193         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
37194         This avoids a potential constant-folding bug.
37195
37196 2004-10-05  Bruno Haible  <bruno@clisp.org>
37197
37198         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
37199         for the declaration of strsep.
37200
37201 2004-10-05  Bruno Haible  <bruno@clisp.org>
37202
37203         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
37204
37205 2004-10-04  Simon Josefsson  <jas@extundo.com>
37206
37207         * modules/memmem: New file.
37208         * tests/test-memmem.c: New file.
37209         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
37210
37211 2004-10-04  Simon Josefsson  <jas@extundo.com>
37212
37213         * m4/memmem.m4: New file.
37214
37215 2004-10-04  Simon Josefsson  <jas@extundo.com>
37216
37217         * lib/memmem.h: New file.
37218         * lib/memmem.c: New file, taken from glibc.
37219
37220 2004-10-04  Simon Josefsson  <jas@extundo.com>
37221
37222         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
37223         '#ifdef USE_UNLOCKED_IO'.
37224
37225 2004-10-04  Simon Josefsson  <jas@extundo.com>
37226
37227         * config/srclist.txt: Add memmem from glibc.
37228
37229 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
37230
37231         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
37232
37233         * modules/argmatch, modules/argp, modules/closeout, modules/error,
37234         modules/exclude, modules/getdate, modules/getline,
37235         modules/getndelim2, modules/getpass, modules/getpass-gnu,
37236         modules/getusershell, modules/linebuffer, modules/md5,
37237         modules/mountlist, modules/posixtm, modules/readtokens,
37238         modules/readutmp, modules/regex, modules/sha1,
37239         modules/version-etc, modules/yesno:
37240         Remove dependency on unlocked-io.
37241
37242 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
37243
37244         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
37245
37246         * m4/unlocked-io.m4: Add copyright notice.
37247         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
37248
37249 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
37250
37251         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
37252         * lib/xmalloc.c (xmemdup): Likewise.
37253         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
37254         XFREE): Remove these long-obsolescent macros.
37255         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
37256         * lib/xstrdup.c: Remove.
37257
37258         * lib/regex.c (re_comp): Cast gettext return value to char *,
37259         Problem reported by Martin Neitzel via Mark D. Baushke.
37260
37261 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
37262
37263         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
37264         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
37265         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
37266         regex.c, sha1.c, version-etc.c, yesno.c:
37267         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
37268         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
37269         the includer's responsibility.
37270
37271         Sync from coreutils.
37272
37273         * lib/modechange.c (mode_compile): Don't decrement a pointer that
37274         points to the start of a string, as the C Standard says the
37275         resulting behavior is undefined.
37276
37277         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
37278         simple -> simple_backups, numbered_existing ->
37279         numbered_existing_backups, numbered -> numbered_backups
37280         to avoid shadowing problems.  All uses changed.
37281         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
37282         * lib/backupfile.c (check_extension, numbered_backup):
37283         Rename locals to avoid shadowing 'basename'.
37284         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
37285         once.
37286
37287         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
37288         * lib/.cvsignore: Add getopt.h.
37289
37290 2004-10-04  Bruno Haible  <bruno@clisp.org>
37291
37292         * modules/README: New file.
37293         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
37294         not a module.
37295
37296 2004-10-02  Jim Meyering  <jim@meyering.net>
37297
37298         * lib/dirfd.h, getpagesize.h: Add copyright notice.
37299
37300 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37301
37302         * modules/strsep: New file.
37303
37304 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37305
37306         * m4/strsep.m4: New file.
37307
37308 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37309
37310         * lib/strsep.h: New file.
37311         * lib/strsep.c: New file.
37312
37313 2004-10-01  Simon Josefsson  <jas@extundo.com>
37314
37315         * lib/snprintf.c (snprintf): Handle size==0.
37316
37317 2004-10-01  Simon Josefsson  <jas@extundo.com>
37318             Bruno Haible  <bruno@clisp.org>
37319
37320         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
37321         (snprintf): Declare 'args'.
37322
37323 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
37324
37325         * lib/snprintf.c: Remove comments as to why each header is needed.
37326
37327 2004-10-01  Bruno Haible  <bruno@clisp.org>
37328
37329         * MODULES.html.sh: Add strsep.
37330
37331 2004-09-30  Simon Josefsson  <jas@extundo.com>
37332
37333         * modules/snprintf: New file.
37334
37335 2004-09-30  Simon Josefsson  <jas@extundo.com>
37336
37337         * m4/snprintf.m4: New file.
37338
37339 2004-09-30  Simon Josefsson  <jas@extundo.com>
37340
37341         * lib/snprintf.h, lib/snprintf.c: New files.
37342
37343 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37344
37345         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
37346         (hol_entry_help): Never translate an empty string.
37347         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
37348         * lib/argp.h (OPTION_NO_TRANS): New option.
37349
37350 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
37351
37352         * modules/argp (Maintainer): Replace Simon Josefsson
37353         by Sergey Poznyakoff.
37354
37355 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
37356
37357         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
37358         changes merged back into glibc.
37359
37360 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
37361
37362         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
37363
37364 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
37365
37366         * lib/xvasprintf.c: Include xalloc.h.
37367         (xvasprintf): Use xalloc_die, not xmalloc_die.
37368
37369 2004-09-29  Bruno Haible  <bruno@clisp.org>
37370
37371         * modules/alloca-opt: New file, derived from modules/alloca.
37372         * modules/allocsa: Depend on alloca-opt instead of alloca.
37373         * modules/setenv: Likewise.
37374         * modules/vasnprintf: Likewise.
37375         * MODULES.html.sh: Add alloca-opt.
37376
37377 2004-09-28  Simon Josefsson  <jas@extundo.com>
37378
37379         * gnulib-tool: New parameter --lgpl, to asseert that modules are
37380         LGPL, and to replace license template from GPL to LGPL.
37381
37382 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
37383
37384         * modules/dummy: Change license to LGPL.
37385
37386 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
37387
37388         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
37389
37390 2004-09-24  Simon Josefsson  <jas@extundo.com>
37391
37392         * modules/minmax (License): Change from GPL to LGPL.
37393
37394 2004-09-23  Simon Josefsson  <jas@extundo.com>
37395
37396         * gnulib-tool (--import): Typo.
37397
37398 2004-09-23  Simon Josefsson  <jas@extundo.com>
37399
37400         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
37401
37402 2004-09-22  Bruno Haible  <bruno@clisp.org>
37403
37404         * modules/*: Add 'License' field.
37405         * gnulib-tool: Accept --extract-license option.
37406         (func_get_license): New function.
37407
37408 2004-09-21  Bruno Haible  <bruno@clisp.org>
37409
37410         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
37411         Reported by Simon Josefsson.
37412
37413 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
37414
37415         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
37416         gl_AC_TYPE_LONG_LONG.
37417
37418 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
37419
37420         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
37421
37422 2004-09-18  Simon Josefsson  <jas@extundo.com>
37423         and  Paul Eggert  <eggert@cs.ucla.edu>
37424
37425         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
37426         calls with autoreconf.  Define GL_LIB.
37427
37428 2004-09-14  Karl Berry  <karl@gnu.org>
37429
37430         * config/srclist.txt: unsync setenv.c, sigh.
37431
37432 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
37433
37434         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
37435         Problem reported by Bruno Haible in:
37436         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
37437
37438 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
37439
37440         * config/srclist.txt: Comment out argp-pvh.c.
37441
37442 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
37443
37444         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
37445         in case some system header has #define'd it.  Problem reported by
37446         Soeren D. Schulze in
37447         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
37448
37449 2004-09-09  Karl Berry  <karl@gnu.org>
37450
37451         * regex.[ch]: delete from the root.  These were supposed to be
37452                 synced with emacs cvs, but this has not happened for about
37453                 a year, and anyway nothing else uses emacs regex.[ch].
37454                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
37455                 lib/regex[.ch] is untouched.
37456
37457 2004-09-09  Bruno Haible  <bruno@clisp.org>
37458
37459         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
37460
37461 2004-09-09  Bruno Haible  <bruno@clisp.org>
37462
37463         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
37464         modifications.
37465         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
37466
37467 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
37468
37469         * modules/xvasprintf: New file.
37470         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
37471
37472 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
37473
37474         * lib/xvasprintf.h: New file.
37475         * lib/xvasprintf.c: New file.
37476         * lib/xasprintf.c: New file.
37477
37478 2004-09-08  Bruno Haible  <bruno@clisp.org>
37479
37480         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
37481
37482 2004-09-08  Bruno Haible  <bruno@clisp.org>
37483
37484         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
37485         length is > INT_MAX.
37486         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
37487         more.
37488
37489 2004-09-08  Bruno Haible  <bruno@clisp.org>
37490
37491         * lib/stdint_.h: New file, taken from GNU clisp.
37492
37493 2004-09-08  Bruno Haible  <bruno@clisp.org>
37494             Oskar Liljeblad  <oskar@osk.mine.nu>
37495
37496         * modules/stdint: New file.
37497         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
37498
37499 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
37500
37501         Import from coreutils.
37502         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
37503         strings on unbounded length.  alloca's performance benefits aren't
37504         that important here.
37505         (V_STRDUP): Remove.
37506         (parse_with_separator): New function, with most of the internals
37507         of the old parse_user_spec.  Allow user to omit both user and group,
37508         for compatibility with FreeBSD.
37509         Clone only the user name, not the entire spec.
37510         Do not set *uid, *gid unless entirely successful.
37511         Avoid memory leak in some failing cases.
37512         Fix regression for USER.GROUP reported by Dmitry V. Levin in
37513         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
37514         (parse_user_spec): Rewrite to use parse_with_separator.
37515
37516 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
37517
37518         * modules/userspec: Don't depend on alloca.
37519
37520 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
37521
37522         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
37523
37524 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
37525
37526         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
37527         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
37528         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
37529
37530 2004-08-16  Simon Josefsson  <jas@extundo.com>
37531
37532         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
37533         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
37534         Add --dry-run for --import.
37535         Let user provided command line parameters override configure.ac
37536         settings.
37537
37538 2004-08-12  Simon Josefsson  <jas@extundo.com>
37539
37540         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
37541         as discussed with Paul Eggert in threads rooted at
37542         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
37543         and
37544         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
37545         Before, the test was empty, and relied on ELIDE_CODE in source
37546         code.)
37547         (gl_PREREQ_GETOPT): New macro.
37548         (gl_GETOPT): Use them.
37549
37550 2004-08-12  Simon Josefsson  <jas@extundo.com>
37551
37552         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
37553         * lib/getopt_.h: Renamed from getopt.h.
37554
37555 2004-08-12  Simon Josefsson  <jas@extundo.com>
37556
37557         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
37558         Change default library name from libfoo to libgnu.
37559         Now, if you have a configure.ac that says:
37560                 gl_SOURCE_BASE(gl)
37561                 gl_M4_BASE(gl/m4)
37562                 gl_MODULES(error getopt etcetera)
37563                 gl_INIT
37564         you can import all you need by running:
37565                 ../gnulib/gnulib-tool --import
37566
37567         * modules/getopt (Files): Rename getopt.h to getopt_.h.
37568         (Makefile.am): Rewrite, use logic from argz.
37569         (Include): Use <getopt.h> instead of "getopt.h".
37570
37571 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
37572
37573         * modules/argp (Files): Add m4/unlocked-io.m4.
37574         (Depends-on): Add extensions.
37575
37576 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
37577
37578         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
37579         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
37580         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
37581         Check for program_invocation_name, program_invocation_short_name,
37582         flockfile, funlockfile, features.h, _getopt_long_only_r.
37583
37584 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
37585
37586         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
37587         its complicated substitute.
37588         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
37589         and program_invocation_name.
37590         (__argp_basename) [!_LIBC]: Remove; the only use was
37591         replaced by its body.
37592         (__argp_short_program_name): Change condition from
37593         !defined __argp_short_program_name to
37594         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
37595         to match argp-namefrob.h.
37596         (__argp_failure): Don't assume strerror_r returns char *.
37597         * lib/argp-parse.c (N_): Define unconditionally.
37598         (argp_default_options): Fill out initializers with 0 to avoid
37599         gcc warnings.
37600
37601 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
37602
37603         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
37604         getopt1.c.
37605
37606 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
37607
37608         Merge from coreutils.
37609
37610         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
37611
37612         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
37613         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
37614
37615 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
37616
37617         Merge from coreutils.
37618
37619         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
37620         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
37621         for Reliant Unix 5.43.
37622
37623         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
37624         (union fooround): Use uintmax_t, not long int.
37625         The rest is a merge from libc:
37626         [defined _LIBC]: Include <shlib-compat.h>.
37627         (_obstack) [defined _LIBC]: Remove after 2.3.4.
37628
37629         * lib/settime.c (settime): Recode to avoid warning with
37630         Sun Forte C 6U2.
37631
37632         * lib/strverscmp.c: Convert to UTF-8.
37633
37634 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
37635
37636         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
37637         m4/uintmax_t.m4.
37638
37639 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
37640
37641         * modules/xalloc-die: New file.
37642         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
37643
37644         * modules/md5 (Files): Add m4/uint32_t.m4.
37645         * modules/sha1: Renamed from modules/sha.
37646         (Files):
37647         Rename lib/sha.h to lib/sha1.h.
37648         Rename lib/sha.c to lib/sha1.c.
37649         Rename m4/sha.m4 to m4/sha1.m4.
37650         (lib_SOURCES): Likewise.
37651         (configure.ac): Rename gl_SHA to gl_SHA1.
37652         (Include): sha.h -> sha1.h.
37653
37654 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
37655
37656         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
37657         * m4/sha1.m4: Renamed from sha.m4.
37658         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
37659
37660 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
37661
37662         * lib/obstack.h (obstack_empty_p):
37663         Don't assume that chunk->contents is suitably aligned.
37664         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
37665         Likewise. Problem reported by Benno in
37666         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
37667
37668         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
37669         readable.  This could be improved further but it'd take some work.
37670
37671 2004-08-08  Simon Josefsson  <jas@extundo.com>
37672
37673         * modules/xgethostname (Depends-on): Remove exit and error (not
37674         used).
37675
37676         * modules/getpass-gnu: Add getpass.h.
37677         (Depends-on): Add stdbool.
37678         * modules/getpass: Add getpass.h.
37679
37680 2004-08-08  Simon Josefsson  <jas@extundo.com>
37681
37682         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
37683         Check getpass declaration.
37684
37685 2004-08-08  Simon Josefsson  <jas@extundo.com>
37686
37687         * lib/xgethostname.c: Don't include error.h (not used).
37688
37689         * lib/getpass.h: Add.
37690         * lib/getpass.c: Include getpass.h first.
37691
37692 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
37693
37694         * lib/xalloc-die.c: New file.
37695         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
37696         All uses removed.
37697         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
37698         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
37699         xalloc-die.c.
37700         (_, N_, xalloc_die): Move to xalloc-die.c.
37701         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
37702         so that we needn't mess with xalloc_msg_memory_exhausted.
37703
37704         * lib/sha1.h: Renamed from sha.h.
37705         (SHA1_H): Renamed from _SHA_H.
37706         (sha1_ctx): Renamed from sha_ctx.
37707         (sha1_init_ctx): Renamed from sha_init_ctx.
37708         (sha1_process_block): Renamed from sha_process_block.
37709         (sha1_process_bytes): Renamed from sha_process_bytes.
37710         (sha1_finish_ctx): Renamed from sha_finish_ctx.
37711         (sha1_read_ctx): Renamed from sha_read_ctx.
37712         (sha1_stream): Renamed from sha_stream.
37713         (sha1_buffer): Renamed from sha_buffer.
37714         * lib/sha1.c: Likewise; renamed from sha.c.
37715         Do not include <sys/types.h>.
37716         Include <stddef.h> rather than <stdlib.h>.
37717
37718 2004-08-08  Bruno Haible  <bruno@clisp.org>
37719
37720         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
37721         FILESYSTEM_PREFIX_LEN.
37722         * lib/progreloc.c: Likewise.
37723         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
37724
37725 2004-08-06  Simon Josefsson  <jas@extundo.com>
37726
37727         * modules/progname (Depends-on): Don't depend on stdbool.
37728
37729 2004-08-06  Simon Josefsson  <jas@extundo.com>
37730
37731         * modules/getsubopt: New file.
37732         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
37733         getsubopt.
37734
37735 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
37736
37737         More merge from coreutils.
37738
37739         * m4/utimens.m4, m4/utimecmp.m4: New files.
37740         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
37741         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
37742         prereq.m4, sha.m4: Import changes from coreutils.
37743
37744 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
37745
37746         More merge from coreutils.
37747         * modules/raise, modules/readtokens0, modules/utimens:
37748         * modules/utimecmp, module/xnanosleep: New files.
37749         * modules/strftime: Add lib/strftime.h.
37750         Change include from <time.h> to "strftime.h".
37751         * modules/yesno: Add lib/yesno.h.
37752         * modules/backupfile: Remove lib/addext.c.
37753         * modules/euidaccess: Add stat-macros.h.
37754         * modules/canonicalize, modules/euidaccess,
37755         modules/filemode, modules/lchown, modules/makepath,
37756         modules/rmdir, modules/stat: Likewise.
37757
37758 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
37759
37760         Merge from tar.
37761         * lib/argp-help.c (make_hol, hol_append): Don't assume that
37762         SIZE_MAX is a valid preprocessor constant.
37763         (__argp_basename): Change from "#ifndef _LIBC"
37764         to "#ifndef __argp_short_program_name", so that
37765         we don't compile these functions for tar.
37766
37767         More merges from coreutils.
37768         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
37769         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
37770         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
37771         * lib/addext.c: Remove; no longer needed.
37772         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
37773         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
37774         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
37775         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
37776         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
37777         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
37778         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
37779         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
37780         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
37781         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
37782         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
37783         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
37784         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
37785         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
37786         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
37787         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
37788         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
37789         Import changes from coreutils.
37790
37791 2004-08-05  Simon Josefsson  <jas@extundo.com>
37792
37793         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
37794
37795 2004-08-05  Simon Josefsson  <jas@extundo.com>
37796
37797         * m4/getsubopt.m4: New file.
37798
37799 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
37800
37801         Merge from coreutils.
37802
37803         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
37804         * m4/getcwd-path-max.m4: New files.
37805
37806         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
37807         FILESYSTEM_PREFIX_LEN ->
37808         FILE_SYSTEM_PREFIX_LEN.
37809         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
37810         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
37811         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
37812         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
37813
37814         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
37815         prerequisite modules now handle the DOS stuff.
37816         Don't check for unistd.h.
37817
37818 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
37819
37820         Merge from coreutils.
37821
37822         * lib/.gdb-history: Remove; this doesn't belong here.
37823
37824         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
37825         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
37826         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
37827         * lib/getcwd.c: New files.
37828
37829         * lib/dirname.h: Include <stdbool.h>.
37830         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
37831         for consistency with POSIX terminology.  All uses changed.
37832         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
37833         (strip_trailing_slashes): Use bool for booleans.
37834         * lib/stripslash.c (strip_trailing_slashes): Likewise.
37835
37836         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
37837         sometimes returns a positive errno value even when it succeeds.
37838         (print_errno_message) [!LIBC]: Fall back on strerror if
37839         __strerror_r fails.
37840
37841         * lib/path-concat.c (mempcpy): Don't define if a system header defines
37842         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
37843         (longest_relative_suffix): New function.
37844         (path_concat): Use it.  Assume first argument is not NULL.
37845         Port to DOS.  Omit redundant separators.
37846         Report an error instead of returning NULL.
37847         Use mempcpy instead of memcpy.
37848         (xpath_concat): Remove: not declared or used.
37849
37850         * lib/same.h: Include <stdbool.h>
37851         (same_name): Return bool, not int.
37852         * lib/same.c (same_name): Likewise.
37853         (errno): Don't declare; we assume C89 or better now.
37854
37855         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
37856         if not already defined.
37857
37858         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
37859         * lib/dup-safer.c (errno): Likewise.
37860
37861 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
37862
37863         Merge from coreutils.
37864         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
37865         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
37866         * modules/path-concat: Don't depend on strdup.
37867
37868 2004-08-03  Simon Josefsson  <jas@extundo.com>
37869
37870         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
37871         * lib/progname.h: Don't include stdbool.h.
37872
37873 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
37874
37875         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
37876         * MODULES.html.sh (func_all_modules): Remove fatal.
37877
37878 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
37879
37880         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
37881
37882 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
37883
37884         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
37885         working.
37886
37887 2004-08-02  Simon Josefsson  <jas@extundo.com>
37888
37889         * lib/getsubopt.h: New file, with comments from Bruno Haible.
37890         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
37891         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
37892
37893 2004-08-01  Simon Josefsson  <jas@extundo.com>
37894
37895         * lib/xgetdomainname.c: Include stdlib.h, for free().
37896
37897 2004-07-19  Bruno Haible  <bruno@clisp.org>
37898
37899         * MODULES.html.sh (func_all_modules): Add dummy.
37900
37901 2004-07-16  Simon Josefsson  <jas@extundo.com>
37902
37903         * modules/dummy: New file.
37904
37905 2004-07-16  Simon Josefsson  <jas@extundo.com>
37906
37907         * lib/dummy.c: New file.
37908
37909 2004-07-16  Bruno Haible  <bruno@clisp.org>
37910
37911         * lib/backupfile.h: Add extern "C" for C++.
37912         * lib/closeout.h: Likewise.
37913         * lib/copy-file.h: Likewise.
37914         * lib/findprog.h: Likewise.
37915         * lib/full-write.h: Likewise.
37916         * lib/pathname.h: Likewise.
37917         * lib/progname.h: Likewise.
37918         * lib/stpcpy.h: Likewise.
37919         * lib/stpncpy.h: Likewise.
37920         * lib/strcase.h: Likewise.
37921         * lib/strstr.h: Likewise.
37922         * lib/xalloc.h: Likewise.
37923
37924         * lib/mbswidth.h: Add extern "C" for C++.
37925         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
37926
37927 2004-07-13  Robert Millan  <robertmh@gnu.org>
37928
37929         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
37930
37931 2004-07-09  Simon Josefsson  <jas@extundo.com>
37932
37933         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
37934         failed without this.)
37935
37936 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
37937
37938         * modules/chown (Files): Add lib/fchown-stub.c, since
37939         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
37940
37941 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
37942
37943         * lib/fchown-stub.c: New file.
37944
37945 2004-06-24  Jim Meyering  <jim@meyering.net>
37946
37947         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
37948
37949 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
37950
37951         * modules/argz: Omit "#include".
37952
37953         * MODULES.html.sh (func_all_modules): Add calloc, to match
37954         2004-06-01 addition of calloc module.
37955
37956 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
37957
37958         * m4/argz.m4: New file, which is autoupdated from libtool.
37959
37960 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
37961
37962         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
37963         libtool.
37964
37965 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
37966
37967         * config/srclist-update: Don't insist on "USA." before the
37968         close-comment, as libtool omits the period and puts the */ on a
37969         separate line.
37970         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
37971         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
37972
37973 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
37974
37975         * modules/argz: New file.
37976         * MODULES.html.sh (func_all_modules): Add argz.
37977
37978 2004-06-12  Jim Meyering  <jim@meyering.net>
37979         and  Paul Eggert  <eggert@cs.ucla.edu>
37980
37981         * modules/hash (Files): Add lib/xalloc.h.
37982         * modules/pipe (Depends-on): Add wait-process.
37983         * modules/stat (Depends-on): Add xalloc.
37984         * modules/userspec (Files): Add lib/userspec.h.
37985         * modules/xstrto
37986
37987         Upgrade from gettext-0.13.
37988         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
37989         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
37990         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
37991
37992 2004-06-10  Jim Meyering  <jim@meyering.net>
37993
37994         * lib/calloc.c: New file.
37995
37996 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
37997
37998         * lib/getdate.y (yylex): Allow space between sign and number.
37999         Problem reported by Dan Jacobson.
38000
38001 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
38002
38003         Merge from coreutils CVS.
38004
38005         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
38006         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
38007         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
38008         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
38009         xstrtol.m4: Fix copyright date and/or serial number.
38010
38011         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
38012         See if we need an fchown replacement.
38013         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
38014         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
38015         and use the replacement function if we detect either defect.
38016
38017         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
38018         gl_UTIMECMP.
38019
38020 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
38021         and  Jim Meyering  <jim@meyering.net>
38022
38023         Merge from coreutils CVS.
38024
38025         * lib/stat-macros.h: New file, with contents from file-type.h
38026         and coreutils' system.h.
38027         * lib/file-type.c: Include "stat-macros.h".
38028         * lib/file-type.h (file_type): Move all macro definitions to new file,
38029         stat-macros.h.
38030
38031         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
38032         Wrap old code with this conditional.
38033         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
38034         function that does not dereference symlinks.
38035         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
38036
38037         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
38038         dependency problems.
38039         (xreadlink): Accept new arg SIZE, for efficiency.
38040         All decls and uses changed.
38041         * lib/xreadlink.h: Include <stddef.h>, for size_t.
38042
38043         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
38044         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
38045
38046         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
38047         sysexits.h.
38048
38049 2004-06-01  Jim Meyering  <jim@meyering.net>
38050
38051         * m4/calloc.m4: New file.
38052
38053 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
38054
38055         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
38056         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
38057         Also, fix a typo in a diagnostic.
38058
38059 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
38060
38061         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
38062         or AC_FUNC_REALLOC.
38063
38064 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
38065
38066         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
38067         macros to be defined.
38068         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
38069         the allocator returns NULL because the requested size is zero.
38070
38071 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
38072
38073         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
38074         var.  Add comment explaining why libc still defines it.  This
38075         merges the following patch from glibc:
38076         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
38077
38078 2004-05-20  Andreas Schwab  <schwab@suse.de>
38079
38080         * m4/free.m4: Replace free if it not known to work, not the other
38081         way round.
38082
38083 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
38084
38085         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
38086         present in glibc since revision 1.1 of this file.
38087         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
38088         obstack_alignment_mask, obstack_alloc, obstack_base,
38089         obstack_blank, obstack_blank_fast, obstack_chunk_size,
38090         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
38091         obstack_grow0, obstack_init, obstack_int_grow,
38092         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
38093         obstack_next_free, obstack_object_size, obstack_ptr_grow,
38094         obstack_ptr_grow_fast, obstack_room): Remove declarations of
38095         nonexistent functions.
38096
38097 2004-05-18  Karl Berry  <karl@gnu.org>
38098
38099         * config/srclist.txt: break link for vasnprintf.c.
38100
38101 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
38102
38103         Port obstack to the AS/400, where pointers are 16 bytes wide and
38104         you cannot cast an integer to a valid pointer.  This patch is
38105         currently waiting to be integrated into glibc; see
38106         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
38107
38108         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
38109         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
38110         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
38111         (struct obstack): temp member is now a union of a pointer and
38112         an integer, instead of an integer.  All integer uses changed.
38113         This does not affect the physical layout of struct obstack,
38114         except on hosts (like the AS/400) where the size or alignment of
38115         void * is greater than that of ptrdiff_t.
38116         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
38117         __STDC__)]: Store temporary in pointer member of union, not
38118         integer member.
38119         * lib/obstack.c: Include <stddef.h>, for offsetof.
38120         (struct fooalign): Remove; it doesn't need a name.
38121         (union fooround): Change double to long double, and add void *.
38122         (DEFAULT_ALIGNMENT): Use offsetof to compute.
38123         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
38124         not a macro.  Hence the values are always int; so remove all
38125         casts-to-int in uses.
38126
38127 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
38128
38129         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
38130         we can get this patch merged into glibc.
38131
38132 2004-05-17  Derek R. Price  <derek@ximbiot.com>
38133             Paul Eggert  <eggert@cs.ucla.edu>
38134
38135         * m4/argp: Depend on alloca.
38136
38137 2004-05-17  Derek R. Price  <derek@ximbiot.com>
38138             Paul Eggert  <eggert@cs.ucla.edu>
38139
38140         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
38141         freecoding.
38142
38143 2004-05-17  Bruno Haible  <bruno@clisp.org>
38144
38145         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
38146         precision that consists of a '.' followed by an empty digit string.
38147         Patch by Tor Lillqvist <tml@iki.fi>.
38148
38149 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
38150
38151         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
38152         for backward compatibility with older code.  We need our own
38153         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
38154         it under some other name, and our alloca.h will define it.
38155
38156 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
38157             Derek Price  <derek@ximbiot.com>
38158
38159         * lib/alloca.c: Include <alloca.h>, to get our interface.
38160         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
38161         include <alloca.h> first.  Use C89 prototype for alloca; this
38162         requires including <stddef.h> for size_t.  Use extern "C" if C++.
38163         Use #elif for simplicity, since we can assume C89 now.
38164         Don't try to source the system alloca.h since it will not be found
38165         and to prevent recursively including its replacement.
38166         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
38167         * lib/regex.c: Likewise.
38168
38169 2004-05-16  Derek Price  <derek@ximbiot.com>
38170             Paul Eggert  <eggert@cs.ucla.edu>
38171
38172         getline cleanup.  This changes the getndelim2 API: both order of
38173         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
38174         no delimiter).
38175
38176         * lib/getline.c: Don't include stddef.h or stdio.h, since our
38177         interface does that.
38178         (getline): Always use getdelim, so that we don't have two
38179         copies of this code.
38180         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
38181         if available.
38182         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
38183         (GETNDELIM2_MAXIMUM): New macro.
38184         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
38185         instead of the old practice of delim2==0.  All callers changed.
38186         Return -1 on overflow, instead of returning junk.
38187         Do not set *linesize unless allocation succeeds.
38188         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
38189         that we include sys/types.h.
38190         * lib/getnline.h: Likewise.
38191         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
38192         (getndelim2): Reorder arguments.
38193         * lib/getnline.c (getnline, getndelim):
38194         Don't discard the NMAX argument.
38195         (getnline): Invoke getndelim, to avoid code duplication.
38196         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
38197         of (size_t) -1 by callers of the getnline family.
38198
38199 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
38200
38201         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
38202         Check for gettimeofday.
38203         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
38204         Check for settimeofday, stime.
38205
38206 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
38207
38208         * lib/nanosleep.c (suspended): Change its type from int to
38209         sig_atomic_t volatile.
38210         (first_call): Make it private to rpl_nanosleep, and have it
38211         be zero initially as that's a bit faster.
38212         (my_usleep): Round up fractional times instead of truncating them,
38213         as this is the usual meaning for 'sleep'.
38214
38215         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
38216         doesn't work.
38217         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
38218         (ENOSYS): Define if not defined.
38219         (settime): Fall back on stime if it exists and settimeofday fails.
38220         But don't bother with fallbacks if a method fails with errno == EPERM.
38221
38222 2004-05-11  Jim Meyering  <jim@meyering.net>
38223
38224         Prior to this change, the save_cwd caller required read access to the
38225         current directory on most systems (ones with the fchdir function).
38226
38227         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
38228         fails, try write-only, and finally, resort to using xgetcwd.
38229
38230 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
38231
38232         * lib/obstack.c, obstack.h: Import changes from libc.
38233
38234 2004-04-28  Bruno Haible  <bruno@clisp.org>
38235
38236         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
38237         also implicitly appends .exe to executables.
38238         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
38239         accepts Windows pathnames.
38240         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
38241         Treat Cygwin like Windows, since it now accepts Windows pathnames.
38242         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
38243         Treat Cygwin like Windows, since it now accepts Windows pathnames.
38244         Reported by Derek Robert Price <derek@ximbiot.com>.
38245
38246 2004-04-21  Karl Berry  <karl@gnu.org>
38247
38248         * config/srclist.txt (localcharset.c): break sync.
38249
38250 2004-04-20  Paul Eggert  <eggert@twinsun.com>
38251
38252         * m4/host-os.m4: Add a copyright notice.
38253
38254 2004-04-20  Jim Meyering  <jim@meyering.net>
38255
38256         Change UTILS_ to gl_ in AC_DEFINE'd names.
38257         Change utils_- and jm_-prefixed variables, too.
38258         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
38259         UTILS_FUNC_MKDIR_TRAILING_SLASH.
38260         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
38261
38262         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
38263         Don't emit trailing blanks.
38264         Also rename jm_-prefixed variables to have gl_ prefix.
38265
38266         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
38267         Also rename jm_-prefixed variables to have gl_ prefix.
38268
38269         * m4/jm-macros.m4: Reflect the renamings.
38270         * m4/prereq.m4: Likewise.
38271
38272 2004-04-20  Jim Meyering  <jim@meyering.net>
38273
38274         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
38275         memory.
38276
38277 2004-04-20  Jim Meyering  <jim@meyering.net>
38278             Bruno Haible  <bruno@clisp.org>
38279
38280         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
38281         memory when realloc fails.
38282
38283 2004-04-19  Jim Meyering  <jim@meyering.net>
38284
38285         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
38286         now that readutmp.c may call `free (0)'.
38287
38288 2004-04-19  Bruno Haible  <bruno@clisp.org>
38289
38290         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
38291         * m4/inttypes_h.m4: Likewise.
38292         * m4/stdint_h.m4: Likewise.
38293         * m4/intmax_t.m4: Likewise.
38294         * m4/uintmax_t.m4: Likewise.
38295
38296 2004-04-18  Jim Meyering  <jim@meyering.net>
38297
38298         * m4/prereq.m4: Don't forbid jm_ prefix.
38299
38300         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
38301         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
38302         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
38303         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
38304         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
38305         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
38306         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
38307         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
38308         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
38309         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
38310         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
38311         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
38312         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
38313         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
38314         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
38315         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
38316         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
38317         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
38318         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
38319
38320 2004-04-18  Jim Meyering  <jim@meyering.net>
38321
38322         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
38323         failure, don't leak memory and do call END_UTMP_ENT.
38324
38325 2004-04-16  Jim Meyering  <jim@meyering.net>
38326
38327         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
38328         coreutils' stat program.
38329         (gl_PREREQ): Don't require jm_PREREQ_STAT.
38330
38331 2004-04-11  Paul Eggert  <eggert@twinsun.com>
38332
38333         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
38334         C89.
38335         (CHAR_BIT): Remove, since we assume C89.
38336         Include <stdint.h> if available, as per current Autoconf CVS advice.
38337
38338 2004-03-31  Jim Meyering  <jim@meyering.net>
38339
38340         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
38341         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
38342         * m4/xalloc.m4: Likewise.
38343
38344 2004-03-30  Paul Eggert  <eggert@twinsun.com>
38345
38346         Merge from coreutils.
38347
38348         * m4/inttostr.m4: New file.
38349         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
38350         Require AM_STDBOOL_H and gl_TIMESPEC instead.
38351         Require gl_CLOCK_TIME.
38352         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
38353
38354 2004-03-30  Paul Eggert  <eggert@twinsun.com>
38355
38356         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
38357         not bool, to be more consistent with Unix conventions.
38358         Suggested by Bruno Haible.
38359
38360         Merge from coreutils.
38361
38362         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
38363         * lib/umaxtostr.c: New files.
38364
38365         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
38366         the usual <time.h> dance.
38367         (get_date): Change signature to support fractional time stamps.
38368         All callers changed.
38369         * lib/getdate.y: Include "getdate.h" first, as we can now
38370         assume C89 and don't need to worry about 'const'.
38371         Similarly, include "unlocked-io.h" near start, not in middle.
38372         Include <limits.h>.
38373         (textint.value): Use long int rather than int.
38374         (textint.digits): Use size_t rather than int.
38375         (BILLION, LOG10_BILLION): New constants.
38376         (parser_control): New member rel_ns.  Members day_ordinal,
38377         time_zone, month, day, hour, minutes, rel_year, rel_month,
38378         rel_day, rel_hour, rel_minutes, rel_seconds
38379         are now long int, not int.  Member seconds is now struct timespec,
38380         not int.  New member timespec_seen.  Members dates_seen, days_seen,
38381         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
38382         not int.
38383         (%union.intval): Now long int, not int.
38384         New member timespec.
38385         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
38386         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
38387         (spec): Now is a timespec or an item list.
38388         (timespec, items): New nonterminals.
38389         (time, rel, relunit, number, get_date):
38390         Add support for fractional seconds.
38391         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
38392         (gmtime, localtime, mktime): Remove decls; not needed with C89.
38393         (to_hour): First arg is now long int, not int.
38394         (to_year): Returns long int, not int.
38395         Don't treat year -70 like 70.
38396         (tm_diff): Returns long int, not int.
38397         (lookup_word): Use bool instead of int when appropriate.
38398         (yylex): Use size_t for count, not int.
38399         Detect overflow when parsing large integer constants.
38400         Add support for fractions.
38401         (get_date): Make pointers 'const' if possible.
38402         Use more-portable code to detect integer overflow.
38403         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
38404         Don't use ctime; it's not reliable if the year has >4 digits.
38405
38406         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
38407         This is for compatibility with BSD.
38408
38409         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
38410         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
38411         From coreutils' system.h.
38412
38413         * lib/userspec.c: Don't include "posixver.h".
38414         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
38415         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
38416         compatible extension.  Simplify code by removing a boolean int
38417         that was always nonzero if a string was nonnull.
38418
38419 2004-03-30  Jim Meyering  <jim@meyering.net>
38420
38421         Merge from coreutils.
38422
38423         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
38424         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
38425         on some systems one must include <grp.h> before it.
38426         Reported by Christian Krackowizer.
38427
38428 2004-03-30  Jim Meyering  <jim@meyering.net>
38429
38430         Merge from coreutils.
38431
38432         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
38433
38434         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
38435         an empty input stream.
38436
38437         * lib/readtokens.c: Include <stdbool.h>.
38438         (readtoken): Use `size_t' rather than int/long.
38439         All callers adjusted.
38440         Use `bool' rather than `int' where appropriate.
38441         Use memset rather than an explicit loop.
38442         Use x2nrealloc rather than xrealloc.
38443         Allow the use of `\0' as a delimiter.
38444         (readtokens): Likewise.
38445         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
38446
38447 2004-03-30  Jim Meyering  <jim@meyering.net>
38448
38449         * m4/realloc.m4: Remove file, since now it does no more than
38450         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
38451         the `configure.ac' section of module/realloc.
38452         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
38453
38454 2004-03-30  Bruno Haible  <bruno@clisp.org>
38455
38456         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
38457         nonnull.
38458
38459 2004-03-29  Paul Eggert  <eggert@twinsun.com>
38460
38461         Merge changes to getloadavg.c from coreutils and Emacs.
38462
38463         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
38464         Define to an expression, not to the empty string.
38465         Include cloexec.h and xalloc.h.
38466         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
38467         Use set_cloexec_flag rather than rolling our own.
38468         * lib/cloexec.c, lib/cloexec.h: New files.
38469
38470 2004-03-29  Paul Eggert  <eggert@twinsun.com>
38471
38472         * m4/cloexec.m4: New file.
38473
38474 2004-03-18  Paul Eggert  <eggert@twinsun.com>
38475
38476         * lib/getopt.h: Sync with libc CVS.
38477
38478 2004-03-18  Paul Eggert  <eggert@twinsun.com>
38479             Bruno Haible  <bruno@clisp.org>
38480
38481         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
38482         mbswidth.
38483
38484 2004-03-18  Paul Eggert  <eggert@twinsun.com>
38485             Bruno Haible  <bruno@clisp.org>
38486
38487         * lib/mbswidth.h: Include <wchar.h> only if
38488         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
38489         <wchar.h>.
38490         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
38491
38492 2004-03-09  Paul Eggert  <eggert@twinsun.com>
38493
38494         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
38495         Sync with libc CVS.
38496         * lib/getopt_int.h: New file, also synced from libc.
38497
38498 2004-03-09  Paul Eggert  <eggert@twinsun.com>
38499
38500         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
38501         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
38502         Bring back getopt.c, getopt.h, getopt1.c.
38503
38504 2004-03-07  Paul Eggert  <eggert@twinsun.com>
38505
38506         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
38507         All uses changed.  Check for sa_sigaction member; this fixes
38508         a bug first reported by Jason Andrade in
38509         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
38510
38511 2004-03-07  Paul Eggert  <eggert@twinsun.com>
38512
38513         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
38514         '#if' expressions.  Unlike the code it replaces, it does not
38515         depend on (defined _SC_PAGESIZE).  However, it does depend on
38516         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
38517         first reported by Jason Andrade in
38518         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
38519
38520 2004-02-25  Simon Josefsson  <jas@extundo.com>
38521
38522         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
38523
38524 2004-02-25  Simon Josefsson  <jas@extundo.com>
38525
38526         * lib/strdup.h: New file.
38527         * lib/strdup.c: Include it.
38528         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
38529         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
38530
38531 2004-02-23  Karl Berry  <karl@gnu.org>
38532
38533         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
38534         (from fencepost.gnu.org:/gd/gnuorg).
38535
38536 2004-02-23  Karl Berry  <karl@gnu.org>
38537
38538         * config/srclistvars.sh (GNUORG) [karl]: redefine.
38539         * config/srclist.txt: add maintain/standards documents.
38540
38541 2004-02-18  Bruno Haible  <bruno@clisp.org>
38542
38543         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
38544         Reported by Derek Robert Price <derek@ximbiot.com>.
38545
38546 2004-02-16  Karl Berry  <karl@gnu.org>
38547
38548         * config/mkinstalldirs, install-sh: update from automake.
38549
38550 2004-02-06  Karl Berry  <karl@gnu.org>
38551
38552         * m4/po.m4: update from gettext 0.14.1.
38553
38554 2004-02-06  Karl Berry  <karl@gnu.org>
38555
38556         * lib/config.charset: update from gettext 0.14.1.
38557
38558 2004-02-05  Paul Eggert  <eggert@twinsun.com>
38559
38560         Add comments and code, prompted by suggestions from Bruno Haible
38561         for sh-quote.
38562         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
38563         describing the enum quoting_style values.
38564         * lib/quotearg.c (quotearg_alloc): New function.
38565         (quotearg_buffer_restyled): Treat lone { and } as special.
38566         Treat = as special.  Work around bug with older shells
38567         that "see" a '\' that is really the 2nd byte of a multibyte char.
38568         Quote empty string with shell_quoting_style.
38569
38570 2004-02-03  Bruno Haible  <bruno@clisp.org>
38571
38572         * m4/pipe.m4: New file, from GNU gettext.
38573
38574 2004-02-03  Bruno Haible  <bruno@clisp.org>
38575
38576         * lib/pipe.h: New file, from GNU gettext.
38577         * lib/pipe.c: New file, from GNU gettext.
38578
38579 2004-01-27  Bruno Haible  <bruno@clisp.org>
38580
38581         * m4/execute.m4: New file, from GNU gettext.
38582
38583 2004-01-27  Bruno Haible  <bruno@clisp.org>
38584
38585         * lib/execute.h: New file, from GNU gettext.
38586         * lib/execute.c: New file, from GNU gettext.
38587         * lib/w32spawn.h: New file, from GNU gettext.
38588
38589 2004-01-24  Paul Eggert  <eggert@twinsun.com>
38590
38591         Merge from diffutils.
38592
38593         * lib/file-type.c (file_type): Add typed memory objects.
38594         * lib/file-type.h (S_TYPEISTMO): New macro.
38595
38596         * lib/c-stack.h (c_stack_action): Remove argv argument.
38597         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
38598         (die): Don't calculate message unless segv_action returns.
38599         (get_stack_location, min_address_from_argv, max_address_from_argv,
38600         volatile stack_base, volatile_stack_size): Remove.
38601         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
38602         that every segmentation violation is a stack overflow.  (Ouch!)
38603         See Debian bug 136249 (still outstanding) for more info about why
38604         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
38605
38606 2004-01-24  Paul Eggert  <eggert@twinsun.com>
38607
38608         Exit-status fix from coreutils.
38609
38610         Use exit_failure consistently in place of EXIT_FAILURE,
38611         so that program exit statuses are consistent on failure.
38612
38613         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
38614         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
38615         * lib/argmatch.h: Comment fix to match the above.
38616         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
38617         Now a macro referring to exit_failure, instead of a separate
38618         variable.  Include "exitfail.h" to get it.
38619         * lib/xstrtol.h: Include "exitfail.h".
38620         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
38621
38622         * lib/long-options.c (parse_long_options): Use prototype
38623         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
38624         for clarity.
38625
38626 2004-01-21  Jim Meyering  <jim@meyering.net>
38627
38628         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
38629         so as not to conflict with a different-sized __mktime_internal
38630         function in GNU libc.
38631         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
38632         Problem building statically-linked `ls' reported by Michael Brunnbauer.
38633
38634 2004-01-20  Karl Berry  <karl@gnu.org>
38635
38636         * config/config.guess: update from config.
38637
38638         * config/srclistvars.sh: GNUWWWLICENSES for karl.
38639
38640 2004-01-20  Bruno Haible  <bruno@clisp.org>
38641
38642         Safer stack allocation.
38643         * lib/setenv.c: Include allocsa.h.
38644         (alloca): Remove fallback definition.
38645         (freea): Remove macro.
38646         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
38647         instead of freea.
38648
38649 2004-01-20  Bruno Haible  <bruno@clisp.org>
38650
38651         * m4/eealloc.m4: New file, from GNU gettext.
38652
38653 2004-01-20  Bruno Haible  <bruno@clisp.org>
38654
38655         * m4/allocsa.m4: New file, from GNU gettext.
38656
38657 2004-01-20  Bruno Haible  <bruno@clisp.org>
38658
38659         * lib/xallocsa.h: New file, from GNU gettext.
38660         * lib/xallocsa.c: New file, from GNU gettext.
38661
38662 2004-01-20  Bruno Haible  <bruno@clisp.org>
38663
38664         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
38665
38666 2004-01-20  Bruno Haible  <bruno@clisp.org>
38667
38668         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
38669         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
38670         specially.
38671
38672 2004-01-20  Bruno Haible  <bruno@clisp.org>
38673
38674         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
38675         patch.
38676
38677 2004-01-20  Bruno Haible  <bruno@clisp.org>
38678
38679         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
38680
38681 2004-01-20  Bruno Haible  <bruno@clisp.org>
38682
38683         * lib/eealloc.h: New file.
38684
38685 2004-01-20  Bruno Haible  <bruno@clisp.org>
38686
38687         * lib/binary-io.h: Avoid warnings on Cygwin.
38688
38689 2004-01-20  Bruno Haible  <bruno@clisp.org>
38690
38691         * lib/allocsa.h: New file, from GNU gettext.
38692         * lib/allocsa.c: New file, from GNU gettext.
38693
38694 2004-01-18  Karl Berry  <karl@gnu.org>
38695
38696         * doc/gpl.texi, doc/lgpl.texi: new files.
38697
38698 2004-01-18  Karl Berry  <karl@gnu.org>
38699
38700         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
38701         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
38702
38703 2004-01-15  Paul Eggert  <eggert@twinsun.com>
38704
38705         Merge from coreutils.
38706
38707         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
38708         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
38709         (gl_DEFAULT_POSIX2_VERSION): Move
38710         the documentation from 'configure' into 'config.hin',
38711         so that 'configure --help' isn't burdened by it and
38712         we don't have to worry about its formatting there.
38713         Reword the documentation so that it's more succinct
38714         and can be run together into a single paragraph.
38715         * m4/same.m4 (gl_SAME): Check for pathconf.
38716
38717 2004-01-15  Paul Eggert  <eggert@twinsun.com>
38718
38719         Merge from coreutils.
38720
38721         * lib/posixver.c: Include posixver.h.
38722
38723         * lib/same.c: Include <stdbool.h>, <limits.h>.
38724         (_POSIX_NAME_MAX): Define if not defined.
38725         (MIN): New macro.
38726         (same_name): If file names are silently truncated, report
38727         that the file names are the same if they are the same after
38728         the silent truncation.
38729
38730         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
38731         conversion function.
38732         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
38733         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
38734         longer needed.
38735
38736 2004-01-15  Jim Meyering  <jim@meyering.net>
38737
38738         Merge from coreutils.
38739
38740         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
38741         if no library is required.
38742         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
38743         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
38744         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
38745         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
38746         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
38747         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
38748         value, $ac_cv_search_crypt, if it's "none required".
38749         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
38750         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
38751         not gl_FUNC_GETLOADAVG.
38752         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
38753         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
38754
38755 2004-01-15  Jim Meyering  <jim@meyering.net>
38756
38757         Merge from coreutils.
38758
38759         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
38760         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
38761         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
38762
38763         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
38764         optional configure-time default.
38765
38766         * lib/version-etc.c (version_etc_copyright): Update copyright date.
38767
38768         * lib/xreadlink.c (xreadlink): Correct outdated comment.
38769
38770 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
38771
38772         Merge from coreutils.
38773
38774         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
38775         value, $ac_cv_search_nanosleep, if it's "none required".
38776
38777 2004-01-14  Paul Eggert  <eggert@twinsun.com>
38778
38779         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
38780         with like-named macro in fnmatch.c.
38781         (EXT): Use an internal constant instead.
38782
38783         Merge fnmatch patches from glibc.
38784         * lib/fnmatch.c (mbsinit): Remove define.
38785         Add libc_hidden_ver (__fnmatch, fnmatch).
38786         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
38787         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
38788
38789 2004-01-14  Karl Berry  <karl@gnu.org>
38790
38791         * config/install-sh: update from automake.
38792
38793 2004-01-13  Karl Berry  <karl@gnu.org>
38794
38795         * config/install-sh: update from automake.
38796
38797 2004-01-09  Karl Berry  <karl@gnu.org>
38798
38799         * config/install-sh: update from automake.
38800
38801 2004-01-05  Karl Berry  <karl@gnu.org>
38802
38803         * config/config.{sub,guess}: update from config.
38804
38805 2003-12-31  Karl Berry  <karl@gnu.org>
38806
38807         * config/depcomp: update from automake.
38808
38809 2003-12-14  Karl Berry  <karl@gnu.org>
38810
38811         * lib/config.charset: update from gettext-runtime.
38812
38813 2003-12-03  Paul Eggert  <eggert@twinsun.com>
38814
38815         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
38816         Bug reported by Alfred M. Szmidt.
38817
38818 2003-12-03  Bruno Haible  <bruno@clisp.org>
38819
38820         * m4/gettext.m4: Upgrade from gettext-0.13.
38821         * m4/po.m4: Upgrade from gettext-0.13.
38822         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
38823         * m4/intmax.m4: New file, from gettext-0.13.
38824         * m4/printf-posix.m4: New file, from gettext-0.13.
38825
38826 2003-11-29  Karl Berry  <karl@gnu.org>
38827
38828         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
38829
38830 2003-11-25  Paul Eggert  <eggert@twinsun.com>
38831             Bruno Haible  <bruno@clisp.org>
38832
38833         * lib/printf-parse.h: Don't include sys/types.h.
38834         (ARG_NONE): New macro.
38835         (char_directive): Change type of *arg_index fields to size_t.
38836         * lib/printf-parse.c: Don't include sys/types.h.
38837         (SSIZE_MAX): Remove macro.
38838         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
38839         Remove unnecessary overflow check.
38840         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
38841         fields.
38842
38843 2003-11-25  Bruno Haible  <bruno@clisp.org>
38844
38845         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
38846
38847 2003-11-25  Bruno Haible  <bruno@clisp.org>
38848
38849         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
38850         gt_TYPE_SSIZE_T.
38851
38852 2003-11-24  Paul Eggert  <eggert@twinsun.com>
38853
38854         * modules/alloca: Remove dependency on xalloc.
38855
38856 2003-11-24  Paul Eggert  <eggert@twinsun.com>
38857
38858         * lib/alloca.c: Remove dependency on xalloc module.
38859         (xalloc_die): Remove.
38860         (memory_full) [!defined emacs]: New macro.
38861         [!defined emacs]: Don't include xalloc.h.
38862         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
38863         address arithmetic overflows.  Change datatypes a bit to avoid
38864         unnecessary casts.
38865
38866 2003-11-22  Jim Meyering  <jim@meyering.net>
38867
38868         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
38869         s/size/size_t/.
38870
38871 2003-11-21  Karl Berry  <karl@gnu.org>
38872
38873         * config/config.{sub,guess}: update from config.
38874
38875 2003-11-18  Karl Berry  <karl@gnu.org>
38876
38877         * config/config.{sub,guess}: update from config.
38878
38879         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
38880
38881 2003-11-17  Paul Eggert  <eggert@twinsun.com>
38882
38883         * README: Mention that S+T cannot overflow if S is the size of
38884         an existing object and T is sufficiently small.
38885
38886 2003-11-17  Jim Meyering  <jim@meyering.net>
38887
38888         On systems without utime and without a utimes function capable of
38889         dealing with a NULL struct utimbuf* argument, this utime replacement
38890         could -- in unusual circumstances -- leak a file descriptor.
38891         * lib/utime.c: Include <unistd.h> and <errno.h>.
38892         (utime_null): Be sure to close `fd' and to preserve errno.
38893         Reported by Geoff Collyer via Arnold Robbins.
38894
38895 2003-11-17  Bruno Haible  <bruno@clisp.org>
38896
38897         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
38898         (Depends-on): Add xsize.
38899
38900 2003-11-17  Bruno Haible  <bruno@clisp.org>
38901
38902         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
38903
38904 2003-11-17  Bruno Haible  <bruno@clisp.org>
38905
38906         * lib/vasnprintf.c (alloca): Remove fallback definition.
38907         (freea): Remove definition.
38908         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
38909         Reported by Paul Eggert.
38910
38911 2003-11-16  Paul Eggert  <eggert@twinsun.com>
38912             Bruno Haible  <bruno@clisp.org>
38913
38914         Protect against address arithmetic overflow.
38915         * lib/printf-args.h: Include stddef.h.
38916         (arguments): Change type of field 'count' to size_t.
38917         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
38918         'unsigned int' where appropriate.
38919         * lib/printf-parse.h: Include sys/types.h.
38920         (char_directive): Change type of *arg_index fields to ssize_t.
38921         (char_directives): Change type of fields 'count', max_*_length to
38922         size_t.
38923         * lib/printf-parse.c: Include sys/types.h and xsize.h.
38924         (SSIZE_MAX): Define fallback value.
38925         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
38926         instead of 'int' where appropriate. Check a_allocated, d_allocated
38927         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
38928         * lib/vasnprintf.c: Include xsize.h.
38929         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
38930         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
38931         overflow. Avoid wraparound when converting a width or precision from
38932         decimal to binary.
38933
38934 2003-11-16  Bruno Haible  <bruno@clisp.org>
38935
38936         Update from GNU gettext.
38937         * lib/printf-parse.c: Generalize to it can be compiled for wide
38938         strings.
38939         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
38940         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
38941         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
38942         SNPRINTF): New macros.
38943         Don't include <alloca.h> if the file is used inside libintl.
38944         (local_wcslen): New function, for Solaris 2.5.1.
38945         (VASNPRINTF): Use it instead of wcslen.
38946
38947 2003-11-16  Bruno Haible  <bruno@clisp.org>
38948
38949         * lib/xsize.h (xmax): New function.
38950         (xsum, xsum3, xsum4): Declare as "pure" functions.
38951
38952 2003-11-12  Paul Eggert  <eggert@twinsun.com>
38953
38954         * modules/xalloc (Files): Undo latest change, since xalloc.h
38955         no longer needs SIZE_MAX or PTRDIFF_MAX.
38956
38957 2003-11-12  Paul Eggert  <eggert@twinsun.com>
38958
38959         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
38960         gl_PTRDIFF_MAX.
38961
38962 2003-11-12  Paul Eggert  <eggert@twinsun.com>
38963
38964         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
38965         "return", to pacify some unknown compiler.  Problem reported
38966         by Joerg Schilling.
38967
38968 2003-11-12  Paul Eggert  <eggert@twinsun.com>
38969
38970         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
38971         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
38972         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
38973         heuristic is just as accurate as far as we know, and it removes a
38974         dependency on size_max.m4 and ptrdiff_max.m4.
38975
38976 2003-11-11  Bruno Haible  <bruno@clisp.org>
38977
38978         * modules/xsize (Files): Add m4/size_max.m4.
38979         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
38980
38981 2003-11-11  Bruno Haible  <bruno@clisp.org>
38982
38983         * m4/size_max.m4: New file.
38984         * m4/ptrdiff_max.m4: New file.
38985         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
38986         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
38987         (gl_XALLOC): Invoke it.
38988
38989 2003-11-11  Bruno Haible  <bruno@clisp.org>
38990
38991         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
38992         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
38993         defined.
38994
38995 2003-11-10  Paul Eggert  <eggert@twinsun.com>
38996
38997         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
38998         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
38999         rejected some allocations of exactly SIZE_MAX - 2 bytes.
39000         From Bruno Haible.
39001         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
39002         not (size_t) -1, since it's defined here.
39003
39004 2003-11-09  Karl Berry  <karl@gnu.org>
39005
39006         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
39007
39008 2003-11-06  Paul Eggert  <eggert@twinsun.com>
39009
39010         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
39011         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
39012         Reject sizes of exactly SIZE_MAX bytes.
39013         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
39014         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
39015
39016 2003-11-05  Bruno Haible  <bruno@clisp.org>
39017
39018         * lib/xsize.h: Include limits.h, to avoid a possible collision with
39019         SIZE_MAX defined in <limits.h> on Solaris.
39020
39021 2003-11-04  Jim Meyering  <jim@meyering.net>
39022
39023         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
39024         variable names, rather than @VAR@.
39025         * modules/poll: Likewise.
39026
39027 2003-11-04  Bruno Haible  <bruno@clisp.org>
39028
39029         * modules/xsize: New file.
39030         * modules/linebreak: Depend on xsize.
39031         * MODULES.html.sh (func_all_modules): Add xsize.
39032
39033 2003-11-04  Bruno Haible  <bruno@clisp.org>
39034
39035         * m4/xsize.m4: New file.
39036
39037 2003-11-04  Bruno Haible  <bruno@clisp.org>
39038
39039         * lib/xsize.h: New file.
39040         * lib/linebreak.c: Include xsize.h.
39041         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
39042         argument for overflow.
39043         Suggested by Paul Eggert.
39044
39045 2003-11-03  Karl Berry  <karl@gnu.org>
39046
39047         * config/config.{guess,sub}: update from config.
39048
39049 2003-11-03  Jim Meyering  <jim@meyering.net>
39050
39051         * modules/userspec (lib_SOURCES): Add userspec.h.
39052         (Include): Add "userspec.h".
39053         Improve description.
39054
39055 2003-11-03  Jim Meyering  <jim@meyering.net>
39056
39057         * lib/userspec.c: Include "userspec.h".
39058         * lib/userspec.h: New file.
39059
39060 2003-11-03  Bruno Haible  <bruno@clisp.org>
39061
39062         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
39063
39064 2003-11-03  Bruno Haible  <bruno@clisp.org>
39065
39066         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
39067         available, to avoid (extremely rare) race condition.
39068         Suggested by Paul Eggert.
39069
39070 2003-11-02  Karl Berry  <karl@gnu.org>
39071
39072         * config/srclist.txt (vasprintf.c): sync broken, sigh.
39073
39074 2003-10-31  Paul Eggert  <eggert@twinsun.com>
39075
39076         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
39077         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
39078         (read_filesystem_list): Set and use me_type_malloced.
39079         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
39080         whatever the type happens to be), for brevity and consistency.
39081         Check for size calculation overflow on Alphas running OSF/1.
39082
39083 2003-10-31  Jim Meyering  <jim@meyering.net>
39084
39085         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
39086
39087         * lib/linebuffer.c: Include <string.h> for declaration of memset.
39088
39089 2003-10-30  Paul Eggert  <eggert@twinsun.com>
39090             Bruno Haible  <bruno@clisp.org>
39091
39092         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
39093         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
39094
39095 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
39096
39097         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
39098         netbsd*-gnu*.  Suggested by Robert Millan.
39099
39100 2003-10-29  Paul Eggert  <eggert@twinsun.com>
39101
39102         * modules/group-member: Depend on stdbool.
39103
39104 2003-10-29  Paul Eggert  <eggert@twinsun.com>
39105
39106         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
39107
39108 2003-10-29  Paul Eggert  <eggert@twinsun.com>
39109
39110         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
39111         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
39112         after the 'gnu' in these cases.  This fixes some bugs in the
39113         previous change, and is based on suggestions by Robert Millan.
39114
39115 2003-10-29  Paul Eggert  <eggert@twinsun.com>
39116
39117         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
39118         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
39119         no longer needed.
39120         * lib/quotearg.c (quotearg_n_options): Use it.
39121         * lib/group-member.c: Include <stdbool.h>.
39122         (free_group_info): Arg is now const *; don't free arg.
39123         (get_group_info): Now returns bool and accepts struct group_info *,
39124         rather than returning a malloc'ed struct group_info *.
39125         All uses changed.  Check for overflow in internal size calculation.
39126
39127         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
39128         rather than xmalloc/xrealloc.
39129         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
39130         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
39131         conformance bug: the old code used a pointer after freeing the
39132         storage that it addressed.
39133         * lib/hash.c (hash_initialize): Simplify the code by using
39134         xalloc_oversized rather than doing it by hand.
39135         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
39136         the buffer preserved.  Use free and xmalloc instead.
39137         * lib/quotearg.c (quotearg_n_options): Likewise.
39138         Use a simpler test for size overflow.  Don't use xalloc_oversized
39139         because unsigned int might be wider than size_t (!); this suggests
39140         that we should switch from unsigned int to size_t for slot numbers.
39141
39142 2003-10-28  Paul Eggert  <eggert@twinsun.com>
39143
39144         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
39145         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
39146         NetBSD kernels.  Requested by Richard Stallman.
39147
39148 2003-10-27  Paul Eggert  <eggert@twinsun.com>
39149
39150         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
39151         to allocate the returned structure.  Do not allocate a subarray,
39152         as x2nrealloc will do that.
39153         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
39154         instead of xnrealloc.
39155         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
39156
39157 2003-10-27  Bruno Haible  <bruno@clisp.org>
39158
39159         * lib/stdbool_.h: Better support for BeOS.
39160
39161 2003-10-26  Paul Eggert  <eggert@twinsun.com>
39162
39163         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
39164         now uses inline.
39165
39166 2003-10-26  Paul Eggert  <eggert@twinsun.com>
39167
39168         * lib/xalloc.h (xalloc_oversized): New static inline function, for
39169         callers that want to do their own size-overflow checking.  Include
39170         <stdbool.h>, since xalloc_oversized returns bool.
39171         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
39172         to use xalloc_oversized.
39173
39174         Add two functions x2realloc, x2nrealloc, for programs that grow
39175         arrays dynamically by doubling their sizes.
39176         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
39177         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
39178         New functions.
39179
39180         Port to C99 semantics for 'inline' of external functions.
39181         Bug reported by Bruno Haible.
39182         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
39183         with the old contents of xnmalloc.
39184         (xnmalloc, xmalloc): Use it.
39185         (xnrealloc_inline): New static inline function,
39186         with the old contents of xnrealloc.
39187         (xnrealloc, xrealloc): Use it.
39188
39189         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
39190         that.
39191
39192 2003-10-26  Karl Berry  <karl@gnu.org>
39193
39194         * config/srclist.txt (COPYING.DOC): no longer available from
39195         /gd/gnuorg; don't know where the ultimate source is.
39196
39197 2003-10-25  Paul Eggert  <eggert@twinsun.com>
39198
39199         Fix several address-calculation bugs in the hash modules,
39200         plus some minor code cleanup.
39201
39202         * lib/hash.h: Include <stdbool.h>, for bool.
39203         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
39204         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
39205         hash_get_n_entries, hash_get_max_bucket_length,
39206         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
39207         hash_rehash): Use size_t rather than unsigned.
39208         * lib/hash.c (struct hash_table, hash_get_n_buckets,
39209         hash_get_n_buckets_used, hash_get_n_entries,
39210         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
39211         hash_get_entries, hash_do_for_each, hash_string, is_prime,
39212         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
39213         Likewise.
39214         (SIZE_MAX): Define if not defined.
39215         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
39216         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
39217         hash_print):
39218         Use const * when possible.
39219         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
39220         (check_tuning): Fix bug: if tuning parameters were very close to
39221         0 or 1, rounding errors could have caused subscript violations.
39222         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
39223         (hash_initialize): Add 'fail:' label
39224         to free table and return NULL, and use it to simplify code.
39225         Use calloc rather than clearing the storage ourself.
39226         (hash_initialize, hash_rehash): Check for arithmetic overflow in
39227         buffer size calculations.
39228         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
39229         Include <stddef.h>, for size_t.
39230         * lib/hash-pjw.c (hash_pjw): Likewise.
39231         Switch to method described by Bruno Haible.
39232         Include <limits.h>, for CHAR_BIT.
39233         (SIZE_BITS): New macro.
39234
39235 2003-10-23  Paul Eggert  <eggert@twinsun.com>
39236
39237         * m4/getline.m4 (AM_FUNC_GETLINE):
39238         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
39239         hosts.  Problem reported by Derek Robert Price in
39240         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
39241         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
39242         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
39243
39244 2003-10-21  Paul Eggert  <eggert@twinsun.com>
39245
39246         * lib/getndelim2.c (getndelim2): When size calculation overflows,
39247         ceiling the allocation at NMAX bytes rather than silently
39248         discarding input bytes before NMAX is reached.  This makes
39249         a difference only if NMAX exceeds SIZE_MAX / 2.
39250
39251         * lib/obstack.c: Merge from glibc.
39252         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
39253         Add libc_hidden_def (_obstack_newchunk).
39254         (_obstack_free) [! defined _LIBC]: Remove.
39255         [defined _LIBC]: Make a strong alias from obstack_free, rather than
39256         a clone of the function body.
39257         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
39258         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
39259
39260         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
39261         glibc.
39262         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
39263         arg to memcpy.
39264
39265         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
39266         (obstack_ptr_grow_fast, obstack_int_grow_fast):
39267         Don't use lvalue casts, as GCC plans to remove support for them
39268         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
39269         was also present in the non-GCC version, indicating that this
39270         code had always been buggy and had never been widely used.
39271         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
39272         Use the fast variant of each macro, rather than copying the
39273         definiens of the fast variant; that way, we'll be more likely to
39274         catch future bugs in the fast variants.
39275
39276 2003-10-20  Bruno Haible  <bruno@clisp.org>
39277
39278         * modules/wait-process: New file.
39279         * MODULES.html.sh (func_all_modules): Add wait-process.
39280
39281 2003-10-20  Bruno Haible  <bruno@clisp.org>
39282
39283         * m4/wait-process.m4: New file.
39284
39285 2003-10-20  Bruno Haible  <bruno@clisp.org>
39286
39287         * lib/wait-process.h: New file, from GNU gettext.
39288         * lib/wait-process.c: New file, from GNU gettext.
39289
39290 2003-10-19  Jim Meyering  <jim@meyering.net>
39291
39292         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
39293         HPUX 10.20.
39294
39295 2003-10-18  Karl Berry  <karl@gnu.org>
39296
39297         * config/config.guess: update from config.
39298
39299 2003-10-16  Paul Eggert  <eggert@twinsun.com>
39300
39301         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
39302         (getgroups): First arg is int, not size_t.
39303         Don't let 'free' mangle errno.
39304
39305 2003-10-16  Paul Eggert  <eggert@twinsun.com>
39306
39307         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
39308
39309 2003-10-16  Karl Berry  <karl@gnu.org>
39310
39311         * config/config.{guess,sub}: update from config.
39312
39313 2003-10-16  Jim Meyering  <jim@meyering.net>
39314
39315         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
39316         memcpy.
39317
39318 2003-10-15  Paul Eggert  <eggert@twinsun.com>
39319
39320         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
39321         (SIZE_MAX): Remove.
39322         (new_exclude, add_exclude_file): Initial size no longer needs to
39323         be a power of 2.
39324         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
39325         our own address arithmetic overflow checking.
39326
39327         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
39328         (fnmatch): Do not alloca more than 2000 wide characters;
39329         instead, use malloc for large buffers.
39330         Check for address arithmetic overflow, and return -1
39331         with errno set to ENOMEM in that case.
39332         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
39333         (NEW_PATTERN): Do not alloca more than 8000 bytes;
39334         instead, return -1.  Check for address arithmetic overflow.
39335
39336 2003-10-14  Paul Eggert  <eggert@twinsun.com>
39337
39338         Handle invalid suffixes and overflow independently, so that
39339         callers can treat them independently as needed.  Fix some bugs in
39340         suffix handling, e.g., "100k@" was not diagnosed as an invalid
39341         suffix for a human-readable blocksize.  The major caller-visible
39342         change is the addition of a new
39343         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
39344         that both overflow and suffix chars were found.
39345
39346         * lib/human.c (humblock): Don't check separately for invalid suffix
39347         char; that is xstrtoumax's job (now that its bug is fixed).
39348         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
39349         INTMAX_MAX]: New macros.
39350         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
39351         TYPE_MAXIMUM): New macros.
39352         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
39353         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
39354         if overflow occurs, as it's what __strtol does and it's more useful
39355         in practice.
39356         (__xstrtol): If __strtol reports some error other than ERANGE,
39357         reflect it to the caller as LONGINT_INVALID.  If it reports
39358         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
39359         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
39360         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
39361         value.
39362         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
39363         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
39364         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
39365         [defined UINTMAX_MAX]: New macros.
39366
39367 2003-10-14  Bruno Haible  <bruno@clisp.org>
39368
39369         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
39370
39371 2003-10-14  Bruno Haible  <bruno@clisp.org>
39372
39373         * m4/sig_atomic_t: New file, from GNU gettext.
39374         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
39375
39376 2003-10-14  Bruno Haible  <bruno@clisp.org>
39377
39378         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
39379         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
39380         Also use volatile where needed.
39381
39382 2003-10-12  Paul Eggert  <eggert@twinsun.com>
39383
39384         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
39385         Change maintainer from Bruno Haible to 'all'.
39386
39387 2003-10-12  Paul Eggert  <eggert@twinsun.com>
39388
39389         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
39390
39391 2003-10-12  Paul Eggert  <eggert@twinsun.com>
39392
39393         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
39394         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
39395         and define in terms of the other primitives.
39396         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
39397         (SIZE_MAX): Define if not already defined.
39398         (array_size_overflow): New function.
39399         (xalloc_die): Abort instead of exiting if 'error' returns.
39400         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
39401         (xmalloc, xrealloc): Use them.
39402         (xcalloc): Check for address arithmetic overflow.
39403         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
39404         a bit faster than strcpy.
39405
39406 2003-10-10  Simon Josefsson  <jas@extundo.com>
39407
39408         * modules/argp (Depends-on): Add restrict and strcase.
39409
39410 2003-10-10  Simon Josefsson  <jas@extundo.com>
39411
39412         * m4/argp.m4: Add AC_C_INLINE.
39413
39414 2003-10-08  Paul Eggert  <eggert@twinsun.com>
39415
39416         Merge getpass from libc, plus a few fixes.
39417
39418         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
39419         Include <stdbool.h>.
39420         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
39421         __fsetlocking to empty.
39422         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
39423         do include <bits/libc-lock.h>.
39424         Do not include <fcntl.h>; not needed.
39425         [_LIBC]: Include <wchar.h>.
39426         (NOTCANCEL_MODE): New macro.
39427         (flockfile, funlockfile) [_LIBC]: New macros.
39428         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
39429         [!_LIBC]: New macros.
39430         (call_fclose): New function.
39431         (getpass): Use it.  Save tty stream separately; this simplifies the
39432         code and makes it more reliable if stdin happens to equal stdout.
39433         Invoke __fsetlocking on tty.
39434         Handle thread cancellation if needed.
39435         Namespace cleanup (use __tcgetattr, __getline).
39436         Use bool for Booleans.
39437         [USE_IN_LIBIO]: Handle wide streams.
39438         [!_LIBC]: Unconditionally do the fseek, since we don't know what
39439         stream might go where.
39440
39441         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
39442         doesn't have to include <stdio.h> before us.
39443         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
39444         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
39445         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
39446         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
39447         if not declared, so that we can use getpass.c code from libc without
39448         rewriting it.
39449         (flockfile, ftrylockfile, funlockfile): New macros.
39450
39451 2003-10-08  Paul Eggert  <eggert@twinsun.com>
39452
39453         * modules/getpass: Depend on stdbool.
39454
39455 2003-10-08  Paul Eggert  <eggert@twinsun.com>
39456
39457         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
39458
39459 2003-10-07  Karl Berry  <karl@gnu.org>
39460
39461         * config/config.{guess,sub}: update from config.
39462
39463 2003-10-06  Jim Meyering  <jim@meyering.net>
39464             Bruno Haible  <bruno@clisp.org>
39465
39466         This lets translators provide better translations for the
39467         "Written by ..." part of --version output.
39468         * lib/version-etc.h: Include stdarg.h.
39469         (version_etc_copyright): Declare as readonly.
39470         (version_etc): Make this function variadic with a NULL-terminated list
39471         of author name strings.
39472         (version_etc_va): New declaration.
39473         * lib/version-etc.c: Include stdarg.h, stdlib.h.
39474         (version_etc_copyright): Declare as readonly.
39475         (version_etc_va): New function. Provide a different translatable string
39476         for each possible number of authors < 10. Abbreviate when there are 10
39477         authors or more.
39478         (version_etc): Make this function variadic. Call version_etc_va.
39479         Suggestion from Gary V. Vaughan.
39480
39481         * lib/long-options.h (parse_long_options): Change prototype: the
39482         authors string is moved to the end and becomes variadic.
39483         * lib/long-options.c: Include stdarg.h.
39484         (parse_long_options): Make this function variadic, too.
39485         Call version_etc_va, not version_etc.
39486
39487 2003-10-06  Bruno Haible  <bruno@clisp.org>
39488
39489         * modules/version-etc-2: Remove file.
39490         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
39491
39492 2003-10-06  Bruno Haible  <bruno@clisp.org>
39493
39494         * modules/fatal-signal: New file.
39495         * MODULES.html.sh (func_all_modules): Add fatal-signal.
39496
39497 2003-10-06  Bruno Haible  <bruno@clisp.org>
39498
39499         * m4/fatal-signal.m4: New file.
39500         * m4/signalblocking.m4: New file, from GNU gettext.
39501
39502 2003-10-06  Bruno Haible  <bruno@clisp.org>
39503
39504         * lib/version-etc-2.h: Remove file.
39505         * lib/version-etc-2.c: Remove file.
39506
39507 2003-10-06  Bruno Haible  <bruno@clisp.org>
39508
39509         * lib/fatal-signal.h: New file, from GNU gettext.
39510         * lib/fatal-signal.c: New file, from GNU gettext.
39511
39512 2003-10-05  Paul Eggert  <eggert@twinsun.com>
39513
39514         * README: Rework advice for preventing empty .o files.
39515         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
39516         not <sys/types.h>.
39517
39518 2003-10-04  Karl Berry  <karl@gnu.org>
39519
39520         * lib/argp*: update from libc.
39521
39522 2003-10-04  Karl Berry  <karl@gnu.org>
39523
39524         * config/config.{guess,sub}: update from config.
39525
39526 2003-10-02  Bruno Haible  <bruno@clisp.org>
39527
39528         * modules/lchown (Include): Add lchown.h.
39529         * modules/time_r (Include): Use "..." syntax.
39530         * modules/xgetdomainname (Include): Add xgetdomainname.h.
39531
39532 2003-10-01  Simon Josefsson  <jas@extundo.com>
39533
39534         * MODULES.html.sh (func_all_modules): Move gethostname from section
39535         'based on' to section 'lacking' POSIX:2001.
39536
39537 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
39538
39539         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
39540         to output mode on the same stream.
39541
39542 2003-09-29  Paul Eggert  <eggert@twinsun.com>
39543
39544         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
39545         Fix arg typo in previous patch.
39546
39547 2003-09-28  Jim Meyering  <jim@meyering.net>
39548
39549         * lib/error.c: Correct cpp indentation.
39550
39551 2003-09-27  Paul Eggert  <eggert@twinsun.com>
39552
39553         * modules/free: New file.
39554
39555 2003-09-27  Paul Eggert  <eggert@twinsun.com>
39556
39557         * m4/free.m4: New file.
39558
39559 2003-09-27  Paul Eggert  <eggert@twinsun.com>
39560
39561         * lib/minmax.h (MIN, MAX)
39562         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
39563         Omit the special code that used __typeof__, since we worry that
39564         it could be more trouble than it's worth.  See:
39565         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
39566         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
39567
39568         * lib/free.c: New file.
39569
39570 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
39571
39572         Trivial fixes to Makefile.am parts of module listings.
39573         * modules/strstr: Append strstr.h to lib_SOURCES.
39574         * modules/strcase: Likewise, for strcase.h.
39575
39576 2003-09-27  Karl Berry  <karl@gnu.org>
39577
39578         * config/mkinstalldirs: update from automake.
39579
39580 2003-09-26  Paul Eggert  <eggert@twinsun.com>
39581
39582         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
39583         (error_tail): Do not loop, reallocating temporary buffer, since
39584         the output cannot contain more wide characters than the input
39585         contains bytes, the size must be big enough already.  This avoids
39586         one potential size overflow calculation.  Check for size overflow
39587         when calculating temporary buffer size.  Free temporary buffer
39588         when done, if it was allocated with malloc; this plugs a memory
39589         leak.  Remove casts from void * to pointers, that are no longer
39590         needed now that we're assuming C89 or better.
39591
39592         Merge error changes from glibc.
39593
39594         * lib/error.c, error.h: Update copyright notice header to match glibc.
39595         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
39596         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
39597         Disable cancellation while printing error.
39598         * lib/error.h: Prepend __ to parameter names.
39599
39600 2003-09-26  Jim Meyering  <jim@meyering.net>
39601
39602         * lib/error.c (error_tail): Move some declarations
39603         into inner scope where the local variables are used.
39604
39605 2003-09-26  Bruno Haible  <bruno@clisp.org>
39606
39607         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
39608         stpncpy().
39609         Don't define stpncpy through config.h; it's now done through stpncpy.h.
39610
39611 2003-09-26  Bruno Haible  <bruno@clisp.org>
39612
39613         * lib/stpncpy.h (gnu_stpncpy): New declaration.
39614         (stpncpy): Define as alias for gnu_stpncpy.
39615         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
39616
39617 2003-09-25  Simon Josefsson  <jas@extundo.com>
39618
39619         * lib/xgetdomainname.h: New file.
39620         * lib/xgetdomainname.c: New file.
39621
39622 2003-09-25  Simon Josefsson  <jas@extundo.com>
39623             Bruno Haible  <bruno@clisp.org>
39624
39625         * modules/getdomainname: New file.
39626         * modules/xgetdomainname: New file.
39627         * MODULES.html.sh (func_all_modules): Add getdomainname,
39628         xgetdomainname.
39629
39630 2003-09-25  Simon Josefsson  <jas@extundo.com>
39631             Bruno Haible  <bruno@clisp.org>
39632
39633         * m4/getdomainname.m4: New file.
39634
39635 2003-09-25  Simon Josefsson  <jas@extundo.com>
39636             Bruno Haible  <bruno@clisp.org>
39637
39638         * lib/getdomainname.h: New file.
39639         * lib/getdomainname.c: New file.
39640
39641 2003-09-25  Karl Berry  <karl@gnu.org>
39642
39643         * lib/argp-fmtstream.c, argp-help.c: update from libc.
39644
39645 2003-09-25  Karl Berry  <karl@gnu.org>
39646
39647         * config/install-sh: update from automake.
39648
39649 2003-09-25  Bruno Haible  <bruno@clisp.org>
39650
39651         * modules/version-etc-2: New file, from modules/version-etc with
39652         modifications.
39653         * MODULES.html.sh (func_all_modules): Add version-etc-2.
39654
39655 2003-09-25  Bruno Haible  <bruno@clisp.org>
39656
39657         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
39658         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
39659
39660 2003-09-24  Simon Josefsson  <jas@extundo.com>
39661
39662         * modules/xgethostname: Add xgethostname.h.
39663
39664 2003-09-24  Paul Eggert  <eggert@twinsun.com>
39665
39666         * lib/linebuffer.c (freebuffer): Don't free the argument, just
39667         the buffer associated with the argument.  Bug reported by
39668         Simon Josefsson.
39669
39670 2003-09-24  Paul Eggert  <eggert@twinsun.com>
39671
39672         * README: Document assumptions that 'int' is at least 32 bits
39673         wide, that integer arithmetic is 2's complement without overflow,
39674         that there are no holes in integer values, that adding sizes of
39675         two nonoverlapping objects can't overflow, and that all-bits-zero
39676         yields scalar zero.  Fix spelling and capitalization typos.
39677
39678 2003-09-19  Karl Berry  <karl@gnu.org>
39679
39680         * lib/argp.h: update from libc.
39681
39682 2003-09-17  Paul Eggert  <eggert@twinsun.com>
39683
39684         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
39685         to avoid spurious warnings like "AC_RUN_IFELSE was called before
39686         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
39687
39688 2003-09-17  Paul Eggert  <eggert@twinsun.com>
39689
39690         * gnulib-tool: Use "test -h", not "test -L", for portability
39691         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
39692         (tags_regexp): Remove, since \| doesn't conform to POSIX.
39693         (sed_extract_prog): Issue s commands one-by-one, rather than
39694         using \| in one s command.
39695
39696 2003-09-16  Paul Eggert  <eggert@twinsun.com>
39697
39698         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
39699         input error, instead of returning NULL the next time we are called
39700         (and therefore losing track of errno).
39701
39702 2003-09-16  Bruno Haible  <bruno@clisp.org>
39703
39704         * gnulib-tool (func_create_testdir): Warn about duplicated
39705         dependencies.
39706
39707 2003-09-15  Paul Eggert  <eggert@twinsun.com>
39708
39709         * modules/argmatch, modules/fatal, modules/obstack,
39710         modules/xalloc, modules/xgethostname: Sort dependencies by
39711         importance, not alphabetically.
39712
39713 2003-09-15  Paul Eggert  <eggert@twinsun.com>
39714
39715         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
39716         fails, so that the caller gets the proper errno.
39717
39718         * lib/readutmp.c (read_utmp): Likewise.
39719         Check for fstat error.  Close stream and free storage
39720         when failing.
39721
39722 2003-09-14  Karl Berry  <karl@gnu.org>
39723
39724         * config/srclist.txt (strdup.c): disable for c89 changes.
39725
39726 2003-09-14  Jim Meyering  <jim@meyering.net>
39727
39728         * lib/getloadavg.c: Correct cpp indentation.
39729         * lib/strdup.c: Likewise.
39730         * lib/vasnprintf.c: Likewise.
39731
39732 2003-09-14  Bruno Haible  <bruno@clisp.org>
39733
39734         * modules/fwriteerror: New file.
39735         * MODULES.html.sh (func_all_modules): Add fwriteerror.
39736
39737 2003-09-14  Bruno Haible  <bruno@clisp.org>
39738
39739         * lib/fwriteerror.h: New file.
39740         * lib/fwriteerror.c: New file.
39741
39742 2003-09-12  Paul Eggert  <eggert@twinsun.com>
39743
39744         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
39745         modules/xgethostname, modules/xalloc: Depend on exit.
39746
39747 2003-09-12  Paul Eggert  <eggert@twinsun.com>
39748
39749         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
39750
39751         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
39752         and AC_MINIX, too, so that their extensions are available.
39753
39754         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
39755         This macro has been superseded by gl_BACKUPFILE.
39756
39757         More patches to assume C89 or better.
39758
39759         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
39760
39761         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
39762         unconditionally.
39763         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
39764         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
39765         Include <string.h>, <stdlib.h> unconditionally.
39766         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
39767         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
39768         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
39769         headers or for string.h.
39770         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
39771         or strtoul.
39772
39773         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
39774         headers.
39775         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
39776         * m4/userspec.m4 (gl_USERSPEC): Likewise.
39777         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
39778         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
39779         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
39780         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
39781         memcpy, memset.
39782         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
39783         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
39784         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
39785         strtol.
39786         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
39787         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
39788         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
39789         strtoul.
39790
39791 2003-09-12  Paul Eggert  <eggert@twinsun.com>
39792
39793         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
39794         * lib/obstack.c [!defined _LIBC]: Likewise.
39795         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
39796         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
39797         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
39798
39799         More changes to assume C89 or better.
39800
39801         * lib/error.c (error_tail): Assume vprintf.
39802
39803         * lib/argmatch.c (getenv): Remove decl.
39804         * lib/progreloc.c (get_full_program_name): Define via prototype.
39805         * lib/setenv.c (clearenv): Likewise.
39806         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
39807         needed.
39808         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
39809         (malloc, memcpy): Remove decls.
39810         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
39811         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
39812         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
39813         (memcpy): Remove macro.
39814         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
39815         (__P): Remove.  All uses removed.
39816         (PTR): Remove.  All uses changed to void *.
39817         (CHAR_BIT, NULL): Remove.
39818         (spaces, zeros, memset_space, memset_zero)
39819         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
39820         Remove.
39821         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
39822         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
39823         Define with prototype.
39824         Remove now-unnecessary prototype decl.
39825         (extra_args_spec): Assume ANSI C.  All uses changed.
39826         (extra_args_spec_iso): Remove.
39827         (my_strftime, emacs_strftimeu): Define via prototype.
39828         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
39829         unconditionally.
39830         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
39831         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
39832         (strtoul, strtol): Remove decls.
39833         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
39834         LONG_MAX): Remove.
39835         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
39836         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
39837         (LOCALE_PARAM_PROTO): New macro.
39838         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
39839         (INTERNAL (strtol), strtol): Define with a prototype.
39840         (PARAMS): Remove.  All uses removed.
39841         * lib/tempname.c: Include <string.h> unconditionally.
39842         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
39843         * lib/xgethostname.c (main): Define with a prototype.
39844         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
39845         Include <stdlib.h> unconditionally.
39846         (calloc, malloc, realloc, free): Remove decls.
39847         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
39848         Include <stdlib.h> unconditionally.  Sort include file names.
39849         (strtod): Remove.
39850         (xstrtod): Define with a prototype.
39851         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
39852         (strtol, strtoul): Remove decls.
39853
39854 2003-09-11  Paul Eggert  <eggert@twinsun.com>
39855
39856         More patches to assume C89 or better.
39857         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
39858         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
39859         string.h, memchr, STDC_HEADERS.
39860
39861 2003-09-11  Paul Eggert  <eggert@twinsun.com>
39862
39863         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
39864         Include <stdlib.h>, <string.h> unconditionally.
39865         Remove now-unnecessary cast to char *.
39866         * lib/strnlen.c: Include <string.h> unconditionally.
39867         * lib/yesno.c (yesno): Define with a prototype.
39868
39869 2003-09-11  Bruno Haible  <bruno@clisp.org>
39870
39871         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
39872
39873 2003-09-10  Jim Meyering  <jim@meyering.net>
39874
39875         * lib/error.c: Correct indentation of cpp directives.
39876
39877 2003-09-10  Bruno Haible  <bruno@clisp.org>
39878
39879         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
39880         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
39881         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
39882         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
39883         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
39884         <stdlib.h> and <string.h> checks.
39885         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
39886         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
39887
39888 2003-09-10  Bruno Haible  <bruno@clisp.org>
39889
39890         * lib/strcspn.c: Include <string.h> unconditionally.
39891         * lib/strpbrk.c: Include <string.h> unconditionally.
39892         * lib/strstr.c: Include <string.h> unconditionally.
39893         * lib/unicodeio.c: Include <string.h> unconditionally.
39894         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
39895         * lib/unsetenv.c: Likewise.
39896         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
39897         * lib/yesno.c: Include <stdlib.h> unconditionally.
39898         (rpmatch): Add prototype.
39899
39900 2003-09-09  Paul Eggert  <eggert@twinsun.com>
39901
39902         More patches to assume C89 or better.
39903         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
39904         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
39905         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
39906         or for string.h.
39907         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
39908         stdlib.h.
39909         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
39910         C headers.
39911         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
39912         string.h.
39913         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
39914         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
39915         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
39916         or for string.h.
39917         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
39918         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
39919         C headers.
39920         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
39921         memcpy.
39922         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
39923         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
39924         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
39925         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
39926         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
39927         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
39928         string.h, free.
39929         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
39930         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
39931         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
39932         C headers, or for string.h.
39933         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
39934         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
39935         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
39936         headers, memory.h, stdlib.h, string.h, strings.h.
39937         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
39938         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
39939         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
39940         strchr.
39941         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
39942         headers, memory.h, string.h.
39943         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
39944         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
39945         free.
39946         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
39947         headers.
39948         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
39949         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
39950         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
39951         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
39952         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
39953
39954 2003-09-09  Paul Eggert  <eggert@twinsun.com>
39955
39956         More K&R removal.
39957
39958         * lib/acosl.c (main): Use a prototype.
39959         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
39960         tanl.c: Likewise.
39961
39962         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
39963
39964         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
39965         (getopt, etopt_long, getopt_long_only, _getopt_internal)
39966         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
39967         with a prototype.
39968         * lib/getopt.c (const): Remove macro.
39969         Include <string.h> unconditionally.
39970         (my_index): Remove; all uses changed to strchr.
39971         (strlen): Remove decl.
39972         (exchange): Remove forward decl; no longer needed.
39973         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
39974         Define with prototype.
39975         * lib/getopt1.c (const): Remove macro.
39976         (getopt_long, getopt_long_only, main): Define with prototype.
39977
39978         * lib/getugroups.c: Include <string.h> unconditionally.
39979
39980         * lib/getusershell.c: Include <stdlib.h> unconditionally.
39981         (getusershell, setusershell, endusershell, readname, main):
39982         Define with prototypes.
39983
39984         * lib/group-member.c: Include group-member.h first.
39985         Include <stdlib.h> unconditionally.
39986
39987         * lib/hard-locale.c: Include hard-locale.h first.
39988         Include <stdlib.h>, <string.h> unconditionally.
39989
39990         * lib/hash.c (free, malloc): Remove decls.
39991         Include <stdlib.h> unconditionally.
39992
39993         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
39994         (getenv): Do not declare.
39995
39996         * lib/idcache.c: Include <string.h> unconditionally.
39997
39998         * lib/long-options.c: Include long-options.h first, to test interface.
39999         Include <stdlib.h> unconditionally.
40000
40001         * lib/makepath.c: Include makepath.h first, to test interface.
40002         Include <stdlib.h> and <string.h> unconditionally.
40003
40004         * lib/linebuffer.c: Include <stdlib.h>.
40005         (free): Remove decl.
40006
40007         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
40008         stddef.h. rpl_malloc returns void *, not char *.
40009         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
40010         prototype.
40011
40012         * lib/md5.h: Include <limits.h> unconditionally.
40013         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
40014         (__P): Remove; all uses removed.
40015         * lib/md5.c: Include "md5.h" first.
40016         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
40017         md5_buffer, md5_process_bytes, md5_process_block):
40018         Define with prototypes.
40019         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
40020         * lib/sha.c: Include "sha.h" first.
40021         Include <stdlib.h>, <string.h> unconditionally.
40022
40023         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
40024         * lib/memcmp.c (__ptr_t): Likewise.
40025         * lib/memrchr.c (__ptr_t): Likewise.
40026         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
40027         Include <string.h> unconditionally.
40028         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
40029         * lib/memchr.c: Include <stdlib.h> unconditionally.
40030         * lib/memchr.c (LONG_MAX): Remove.
40031         * lib/memrchr.c (LONG_MAX): Likewise.
40032         * lib/memchr.c (__memchr): Define via a prototype.
40033         * lib/memrchr.c (__memrchr): Likewise.
40034         * lib/memcmp.c (__P): Remove, and remove all uses.
40035         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
40036         Remove forward decls; no longer needed.
40037         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
40038         Use types required by C89 in prototype.
40039
40040         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
40041         * lib/savedir.c: Likewise.
40042         * lib/mkdir.c (free): Remove decl.
40043         * lib/rmdir.c (rmdir): Define with a prototype.
40044         * lib/savedir.c: Include savedir.h first, to test interface.
40045
40046         * lib/mktime.c (STDC_HEADERS): Remove.
40047         Include <stdlib.h>, <string.h> unconditionally.
40048
40049         * lib/modechange.c: Include <stdlib.h> unconditionally.
40050         (malloc): Remove decl.
40051
40052         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
40053         (free): Remove decl.
40054
40055         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
40056         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
40057         (This type really should be intptr_t, but that's a C99ism.)
40058         (_obstack_memcpy): Remove: all uses changed to memcpy.
40059         Include <string.h> unconditionally.
40060         (struct obstack): Assume __STDC__ for types of members
40061         chunkfun, freefun, extra_arg.
40062         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
40063         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
40064         obstack_begin, obstack_specify_allocation,
40065         obstack_specify_allocation_with_arg, obstack_chunkfun,
40066         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
40067         Remove unprototyped decls and the macros that use them.
40068         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
40069         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
40070         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
40071         (defined __STDC__ && __STDC__)]:
40072         Remove nonprototyped code.
40073         Include <stdlib.h> unconditionally.
40074         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
40075         _obstack_allocated_p, _obstack_free, obstack_free,
40076         _obstack_memory_used, print_and_abort):
40077         Define using prototypes.
40078         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
40079         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
40080         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
40081         obstack_next_free, obstack_object_size, obstack_room) [0]:
40082         Remove unused, unprototyped code.
40083
40084         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
40085
40086         * lib/physmem.c (physmem_total, physmem_available, main): Define
40087         with prototypes.
40088
40089         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
40090         (main): Define with a prototype.
40091
40092         * lib/posixver.c (getenv): Remove decl.
40093
40094         * lib/putenv.c (malloc): Returns void *, not char *.
40095         Include <string.h> unconditionally.
40096         (strchr, memcpy, NULL): Do not define.
40097
40098         * lib/readtokens.c: Include readtokens.h first, to test interface.
40099         Include <stdlib.h>, <string.h> unconditionally.
40100         (init_tokenbuffer): Define with a prototype.
40101
40102         * lib/regex.c (PARAMS): Remove.  All uses removed.
40103         All uses of _RE_ARGS removed, too.
40104         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
40105         unconditionally.
40106         (bzero): Assume memset exists.
40107         (memcmp, memcpy, NULL): Remove.
40108         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
40109         char, or assignments to local vars of type signed char.
40110         (init_syntax_once, PREFIX(extract_number_and_incr),
40111         PREFIX(print_partial_compiled_pattern),
40112         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
40113         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
40114         PREFIX(regex_grow_registers), PREFIX(regex_compile),
40115         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
40116         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
40117         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
40118         wcs_compile_range, byte_compile_range, truncate_wchar,
40119         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
40120         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
40121         count_mbs_length, wcs_re_match_2_internal,
40122         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
40123         PREFIX(alt_match_null_string_p),
40124         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
40125         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
40126         regfree, PREFIX(extract_number)): Define with prototype.  Remove
40127         now-unnecessary declaration, if any.
40128         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
40129         regcomp, regexec):
40130         Remove now-unnecessary casts among pointer types.
40131         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
40132
40133         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
40134         (free): Remove decl.
40135
40136         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
40137
40138         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
40139         (free): Remove decl.
40140
40141         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
40142         * lib/xgetcwd.c: Likewise.
40143
40144         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
40145         (free): Remove decl.
40146
40147         * lib/strchrnul.c (strchrnul): Define with a prototype.
40148         Fix bug: c_in was not converted to char before searching.
40149
40150         The following changes are not K&R related:
40151
40152         * lib/group-member.h: Include <sys/types.h>, so that this file is
40153         self-contained.
40154         * lib/makepath.h: Likewise.
40155
40156         * lib/getusershell.c (readname, default_index, line_size, readname):
40157         Use size_t, not int, for sizes.
40158         (readname): If the size overflows, report an error instead of
40159         looping forever.
40160
40161 2003-09-09  Paul Eggert  <eggert@twinsun.com>
40162
40163         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
40164         libc.
40165
40166 2003-09-09  Paul Eggert  <eggert@twinsun.com>
40167
40168         * README: New section: portability guidelines.
40169
40170 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
40171
40172         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
40173         C89 spec.
40174
40175 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
40176
40177         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
40178
40179 2003-09-08  Paul Eggert  <eggert@twinsun.com>
40180
40181         Assume C89 or better; remove K&R cruft.
40182         A few of these changes were first proposed by Derek Robert Price
40183         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
40184
40185         * lib/addext.c: Include <string.h> unconditionally.
40186         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
40187         Don't declare getenv or malloc.
40188
40189         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
40190         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
40191         (NULL): Remove.
40192         (find_stack_direction, alloca): Use prototypes.
40193
40194         * lib/atexit.c (atexit): Define using a prototype.
40195
40196         * lib/basename.c, dirname.c, stripslash.c:
40197         Include <string.h> unconditionally.
40198
40199         * lib/bcopy.c: Include <stddef.h>.
40200         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
40201
40202         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
40203
40204         * lib/error.h (error, error_at_line, error_print_progname)
40205         [! (defined (__STDC__) && __STDC__)]: Remove decls.
40206         * lib/error.c: Include error.h first, to check interface.
40207         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
40208         (VA_START): Remove; all uses changeed to va_start.
40209         (exit, strerror): Remove decls.
40210         (error_print_progname): Prototype uncondionally.
40211         Don't include <errno.h>; no longer needed.
40212         (private_strerror): Remove.
40213         (error_tail): Always define.
40214         (error, error_at_line): Assume C89 or better; always use prototypes.
40215         * lib/fatal.c: Include "fatal.h" first, to test interface.
40216         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
40217         (VA_START): Remove; all uses changed to va_start.
40218         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
40219         this case.
40220         (exit): Remove decl.
40221         (fatal): Prototype unconditionally.  Assume va_start works.
40222         Abort at end, to pacify gcc.
40223
40224         * lib/euidaccess.c (main): Define with a prototype.
40225
40226         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
40227
40228         * lib/exitfail.c: Include <stdlib.h> unconditionally.
40229
40230         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
40231         prototypes.
40232         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
40233         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
40234         (getenv): Remove decl.
40235         (fnmatch): Define using a prototype.
40236         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
40237         (FCT): Define using a prototype.
40238
40239         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
40240
40241         * lib/gethostname.c: Include <stddef.h>.
40242         (gethostname): Define with prototype.  Length is size_t, not int.
40243
40244 2003-09-08  Paul Eggert  <eggert@twinsun.com>
40245
40246         Assume C89 or better; remove K&R cruft.
40247         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
40248         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
40249         string.h, getenv, malloc.
40250         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
40251         headers.
40252         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
40253         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
40254         do not check for strerror.
40255         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
40256         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
40257         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
40258         do not check for doprnt or vprintf.
40259         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
40260         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
40261
40262 2003-09-08  Paul Eggert  <eggert@twinsun.com>
40263
40264         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
40265         getversion.c should have been removed then, but was accidentally
40266         preserved.
40267
40268         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
40269         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
40270
40271 2003-09-08  Karl Berry  <karl@gnu.org>
40272
40273         * config/config.sub, config.guess, srclistvars.sh: update from savannah
40274                 config, forget about prep.
40275
40276         * config/depcomp, missing: update from automake.
40277
40278 2003-09-07  Paul Eggert  <eggert@twinsun.com>
40279
40280         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
40281         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
40282
40283 2003-09-07  Paul Eggert  <eggert@twinsun.com>
40284
40285         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
40286         copy_tm_result.  Bug reported by Simon Josefsson in
40287         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
40288
40289 2003-09-06  Paul Eggert  <eggert@twinsun.com>
40290
40291         * m4/time_r.m4: New file.
40292         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
40293         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
40294         is. Check for timegm declaration.
40295         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
40296         Do not check for gmtime_r.
40297         Replace mktime if __mktime_internal does not exist and if mktime
40298         hasn't been replaced already.
40299
40300 2003-09-06  Paul Eggert  <eggert@twinsun.com>
40301
40302         * lib/time_r.c, lib/time_r.h: New files.
40303
40304         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
40305         __localtime_r.
40306         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
40307         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
40308
40309         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
40310         __gmtime_r.
40311         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
40312         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
40313         Include <time_r.h>.
40314
40315         * lib/timegm.c: Switch to glibc implementation, with the following
40316         changes:
40317         [defined HAVE_CONFIG_H]: Include <config.h>.
40318         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
40319         (__mktime_internal) [!defined _LIBC]: New decl.
40320         (__gmtime_r) [!defined _LIBC]: New macro and function.
40321         (timegm): Use a prototype, since gnulib assumes C89.
40322         Do not bother declaring tmp to be const, as it's not really usefu.
40323         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
40324         (timegm): Declare only if HAVE_DECL_TIMEGM.
40325
40326 2003-09-06  Paul Eggert  <eggert@twinsun.com>
40327
40328         * MODULES.html.sh (func_all_modules): Add time_r.
40329         * modules/time_r: New file.
40330         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
40331         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
40332
40333 2003-09-03  Paul Eggert  <eggert@twinsun.com>
40334
40335         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
40336         Bug reported by Lute Kamstra in
40337         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
40338
40339         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
40340         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
40341         course with correspondingly smaller numbers for tomorrow and
40342         yesterday.  From Tadayoshi Funaba.  Originally installed into
40343         sh-utils on 1999-08-07, but the patch got lost (I guess during the
40344         coreutils merge?).
40345
40346 2003-08-31  Simon Josefsson  <jas@extundo.com>
40347
40348         * modules/timegm: New file.
40349         * MODULES.html.sh (func_all_modules): Add timegm.
40350
40351 2003-08-31  Simon Josefsson  <jas@extundo.com>
40352
40353         * m4/timegm.m4: New file.
40354
40355 2003-08-31  Simon Josefsson  <jas@extundo.com>
40356
40357         * lib/timegm.h: New file.
40358         * lib/timegm.c: New file.  Based on
40359         wget-1.8.2/src/http.c:mktime_from_utc.
40360
40361 2003-08-31  Karl Berry  <karl@gnu.org>
40362
40363         * lib/argp.h: update from libc.
40364
40365 2003-08-28  Bruno Haible  <bruno@clisp.org>
40366
40367         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
40368         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
40369         followed by '#define fnmatch fnmatch_posix' gives an error.
40370
40371 2003-08-28  Bruno Haible  <bruno@clisp.org>
40372
40373         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
40374         warning on QNX, which defines O_BINARY to 000000.
40375
40376 2003-08-27  Jim Meyering  <jim@meyering.net>
40377
40378         * m4/mkstemp.m4: Require that the system mkstemp be able to create
40379         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
40380         would fail after 32.  Reported by Danny Levinson.  Details here:
40381         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
40382
40383 2003-08-24  Bruno Haible  <bruno@clisp.org>
40384
40385         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
40386         MSVC7 <stdio.h> is included later.
40387
40388 2003-08-22  Simon Josefsson  <jas@extundo.com>
40389
40390         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
40391
40392 2003-08-20  Karl Berry  <karl@gnu.org>
40393
40394         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
40395
40396 2003-08-20  Bruno Haible  <bruno@clisp.org>
40397
40398         * modules/progname: New file.
40399         * MODULES.html.sh (func_all_modules): Add progname.
40400
40401 2003-08-20  Bruno Haible  <bruno@clisp.org>
40402
40403         * lib/progname.h: New file, from GNU gettext.
40404         * lib/progname.c: New file, from GNU gettext.
40405         * lib/progreloc.c: New file, from GNU gettext.
40406
40407 2003-08-19  Jim Meyering  <jim@meyering.net>
40408
40409         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
40410         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
40411
40412 2003-08-19  Bruno Haible  <bruno@clisp.org>
40413
40414         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
40415         more.
40416
40417 2003-08-19  Bruno Haible  <bruno@clisp.org>
40418
40419         * lib/xstrdup.c: Assume <string.h> exists.
40420
40421 2003-08-18  Paul Eggert  <eggert@twinsun.com>
40422
40423         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
40424         in makefile rules.
40425
40426 2003-08-18  Jim Meyering  <jim@meyering.net>
40427
40428         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
40429         * m4/lib-ld.m4: Likewise.
40430
40431 2003-08-18  Jim Meyering  <jim@meyering.net>
40432
40433         * lib/setenv.h: Indent nested cpp directive.
40434         * lib/vasnprintf.c: Remove trailing blanks.
40435
40436 2003-08-17  Simon Josefsson  <jas@extundo.com>
40437
40438         * modules/xstrndup: New file.
40439         * MODULES.html.sh (func_all_modules): Add xstrndup.
40440
40441 2003-08-17  Simon Josefsson  <jas@extundo.com>
40442
40443         * modules/argp: Fix autoconf macro name. Add more dependencies.
40444
40445 2003-08-17  Simon Josefsson  <jas@extundo.com>
40446
40447         * m4/xstrndup.m4: New file.
40448
40449 2003-08-17  Simon Josefsson  <jas@extundo.com>
40450
40451         * m4/argp.m4: New file.
40452
40453 2003-08-17  Simon Josefsson  <jas@extundo.com>
40454             Bruno Haible  <bruno@clisp.org>
40455
40456         * lib/xstrndup.h: New file.
40457         * lib/xstrndup.c: New file.
40458
40459 2003-08-17  Bruno Haible  <bruno@clisp.org>
40460
40461         * modules/strndup (Files, Include): Add lib/strndup.h.
40462
40463 2003-08-17  Bruno Haible  <bruno@clisp.org>
40464
40465         * modules/euidaccess (Files): Add lib/euidaccess.h.
40466
40467 2003-08-17  Bruno Haible  <bruno@clisp.org>
40468
40469         * lib/strndup.h: New file.
40470
40471 2003-08-17  Bruno Haible  <bruno@clisp.org>
40472
40473         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
40474         like AC_GNU_SOURCE.
40475         * modules/extensions (configure.ac): Comment out the invocation of
40476         gl_USE_SYSTEM_EXTENSIONS.
40477
40478 2003-08-16  Paul Eggert  <eggert@twinsun.com>
40479
40480         Merges from coreutils, etc.
40481         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
40482         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
40483         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
40484         fixing a typo.
40485         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
40486         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
40487
40488 2003-08-16  Paul Eggert  <eggert@twinsun.com>
40489
40490         Document merge from coreutils.
40491         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
40492         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
40493         * modules/utime: Add m4/utimes-null.m4.
40494
40495 2003-08-16  Paul Eggert  <eggert@twinsun.com>
40496
40497         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
40498         space, undoing this 2003-08-12 change:
40499         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
40500
40501 2003-08-16  Paul Eggert  <eggert@twinsun.com>
40502
40503         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
40504         strtoul.c from libc, undoing this 2003-08-12 change:
40505         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
40506
40507 2003-08-16  Jim Meyering  <jim@meyering.net>
40508
40509         Merges from coreutils.
40510         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
40511         prefix.  Adjust cache variables similarly.  Create 500 rather than
40512         just 300 files, to exercise bug on Darwin6.5, too.
40513         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
40514         $missing_dir.
40515         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
40516         AM_SYS_POSIX_TERMIOS.
40517         Reported by mkc@mathdogs.com.
40518         Also change use of $am_cv_sys_posix_termios
40519         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
40520         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
40521         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
40522         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
40523         in /proc/mounts until it finds one with matching device number.  This
40524         is unnecessary when the FILE argument *is* a mount point.  No stat call
40525         is necessary in that case.  So, disable the statvfs-testing code on
40526         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
40527         as RedHat bug# 84846.
40528         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
40529         to 1MB, so as not to render systems with no stack size limit (e.g.,
40530         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
40531         Include <unistd.h>.  On some systems,
40532         it is required for the definition of _SC_PAGESIZE.
40533
40534 2003-08-16  Jim Meyering  <jim@meyering.net>
40535
40536         Merge from coreutils.
40537         * lib/xstrtoimax.c: #else #if -> #elif.
40538         * lib/xstrtoumax.c: Likewise.
40539
40540 2003-08-16  Jim Meyering  <jim@meyering.net>
40541
40542         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
40543         * m4/utimes.m4: Removed.
40544         * m4/utimes-null.m4: Renamed from utimes.m4.
40545
40546         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
40547         to 1MB, so as not to render systems with no stack size limit (e.g.,
40548         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
40549         Include <unistd.h>.  On some systems,
40550         it is required for the definition of _SC_PAGESIZE.
40551
40552 2003-08-16  Jim Meyering  <jim@meyering.net>
40553         and Paul Eggert  <eggert@cs.ucla.edu>
40554
40555         Merges from coreutils, etc.
40556
40557         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
40558         using the latest version from cvs.  This avoids problems with #line
40559         directives using a vendor (Sun) compiler.
40560         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
40561         Don't set GETGROUPS_LIB here; now it's
40562         done via getgroups.m4's wrapper function.
40563         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
40564         rather than just in sh-util/configure.in, so that the
40565         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
40566         same.
40567         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
40568         AC_FUNC_GETLOADAVG where to find getloadavg.c.
40569         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
40570         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
40571         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
40572         Remove code that is now done by the newly-required macros.
40573         Append $(EXEEXT) to DF_PROG.
40574         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
40575         Do not invoke or require the following here,
40576         since prereq.m4 or some gnulib .m4 now does this for us:
40577         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
40578         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
40579         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
40580         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
40581         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
40582         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
40583         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
40584         AC_FUNC_OBSTACK.
40585         Do not replace the following functions, as this is now the job
40586         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
40587         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
40588         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
40589         atexit getpass, strdup, getpagesize.
40590         Replace 'raise'.
40591         Do not check for the following functions, as this is now the job
40592         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
40593         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
40594         setregid.
40595         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
40596         Check for sys/sysctl.h.
40597         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
40598         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
40599         of checking for ssize_t ourselves.
40600
40601         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
40602         Require every macro that gnulib/modules/* suggests for us.
40603         (jm_PREREQ_ADDEXT): New macro.
40604         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
40605         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
40606
40607         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
40608         (gl_PHYSMEM): Use it.
40609         Also check for `table' function.
40610         Check for new headers and functions.
40611         Add check for sys/sysmp.h.
40612         With suggestions from Kaveh Ghazi.
40613         Ignore headers that are present but cannot be compiled.  This
40614         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
40615         C 5.4.
40616
40617 2003-08-15  Paul Eggert  <eggert@twinsun.com>
40618
40619         Document merge from coreutils.
40620         * modules/userspec: Depend on posixver.
40621         * modules/strftime: Depend on tzset.
40622
40623 2003-08-15  Paul Eggert  <eggert@twinsun.com>
40624
40625         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
40626         rather than tab, after '#' in shell-script copyright notices.
40627         Suggested by Bruno Haible.
40628
40629 2003-08-15  Paul Eggert  <eggert@twinsun.com>
40630
40631         * config/srclist-update: Use three spaces, rather than tab, after '#'
40632         in shell-script copyright notices.  Suggested by Bruno Haible.
40633         Remove unnecessary parenthesization in regular expression.
40634
40635 2003-08-15  Jim Meyering  <jim@meyering.net>
40636
40637         Merge from coreutils.
40638         * lib/xgethostname.c: Include <stdlib.h>.
40639         (xghostname): Don't exit for anything other than memory-related
40640         failure; just return NULL.
40641         * lib/userspec.c: Include "posixver.h".
40642         (parse_user_spec): Accept `.' as a separator only
40643         in pre-POSIX-200112 mode.
40644         * lib/strtoimax.c: Use #elif rather than #else #if.
40645         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
40646         Remove function, now that we can rely on a working tzset function.
40647         [!_LIBC]: Ensure that the required autoconf test has been run.
40648         [!defined _NL_CURRENT && HAVE_STRFTIME]:
40649         Use underlying_strftime for %r.
40650         * lib/sha.c: Merge in some clean-up and optimization changes from
40651         glibc.
40652         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
40653         Ensure that it is a multiple of 64.
40654         Rearrange loop exit tests so as to avoid performing an
40655         additional fread after encountering an error or EOF.
40656         * lib/realloc.c: Update copyright date.
40657
40658 2003-08-15  Jim Meyering  <jim@meyering.net>
40659         and Paul Eggert  <eggert@twinsun.com>
40660
40661         Merge from coreutils.
40662         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
40663         member but strut utmpx does not.  Needed for AIX 4.3.3.
40664         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
40665
40666 2003-08-15  Jim Meyering  <jim@meyering.net>
40667         and Paul Eggert  <eggert@cs.ucla.edu>
40668
40669         Merges from coreutils, etc.
40670         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
40671         Require gl_FUNC_TZSET_CLOBBER.
40672         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
40673         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
40674         members.
40675
40676 2003-08-14  Paul Eggert  <eggert@twinsun.com>
40677
40678         Help the merge from coreutils.
40679         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
40680         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
40681         * m4/tzset.m4: Use it too.
40682
40683 2003-08-14  Paul Eggert  <eggert@twinsun.com>
40684
40685         * modules/tzset: New file.
40686
40687 2003-08-14  Jim Meyering  <jim@meyering.net>
40688
40689         Merges from coreutils.
40690         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
40691         variable names, rather than @FNMATCH_H@.
40692         * modules/alloca: Likewise for $(ALLOCA_H).
40693
40694         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
40695         the three copies of the literal target, `fnmatch.h'.
40696         * modules/alloca (alloca.h): Likewise.
40697
40698 2003-08-14  Jim Meyering  <jim@meyering.net>
40699
40700         Merge from coreutils.
40701         * m4/tzset.m4: New file.
40702         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
40703         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
40704         otherwise, AIX 5.1 systems would end up using the latter.
40705         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
40706         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
40707         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
40708         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
40709
40710 2003-08-14  Jim Meyering  <jim@meyering.net>
40711
40712         Merge from coreutils.
40713         * lib/obstack.h: Whitespace changes.
40714         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
40715         and xcalloc return values.
40716         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
40717         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
40718         hang on OSF/1 5.1 for DIR on both local and remote file systems.
40719         Reported by (and fix confirmed by) Nelson H. F. Beebe.
40720         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
40721         error from mntctl.
40722         Use mntctl's return value to drive the entry-processing loop, since
40723         we can't rely on the value of the vmt_length member in the last
40724         entry.  On some systems doing so could result in exhausting
40725         virtual memory.  Based in part on a patch from Mike Jetzer.
40726
40727 2003-08-14  Jim Meyering  <jim@meyering.net>
40728         and Paul Eggert  <eggert@twinsun.com>
40729
40730         Merges from coreutils, plus other fixes.
40731         * lib/physmem.c: Merge in portability changes from gcc/libiberty
40732         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
40733         for credits and details.  Thanks to Kaveh Ghazi for helping
40734         to keep these files in sync.
40735         (ARRAY_SIZE): Define it.
40736         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
40737         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
40738         (memcasecmp): Don't assume size_t fits in unsigned int.
40739         Remove casts and duplicate code.
40740         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
40741         (memcpy): Remove definition.
40742         Merge in some clean-up and optimization changes from glibc.
40743         [BLOCKSIZE]: Move definition to top of file.
40744         Ensure that it is a multiple of 64.
40745         Rearrange loop exit tests so as to avoid performing an
40746         additional fread after encountering an error or EOF.
40747         * lib/md5.h (md5_uintptr): Define.
40748         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
40749         return to the initial working directory.  Preserve errno
40750         for caller.
40751         * lib/idcache.c: Include "xalloc.h".
40752         (xmalloc, xrealloc): Remove decls.
40753         (getuser): Remove casts no longer required in C89.
40754         * lib/human.c: Include stdio.h, for sprintf.
40755         * lib/group-member.c: Include "xalloc.h".
40756         (xmalloc, xrealloc): Remove decls.
40757         (get_group_info): Remove casts no longer required in C89.
40758         * lib/getusershell.c (readname): Remove casts no longer required in
40759         C89.
40760         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
40761         * lib/getline.c: Whitespace fix, from coreutils.
40762
40763 2003-08-13  Paul Eggert  <eggert@twinsun.com>
40764
40765         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
40766         Check for isascii.
40767
40768         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
40769         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
40770         Undo previous (whitespace-only) change.
40771
40772 2003-08-13  Paul Eggert  <eggert@twinsun.com>
40773
40774         * lib/exclude.c: Include <ctype.h>
40775         (IN_CTYPE_DOMAIN): New macro.
40776         (is_space): New fn.
40777         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
40778         and empty lines.
40779
40780         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
40781         Undo previous (whitespace-only) change.
40782
40783 2003-08-13  Paul Eggert  <eggert@twinsun.com>
40784
40785         * config/srclist-update: Change update back to the old behavior,
40786         leaving whitespace alone.  Use one 'sed' command rather than a
40787         pipeline.
40788         (fixlicense): Now a variable, not a function.
40789         (remove_trailing_blanks): Remove.
40790         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
40791         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
40792         Undo previous (whitespace-only) change.
40793
40794 2003-08-12  Paul Eggert  <eggert@twinsun.com>
40795
40796         Merge from coreutils.
40797         * modules/euidaccess: Add lib_SOURCES, include for new
40798         file euidaccess.h
40799
40800 2003-08-12  Paul Eggert  <eggert@twinsun.com>
40801
40802         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
40803         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
40804         Normalize leading white space and remove trailing white space.
40805
40806         Merge from coreutils
40807         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
40808
40809         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
40810         0.12.1.  These files are now being upgraded automatically by
40811         ../config/srclist-update.
40812
40813 2003-08-12  Paul Eggert  <eggert@twinsun.com>
40814
40815         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
40816         Normalize leading white space and remove trailing white space.
40817         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
40818         notice, as per ../config/srclist-update.
40819
40820         Merge from coreutils.
40821         * lib/euidaccess.h: New file.
40822         * lib/euidaccess.c: Include it.
40823         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
40824         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
40825         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
40826
40827 2003-08-12  Paul Eggert  <eggert@twinsun.com>
40828
40829         * config/srclist-update: Add copyright notice.
40830         (remove_id_lines, remove_trailing_blanks): New constants.
40831         (fixfile): Use them to normalize spacing a bit in copied files.
40832         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
40833         Normalize leading white space and remove trailing white space.
40834
40835         * config/texinfo.tex: Sync with texinfo.
40836
40837         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
40838         strtoul.c from libc, to merge coreutils whitespace changes.
40839
40840         * config/srclist.txt: Get the following m4 files from gettext:
40841         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
40842         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
40843         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
40844         wint_t.m4.
40845
40846 2003-08-12  Karl Berry  <karl@gnu.org>
40847
40848         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
40849         been made.
40850
40851 2003-08-11  Paul Eggert  <eggert@twinsun.com>
40852
40853         * modules/gnu-source, m4/gnu-source.m4:
40854         Remove; we're assuming Autoconf 2.54 or later now.
40855         Suggested by Bruno Haible.
40856         * MODULES.html.sh (func_all_modules): Remove gnu-source.
40857
40858 2003-08-11  Bruno Haible  <bruno@clisp.org>
40859
40860         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
40861
40862 2003-08-11  Bruno Haible  <bruno@clisp.org>
40863
40864         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
40865         (vasnprintf): Use it instead of wcslen.
40866
40867 2003-08-11  Bruno Haible  <bruno@clisp.org>
40868
40869         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
40870         value to ensure that _Bool promotes to int. Use #define for _Bool when
40871         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
40872
40873 2003-08-10  Karl Berry  <karl@gnu.org>
40874
40875         * lib/regex.h: update from libc (whitespace fix).
40876
40877 2003-08-09  Paul Eggert  <eggert@twinsun.com>
40878
40879         Merge some files from coreutils.  These changes were
40880         originally made by Jim Meyering.
40881         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
40882         many older Unixes require this.
40883         * lib/alloca.c (alloca): Remove cast to argument of free;
40884         no longer needed in C89.
40885         * lib/alloca_.h, regex.h: Fix white space to match
40886         what GNU indent does.
40887
40888 2003-08-09  Paul Eggert  <eggert@twinsun.com>
40889
40890         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
40891         apparently Emacs's Unicode mode got confused before my 2003-08-05
40892         checkin.
40893
40894 2003-08-08  Paul Eggert  <eggert@twinsun.com>
40895
40896         * m4/extensions.m4: New file.
40897         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
40898         Require gl_USE_SYSTEM_EXTENSIONS.
40899         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
40900         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
40901
40902 2003-08-08  Paul Eggert  <eggert@twinsun.com>
40903
40904         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
40905         * modules/extensions, modules/gnu-source: New files.
40906         * modules/timespec, modules/unlocked-io: Depend on extensions.
40907
40908 2003-08-07  Paul Eggert  <eggert@twinsun.com>
40909
40910         * modules/restrict: New file.
40911         * MODULES.html.sh (func_all_modules): Add restrict.
40912         * modules/regex: Depend on restrict.
40913
40914 2003-08-07  Paul Eggert  <eggert@twinsun.com>
40915
40916         * m4/restrict.m4: New file.
40917         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
40918
40919 2003-08-07  Bruno Haible  <bruno@clisp.org>
40920
40921         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
40922         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
40923
40924 2003-08-07  Bruno Haible  <bruno@clisp.org>
40925
40926         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
40927         makes the module 'getndelim2' compatible with the module 'getline'.
40928
40929 2003-08-05  Paul Eggert  <eggert@twinsun.com>
40930
40931         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
40932         byte with "\201" to avoid glitches when editing that source file
40933         with multi-gnome-terminal.
40934
40935 2003-08-05  Paul Eggert  <eggert@twinsun.com>
40936
40937         * lib/bumpalloc.h: Remove.
40938
40939 2003-08-05  Paul Eggert  <eggert@twinsun.com>
40940
40941         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
40942         * modules/bumpalloc: Remove.
40943
40944 2003-08-04  Paul Eggert  <eggert@twinsun.com>
40945
40946         * lib/getloadavg.c: Change copyright notice and spacing to conform to
40947         GNU coding style.
40948
40949         Merge from coreutils.
40950         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
40951         1. From glibc.
40952         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
40953         from Karl Berry, implemented by Jim Meyering.
40954         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
40955         from Dmitry V. Levin.
40956         Remove anachronistic cast of xrealloc.
40957         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
40958         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
40959         type. Otherwise, it wouldn't compile with at least /bin/cc on
40960         ymp-cray-unicos9.0.2.X.
40961         Combine two mostly-identical uses of alloca into one.
40962         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
40963
40964 2003-08-04  Dave Love  <d.love@dl.ac.uk>
40965
40966         [From Emacs.]
40967
40968         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
40969         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
40970         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
40971         obsolete NLIST_NAME_UNION.
40972         [__GNU__]: Undef BSD and FSCALE.
40973         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
40974
40975 2003-08-03  Paul Eggert  <eggert@twinsun.com>
40976
40977         * lib/stdbool_.h (_Bool): Make it signed char, instead of
40978         an enum type, so that it's guaranteed to promote to int.  See:
40979         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
40980
40981 2003-08-03  Karl Berry  <karl@gnu.org>
40982
40983         * config/depcomp: update from automake.
40984
40985 2003-07-31  Paul Eggert  <eggert@twinsun.com>
40986
40987         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
40988         (strerror): Don't assume that a printable int fits in 14 bytes.
40989
40990 2003-07-31  Bruno Haible  <bruno@clisp.org>
40991
40992         * modules/getpass-gnu: New file.
40993         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
40994
40995 2003-07-31  Bruno Haible  <bruno@clisp.org>
40996
40997         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
40998
40999 2003-07-24  Karl Berry  <karl@gnu.org>
41000
41001         * config/missing: update from automake.
41002
41003 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
41004             Bruno Haible  <bruno@clisp.org>
41005
41006         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
41007         * lib/getline.c (getline, getdelim): Likewise.
41008         Remove _GNU_SOURCE define; now it's defined in config.h through
41009         m4/getline.m4.
41010
41011 2003-07-23  Karl Berry  <karl@gnu.org>
41012
41013         * config/config.sub: update from prep.
41014
41015 2003-07-22  Paul Eggert  <eggert@twinsun.com>
41016
41017         * modules/xalloc (Depends-on): Add exitfail.
41018         * modules/xmemcoll: Likewise.
41019
41020 2003-07-22  Paul Eggert  <eggert@twinsun.com>
41021
41022         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
41023         over-parenthesization in macros.
41024
41025         Sync with coreutils.
41026
41027         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
41028         required by C99.
41029
41030         Use `exit_failure' for xalloc and xmemcoll instead of their own
41031         private exit-failure variables.
41032         * lib/xalloc.h (xalloc_exit_failure): Remove.
41033         * lib/xmalloc.c: Likewise.  Include exitfail.h.
41034         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
41035         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
41036         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
41037         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
41038
41039 2003-07-20  Jim Meyering  <jim@meyering.net>
41040
41041         * modules/closeout (Depends-on): Add exitfail.
41042         Suggestion from Bruno Haible.
41043
41044 2003-07-19  Karl Berry  <karl@gnu.org>
41045
41046         * config/config.sub: update from prep.
41047
41048 2003-07-18  Paul Eggert  <eggert@twinsun.com>
41049
41050         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
41051         Remove.
41052         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
41053         to test that it can stand by itself.  Include "exitfail.h".
41054         Clients should set exit_failure instead.
41055         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
41056
41057 2003-07-18  Bruno Haible  <bruno@clisp.org>
41058
41059         * modules/getndelim2: New file.
41060         * modules/getline: Share files with module getndelim2.
41061         * modules/getnline: Depend on getndelim2 instead of sharing files with
41062         it. Add getnline.c to lib_SOURCES.
41063         * MODULES.html.sh (func_all_modules): Add getndelim2.
41064
41065 2003-07-18  Bruno Haible  <bruno@clisp.org>
41066
41067         * m4/getndelim2.m4: New file.
41068         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
41069         invoke gl_PREREQ_GETNDELIM2.
41070         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
41071         gl_PREREQ_GETNDELIM2.
41072         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
41073         gl_GETNDELIM2.
41074
41075 2003-07-18  Bruno Haible  <bruno@clisp.org>
41076
41077         * lib/getndelim2.h: New file.
41078         * lib/getndelim2.c: Make into a module of its own. Include config.h,
41079         getndelim2.h.
41080         (getndelim2): Make non-static. Change return type to ssize_t.
41081         * lib/getline.h: Change argument names.
41082         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
41083         * lib/getnline.c: Include getndelim2.h.
41084
41085 2003-07-18  Andreas Schwab  <schwab@suse.de>
41086
41087         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
41088
41089 2003-07-17  Karl Berry  <karl@gnu.org>
41090
41091         * config/config.sub: update from prep.
41092
41093 2003-07-17  Bruno Haible  <bruno@clisp.org>
41094
41095         * modules/getnline: New file.
41096         * modules/getline: Add lib/getndelim2.c to source file list.
41097         * MODULES.html.sh (func_all_modules): Add getnline.
41098
41099 2003-07-17  Bruno Haible  <bruno@clisp.org>
41100
41101         * m4/getnline.m4: New file.
41102
41103 2003-07-17  Bruno Haible  <bruno@clisp.org>
41104
41105         * m4/Makefile.am.in: Remove file.
41106         * m4/Makefile.am: Remove file.
41107         * m4/Makefile.in: Remove file.
41108
41109 2003-07-17  Bruno Haible  <bruno@clisp.org>
41110
41111         * lib/getnline.h: New file.
41112         * lib/getnline.c: New file.
41113         * lib/getndelim2.c: New file, extracted from getline.c.
41114         (getndelim2): Renamed from getdelim2, with added nmax argument.
41115         * lib/getline.c: Include getndelim2.c.
41116         (getdelim2): Moved out to getndelim2.c.
41117         (getline, getdelim): Update.
41118
41119 2003-07-17  Bruno Haible  <bruno@clisp.org>
41120
41121         * lib/Makefile.am: Remove file.
41122         * lib/Makefile.in: Remove file.
41123
41124 2003-07-17  Bruno Haible  <bruno@clisp.org>
41125
41126         * configure.in: Remove file.
41127         * Makefile.in: Remove file.
41128
41129 2003-07-17  Bruno Haible  <bruno@clisp.org>
41130
41131         * MODULES.html.sh: Put the </BODY> right before </HTML>.
41132
41133 2003-07-16  Karl Berry  <karl@gnu.org>
41134
41135         * config/srclist-update: was running fixlicense twice, which caused
41136                 texinfo.tex to be nullified for some reason.  Simplify,
41137                 $gplsrc is no longer needed as far as I can see?
41138
41139 2003-07-16  Jim Meyering  <jim@meyering.net>
41140
41141         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
41142
41143 2003-07-15  Paul Eggert  <eggert@twinsun.com>
41144
41145         * config/srclist.txt: Get the following files from gettext-runtime/intl
41146         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
41147         ref-del.sin.  From Bruno Haible.
41148         * config/srclist-update (fixfile): Change grep pattern again, since the
41149         previous fix didn't work (there was another trailing $).  Use
41150         '[$]' to escape the $s.
41151
41152 2003-07-15  Karl Berry  <karl@gnu.org>
41153
41154         * lib/vasnprintf.c: update from gettext.
41155
41156 2003-07-15  Karl Berry  <karl@gnu.org>
41157
41158         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
41159         gets expanded when surrounded by '$'.
41160
41161 2003-07-15  Jim Meyering  <jim@meyering.net>
41162
41163         * modules/save-cwd: Don't depend on error.  From Derek Price.
41164
41165 2003-07-15  Jim Meyering  <jim@meyering.net>
41166
41167         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
41168
41169 2003-07-14  Simon Josefsson  <jas@extundo.com>
41170
41171         * modules/mempcpy: New file.
41172         * MODULES.html.sh (func_all_modules): Add mempcpy.
41173
41174 2003-07-14  Simon Josefsson  <jas@extundo.com>
41175
41176         * m4/mempcpy.m4: New file.
41177
41178 2003-07-14  Simon Josefsson  <jas@extundo.com>
41179
41180         * lib/mempcpy.h: New file.
41181         * lib/mempcpy.c: New file.
41182
41183 2003-07-14  Paul Eggert  <eggert@twinsun.com>
41184
41185         * modules/getdate, modules/posixtm: Depend on mktime.
41186
41187 2003-07-14  Paul Eggert  <eggert@twinsun.com>
41188
41189         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
41190         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
41191         unicodeio.c, unicodeio.h, unlocked-io.h:
41192         Switch from LGPL to GPL.
41193
41194 2003-07-14  Paul Eggert  <eggert@twinsun.com>
41195
41196         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
41197         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
41198         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
41199         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
41200         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
41201         updated automatically by ../config/srclist-update.  This changes
41202         their license from LPGL to GPL.
41203
41204 2003-07-14  Paul Eggert  <eggert@twinsun.com>
41205
41206         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
41207         assumed to refer to the root of the most recent stable gettext version.
41208         * config/srclistvars.sh: Add defaults for eggert.
41209         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
41210         Match "This program" as well as "The program".  This is needed
41211         for gettext.
41212
41213 2003-07-14  Jim Meyering  <jim@meyering.net>
41214
41215         Don't emit diagnostics.  Let callers do that.
41216         * lib/save-cwd.c: Don't include "error.h".
41217         (save_cwd): Don't call error.  Ensure that errno is valid
41218         when returning nonzero.
41219
41220         * lib/save-cwd.h (restore_cwd): Update prototype.
41221         * lib/save-cwd.c (restore_cwd): Remove two parameters.
41222         Simplify.  Don't call error upon failure.  Let callers do that.
41223         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
41224         when auditing is enabled.  But don't bother updating the #if.
41225
41226 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
41227
41228         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
41229         it breaks C++ compilation.
41230         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
41231
41232 2003-07-10  Simon Josefsson  <jas@extundo.com>
41233
41234         * modules/strchrnul (Makefile.am): Add strchrnul.h.
41235
41236 2003-07-10  Jim Meyering  <jim@meyering.net>
41237
41238         * m4/clock_time.m4: Remove trailing blank.
41239         * m4/intmax_t.m4: Likewise.
41240
41241 2003-07-10  Jim Meyering  <jim@meyering.net>
41242
41243         * lib/vasnprintf.c: Remove trailing blanks.
41244         Make cpp indentation consistent.
41245
41246 2003-07-09  Paul Eggert  <eggert@twinsun.com>
41247
41248         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
41249         posixver.c, strftime.c, strnlen.c, strverscmp.c:
41250         Switch from LGPL to GPL.
41251
41252 2003-07-09  Paul Eggert  <eggert@twinsun.com>
41253
41254         * config/srclist.txt: Sort sublists.  Add
41255         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
41256         that differ from gnulib for one reason or another; we'd like this list
41257         to be smaller but for now let's document what we have.
41258
41259 2003-07-08  Paul Eggert  <eggert@twinsun.com>
41260
41261         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
41262         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
41263         and sweeter "eval x=$x".
41264         * config/srclist.txt: Get lib/argp* from glibc.
41265
41266 2003-07-07  Paul Eggert  <eggert@twinsun.com>
41267
41268         * lib/mktime.c: Fix some boundary cases and remove need for floating
41269         point.
41270
41271         Issue a compile-time diagnostic if time_t is floating point, or if
41272         two's complement arithmetic is not in effect, or if arithmetic
41273         right shift does not propagate the sign.  These assumptions were
41274         all in the original code but they weren't checked.
41275
41276         (TIME_T_MIDPOINT, verify): New macros.
41277         (__isleap): Remove; it has integer overflow problems.
41278         (leapyear): New function, without those problems.
41279         (ydhms_tm_diff): Remove; splitting into two parts.
41280         (ydhms_diff): New function, containing the arithmetic part of
41281         the old ydhms_tm_diff function.  Issue a compile-time
41282         diagnostic if we are not using C99 integer division.
41283         Avoid casts when possible.
41284         (guess_time_tm): New function, containing the checking part of
41285         the old ydhms_tm_diff function.  Return the new value, rather than
41286         the difference between it and the old.  Accept a new argument T
41287         so that *T specifies the old value.  Check for overflow in the result.
41288
41289         (__mktime_internal): Use a time_t offset, not a long int offset.
41290         This undoes the 2003-06-04 change, which is no longer needed now
41291         that we have better overflow checking.
41292         (localtime_offset): Likewise.
41293
41294         (__mktime_internal): Avoid harmful overflow on hosts where time_t
41295         and long are 64-bit but int is only 32-bit.
41296         (ydhms_diff): Use long int to store year1 and yday1.
41297         Issue a compile-time diagnostic if long int is not wide enough.
41298
41299         (__mktime_internal): Use long int to store adjusted year and yday.
41300         Use plain C rather than preprocessor commands, if that doesn't
41301         affect efficiency.
41302         Check for overflow (and try to repair) after each probe
41303         rather than checking only at the very end.  This avoids some bugs
41304         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
41305         does not equal GMT offset at maximum time).
41306         Use integer to check for overflow rather than floating point; this
41307         is more portable to non-IEEE hosts, and is a tad faster.
41308         When we detect that we are oscillating between two values,
41309         don't check whether tm_isdst has the requested value, since
41310         we already know the answer.  When tm_isdst has the wrong value,
41311         use a different heuristic to find the right one, based on the
41312         extreme values actually observed in practice in tz2003a,
41313         rather than the (overly optimistic) "previous 3 calendar quarters".
41314
41315         (not_equal_tm, print_tm, check_result): Use "const T" rather than
41316         "T const" to accommodate glibc style.
41317         (check_result): Use less-confusing report format.  "long" -> "long int.
41318         (main): Likewise.
41319         Don't loop if the iteration overflows time_t.
41320         Allow a negative step in the iteration.
41321
41322 2003-07-06  Karl Berry  <karl@gnu.org>
41323
41324         * config/depcomp: update from automake.
41325         * config/config.sub: update from prep.
41326
41327 2003-07-03  Karl Berry  <karl@gnu.org>
41328
41329         * config/config.guess: update from prep.
41330
41331 2003-07-01  Paul Eggert  <eggert@twinsun.com>
41332
41333         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
41334         xreadlink.c now includes it unconditionally.
41335
41336 2003-07-01  Paul Eggert  <eggert@twinsun.com>
41337
41338         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
41339         having it depend on HAVE_SYS_TYPES_H.
41340
41341 2003-07-01  Bruno Haible  <bruno@clisp.org>
41342
41343         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
41344         <sys/types.h> should be sufficient.
41345         Reported by Paul Eggert.
41346
41347 2003-06-26  Karl Berry  <karl@gnu.org>
41348
41349         * config/depcomp: update from automake.
41350
41351 2003-06-26  Bruno Haible  <bruno@clisp.org>
41352
41353         * modules/human: Depend on module stdbool.
41354
41355 2003-06-25  Bruno Haible  <bruno@clisp.org>
41356
41357         * modules/readlink: New file.
41358         * modules/xreadlink: Depend on it.
41359         * MODULES.html.sh (func_all_modules): Add readlink.
41360
41361 2003-06-25  Bruno Haible  <bruno@clisp.org>
41362
41363         * m4/readlink.m4: New file.
41364
41365 2003-06-25  Bruno Haible  <bruno@clisp.org>
41366
41367         * lib/readlink.c: New file.
41368
41369 2003-06-22  Karl Berry  <karl@gnu.org>
41370
41371         * config/srclist.txt: update mkinstalldirs from automake.
41372         * config/mkinstalldirs: update.
41373
41374 2003-06-22  Bruno Haible  <bruno@clisp.org>
41375
41376         Portability to mingw32.
41377         * m4/ssize_t.m4: New file, from GNU gettext.
41378         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
41379         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
41380
41381 2003-06-22  Bruno Haible  <bruno@clisp.org>
41382
41383         * modules/safe-read: Add m4/ssize_t.m4.
41384         * modules/xreadlink: Add m4/ssize_t.m4.
41385
41386 2003-06-20  Bruno Haible  <bruno@clisp.org>
41387
41388         Assume C89, so PARAMS isn't needed.
41389         * lib/unicodeio.h (PARAMS): Remove.
41390         * lib/unicodeio.c: Don't use PARAMS.
41391
41392 2003-06-18  Karl Berry  <karl@gnu.org>
41393
41394         * config/config.{guess,sub}: update from prep.
41395
41396 2003-06-18  Jim Meyering  <jim@meyering.net>
41397
41398         Merge changes from coreutils.
41399         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
41400         Remove explicit declarations of xmalloc and realloc.
41401         Include xalloc.h.
41402         (read_utmp): Remove anachronistic cast of xmalloc.
41403
41404 2003-06-17  Paul Eggert  <eggert@twinsun.com>
41405
41406         Assume C89, so PARAMS isn't needed.
41407         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
41408         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
41409         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
41410         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
41411         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
41412         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
41413         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
41414         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
41415         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
41416         lib/xstrtod.h, lib/xstrtol.h: Likewise.
41417         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
41418         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
41419         no longer needed. Anyway, config.h should always be included before any
41420         other file.
41421
41422 2003-06-11  Simon Josefsson  <jas@extundo.com>
41423
41424         * modules/sysexits: New file.
41425         * MODULES.html.sh (func_all_modules): Add sysexits.
41426
41427 2003-06-11  Simon Josefsson  <jas@extundo.com>
41428
41429         * lib/sysexit_.h: New file.
41430
41431 2003-06-11  Derek Price  <derek@ximbiot.com>
41432
41433         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
41434         necessary.
41435
41436 2003-06-11  Bruno Haible  <bruno@clisp.org>
41437
41438         * m4/sysexits.m4: New file.
41439
41440 2003-06-10  Simon Josefsson  <jas@extundo.com>
41441
41442         * lib/argp.h: New file, from glibc.
41443         * lib/argp-ba.c: New file, from glibc.
41444         * lib/argp-eexst.c: New file, from glibc.
41445         * lib/argp-fmtstream.c: New file, from glibc.
41446         * lib/argp-fmtstream.h: New file, from glibc.
41447         * lib/argp-fs-xinl.c: New file, from glibc.
41448         * lib/argp-help.c: New file, from glibc.
41449         * lib/argp-namefrob.h: New file, from glibc.
41450         * lib/argp-parse.c: New file, from glibc.
41451         * lib/argp-pv.c: New file, from glibc.
41452         * lib/argp-pvh.c: New file, from glibc.
41453         * lib/argp-xinl.c: New file, from glibc.
41454
41455 2003-06-10  Simon Josefsson  <jas@extundo.com>
41456
41457         * modules/strchrnul: New file.
41458
41459 2003-06-10  Simon Josefsson  <jas@extundo.com>
41460
41461         * modules/argp: New file.
41462
41463 2003-06-10  Simon Josefsson  <jas@extundo.com>
41464
41465         * m4/strchrnul.m4: New file.
41466
41467 2003-06-10  Simon Josefsson  <jas@extundo.com>
41468
41469         * lib/strchrnul.h: New file.
41470         * lib/strchrnul.c: New file.
41471
41472 2003-06-10  Bruno Haible  <bruno@clisp.org>
41473
41474         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
41475
41476 2003-06-07  Karl Berry  <karl@gnu.org>
41477
41478         * config/config.{guess,sub}: update from prep.
41479
41480 2003-06-07  Jim Meyering  <jim@meyering.net>
41481
41482         * modules/strtod: Use $(...) notation, not @...@ for
41483         AC_REPLACE'd variables.
41484         * modules/localcharset: Likewise.
41485
41486 2003-06-07  Jim Meyering  <jim@meyering.net>
41487
41488         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
41489         in place of my name in the copyright comment.
41490         Remove definition and uses of __P.
41491
41492         From coreutils.
41493         * lib/stat.c: Don't declare xmalloc explicitly.
41494         Instead, include "xalloc.h".
41495         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
41496         xrealloc, and xcalloc return values.
41497         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
41498         Improve comment.
41499         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
41500
41501 2003-06-07  Bruno Haible  <bruno@clisp.org>
41502
41503         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
41504         avoid AC_CONFIG_LINKS.
41505         * modules/fnmatch (Makefile.am): Use explicit creation rule for
41506         fnmatch.h, to avoid AC_CONFIG_LINKS.
41507         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
41508
41509 2003-06-07  Bruno Haible  <bruno@clisp.org>
41510
41511         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
41512         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
41513         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
41514         directory.
41515         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
41516         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
41517         directory.
41518
41519 2003-06-06  Jim Meyering  <jim@meyering.net>
41520
41521         Merge from coreutils.
41522         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
41523         Consolidate declarations and initializations of *_base* locals.
41524
41525         Merge from coreutils.
41526         This avoids a core dump on systems without GNU putenv,
41527         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
41528         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
41529         (unsetenv): New static function, from GNU libc.
41530         (rpl_putenv): Use it.
41531
41532         * lib/modechange.c: Remove trailing blanks.
41533
41534         Merge from coreutils.
41535         * lib/fsusage.c: Remove declaration of statfs.
41536         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
41537
41538         * lib/posixtm.c: Include <stdbool.h> unconditionally.
41539
41540 2003-06-06  Jim Meyering  <jim@meyering.net>
41541
41542         * lib/stdbool_.h: Renamed from stdbool.h.in.
41543
41544 2003-06-06  Jim Meyering  <jim@meyering.net>
41545             Bruno Haible  <bruno@clisp.org>
41546
41547         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
41548         Adjust Makefile.am snippet not to redirect directly to target.
41549         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
41550
41551 2003-06-05  Paul Eggert  <eggert@twinsun.com>
41552
41553         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
41554         mismatch, look in future quarters as well as past.  This fixes a
41555         bug when processing fall-backwards gaps immediately after a long
41556         period of daylight-saving time.
41557
41558         * lib/mktime.c: Assume freestanding C89 or better.
41559         (HAVE_LIMITS_H): Remove.  Assume it's 1.
41560         (__P): Remove; not used.
41561         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
41562         (mktime, not_equal_tm, print_tm, check_result,
41563         main): Use prototypes.  Use const * where appropriate.
41564         (main): Fix typo in testing code that uncovered by above changes.
41565         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
41566
41567 2003-06-04  Paul Eggert  <eggert@twinsun.com>
41568
41569         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
41570         locale.h, localeconv.  This merges changes from coreutils.
41571
41572         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
41573         It can be removed after the next Autoconf is released.
41574         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
41575         needed.
41576
41577 2003-06-04  Paul Eggert  <eggert@twinsun.com>
41578
41579         * lib/mktime.c: Fix Debian bug 177940
41580         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
41581         (localtime_offset): Now long int, not time_t, because we want it
41582         to be guaranteed to be signed.  All uses changed.
41583         (__mktime_internal): If overflow would occur when adding offset,
41584         don't add it.
41585
41586         Merge 'human' changes from coreutils.  Rewrite to support
41587         locale-specific notations like thousands separators.
41588         * lib/human.c: Simplify authorship notice.
41589         Include human.h immediately after config.h.
41590         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
41591         <limits.h>: Do not include, since human.h does.
41592         (SIZE_MAX, UINTMAX_MAX): New macros.
41593         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
41594         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
41595         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
41596         (power_letter): Renamed from suffixes.
41597         (generate_suffix_backwards): Remove.
41598         (adjust_value): Now takes int style (because of human.h changes)
41599         and long double value (for greater precision on some platforms).
41600         (group_number): New function.
41601         (human_readable): Use it.  Use integer options, not enum.
41602         Put the options before the sizes in the arg list.
41603         Support all the new options.
41604         The old human_readable function has been removed;
41605         use inttostr.h instead.
41606         (human_readable, default_block_size, humblock):
41607         Use uintmax_t, not int, for block sizes.
41608         (human_readable_inexact, block_size_types): Remove.
41609         (block_size_opts): New constant.
41610         (human_options): Renamed from human_block_size, with new signature
41611         that allows block sizes up to UINTMAX_MAX.  All callers changed.
41612         * lib/human.h: Add copyright and authorship notice.
41613         Include <limits.h> and <stdbool.h> unconditionally.
41614         (PARAMS): Remove.  All uses removed.
41615         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
41616         (enum human_inexact_style): Remove tag; now a nameless enum.
41617         (human_floor, human_ceiling, human_round_to_even): Now have
41618         values 2, 0, 1 rather than -1, 1, 0.
41619         (human_group_digits, human_suppress_point_zero, human_autoscale,
41620         human_base_1024, human_SI, human_B): New constants.
41621         (human_readable_inexact, human_block_size): Remove.
41622         (human_readable): Size args are now uintmax_t, not int.
41623         (human_options): New decl.
41624
41625         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
41626         unnecessary now that we assume C89 or better.  This change
41627         imported from coreutils.
41628
41629         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
41630         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
41631         in the 2003-05-30 sync from glibc.
41632
41633         .h files should stand alone, but we shouldn't include <sys/types.h>
41634         if we can get away with just <stddef.h>.
41635
41636         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
41637         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
41638         rather than <sys/types.h>, as we merely need size_t.
41639         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
41640         to get size_t.
41641         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
41642         Include <stdio.h>, to get FILE.
41643         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
41644         memcasecmp.h has included <stddef.h> and all we need is size_t.
41645         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
41646         our interface, instead of including <sys/types.h>
41647
41648 2003-06-04  Paul Eggert  <eggert@twinsun.com>
41649
41650         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
41651         now, as glibc mktime is buggy on non-glibc systems.
41652
41653 2003-06-03  Karl Berry  <karl@gnu.org>
41654
41655         * config/config.sub: update from prep.
41656
41657 2003-06-02  Paul Eggert  <eggert@twinsun.com>
41658
41659         [from coreutils]
41660         Fix some minor time-related bugs with POSIX time arguments.
41661         Some valid time stamps were being rejected (notably -1, and
41662         time stamps before 1900 on 64-bit hosts).  And some invalid
41663         time stamps were being accepted, e.g. September 31.
41664
41665         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
41666         that we can return (time_t) -1 successfully.
41667         * lib/posixtm.c: Likewise.
41668         [HAVE_STDBOOL_H]: Include <stdbool.h>.
41669         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
41670         (t): Remove static var.
41671         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
41672         of static var.  All uses changed.
41673         (year): Do not reject years before 1900; they can occur with
41674         64-bit time_t.
41675         (posix_time_parse): Do not check for out-of-range components;
41676         that is now the caller's responsibility, since our checks were
41677         only approximations.
41678         (posixtime): Use mktime to check for out-of-range components,
41679         since it knows them exactly.
41680         If mktime returns (time_t) -1, check whether an error actually occurred
41681         by invoking localtime on -1.
41682         (main) [TEST_POSIXTIME]: Check for input data errors, and report
41683         posixtime failures better.
41684         Improve the test data (in comments only).
41685
41686 2003-06-02  Karl Berry  <karl@gnu.org>
41687
41688         * config/mkinstalldirs (version): new variable.
41689         (--version): new option.
41690         (usage): improve message.
41691
41692 2003-05-30  Karl Berry  <karl@gnu.org>
41693
41694         * lib/mktime.c: update from libc.
41695
41696 2003-05-30  Bruno Haible  <bruno@clisp.org>
41697
41698         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
41699         * config/config.rpath: Upgrade to gettext-0.12.1.
41700
41701 2003-05-30  Bruno Haible  <bruno@clisp.org>
41702
41703         * m4/gettext.m4: Upgrade to gettext-0.12.1.
41704         * m4/nls.m4: New file, from gettext-0.12.1.
41705         * m4/po.m4: New file, from gettext-0.12.1.
41706         * m4/progtest.m4: Upgrade to gettext-0.12.1.
41707
41708 2003-05-30  Bruno Haible  <bruno@clisp.org>
41709
41710         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
41711         * lib/localcharset.h: Likewise.
41712         * lib/localcharset.c: Likewise.
41713
41714 2003-05-29  Karl Berry  <karl@gnu.org>
41715
41716         * config/config.rpath: update from gettext.
41717
41718 2003-05-28  Paul Eggert  <eggert@twinsun.com>
41719
41720         Assume the headers required for C89 freestanding compilers.
41721         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
41722         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
41723         * m4/human.m4 (gl_HUMAN): Likewise.
41724         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
41725         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
41726         * m4/userspec.m4 (gl_USERSPEC): Likewise.
41727         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
41728         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
41729         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
41730
41731 2003-05-28  Paul Eggert  <eggert@twinsun.com>
41732
41733         Assume the headers required for C89 freestanding compilers.
41734         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
41735         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
41736         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
41737         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
41738         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
41739         define, since <limits.h> is guaranteed to do that.
41740         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
41741         * lib/exclude.c: Include <stdbool.h> unconditionally.
41742         * lib/tempname.c: Include <stddef.h> unconditionally.
41743         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
41744         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
41745         <stddef.h> does that.
41746         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
41747         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
41748         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
41749         needed.
41750         * lib/xstrtol.c: Likewise.
41751         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
41752         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
41753
41754         * lib/addext.c (addext): Use assignment rather than cast, to avoid
41755         warnings on some platforms.
41756
41757         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
41758         arbitrarily.
41759
41760 2003-05-26  Jim Meyering  <jim@meyering.net>
41761
41762         Merge in a change from coreutils:
41763         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
41764         that is guaranteed to be `no'.  Use `no_such_member' to indicate
41765         that condition, rather than `-1' which is slightly misleading.
41766         Change the name of the cache variable to have the gl_ prefix.
41767         Prompted by a patch from Richard Dawe for DJGPP.
41768
41769 2003-05-24  Karl Berry  <karl@gnu.org>
41770
41771         * config/config.guess: update from prep.
41772
41773 2003-05-22  Karl Berry  <karl@gnu.org>
41774
41775         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
41776
41777 2003-05-20  Karl Berry  <karl@gnu.org>
41778
41779         * config/config.guess: update from prep.
41780
41781 2003-05-18  Karl Berry  <karl@gnu.org>
41782
41783         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
41784         might actually be set by the user.
41785
41786         * config/depcomp, install-sh, mdate-sh: update from automake.
41787
41788 2003-05-17  Bruno Haible  <bruno@clisp.org>
41789
41790         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
41791         invalid expansion for AC_EGREP_CPP.
41792         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
41793         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
41794         Suggested by Akim Demaille <akim@epita.fr> in
41795         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
41796
41797 2003-05-12  Jim Meyering  <jim@meyering.net>
41798
41799         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
41800         the space-padded-by-default conversion specifiers, %e, %k, %l.
41801
41802 2003-05-12  Bruno Haible  <bruno@clisp.org>
41803
41804         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
41805         the string is longer than 4 KB.
41806
41807 2003-05-11  Karl Berry  <karl@gnu.org>
41808
41809         * config/config.{guess,sub}: update from prep.
41810
41811 2003-05-09  Bruno Haible  <bruno@clisp.org>
41812
41813         * modules/error: Add m4/strerror_r.m4 to file list.
41814
41815 2003-05-03  Bruno Haible  <bruno@clisp.org>
41816
41817         Upgrade to Unicode-4.0.
41818         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
41819         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
41820         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
41821         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
41822         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
41823         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
41824         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
41825         Change width of U+E0100..U+E01EF from 1 to 0.
41826
41827 2003-04-25  Jim Meyering  <jim@meyering.net>
41828
41829         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
41830         of type size_t, not int.
41831
41832 2003-04-25  Bruno Haible  <bruno@clisp.org>
41833
41834         * lib/copy-file.c: Include <stddef.h>, for size_t.
41835
41836 2003-04-21  Paul Eggert  <eggert@twinsun.com>
41837
41838         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
41839         code which expansion is under static control.  Patch imported from
41840         Akim Demaille's patch to Bison; see
41841         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
41842
41843 2003-04-14  Bruno Haible  <bruno@clisp.org>
41844
41845         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
41846
41847 2003-04-11  Jim Meyering  <jim@meyering.net>
41848
41849         Merge changes from Coreutils.
41850
41851         2003-03-22  Jim Meyering  <jim@meyering.net>
41852
41853         * lib/strftime.c (widen): Cast alloca return value to proper type.
41854
41855         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
41856
41857         From GNU libc.
41858         * lib/strftime.c (my_strftime): Handle very large width
41859         specifications for numeric values correctly.  Improve checks for
41860         overflow.
41861
41862         2003-01-19  Jim Meyering  <jim@meyering.net>
41863
41864         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
41865         definitions.
41866         (nl_get_alt_digit) [! defined my_strftime]: Define.
41867         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
41868         _nl_get_alt_digit and _nl_get_walt_digit.
41869
41870         * lib/strftime.c (my_strftime): Merge in locale-related changes from
41871         libc. These changes have no effect outside of _LIBC.
41872
41873 2003-04-10  Bruno Haible  <bruno@clisp.org>
41874
41875         * modules/findprog: New file.
41876         * MODULES.html.sh (func_all_modules): Add it.
41877
41878 2003-04-10  Bruno Haible  <bruno@clisp.org>
41879
41880         * m4/findprog.m4: New file.
41881         * m4/eaccess.m4: New file.
41882
41883 2003-04-10  Bruno Haible  <bruno@clisp.org>
41884
41885         * lib/findprog.h: New file, from GNU gettext.
41886         * lib/findprog.c: New file, from GNU gettext.
41887
41888 2003-04-05  Jim Meyering  <jim@meyering.net>
41889
41890         Merge changes from Coreutils.
41891
41892         * lib/exclude.h (PARAMS): Remove definition and uses.
41893         * lib/exclude.c: Remove uses of `PARAMS'.
41894
41895         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
41896         Add test-cases for DOS filenames. Declare program_name.
41897         (main): Set up program_name.  Patch by Rich Dawe.
41898
41899         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
41900         error from mntctl.
41901         Use mntctl's return value to drive the entry-processing loop, since
41902         we can't rely on the value of the vmt_length member in the last
41903         entry.  On some systems doing so could result in exhausting
41904         virtual memory.  Based in part on a patch from Mike Jetzer.
41905
41906 2003-04-04  Bruno Haible  <bruno@clisp.org>
41907
41908         * modules/linebreak: New file.
41909         * MODULES.html.sh (func_all_modules): Add it.
41910
41911 2003-04-04  Bruno Haible  <bruno@clisp.org>
41912
41913         * m4/linebreak.m4: New file.
41914
41915 2003-04-04  Bruno Haible  <bruno@clisp.org>
41916
41917         * lib/linebreak.h: New file, from GNU gettext.
41918         * lib/linebreak.c: New file, from GNU gettext with slight
41919         modifications.
41920         * lib/lbrkprop.h: New file, from GNU gettext.
41921
41922 2003-04-03  Bruno Haible  <bruno@clisp.org>
41923
41924         * modules/utf8-ucs4: New file.
41925         * modules/utf16-ucs4: New file.
41926         * modules/ucs4-utf8: New file.
41927         * modules/ucs4-utf16: New file.
41928         * MODULES.html.sh (func_all_modules): Add them.
41929
41930 2003-04-03  Bruno Haible  <bruno@clisp.org>
41931
41932         * m4/utf-ucs4.m4: New file.
41933         * m4/ucs4-utf.m4: New file.
41934
41935 2003-04-03  Bruno Haible  <bruno@clisp.org>
41936
41937         * lib/utf8-ucs4.h: New file, from GNU gettext.
41938         * lib/utf16-ucs4.h: New file, from GNU gettext.
41939         * lib/ucs4-utf8.h: New file, from GNU gettext.
41940         * lib/ucs4-utf16.h: New file, from GNU gettext.
41941
41942 2003-04-02  Bruno Haible  <bruno@clisp.org>
41943
41944         * modules/binary-io: New file.
41945         * MODULES.html.sh (func_all_modules): Add it.
41946
41947 2003-04-02  Bruno Haible  <bruno@clisp.org>
41948
41949         * lib/binary-io.h: New file, from GNU gettext.
41950
41951 2003-04-01  Bruno Haible  <bruno@clisp.org>
41952
41953         * modules/pathname: New file.
41954         * MODULES.html.sh (func_all_modules): Add it.
41955
41956 2003-04-01  Bruno Haible  <bruno@clisp.org>
41957
41958         * lib/pathname.h: New file, from GNU gettext.
41959         * lib/concatpath.c: New file, from GNU gettext.
41960
41961 2003-03-30  Bruno Haible  <bruno@clisp.org>
41962
41963         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
41964
41965 2003-03-30  Bruno Haible  <bruno@clisp.org>
41966
41967         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
41968         function chown() doesn't exist.
41969
41970 2003-03-28  Bruno Haible  <bruno@clisp.org>
41971
41972         * modules/copy-file: New file.
41973         * MODULES.html.sh (func_all_modules): Add it.
41974
41975 2003-03-28  Bruno Haible  <bruno@clisp.org>
41976
41977         * m4/copy-file.m4: New file.
41978
41979 2003-03-28  Bruno Haible  <bruno@clisp.org>
41980
41981         * lib/copy-file.h: New file, from GNU gettext.
41982         * lib/copy-file.c: New file, from GNU gettext.
41983
41984 2003-03-18  Jim Meyering  <jim@meyering.net>
41985
41986         * lib/quote.c (quote_n): Fix typo in comment.
41987
41988 2003-03-18  Bruno Haible  <bruno@clisp.org>
41989
41990         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
41991         checking.
41992         * m4/onceonly_2_57.m4: Likewise.
41993
41994 2003-03-17  Bruno Haible  <bruno@clisp.org>
41995
41996         * m4/onceonly.m4: Require autoconf 2.54 or newer.
41997         (m4_quote): Remove macro.
41998         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
41999
42000 2003-03-14  Jim Meyering  <jim@meyering.net>
42001
42002         Merge changes from Coreutils.
42003         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
42004         to be const, in order to avoid warnings.
42005         (obstack_room): Likewise.
42006         (obstack_empty_p): Likewise.
42007
42008 2003-03-14  Bruno Haible  <bruno@clisp.org>
42009
42010         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
42011         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
42012
42013 2003-03-13  Paul Eggert  <eggert@twinsun.com>
42014
42015         Merge changes from Bison.
42016         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
42017         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
42018         when compiling Bison 1.875's `bitset bset = obstack_alloc
42019         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
42020         * lib/hash.c: Include <stdbool.h> unconditionally.
42021
42022 2003-03-13  Paul Eggert  <eggert@twinsun.com>
42023
42024         * m4/onceonly.m4 (m4_quote): New macro.
42025         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
42026         Quote AC_FOREACH variable-expansions properly.
42027
42028 2003-03-13  Paul Eggert  <eggert@twinsun.com>
42029
42030         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
42031
42032 2003-03-09  Paul Eggert  <eggert@twinsun.com>
42033
42034         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
42035         Reported by Bruce Becker; see:
42036         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
42037
42038 2003-03-03  Paul Eggert  <eggert@twinsun.com>
42039             Bruno Haible  <bruno@clisp.org>
42040
42041         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
42042         Reported by John Hughes, see
42043         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
42044
42045 2003-02-20  Bruno Haible  <bruno@clisp.org>
42046
42047         * MODULES.html.sh (func_all_modules): Add poll.
42048
42049 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
42050
42051         * modules/poll: New file.
42052
42053 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
42054
42055         * lib/poll_.h: New file.
42056         * lib/poll.c: New file.
42057
42058 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
42059
42060         * m4/poll.m4: New file.
42061
42062 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
42063
42064         * modules/mathl: New file.
42065
42066 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
42067
42068         * lib/mathl.h: New file.
42069         * lib/acosl.c: New file.
42070         * lib/asinl.c: New file.
42071         * lib/atanl.c: New file.
42072         * lib/ceill.c: New file.
42073         * lib/cosl.c: New file.
42074         * lib/expl.c: New file.
42075         * lib/floorl.c: New file.
42076         * lib/frexpl.c: New file.
42077         * lib/ldexpl.c: New file.
42078         * lib/logl.c: New file.
42079         * lib/sincosl.c: New file.
42080         * lib/sinl.c: New file.
42081         * lib/sqrtl.c: New file.
42082         * lib/tanl.c: New file.
42083         * lib/trigl.c: New file.
42084         * lib/trigl.h: New file.
42085
42086 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
42087
42088         * m4/mathl.m4: New file.
42089
42090 2003-02-18  Bruno Haible  <bruno@clisp.org>
42091
42092         * MODULES.html.sh (func_all_modules): Add mathl.
42093
42094 2003-02-17  Bruno Haible  <bruno@clisp.org>
42095
42096         * modules/mkdtemp: New module.
42097         * MODULES.html.sh (func_all_modules): Add it.
42098
42099 2003-02-17  Bruno Haible  <bruno@clisp.org>
42100
42101         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
42102
42103 2003-02-17  Bruno Haible  <bruno@clisp.org>
42104
42105         * lib/mkdtemp.h: New file, from GNU gettext.
42106         * lib/mkdtemp.c: New file, from GNU gettext.
42107
42108 2003-02-02  Jim Meyering  <jim@meyering.net>
42109
42110         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
42111         e.g. glibc-2.2.93.
42112
42113 2003-01-31  Bruno Haible  <bruno@clisp.org>
42114
42115         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
42116         'rpl_rename'.
42117         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
42118         'rpl_strnlen'.
42119         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
42120         'rpl_strtod'.
42121         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
42122         'rpl_utime'.
42123
42124 2003-01-31  Bruno Haible  <bruno@clisp.org>
42125
42126         * lib/rename.c: #undef rename before defining rpl_rename.
42127         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
42128
42129 2003-01-30  Bruno Haible  <bruno@clisp.org>
42130
42131         * modules/vasnprintf, modules/vasprintf: New modules.
42132         * MODULES.html.sh (func_all_modules): Add them.
42133
42134 2003-01-30  Bruno Haible  <bruno@clisp.org>
42135
42136         * m4/signed.m4: New file, from GNU gettext.
42137         * m4/longdouble.m4: New file, from GNU gettext.
42138         * m4/wchar_t.m4: New file, from GNU gettext.
42139         * m4/wint_t.m4: New file, from GNU gettext.
42140         * m4/vasnprintf.m4: New file.
42141         * m4/vasprintf.m4: New file.
42142
42143 2003-01-30  Bruno Haible  <bruno@clisp.org>
42144
42145         * lib/printf-args.h: New file, from GNU gettext.
42146         * lib/printf-args.c: New file, from GNU gettext.
42147         * lib/printf-parse.h: New file, from GNU gettext.
42148         * lib/printf-parse.c: New file, from GNU gettext.
42149         * lib/vasnprintf.h: New file, from GNU gettext.
42150         * lib/vasnprintf.c: New file, from GNU gettext.
42151         * lib/asnprintf.c: New file, from GNU gettext.
42152         * lib/vasprintf.h: New file, from GNU gettext with modifications.
42153         * lib/vasprintf.c: New file, from GNU gettext.
42154         * lib/asprintf.c: New file, from GNU gettext.
42155
42156 2003-01-29  Bruno Haible  <bruno@clisp.org>
42157
42158         * modules/stpncpy: New module.
42159         * MODULES.html.sh (func_all_modules): Add it.
42160
42161 2003-01-29  Bruno Haible  <bruno@clisp.org>
42162
42163         * m4/stpncpy.m4: New file.
42164
42165 2003-01-29  Bruno Haible  <bruno@clisp.org>
42166
42167         * lib/stpncpy.h: New file, from GNU gettext with modifications.
42168         * lib/stpncpy.c: New file, from GNU gettext with modifications.
42169
42170 2003-01-28  Bruno Haible  <bruno@clisp.org>
42171
42172         * modules/c-ctype: New module.
42173         * MODULES.html.sh (func_all_modules): Add it.
42174
42175 2003-01-28  Bruno Haible  <bruno@clisp.org>
42176
42177         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
42178         Paul Eggert.
42179         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
42180         Paul Eggert.
42181
42182 2003-01-27  Bruno Haible  <bruno@clisp.org>
42183
42184         * modules/xsetenv: New module.
42185         * MODULES.html.sh (func_all_modules): Add it.
42186
42187 2003-01-27  Bruno Haible  <bruno@clisp.org>
42188
42189         * lib/xsetenv.h: New file, from GNU gettext.
42190         * lib/xsetenv.c: New file, from GNU gettext.
42191
42192 2003-01-23  Jim Meyering  <jim@meyering.net>
42193
42194         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
42195         from working on systems without dirfd (at least Irix and OSF1/Tru64).
42196
42197 2003-01-23  Bruno Haible  <bruno@clisp.org>
42198
42199         * modules/minmax: New module.
42200         * MODULES.html.sh (func_all_modules): Add it.
42201
42202 2003-01-23  Bruno Haible  <bruno@clisp.org>
42203
42204         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
42205         Eggert.
42206
42207 2003-01-22  Bruno Haible  <bruno@clisp.org>
42208
42209         * modules/exit: New module.
42210         * MODULES.html.sh (func_all_modules): Add it.
42211
42212 2003-01-22  Bruno Haible  <bruno@clisp.org>
42213
42214         * lib/exit.h: New file, from GNU gettext.
42215
42216 2003-01-19  Bruno Haible  <bruno@clisp.org>
42217
42218         * gnulib-tool: Recognize option --extract-maintainer.
42219         (func_get_maintainer): New function.
42220         * modules/*: Add Maintainer entry.
42221
42222 2003-01-16  Jim Meyering  <jim@meyering.net>
42223
42224         * m4/regex.m4: The `regex' struct is both input and output.
42225         Initialize it before each use.  Patch by Tim Waugh.
42226
42227 2003-01-16  Bruno Haible  <bruno@clisp.org>
42228
42229         * MODULES.html.sh: Add a table of contents. Add the module name as
42230         leftmost column. Add hyperlinks.
42231
42232 2003-01-15  Bruno Haible  <bruno@clisp.org>
42233
42234         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
42235
42236 2003-01-15  Bruno Haible  <bruno@clisp.org>
42237
42238         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
42239         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
42240         suffix.
42241
42242 2003-01-15  Bruno Haible  <bruno@clisp.org>
42243
42244         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
42245
42246 2003-01-15  Bruno Haible  <bruno@clisp.org>
42247
42248         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
42249         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
42250
42251 2003-01-14  Jim Meyering  <jim@meyering.net>
42252
42253         * lib/same.c (same_name): Tweak a comment.
42254
42255 2003-01-14  Bruno Haible  <bruno@clisp.org>
42256
42257         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
42258         when a string comparison is sufficient.
42259
42260 2003-01-14  Bruno Haible  <bruno@clisp.org>
42261
42262         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
42263         'unsigned int'.
42264
42265 2003-01-14  Bruno Haible  <bruno@clisp.org>
42266
42267         * lib/hash-pjw.c: Add comment about low quality of this function.
42268
42269 2003-01-13  Bruno Haible  <bruno@clisp.org>
42270
42271         * modules/stpcpy: Distribute lib/stpcpy.h.
42272         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
42273
42274 2003-01-13  Bruno Haible  <bruno@clisp.org>
42275
42276         * modules/*: Add a description.
42277         * modules/strpbrk: Fix Makefile.am snippet.
42278         * modules/strtoimax: Fix dependencies.
42279         * modules/strtoumax: Likewise.
42280
42281 2003-01-13  Bruno Haible  <bruno@clisp.org>
42282
42283         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
42284         * modules/alloca (Makefile.am): All object files depend on alloca.h.
42285         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
42286
42287 2003-01-13  Bruno Haible  <bruno@clisp.org>
42288
42289         * gnulib-tool (func_create_testdir): Store config/* files in the main
42290         directory.
42291         * config.rpath: Move to ...
42292         * config/config.rpath: ... here.
42293         * modules/gettext: Contains config/config.rpath, not config.rpath.
42294         * modules/iconv: Likewise.
42295
42296 2003-01-12  Paul Eggert  <eggert@twinsun.com>
42297
42298         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
42299         to avoid collisions with libcurses and libreadline.
42300
42301         * m4/getstr.m4: Remove.
42302         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
42303
42304 2003-01-12  Paul Eggert  <eggert@twinsun.com>
42305
42306         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
42307         to avoid collisions with libcurses and libreadline.
42308
42309         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
42310         * lib/getstr.h, getstr.c: Remove.
42311         * lib/getline.c: Include "getline.h", to check interface.
42312         Move body of old getstr.c here: this defines MIN_CHUNK and
42313         declares getdelim2, which is renamed from getstr.
42314         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
42315
42316         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
42317         All uses changed.
42318         * lib/linebuffer.h: Likewise.
42319         (readline): Remove backward-compatibility macro.
42320
42321 2003-01-12  Paul Eggert  <eggert@twinsun.com>
42322
42323         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
42324         to avoid collisions with libcurses and libreadline.
42325         * getstr: Remove.
42326         * MODULES.html.sh: Remove getstr.
42327         * modules/getline: Depend on unlocked-io, not getstr.
42328
42329 2003-01-12  Jim Meyering  <jim@meyering.net>
42330
42331         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
42332
42333 2003-01-10  Bruno Haible  <bruno@clisp.org>
42334
42335         * modules/alloca: Change Makefile.am requirements. Simplify Include
42336         requirements. Add lib/alloca_.h to file list.
42337
42338 2003-01-10  Bruno Haible  <bruno@clisp.org>
42339
42340         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
42341
42342 2003-01-10  Bruno Haible  <bruno@clisp.org>
42343
42344         * lib/alloca_.h: New file.
42345         * lib/getdate.y: Unconditionally include alloca.h.
42346         * lib/makepath.c: Likewise.
42347         * lib/setenv.c: Likewise.
42348         * lib/userspec.c: Likewise.
42349
42350 2003-01-09  Karl Berry  <karl@gnu.org>
42351
42352         * MODULES.html.sh: include `dirname $0` in PATH, to find
42353         gnulib-tool.
42354
42355 2003-01-09  Bruno Haible  <bruno@clisp.org>
42356
42357         * modules/stdbool: Change configure.ac, Makefile.am requirements.
42358         Simplify Include requirements. Add lib/stdbool.h.in to file list.
42359
42360 2003-01-09  Bruno Haible  <bruno@clisp.org>
42361
42362         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
42363
42364 2003-01-09  Bruno Haible  <bruno@clisp.org>
42365
42366         * lib/stdbool.h.in: New file.
42367
42368 2003-01-09  Bruno Haible  <bruno@clisp.org>
42369
42370         * gnulib-tool (func_all_modules): Ignore files ending in ~.
42371         * MODULES.html.sh: Likewise.
42372
42373 2003-01-08  Jim Meyering  <jim@meyering.net>
42374
42375         * lib/full-write.c: Undefine and define-away `const' after inclusion
42376         of errno.h, not before.  Suggestion from Bruno Haible.
42377
42378 2003-01-08  Bruno Haible  <bruno@clisp.org>
42379
42380         * modules/full-read: Depend on full-write.
42381
42382 2003-01-08  Bruno Haible  <bruno@clisp.org>
42383
42384         * lib/safe-read.c: Include specification header first, to ensure its
42385         selfcontainedness.
42386         * lib/full-write.c: Likewise.
42387
42388 2003-01-07  Jim Meyering  <jim@meyering.net>
42389
42390         * lib/full-write.c: Rework so that it may serve to define full_read,
42391         too.
42392         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
42393
42394 2003-01-07  Bruno Haible  <bruno@clisp.org>
42395
42396         * lib/strtoimax.c: Include <stdint.h> as an alternative to
42397         <inttypes.h>.
42398         * lib/xstrtol.h: Likewise.
42399         * lib/xstrtoimax.c: Likewise.
42400         * lib/xstrtoumax.c: Likewise.
42401         * lib/human.h: Likewise.
42402
42403         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
42404         on systems that have <inttypes.h> but not <stdint.h>.
42405
42406 2003-01-07  Bruno Haible  <bruno@clisp.org>
42407
42408         * MODULES.html.sh: Add copyright notice.
42409         (missed_files): Omit CVS directory entries.
42410         (func_module): Make it work with sed-3.02.
42411         * MODULES.txt: Remove file.
42412
42413 2003-01-06  Jim Meyering  <jim@meyering.net>
42414
42415         * lib/version-etc.c: Update year in translatable copyright string.
42416
42417 2003-01-03  Karl Berry  <karl@gnu.org>
42418
42419         * config/config.{guess,sub}: update from prep.
42420
42421 2003-01-02  Karl Berry  <karl@gnu.org>
42422
42423         * doc/COPYING.DOC: belatedly updated to 1.2.
42424
42425 2003-01-01  Karl Berry  <karl@gnu.org>
42426
42427         * gnulib-tool (func_verify_module): report module name $module in
42428         error message, not $1.
42429         * gnulib-tool (create-testdir): don't complain if destdir couldn't
42430         be created, only if it doesn't exist.
42431         * gnulib-tool (last_checkin_date): don't expand the $Date here.
42432
42433 2002-12-31  Paul Eggert  <eggert@twinsun.com>
42434
42435         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
42436
42437 2002-12-31  Paul Eggert  <eggert@twinsun.com>
42438
42439         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
42440         memcmp if strcoll doesn't work.
42441
42442 2002-12-31  Bruno Haible  <bruno@clisp.org>
42443
42444         * lib/utime.c (utime_null): No need to call ftruncate if the file was
42445         nonempty.
42446
42447 2002-12-31  Bruno Haible  <bruno@clisp.org>
42448
42449         * lib/memcoll.c (STRCOLL): New macro.
42450         (memcoll): Use it.
42451
42452 2002-12-31  Bruno Haible  <bruno@clisp.org>
42453
42454         * lib/localcharset.h: New file.
42455         * lib/localcharset.c: Include it.
42456         * lib/unicodeio.c: Likewise.
42457
42458 2002-12-31  Bruno Haible  <bruno@clisp.org>
42459
42460         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
42461         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
42462
42463 2002-12-31  Bruno Haible  <bruno@clisp.org>
42464
42465         * lib/getline.h: Include <stddef.h>, for size_t.
42466
42467         * lib/unicodeio.h: Include <stddef.h>, for size_t.
42468         * lib/unicodeio.c: Don't include <stddef.h>.
42469
42470 2002-12-31  Bruno Haible  <bruno@clisp.org>
42471
42472         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
42473         HAVE_TM_ZONE.
42474
42475 2002-12-24  Karl Berry  <karl@gnu.org>
42476
42477         * config/config.guess: update from prep.
42478
42479 2002-12-24  Bruno Haible  <bruno@clisp.org>
42480
42481         General infrasructure.
42482         * m4/README: Rewritten.
42483         * m4/onceonly.m4: New file.
42484         * m4/onceonly_2_57.m4: New file.
42485
42486         Module atexit.
42487         * m4/atexit.m4: New file.
42488
42489         Module strtod.
42490         * m4/strtod.m4: New file.
42491
42492         Module strtol.
42493         * m4/strtol.m4: New file.
42494
42495         Module strtoul.
42496         * m4/strtoul.m4: New file.
42497
42498         Module memchr.
42499         * m4/memchr.m4: New file.
42500
42501         Module memcmp.
42502         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
42503         (jm_FUNC_MEMCMP): Invoke it.
42504
42505         Module memcpy.
42506         * m4/memcpy.m4: New file.
42507
42508         Module memmove.
42509         * m4/memmove.m4: New file.
42510
42511         Module memset.
42512         * m4/memset.m4: New file.
42513
42514         Module strcspn.
42515         * m4/strcspn.m4: New file.
42516
42517         Module strpbrk.
42518         * m4/strpbrk.m4: New file.
42519
42520         Module strstr.
42521         * m4/strstr.m4: New file.
42522
42523         Module strerror.
42524         * m4/strerror.m4: New file.
42525
42526         Module mktime.
42527         * m4/mktime.m4: Renamed from jm-mktime.m4.
42528         (gl_PREREQ_MKTIME): New macro.
42529         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
42530
42531         Module malloc.
42532         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
42533         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
42534         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
42535
42536         Module realloc.
42537         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
42538         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
42539         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
42540
42541         Module strftime.
42542         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
42543         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
42544         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
42545         gl_TM_GMTOFF.
42546         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
42547
42548         Module xalloc.
42549         * m4/xalloc.m4: New file.
42550
42551         Module alloca.
42552         * m4/alloca.m4: New file.
42553
42554         Module putenv.
42555         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
42556         (jm_FUNC_PUTENV): Invoke it.
42557
42558         Module setenv.
42559         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
42560         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
42561         when invoked twice.
42562         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
42563         gt_FUNC_SETENV.
42564
42565         Module memrchr.
42566         * m4/memrchr.m4: New file.
42567
42568         Module stpcpy.
42569         * m4/stpcpy.m4: New file.
42570
42571         Module strcase.
42572         * m4/strcase.m4: New file.
42573
42574         Module strdup.
42575         * m4/strdup.m4: New file.
42576
42577         Module strnlen.
42578         * m4/strnlen.m4: New file.
42579
42580         Module strndup.
42581         * m4/strndup.m4: New file.
42582
42583         Module xstrtod.
42584         * m4/xstrtod.m4: New file.
42585
42586         Module xstrtol.
42587         * m4/xstrtol.m4: New file.
42588
42589         Module getdate.
42590         * m4/getdate.m4: New file.
42591
42592         Module unlocked-io.
42593         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
42594         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
42595         * m4/jm-glibc-io.m4n: Remove file.
42596
42597         Module long-options.
42598         * m4/long-options.m4: New file.
42599
42600         Module md5.
42601         * m4/md5.m4: New file.
42602
42603         Module sha.
42604         * m4/sha.m4: New file.
42605
42606         Module getstr.
42607         * m4/getstr.m4: New file.
42608
42609         Module getline.
42610         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
42611         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
42612         <sys/types.h>, for size_t. Use the function name gnu_getline, not
42613         simply getline. Infoke gl_PREREQ_GETLINE.
42614
42615         Module obstack.
42616         * m4/obstack.m4: New file.
42617
42618         Module hash.
42619         * m4/hash.m4: New file.
42620
42621         Module readtokens.
42622         * m4/readtokens.m4: New file.
42623
42624         Module strverscmp.
42625         * m4/strverscmp.m4: New file.
42626
42627         Module stdbool.
42628         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
42629         OSF/1.
42630
42631         Module strtoll.
42632         * m4/strtoll.m4: New file.
42633
42634         Module strtoull.
42635         * m4/strtoull.m4: New file.
42636
42637         Module strtoimax.
42638         * m4/strtoimax.m4: New file.
42639
42640         Module strtoumax.
42641         * m4/strtoumax.m4: New file.
42642
42643         Module xstrtoimax.
42644         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
42645         jm_AC_PREREQ_XSTRTOIMAX.
42646         Moved the strtol prerequisites to strtol.m4.
42647         Moved the strtoll prerequisites to strtoll.m4.
42648         Moved the strtoimax prerequisites to strtoimax.m4.
42649
42650         Module xstrtoumax.
42651         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
42652         jm_AC_PREREQ_XSTRTOUMAX.
42653         Moved the strtoul prerequisites to strtoul.m4.
42654         Moved the strtoull prerequisites to strtoull.m4.
42655         Moved the strtoumax prerequisites to strtoumax.m4.
42656
42657         Module chown.
42658         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
42659         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
42660
42661         Module dup2.
42662         * m4/dup2.m4: New file.
42663
42664         Module ftruncate.
42665         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
42666         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
42667
42668         Module getgroups.
42669         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
42670         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
42671
42672         Module gettimeofday.
42673         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
42674         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
42675         gl_PREREQ_GETTIMEOFDAY.
42676
42677         Module mkdir.
42678         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
42679         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
42680
42681         Module mkstemp.
42682         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
42683         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
42684         jm_AC_TYPE_UINTMAX_T.
42685         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
42686
42687         Module stat.
42688         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
42689         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
42690
42691         Module lstat.
42692         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
42693         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
42694
42695         Module timespec.
42696         * m4/timespec.m4 (gl_TIMESPEC): New macro.
42697         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
42698         * m4/st_mtim.m4: Indentation.
42699
42700         Module nanosleep.
42701         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
42702         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
42703         gl_PREREQ_NANOSLEEP.
42704
42705         Module regex.
42706         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
42707         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
42708         (gl_REGEX): New macro.
42709
42710         Module rename.
42711         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
42712         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
42713
42714         Module rmdir.
42715         * m4/rmdir.m4: New file.
42716
42717         Module utime.
42718         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
42719         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
42720         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
42721
42722         Module dirname.
42723         * m4/dirname.m4: New file.
42724
42725         Module getopt.
42726         * m4/getopt.m4: New file.
42727
42728         Module unistd-safer.
42729         * m4/unistd-safer.m4: New file.
42730
42731         Module fnmatch.
42732         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
42733         declaration.
42734         (gl_PREREQ_FNMATCH_EXTRA): New macro.
42735         (gl_FUNC_FNMATCH_POSIX): New macro.
42736         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
42737         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
42738         simply fnmatch.
42739
42740         Module exclude.
42741         * m4/exclude.m4: New file.
42742
42743         Module human.
42744         * m4/human.m4: New file.
42745
42746         Module acl.
42747         * m4/acl.m4: Nop.
42748
42749         Module backupfile.
42750         * m4/backupfile.m4: New file.
42751         * m4/d-ino.m4: Indentation.
42752
42753         Module fsusage.
42754         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
42755         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
42756         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
42757
42758         Module dirfd.
42759         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
42760         requirements.
42761
42762         Module euidaccess.
42763         * m4/euidaccess.m4: New file.
42764
42765         Module file-type.
42766         * m4/file-type.m4: New file.
42767
42768         Module fileblocks.
42769         * m4/fileblocks.m4: New file.
42770
42771         Module filemode.
42772         * m4/filemode.m4: New file.
42773
42774         Module isdir.
42775         * m4/isdir.m4: New file.
42776
42777         Module lchown.
42778         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
42779         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
42780
42781         Module makepath.
42782         * m4/makepath.m4: New file.
42783
42784         Module modechange.
42785         * m4/modechange.m4: New file.
42786
42787         Module mountlist.
42788         * m4/mountlist.m4: New file.
42789         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
42790         Indentation.
42791
42792         Module path-concat.
42793         * m4/path-concat.m4: New file.
42794
42795         Module pathmax.
42796         * m4/pathmax.m4: New file.
42797
42798         Module same.
42799         * m4/same.m4: New file.
42800
42801         Module save-cwd.
42802         * m4/save-cwd.m4: New file.
42803
42804         Module savedir.
42805         * m4/savedir.m4: New file.
42806
42807         Module xgetcwd.
42808         * m4/xgetcwd.m4: New file.
42809         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
42810
42811         Module xreadlink.
42812         * m4/xreadlink.m4: New file.
42813
42814         Module safe-read.
42815         * m4/safe-read.m4: New file.
42816
42817         Module safe-write.
42818         * m4/safe-write.m4: New file.
42819
42820         Module closeout.
42821         * m4/closeout.m4: New file.
42822
42823         Module stdio-safer.
42824         * m4/stdio-safer.m4: New file.
42825
42826         Module getpass.
42827         * m4/getpass.m4: New file.
42828
42829         Module getugroups.
42830         * m4/getugroups.m4: New file.
42831
42832         Module group-member.
42833         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
42834         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
42835
42836         Module idcache.
42837         * m4/idcache.m4: New file.
42838
42839         Module userspec.
42840         * m4/userspec.m4: New file.
42841
42842         Module gettime.
42843         * m4/clock_time.m4: New file.
42844         * m4/gettime.m4: New file.
42845
42846         Module settime.
42847         * m4/settime.m4: New file.
42848
42849         Module posixtm.
42850         * m4/posixtm.m4: New file.
42851
42852         Module gethostname.
42853         * m4/gethostname.m4: New file.
42854
42855         Module canon-host.
42856         * m4/canon-host.m4: New file.
42857
42858         Module gettext.
42859         * m4/codeset.m4: New file, from gettext-0.11.5.
42860         * m4/gettext.m4: New file, from gettext-0.11.5.
42861         * m4/glibc21.m4: New file, from gettext-0.11.5.
42862         * m4/iconv.m4: New file, from gettext-0.11.5.
42863         * m4/intdiv0.m4: New file, from gettext-0.11.5.
42864         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
42865         * m4/inttypes.m4: New file, from gettext-0.11.5.
42866         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
42867         * m4/isc-posix.m4: New file, from gettext-0.11.5.
42868         * m4/lcmessage.m4: New file, from gettext-0.11.5.
42869         * m4/lib-ld.m4: New file, from gettext-0.11.5.
42870         * m4/lib-link.m4: New file, from gettext-0.11.5.
42871         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
42872         * m4/progtest.m4: New file, from gettext-0.11.5.
42873         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
42874         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
42875         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
42876
42877         Module localcharset.
42878         * m4/localcharset.m4: New file.
42879
42880         Module hard-locale.
42881         * m4/hard-locale.m4: New file.
42882
42883         Module mbswidth.
42884         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
42885         onceonly macros.
42886         * m4/mbrtowc.m4: Add comment.
42887
42888         Module memcasecmp.
42889         * m4/memcasecmp.m4: New file.
42890
42891         Module memcoll.
42892         * m4/memcoll.m4: New file.
42893
42894         Module unicodeio.
42895         * m4/unicodeio.m4: New file.
42896
42897         Module rpmatch.
42898         * m4/rpmatch.m4: New file.
42899
42900         Module yesno.
42901         * m4/yesno.m4: New file.
42902
42903         Module exitfail.
42904         * m4/exitfail.m4: New file.
42905
42906         Module c-stack.
42907         * m4/c-stack.m4 (gl_C_STACK): New macro.
42908         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
42909
42910         Module error.
42911         * m4/error.m4 (gl_ERROR): New macro.
42912         (jm_PREREQ_ERROR): Use onceonly macros.
42913
42914         Module fatal.
42915         * m4/fatal.m4: New file.
42916
42917         Module getloadavg.
42918         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
42919         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
42920
42921         Module getpagesize.
42922         * m4/getpagesize.m4: New file.
42923
42924         Module getusershell.
42925         * m4/getusershell.m4: New file.
42926
42927         Module physmem.
42928         * m4/physmem.m4: New file.
42929
42930         Module posixver.
42931         * m4/posixver.m4: New file.
42932
42933         Module quotearg.
42934         * m4/quotearg.m4: New file.
42935
42936         Module quote.
42937         * m4/quote.m4: New file.
42938
42939         Module readutmp.
42940         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
42941
42942         Module sig2str.
42943         * m4/sig2str.m4: New file.
42944
42945         Other.
42946         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
42947         ulonglong.m4.
42948         * m4/intmax_t.m4: New file.
42949         * m4/d-type.m4: Indentation.
42950         * m4/jm-macros.m4: Update.
42951         * m4/prereq.m4 (jm_PREREQ): Update.
42952         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
42953         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
42954         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
42955         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
42956         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
42957         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
42958         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
42959         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
42960         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
42961         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
42962         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
42963         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
42964         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
42965         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
42966         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
42967         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
42968         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
42969         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
42970         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
42971
42972 2002-12-24  Bruno Haible  <bruno@clisp.org>
42973
42974         * MODULES.txt: Update according to m4/ changes.
42975
42976         Module gettext.
42977         * config.rpath: New file, from gettext-0.11.5.
42978
42979         * modules/*: New module descriptions.
42980         * gnulib-tool: New file.
42981         * MODULES.html.sh: New file.
42982
42983 2002-12-21  Karl Berry  <karl@gnu.org>
42984
42985         * doc/fdl.texi: update to version 1.2.
42986
42987 2002-12-19  Karl Berry  <karl@gnu.org>
42988
42989         * config/config.guess: update from prep.
42990
42991 2002-12-18  Bruno Haible  <bruno@clisp.org>
42992
42993         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
42994         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
42995
42996 2002-12-17  Bruno Haible  <bruno@clisp.org>
42997
42998         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
42999         stdlib.h, string.h.
43000
43001 2002-12-17  Bruno Haible  <bruno@clisp.org>
43002
43003         * lib/canon-host.c (strdup): Remove unused declaration.
43004
43005         * lib/fsusage.c: Include full_read.h.
43006         (get_fs_usage): Use full_read instead of safe_read.
43007
43008         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
43009
43010 2002-12-12  Karl Berry  <karl@gnu.org>
43011
43012         * config/config.guess: update from prep.
43013
43014 2002-12-11  Bruno Haible  <bruno@clisp.org>
43015
43016         * m4/setenv.m4: New file, from gettext-0.11.5.
43017
43018 2002-12-11  Bruno Haible  <bruno@clisp.org>
43019
43020         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
43021         not unsetenv().
43022         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
43023         modifications:
43024
43025         2002-12-11  Bruno Haible  <bruno@clisp.org>
43026
43027                 * setenv.c (alloca): Fall back to malloc.
43028                 (freea): New macro.
43029                 (setenv): Use freea() to free memory allocated with alloca().
43030
43031         2002-11-13  Bruno Haible  <bruno@clisp.org>
43032
43033                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
43034                 function declarations.
43035                 * unsetenv.c (unsetenv): Likewise.
43036
43037         2002-03-04  Bruno Haible  <bruno@clisp.org>
43038
43039                 Portability to AIX 4.3.3.
43040                 * unsetenv.c: New file, extracted from setenv.c.
43041                 * setenv.c: Move the unsetenv() function to unsetenv.c.
43042
43043         2001-12-20  Bruno Haible  <bruno@clisp.org>
43044
43045                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
43046                 use malloc instead. For SunOS 4.
43047
43048         2001-12-11  Bruno Haible  <bruno@clisp.org>
43049
43050                 * setenv.c: Declare alloca.
43051                 (compar_fn_t): New typedef.
43052                 (KNOWN_VALUE, STORE_VALUE): Use it.
43053
43054         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
43055         setenv.h.
43056
43057 2002-12-10  Paul Eggert  <eggert@twinsun.com>
43058
43059         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
43060         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
43061         Choose values that are less likely to collide with system fnmatch
43062         options.
43063         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
43064         defined (e.g., a pure POSIX system).
43065         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
43066         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
43067
43068 2002-12-06  Paul Eggert  <eggert@twinsun.com>
43069
43070         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
43071         a pain in practice to deal with generated m4 files.  This change
43072         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
43073
43074         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
43075         and jm-glibc-io.m4, as they are no longer a special case.
43076         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
43077         kludge and the auto-generation stuff.  Check only whether the
43078         functions are declared, not whether they exist, since older hosts
43079         that don't declare the functions can't use the optimization anyway.
43080
43081 2002-12-06  Jim Meyering  <jim@meyering.net>
43082
43083         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
43084
43085         Merge in changes from libc's misc/error.c, in preparation
43086         for the merge of gnulib's changes back into libc.
43087
43088         * lib/error.c (_): Define only if not already defined.
43089         Move definition to follow all #include directives.
43090         Include unlocked-io.h only if !_LIBC.
43091         [_LIBC]: Include <libio/libioP.h>.
43092         [USE_IN_LIBIO]: Include <libio/iolibio.h>
43093         (fflush): Tweak definition to use INTUSE.
43094         (putc): Define.
43095
43096 2002-12-05  Paul Eggert  <eggert@twinsun.com>
43097
43098         * lib/alloca.c [defined emacs]: Include "lisp.h".
43099         (xalloc_die) [defined emacs]: New macro.
43100         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
43101         [! defined emacs]: Include <xalloc.h>.
43102         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
43103         (pointer): Typedef to POINTER_TYPE *.
43104         (malloc): Remove decl; we now always use xmalloc.
43105         (alloca): Use old-style definition, since Emacs needs this.
43106         Check for arithmetic overflow when computing combined size.
43107
43108 2002-12-04  Paul Eggert  <eggert@twinsun.com>
43109
43110         Do not generate unlocked-io.h automatically, since it's easier to
43111         maintain it by hand.
43112
43113         * lib/unlocked-io.h: New file, from GNU diffutils,
43114         but with proper copyright notice and attribution.
43115         * lib/gen-uio: Remove.
43116         * lib/Makefile.am: Add copyright notice.
43117         (libfetish_a_SOURCES): Add unlocked-io.h.
43118         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
43119         (DISTCLEANFILES, io_functions): Remove macros.
43120         (EXTRA_DIST): Remove gen_uio.
43121         (unlocked-io.h): Remove rule.
43122
43123 2002-12-04  Jim Meyering  <jim@meyering.net>
43124
43125         Reflect the fact that stat.c and lstat.c are no longer generated.
43126         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
43127         (DISTCLEANFILES): Likewise.
43128         (EXTRA_DIST): Likewise.
43129         (all_local): Don't depend on stat.c or lstat.c.
43130         (stat.c, lstat.c): Remove rules.
43131         (EXTRA_DIST): Remove xstat.in.
43132
43133         * lib/xstat.in: Remove file.  Contents moved into stat.c.
43134         * lib/stat.c: New file.  Contents mostly from xstat.in.
43135         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
43136         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
43137
43138         * lib/safe-read.c: Rework so that it may serve to define safe_write,
43139         too.
43140         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
43141
43142 2002-12-03  Jim Meyering  <jim@meyering.net>
43143
43144         * lib/safe-read.c, safe-write.c: Change variable names and comments,
43145         but not semantics, to minimize the differences between these two files.
43146         (safe_read): Change comment to mention SAFE_READ_ERROR.
43147
43148         * lib/safe-read.c (IS_EINTR): Define.
43149         (safe_read): Use IS_EINTR in place of in-function cpp directives.
43150
43151 2002-12-02  Jim Meyering  <jim@meyering.net>
43152
43153         * lib/safe-read.c (EINTR): Define.
43154         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
43155         (INT_MAX): Provide fallback.
43156         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
43157
43158         * lib/safe-read.h (SAFE_READ_ERROR): Define.
43159
43160 2002-12-02  Bruno Haible  <bruno@clisp.org>
43161
43162         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
43163         Define, taken from safe-read.c.
43164         (INT_MAX): Provide fallback.
43165         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
43166         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
43167
43168         * lib/safe-read.c (EINTR): Remove definition.
43169         (safe_read): Don't use EINTR if it is absent.
43170
43171 2002-12-01  Jim Meyering  <jim@meyering.net>
43172
43173         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
43174         zero.
43175         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
43176
43177 2002-11-27  Paul Eggert  <eggert@twinsun.com>
43178
43179         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
43180         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
43181         with `if (! (value < limit)) abort ();', for readability.
43182
43183 2002-11-26  Karl Berry  <karl@gnu.org>
43184
43185         * lib/strdup.c: copy from libc again, with jim's ok.
43186         * lib/.cppi-disable: re-add strdup.c
43187
43188 2002-11-25  Karl Berry  <karl@gnu.org>
43189
43190         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
43191         instead of "strtol.c".
43192
43193 2002-11-25  Karl Berry  <karl@gnu.org>
43194
43195         * config/install-sh: update from automake for variable quoting, $0 in
43196         error msgs, etc.
43197
43198         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
43199         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
43200         entry.
43201
43202 2002-11-25  Jim Meyering  <jim@meyering.net>
43203
43204         * lib/mktime.c: Sync from libc, now that it has the latest fix.
43205
43206 2002-11-24  Karl Berry  <karl@gnu.org>
43207
43208         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
43209         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
43210
43211 2002-11-24  Jim Meyering  <jim@meyering.net>
43212
43213         Update from coreutils:
43214
43215         * lib/mktime.c: Merge in changes from libc.
43216
43217         Avoid a link-time failure on some Linux systems.
43218         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
43219         (otherwise).
43220         (__mon_yday): Declare with the STATIC attribute.
43221         (__mktime_internal): Likewise.
43222         Based on a report from Greg Schafer.
43223
43224 2002-11-23  Jim Meyering  <jim@meyering.net>
43225
43226         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
43227         Use `unsigned', not `int', as type of index.
43228
43229         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
43230
43231         * lib/fsusage.c: Remove unneeded parentheses around operands of
43232         `defined'.
43233
43234 2002-11-22  Paul Eggert  <eggert@twinsun.com>
43235
43236         * lib/quotearg.h: Allow multiple inclusion by surrounding with
43237         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
43238         so that we can be included first.
43239         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
43240         * lib/quotearg.c: Include quotearg.h immediately after config.h.
43241         No need to include stddef.h or sys/types.h any more.
43242         Surround local include files with "", not "<>".
43243         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
43244         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
43245         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
43246         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
43247         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
43248         (ISPRINT): Remove; no longer needed now that we assume C89.
43249
43250         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
43251         Preserve errno.
43252
43253         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
43254         quotearg_char): Use SIZE_MAX rather than
43255         (size_t) -1 when we are talking about "infinity".
43256
43257         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
43258
43259 2002-11-22  Paul Eggert  <eggert@twinsun.com>
43260
43261         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
43262         hint that one should use `if (! x) abort ();' rather than `assert
43263         (x);', and anyway it's one less thing to worry about configuring.
43264         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
43265         hash_rehash, hash_insert): Use abort rather than assert.
43266
43267 2002-11-22  Bruno Haible  <bruno@clisp.org>
43268
43269         * lib/safe-read.h: Assume C89. Add comments.
43270         (safe_read): Change return type to size_t.
43271         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
43272         byte counts > SSIZE_MAX correctly.
43273         * lib/safe-write.h: New file.
43274         * lib/safe-write.c: New file.
43275         * lib/full-read.h: New file.
43276         * lib/full-read.c: New file.
43277         * lib/full-write.h: Assume C89. Add comments.
43278         * lib/full-write.c: Include safe-write.h.
43279         (full_write): Rewritten to use safe_write.
43280         Suggested by Jim Meyering and Paul Eggert.
43281
43282 2002-11-21  Jim Meyering  <jim@meyering.net>
43283
43284         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
43285
43286         Merge in changes from the coreutils.
43287
43288         2002-09-25  Paul Eggert  <eggert@twinsun.com>
43289         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
43290         <stdint.h>.
43291         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
43292         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
43293         int.  Work more efficiently if X is the same width as uintmax_t.
43294         Do not compare X to -1, to avoid bogus compiler warning.
43295         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
43296         Don't assume that f_frsize and f_bsize are the same type.
43297
43298         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
43299         warning on FreeBSD.
43300
43301         * lib/makepath.c (make_path): Restore umask *before* creating the final
43302         component.
43303         (make_path): Minor reformatting.
43304
43305         * lib/xmalloc.c: Adjust to work with new autoconf macros,
43306         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
43307         HAVE_MALLOC/HAVE_REALLOC.
43308
43309         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
43310         dummy ones.  At least on GNU/Linux systems, `auto' means something
43311         else.
43312         From Michael Stone.
43313
43314 2002-11-21  Bruno Haible  <bruno@clisp.org>
43315
43316         Remove case insensitive option matching.
43317         * lib/argmatch.h (argcasematch): Remove declaration.
43318         (ARGCASEMATCH): Remove macro.
43319         (__xargmatch_internal): Remove case_sensitive argument.
43320         (XARGMATCH): Update.
43321         (XARGCASEMATCH): Remove macro.
43322         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
43323         case_sensitive argument.
43324         (argcasematch): Remove function.
43325         (__xargmatch_internal): Remove case_sensitive argument.
43326         (main): Use XARGMATCH instead of XARGCASEMATCH.
43327
43328         * lib/xmalloc.c: Change compile-time error message. Add comment about
43329         required autoconf version.
43330
43331 2002-11-20  Paul Eggert  <eggert@twinsun.com>
43332
43333         Merge argmatch cleanups from Bison.  Assume C89.
43334
43335         * lib/argmatch.c: Include config.h here, not in argmatch.h.
43336         Include stdlib.h, for EXIT_FAILURE.
43337         Always include <string.h>, since we assume C89.
43338         (EXIT_FAILURE): Remove pre-C89 bug workaround.
43339         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
43340         Include <stddef.h> instead, since it's all we need for size_t.
43341         (PARAMS): Remove.  All uses removed.
43342         (ARRAY_CARDINALITY): Do not bother to #undef.
43343         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
43344         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
43345         Remove unnecessary parentheses.
43346         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
43347         Insert necessary parentheses.
43348         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
43349         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
43350
43351 2002-11-19  Bruno Haible  <bruno@clisp.org>
43352
43353         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
43354         * lib/mbswidth.h: Include <stddef.h>, for size_t.
43355
43356         * lib/mbswidth.h (PARAMS): Remove macro.
43357         (mbswidth, mbsnwidth): Use ANSI C function declarations.
43358         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
43359
43360         * lib/gcd.h (PARAMS): Remove macro.
43361         (gcd): Use ANSI C function declarations.
43362         * lib/gcd.c (gcd): Likewise.
43363
43364 2002-11-15  Bruno Haible  <bruno@clisp.org>
43365
43366         * lib/strcspn.c: Include <stddef.h>.
43367         (strcspn): Use ANSI C function declaration. Change return type to
43368         size_t. Use NULL.
43369         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
43370         (strpbrk): Use NULL.
43371         * lib/strpbrk.h (PARAMS): Remove macro.
43372         (strpbrk): Use ANSI C function declaration.
43373         * lib/strstr.c: Don't include <sys/types.h>.
43374         * lib/strstr.h (PARAMS): Remove macro.
43375         (strstr): Use ANSI C function declarations.
43376
43377 2002-11-14  Karl Berry  <karl@gnu.org>
43378
43379         * config/mkinstalldirs: `do' on separate line, instead of
43380         `for var; do'.
43381
43382 2002-11-06  Bruno Haible  <bruno@clisp.org>
43383
43384         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
43385         * lib/gcd.c (gcd): Likewise.
43386
43387 2002-11-05  Bruno Haible  <bruno@clisp.org>
43388
43389         * lib/gcd.h: New file, from gettext-0.11.5.
43390         * lib/gcd.c: New file, from gettext-0.11.5.
43391
43392 2002-11-05  Bruno Haible  <bruno@clisp.org>
43393
43394         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
43395         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
43396         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
43397         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
43398
43399         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
43400         <libintl.h>.
43401         * lib/makepath.c: Include gettext.h instead of <locale.h> and
43402         <libintl.h>.
43403
43404         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
43405         * lib/human.c: Include gettext.h instead of <libintl.h>.
43406         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
43407         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
43408         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
43409         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
43410         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
43411         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
43412         (textdomain): Remove definition.
43413         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
43414
43415         * lib/long-options.c: Remove include of <libintl.h> and definition of
43416         _.
43417         * lib/same.c: Remove include of <libintl.h> and definition of _.
43418
43419 2002-11-04  Owen Taylor  <otaylor@redhat.com>
43420
43421         * lib/config.charset: A few additions for Solaris.
43422
43423 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
43424
43425         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
43426         * lib/localcharset.c (locale_charset): Declare as extern "C".
43427
43428 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
43429
43430         * lib/config.charset: msdos in uk_UA uses CP1125.
43431
43432 2002-11-04  Bruno Haible  <bruno@clisp.org>
43433
43434         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
43435         * lib/strcase.h: New file, from GNU gettext-0.11.5.
43436         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
43437         * lib/strstr.h: New file, from GNU gettext-0.11.5.
43438         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
43439
43440 2002-11-04  Bruno Haible  <bruno@clisp.org>
43441
43442         * lib/localcharset.c (locale_charset): Don't return an empty string.
43443
43444 2002-11-04  Bruno Haible  <bruno@clisp.org>
43445
43446         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
43447         aliases.
43448
43449 2002-11-04  Bruno Haible  <bruno@clisp.org>
43450
43451         * lib/config.charset: Update for newest glibc. Add canonical names
43452         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
43453
43454 2002-11-04  Bruno Haible  <bruno@clisp.org>
43455
43456         * lib/config.charset: Add support for NetBSD.
43457
43458 2002-11-04  Bruno Haible  <bruno@clisp.org>
43459
43460         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
43461
43462 2002-11-01  Bruno Haible  <bruno@clisp.org>
43463
43464         * configure.in: Add AC_CONFIG_AUX_DIR call.
43465         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
43466         test/Makefile.
43467         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
43468
43469 2002-09-28  Karl Berry  <karl@gnu.org>
43470
43471         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
43472         installed automake until the next release, since changes have been
43473         made.
43474
43475 2002-09-25  Karl Berry  <karl@gnu.org>
43476
43477         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
43478         * lib/getopt*: copy from libc/posix.
43479         * lib/gettext.h: copy from gettext.
43480         * lib/.cppi-disable: add strdup.c, gettext.h.
43481
43482 2002-09-25  Karl Berry  <karl@gnu.org>
43483
43484         * config/srclist.txt: enable gettext.h check.
43485         * config/config.{guess,sub}: update from prep.
43486         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
43487                 from automake 1.6.3.
43488         See srclist*.
43489
43490 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
43491
43492         * regex.c (PATFETCH): Remove the translating fetch.
43493         (PATFETCH_RAW): Rename to PATFETCH.
43494         (set_image_of_range): New fun.
43495         (SET_RANGE_TABLE_WORK_AREA): Use it.
43496         (regex_compile): Don't translate the pattern chars so eagerly.
43497         Only do it when inserting an `exactn' bytecode or when handling
43498         a char-range.
43499         (mutually_exclusive_p): Avoid empty statement.
43500
43501 2002-07-06  Jim Meyering  <meyering@lucent.com>
43502
43503         * m4/README: Don't mention Makefile.am.in.
43504         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
43505
43506 2002-07-01  Jim Meyering  <meyering@lucent.com>
43507
43508         * lib/c-stack.c: Include sys/time.h.
43509         From Volker Borchert.
43510
43511 2002-06-26  Paul Eggert  <eggert@twinsun.com>
43512
43513         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
43514
43515 2002-06-26  Paul Eggert  <eggert@twinsun.com>
43516
43517         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
43518         New macro.  Use it uniformly instead of
43519         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
43520         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
43521         reported by Vin Shelton.
43522
43523 2002-06-22  Paul Eggert  <eggert@twinsun.com>
43524
43525         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
43526         Do not assume SA_SIGINFO behavior.
43527         Bug reported by Jim Meyering on NetBSD 1.5.2.
43528
43529 2002-06-22  Jim Meyering  <meyering@lucent.com>
43530
43531         * m4/c-stack.m4: New file, from diffutils-2.8.2.
43532         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
43533
43534         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
43535         now that configure.ac uses AC_GNU_SOURCE.
43536         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
43537         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
43538
43539         Update to latest tools.  Suggestions from Paul Eggert.
43540         * m4/stdbool.m4: New file, from diffutils-2.8.2.
43541         * m4/gnu-source.m4: Update from diffutils-2.8.2.
43542         * m4/fnmatch.m4: Likewise.
43543         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
43544         to AC_HEADER_STDBOOL
43545
43546 2002-06-22  Jim Meyering  <meyering@lucent.com>
43547
43548         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
43549         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
43550
43551 2002-06-22  Jim Meyering  <meyering@lucent.com>
43552
43553         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
43554
43555         * lib/exitfail.c, exitfail.h: Likewise.
43556         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
43557
43558         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
43559         of fnmatch.h.
43560         (EXTRA_DIST): Add fnmatch_loop.c.
43561         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
43562
43563         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
43564         * lib/fnmatch.c: Update from diffutils-2.8.2.
43565         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
43566         * lib/fnmatch.h: Remove file.
43567
43568 2002-06-21  Jim Meyering  <meyering@lucent.com>
43569
43570         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
43571         * m4/mbrtowc.m4: Likewise.
43572
43573         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
43574         * m4/mbswidth.m4: Reflect name change:
43575         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
43576         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
43577
43578         * m4/lib-link.m4: Update from gettext-0.11.2.
43579         * m4/gettext.m4: Likewise.
43580
43581         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
43582         From Alfred M. Szmidt.
43583
43584 2002-06-18  Paul Eggert  <eggert@twinsun.com>
43585
43586         * lib/file-type.h: Report an error if neither S_ISREG nor
43587         S_IFREG is defined, instead of using a test specific to glibc
43588         2.2.  This should be safe, since POSIX requires S_ISREG and
43589         Unix Version 7 had S_IFREG.  We don't need to check for
43590         <sys/types.h> since we don't use any symbols that it defines.
43591
43592 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
43593
43594         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
43595         $@-t, so that each temporary file name is unique and valid in the first
43596         8 characters, for operation under DOS.
43597
43598 2002-06-15  Paul Eggert  <eggert@twinsun.com>
43599
43600         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
43601
43602 2002-06-15  Jim Meyering  <meyering@lucent.com>
43603
43604         Work even with DJGPP 2.03, which lacks support for symlinks.
43605         From Richard Dawe.
43606         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
43607         is defined.
43608         * lib/lchown.c (S_ISLNK): Likewise.
43609
43610 2002-06-15  Jim Meyering  <meyering@lucent.com>
43611
43612         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
43613         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
43614         have been included before this file.
43615
43616 2002-06-14  Jim Meyering  <meyering@lucent.com>
43617
43618         * lib/file-type.h: Use the version from diffutils-2.8.2.
43619         * lib/file-type.c: Likewise.
43620
43621 2002-06-07  Jim Meyering  <meyering@lucent.com>
43622
43623         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
43624         They're needed at least for NetBSD 1.5.2.
43625         ($statxfs_includes): Include those same headers.
43626         ($statxfs_includes): Include sys/vfs.h if available.
43627         ($statxfs_includes): Likewise for sys/statvfs.h.
43628         Check for the following members in both structs statfs and statvfs:
43629         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
43630
43631 2002-06-01  Jim Meyering  <meyering@lucent.com>
43632
43633         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
43634         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
43635
43636 2002-05-28  Jim Meyering  <meyering@lucent.com>
43637
43638         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
43639         Reported by Volker Borchert.
43640
43641 2002-05-27  Jim Meyering  <meyering@lucent.com>
43642
43643         Fix a problem seen only on nonconforming systems whereby ls.c's
43644         use of localtime, and then of gettimeofday would cause trouble:
43645         the localtime call used to initialize rpl_gettimeofday's save
43646         mechanism would clobber ls's current local time information so
43647         that in any long listing the first file would always be listed
43648         with date 1970-01-01.  Analysis by Volker Borchert.
43649
43650         * lib/gettimeofday.c (localtime): Undefine.
43651         (rpl_localtime): New function.
43652
43653 2002-05-27  Jim Meyering  <meyering@lucent.com>
43654
43655         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
43656         localtime.
43657
43658         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
43659         use the replacement function; it wouldn't resolve at link time.
43660         Reported by Volker Borchert.
43661
43662 2002-05-22  Jim Meyering  <meyering@lucent.com>
43663
43664         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
43665         file-type.h.
43666         * lib/file-type.h: New file.
43667         * lib/file-type.c (file_type): New file/function.  Extracted from
43668         diffutils.
43669
43670 2002-04-30  Jim Meyering  <meyering@lucent.com>
43671
43672         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
43673
43674 2002-04-29  Paul Eggert  <eggert@twinsun.com>
43675
43676         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
43677
43678 2002-04-29  Paul Eggert  <eggert@twinsun.com>
43679
43680         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
43681         Do not check for alloca.h (no longer used) or stdbool.h (was never
43682         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
43683
43684 2002-04-29  Paul Eggert  <eggert@twinsun.com>
43685
43686         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
43687
43688 2002-04-29  Jim Meyering  <meyering@lucent.com>
43689
43690         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
43691         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
43692         Use AC_FUNC_STRNLEN here instead.
43693
43694         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
43695         With autoconf-2.53a, it's part of AC_PROG_CC.
43696
43697 2002-04-28  Paul Eggert  <eggert@twinsun.com>
43698
43699         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
43700         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
43701
43702 2002-04-28  Paul Eggert  <eggert@twinsun.com>
43703
43704         * lib/sig2str.h, lib/sig2str.c: New files.
43705         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
43706
43707 2002-04-28  Paul Eggert  <eggert@twinsun.com>
43708
43709         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
43710         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
43711         of 127, since 64 is the largest conceivable number for ancient
43712         nonstandard hosts.
43713         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
43714
43715 2002-04-28  Jim Meyering  <meyering@lucent.com>
43716
43717         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
43718
43719 2002-04-24  Jim Meyering  <meyering@lucent.com>
43720
43721         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
43722         (jm_PREREQ): Use it.
43723
43724         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
43725         mach/mach.h fcntl.h.
43726         Check for this function: setlocale.
43727
43728 2002-04-24  Jim Meyering  <meyering@lucent.com>
43729
43730         * lib/gettext.h: New file, from Gettext.
43731         * lib/Makefile.am (INCLUDES): Remove -I../intl.
43732         (libfetish_a_SOURCES): Add gettext.h.
43733
43734 2002-04-16  Jim Meyering  <meyering@lucent.com>
43735
43736         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
43737         ut_pid, ut_id, ut_exit.
43738
43739 2002-04-16  Jim Meyering  <meyering@lucent.com>
43740
43741         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
43742         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
43743         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
43744
43745 2002-04-12  Jim Meyering  <meyering@lucent.com>
43746
43747         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
43748         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
43749         existence of the getmntinfo function.  Needed for Darwin 5.3.
43750
43751         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
43752         This is necessary at least on Darwin 5.3.
43753
43754         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
43755         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
43756         strnlen.o in the library, and that makes some versions of ranlib
43757         object.
43758
43759 2002-04-12  Jim Meyering  <meyering@lucent.com>
43760
43761         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
43762
43763 2002-04-09  Jim Meyering  <meyering@lucent.com>
43764
43765         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
43766         to be more precise.  Rather than saying we're checking whether the
43767         function `works', say what we're testing.
43768         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
43769         Reported by Bruno Haible.
43770
43771 2002-03-10  Jim Meyering  <meyering@lucent.com>
43772
43773         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
43774         Suggestion from Santiago Vila.
43775
43776 2002-03-08  Jim Meyering  <meyering@lucent.com>
43777
43778         * lib/rename.c: Mention that this wrapper is needed also on
43779         mips-dec-ultrix4.4 systems.
43780
43781 2002-03-02  Jim Meyering  <meyering@lucent.com>
43782
43783         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
43784         not HAVE_CLOCK_SETTIME.
43785
43786 2002-02-27  Paul Eggert  <eggert@twinsun.com>
43787
43788         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
43789         Check for clock_settime.
43790
43791 2002-02-27  Paul Eggert  <eggert@twinsun.com>
43792
43793         * lib/nanosleep.h: Rename to....
43794         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
43795
43796         * lib/gettime.c: New file.
43797         * lib/settime.c: New file.
43798         * lib/stime.c: Remove.
43799
43800         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
43801         timespec.h.  Remove nanosleep.h.
43802
43803 2002-02-25  Paul Eggert  <eggert@twinsun.com>
43804
43805         * m4/acl.m4: New file.
43806         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
43807         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
43808
43809 2002-02-25  Paul Eggert  <eggert@twinsun.com>
43810
43811         * lib/acl.c, lib/acl.h: New files.
43812         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
43813
43814 2002-02-24  Jim Meyering  <meyering@lucent.com>
43815
43816         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
43817         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
43818         cause trouble.  Reported by Nelson Beebe.
43819
43820 2002-02-23  Paul Eggert  <eggert@twinsun.com>
43821
43822         * lib/path-concat.c (xpath_concat): Reorder code to pacify
43823         compilers that don't know that xalloc_die never returns.
43824
43825 2002-02-20  Jim Meyering  <meyering@lucent.com>
43826
43827         * lib/getdate.c: Regenerate using bison-1.33.
43828
43829 2002-02-17  Jim Meyering  <meyering@lucent.com>
43830
43831         * config/config.guess (main): Don't use `head -1'; it's no longer
43832         portable. Use `sed 1q' instead.
43833
43834 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
43835
43836         * m4/codeset.m4: Upgrade to gettext-0.11.
43837         * m4/gettext.m4: Upgrade to gettext-0.11.
43838         * m4/glibc21.m4: Upgrade to gettext-0.11.
43839         * m4/iconv.m4: Upgrade to gettext-0.11.
43840         * m4/isc-posix.m4: Upgrade to gettext-0.11.
43841         * m4/lcmessage.m4: Upgrade to gettext-0.11.
43842         * m4/lib-ld.m4: New file, from gettext-0.11.
43843         * m4/lib-link.m4: New file, from gettext-0.11.
43844         * m4/lib-prefix.m4: New file, from gettext-0.11.
43845         * m4/progtest.m4: Upgrade to gettext-0.11.
43846
43847 2002-02-15  Paul Eggert  <eggert@twinsun.com>
43848
43849         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
43850         (jm_PREREQ): Use it.
43851
43852 2002-02-15  Paul Eggert  <eggert@twinsun.com>
43853
43854         * lib/posixver.c, lib/posixver.h: New files.
43855         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
43856
43857 2002-02-02  Paul Eggert  <eggert@twinsun.com>
43858             Bruno Haible  <bruno@clisp.org>
43859
43860         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
43861         (fwrite_success_callback): New declaration.
43862         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
43863         print_unicode_char. Call failure callback instead of error.
43864         (fwrite_success_callback): New function.
43865         (exit_failure_callback): New function.
43866         (fallback_failure_callback): New function.
43867         (print_unicode_char): Call unicode_to_mb.
43868
43869 2002-01-26  Jim Meyering  <meyering@lucent.com>
43870
43871         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
43872         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
43873
43874 2002-01-26  Jim Meyering  <meyering@lucent.com>
43875
43876         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
43877
43878 2002-01-22  Paul Eggert  <eggert@twinsun.com>
43879
43880         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
43881
43882 2002-01-22  Jim Meyering  <meyering@lucent.com>
43883
43884         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
43885         Otherwise, some versions of automake would omit the rule that makes
43886         Makefile from Makefile.in.
43887
43888 2002-01-21  Paul Eggert  <eggert@twinsun.com>
43889
43890         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
43891         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
43892         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
43893         (memcoll): Set errno to zero if there is no error.
43894
43895         * lib/quotearg.c (quotearg_buffer_restyled):
43896         Fix bug with quoting buffers containing NUL when backslashing escapes.
43897         This bug was exposed by the other changes in this patch.
43898         (quotearg_n_options): New arg ARGSIZE.
43899         All callers changed.
43900         (quoting_options_from_style): New function.
43901         (quotearg_n_style): Use it.
43902         (quotearg_n_style_mem): New function.
43903
43904         * lib/quotearg.h (quotearg_n_style_mem): New function.
43905
43906 2002-01-19  Jim Meyering  <meyering@lucent.com>
43907
43908         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
43909         Remove useless quotes: DF_PROG="df".
43910         * m4/strnlen.m4: New file.
43911
43912 2002-01-16  Paul Eggert  <eggert@twinsun.com>
43913
43914         * lib/backupfile.c (ISDIGIT): Comment fix.
43915         * lib/getdate.y (ISDIGIT): Likewise.
43916         * lib/posixtm.c (ISDIGIT, year): Likewise.
43917         * lib/strverscmp.c (ISDIGIT): Likewise.
43918         * lib/userspec.c (ISDIGIT): Likewise.
43919
43920 2002-01-16  Jim Meyering  <meyering@lucent.com>
43921
43922         * lib/getdate.y: Add three semicolons, each just before a closing
43923         brace. Bison (as of version 1.31) no longer papers over that mistake.
43924
43925 2002-01-05  Jim Meyering  <meyering@lucent.com>
43926
43927         * lib/version-etc.c (version_etc_copyright): Update copyright year.
43928
43929 2001-12-19  Paul Eggert  <eggert@twinsun.com>
43930
43931         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
43932         not silently exit merely because the output buffer happens to
43933         have nothing pending.
43934
43935 2001-12-18  Paul Eggert  <eggert@twinsun.com>
43936
43937         See the big note in ../ChangeLog.
43938         * lib/human.c (suffixes): Prefer K to k for 1024.
43939         (generate_suffix_backwards): New function.
43940         (human_readable_inexact): Use it.
43941         * lib/xstrtol.c (__xstrtol): If there is no number but there
43942         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
43943         Accept 'K' as well as 'k'.
43944
43945 2001-12-15  Jim Meyering  <meyering@lucent.com>
43946
43947         * lib/regex.h (__restrict_arr): Update from libc.
43948
43949         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
43950         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
43951         (STREQ): Define.
43952
43953 2001-12-14  Jim Meyering  <meyering@lucent.com>
43954
43955         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
43956         Suggestion from Bruno Haible.
43957
43958 2001-12-10  Jim Meyering  <meyering@lucent.com>
43959
43960         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
43961         xrealloc, Instead, include "xalloc.h".
43962         (initbuffer): Don't cast xmalloc return value to char*.
43963         (readline): Reword comment.
43964         Don't cast xrealloc return value to char*
43965         Return NULL, not 0.
43966
43967 2001-12-09  Jim Meyering  <meyering@lucent.com>
43968
43969         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
43970         about `signed and unsigned type in conditional expression'.
43971         * lib/posixtm.c (posix_time_parse): Likewise.
43972
43973         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
43974
43975         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
43976         to avoid a pedantic warning.
43977
43978         * lib/getstr.c: Don't include assert.h.
43979         (getstr): Remove warning-evoking assertions.
43980         Return -1 if offset parameter is out of bounds.
43981         Change the type of a local from int to size_t.
43982
43983         * lib/strftime.c (my_strftime_localtime_r): Include this function
43984         definition in the `#if ! HAVE_TM_GMTOFF' block.
43985
43986         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
43987         Include xalloc.h instead.
43988
43989 2001-12-02  Jim Meyering  <meyering@lucent.com>
43990
43991         * lib/tempname.c: Don't declare getenv, thus reverting the change of
43992         2001-11-18.  It's no longer necessary, now that stdlib.h is always
43993         included.
43994
43995         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
43996         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
43997
43998 2001-11-30  Akim Demaille  <akim@epita.fr>
43999
44000         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
44001         before being defined.
44002
44003 2001-11-27  Paul Eggert  <eggert@twinsun.com>
44004
44005         * lib/quotearg.h (quotearg_n, quotearg_n_style):
44006         First arg is int, not unsigned.
44007         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
44008         (SIZE_MAX, UINT_MAX): New macros.
44009         (quotearg_n_options): Abort if N is negative.
44010         Avoid overflow check on hosts where size_t is 64 bits and int
44011         is 32 bits, as overflow is impossible there.
44012         Fix off-by-one typo that caused unnecessary reallocation.
44013
44014 2001-11-27  Jim Meyering  <meyering@lucent.com>
44015
44016         * lib/tempname.c: Merge with version from libc.
44017         * lib/regex.c: Likewise.
44018
44019         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
44020         systems for which STDC_HEADERS is 0, it was not included, resulting in
44021         a warning about an integer-to-pointer conversion problem with getenv.
44022         Reported by Volker Borchert.
44023
44024 2001-11-26  Jim Meyering  <meyering@lucent.com>
44025
44026         * lib/gtod.h: Remove file.
44027         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
44028         * lib/gettimeofday.c: Don't include gtod.h.
44029         (GTOD_init): Remove function.
44030         (rpl_gettimeofday): Do its job here instead, rather than aborting.
44031         Suggestion from Volker Borchert.
44032
44033 2001-11-23  Jim Meyering  <meyering@lucent.com>
44034
44035         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
44036         it.
44037         * lib/hash.c (struct hash_table): Define it here instead.
44038
44039 2001-11-22  Jim Meyering  <meyering@lucent.com>
44040
44041         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
44042
44043 2001-11-20  Jim Meyering  <meyering@lucent.com>
44044
44045         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
44046         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
44047
44048 2001-11-19  Jim Meyering  <meyering@lucent.com>
44049
44050         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
44051         directory.  Use "conftestXXXXXX" as the template.
44052         Suggestion from Paul Eggert.
44053
44054         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
44055         immediately, so the test doesn't mistakenly hit the max-open-files
44056         limit.
44057
44058 2001-11-18  Paul Eggert  <eggert@twinsun.com>
44059
44060         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
44061         (TEMPORARIES): New macro.
44062         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
44063         removes an artificial limitation (e.g. HP-UX 10.20, where
44064         TMP_MAX is 17576).
44065
44066 2001-11-18  Jim Meyering  <meyering@lucent.com>
44067
44068         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
44069
44070 2001-11-18  Jim Meyering  <meyering@lucent.com>
44071
44072         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
44073         on SunOS 4.
44074
44075         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
44076         files will be created before anything else.
44077
44078 2001-11-17  Paul Eggert  <eggert@twinsun.com>
44079
44080         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
44081         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
44082
44083 2001-11-17  Jim Meyering  <meyering@lucent.com>
44084
44085         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
44086         Prompted by a report from Bob Proulx.
44087
44088         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
44089         Instead, require UTILS_FUNC_MKSTEMP.
44090
44091 2001-11-17  Jim Meyering  <meyering@lucent.com>
44092
44093         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
44094         Now, that's done as part of AC_FUNC_STRTOD.
44095
44096 2001-11-17  Jim Meyering  <meyering@lucent.com>
44097
44098         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
44099         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
44100         rather than group writable.  Patch by Juan F. Codagnone.
44101
44102         * lib/readtokens.c: Remove explicit declarations of xmalloc and
44103         xrealloc, Instead, include "xalloc.h".
44104
44105         * lib/mountlist.c: Include unlocked-io.h after all system headers.
44106         Remove explicit declarations of xmalloc, xrealloc,
44107         and xstrdup.  Instead, include "xalloc.h".
44108
44109         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
44110         unlocked-io.h.
44111         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
44112         Likewise.
44113         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
44114
44115         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
44116         Reported by Padraig Brady.
44117
44118         * lib/mkstemp.c: #undef mkstemp.
44119         Include config.h.
44120         (rpl_mkstemp): Rename from mkstemp.
44121         Protoize.
44122
44123 2001-11-16  Jim Meyering  <meyering@lucent.com>
44124
44125         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
44126         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
44127         determine the amount of total physical memory, use pstat_getstatic.
44128         HPUX-11 doesn't define _SC_PHYS_PAGES.
44129         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
44130         If sysconf couldn't be used to determine the amount of available
44131         physical memory, use both pstat_getstatic and pstat_getdynamic.
44132         Based on a patch from Bob Proulx.
44133
44134 2001-11-10  Jim Meyering  <meyering@lucent.com>
44135
44136         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
44137         (jm_PREREQ): Use it.
44138
44139 2001-11-09  Jim Meyering  <meyering@lucent.com>
44140
44141         * m4/jm-macros.m4: Require autoconf-2.52f.
44142         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
44143         Use these AC_-prefixed names, not the AM_-prefixed ones.
44144
44145         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
44146
44147 2001-11-05  Jim Meyering  <meyering@lucent.com>
44148
44149         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
44150
44151 2001-11-04  Jim Meyering  <meyering@lucent.com>
44152
44153         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
44154         $DEFS.
44155
44156 2001-11-03  Jim Meyering  <meyering@lucent.com>
44157
44158         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
44159         of AC_DEFUN.
44160
44161         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
44162         know the name of the variable in the macro definition.
44163
44164 2001-11-03  Jim Meyering  <meyering@lucent.com>
44165
44166         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
44167         in argmatch_to_argument call.
44168
44169         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
44170         argument.
44171
44172         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
44173         e.g., a fault due to an attempt to free a NULL pointer.
44174
44175 2001-11-01  Jim Meyering  <meyering@lucent.com>
44176
44177         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
44178         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
44179
44180 2001-11-01  Jim Meyering  <meyering@lucent.com>
44181
44182         * lib/dirfd.c, lib/dirfd.h: New files.
44183         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
44184
44185         * lib/hash.c (hash_print) [TESTING]: Clean up.
44186
44187 2001-10-22  Paul Eggert  <eggert@twinsun.com>
44188
44189         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
44190         to avoid a warning if -Wall.
44191
44192 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
44193
44194         * README: New file
44195         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
44196         (per RMS's instructions, this is now the canonical source)
44197         * lgpl/, gpl/: New directories.
44198
44199 2001-10-21  Paul Eggert  <eggert@twinsun.com>
44200
44201         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
44202
44203 2001-10-21  Jim Meyering  <meyering@lucent.com>
44204
44205         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
44206         this code would end up calling gettext even in packages built
44207         with --disable-nls.
44208         * lib/getopt.c (_): Likewise.
44209         * lib/regex.c (_): Likewise.
44210
44211 2001-10-20  Paul Eggert  <eggert@twinsun.com>
44212
44213         * m4/error.m4 (jm_PREREQ_ERROR):
44214         Do not invoke AC_CHECK_FUNCS with strerror_r, as
44215         AC_FUNC_STRERROR_R does that.
44216         Check for strerror declaration.
44217
44218         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
44219         are supposed to have them these days.
44220         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
44221         Merge changes from latest Autoconf CVS.
44222         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
44223         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
44224         POSIX decided to standardize on the int flavor of strerror_r.
44225
44226 2001-10-20  Paul Eggert  <eggert@twinsun.com>
44227
44228         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
44229         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
44230         Use strerror_r that is only a macro, even if it is not a function.
44231         (strerror): Check for HAVE_DECL_STRERROR before declaring.
44232         (private_strerror): Use prototypes, not old-style function definition.
44233         (print_errno_message): New function.
44234         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
44235         char*-flavored one.
44236         (error_tail, error, error_at_line): Use it.
44237
44238 2001-10-11  Jim Meyering  <meyering@lucent.com>
44239
44240         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
44241         and quote_n (1, ... to avoid clobbering a buffer.
44242
44243 2001-10-05  Jim Meyering  <meyering@lucent.com>
44244
44245         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
44246         hash-pjw.h.
44247         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
44248         * lib/hash-pjw.h: New file.
44249
44250 2001-09-30  Jim Meyering  <meyering@lucent.com>
44251
44252         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
44253         `struct fsstat' has the `f_fstypename' member.
44254         Use that to define FS_TYPE, which is now used to make
44255         the getfsstat link test tighter.
44256
44257 2001-09-30  Jim Meyering  <meyering@lucent.com>
44258
44259         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
44260         Include <sys/ucred.h>, for Apple Darwin.
44261         Include sys/mount.h and sys/fs_types.h only if available.
44262         (FS_TYPE): Define.
44263         (read_filesystem_list): Use FS_TYPE.
44264
44265 2001-09-29  Paul Eggert  <eggert@twinsun.com>
44266
44267         * lib/exclude.c (excluded_filename): 0 -> false, since it's
44268         a boolean context.
44269
44270 2001-09-29  Jim Meyering  <meyering@lucent.com>
44271
44272         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
44273         [one-argument getmntent function]): Include stdio.h before mntent.h.
44274         SunOS 4.1.x needs it for the declaration of `FILE'.
44275         Patch by Volker Borchert.
44276
44277         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
44278         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
44279         sys/fs_types.h, and make the link-test for getfsstat guard #include
44280         directives with appropriate #if HAVE_*_H tests so that we can
44281         detect getfsstat on Apple Darwin1.3.7 systems.
44282         Reported by Nelson Beebe.
44283         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
44284
44285 2001-09-28  Paul Eggert  <eggert@twinsun.com>
44286
44287         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
44288         #defines strtoimax.  Also treat the other strto* functions
44289         like strtoimax.
44290
44291         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
44292         Check for strtoul and strtoumax,
44293         as those declarations are made even in the signed case.
44294         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
44295         Likewise, for strtol and strtoimax.
44296
44297 2001-09-28  Paul Eggert  <eggert@twinsun.com>
44298
44299         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
44300         #defines strtoimax.  Also treat the other strto* functions
44301         like strtoimax.
44302
44303         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
44304         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
44305         (strtoimax, strtoumax): Do not declare if already defined as a macro.
44306
44307 2001-09-26  Jim Meyering  <meyering@lucent.com>
44308
44309         Most macros in unlocked-io.h had the wrong number of arguments.
44310         * lib/gen-uio: New script.
44311         (USE_UNLOCKED_IO): Define to 1 if not already defined.
44312         * lib/unlocked-io.hin: Remove file.
44313         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
44314         rather than trying to embed it here.
44315         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
44316         Reported by Padraig Brady.
44317
44318 2001-09-25  Volker Borchert  <bt@teknon.de>
44319
44320         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
44321         `result'.
44322
44323 2001-09-24  Jim Meyering  <meyering@lucent.com>
44324
44325         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
44326
44327 2001-09-23  Jim Meyering  <meyering@lucent.com>
44328
44329         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
44330         instead of the mere test for existence of mntent.h.  The latter
44331         would get a false-positive on AIX 3.4 systems.
44332         In the outer getmntent if-block, don't die if neither of the getmntent
44333         tests succeeds.  Instead, just fall through and continue with the
44334         remaining tests.
44335
44336 2001-09-23  Jim Meyering  <meyering@lucent.com>
44337
44338         * lib/mountlist.c: Remove useless parentheses in #if directives.
44339         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
44340         the deprecated MOUNTED symbol is no longer defined in mntent.h.
44341
44342 2001-09-22  Jim Meyering  <meyering@lucent.com>
44343
44344         * m4/gettext.m4: New file.  From gettext.
44345         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
44346         * m4/progtest.m4: Likewise
44347         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
44348         * m4/glibc21.m4: Likewise.
44349
44350         * m4/libintl.m4: Remove.  No longer used.
44351
44352 2001-09-22  Jim Meyering  <meyering@lucent.com>
44353
44354         * lib/localcharset.c: Update from latest gettext.
44355         * lib/config.charset: Likewise.
44356
44357 2001-09-20  Jim Meyering  <meyering@lucent.com>
44358
44359         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
44360         strtoimax.
44361         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
44362         strtoumax.
44363
44364 2001-09-20  Jim Meyering  <meyering@lucent.com>
44365
44366         * lib/xstrtol.c (strtoimax): Guard declaration with
44367         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
44368         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
44369         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
44370         (strtoumax): Likewise, for completeness (it wasn't necessary).
44371
44372 2001-09-17  Paul Eggert  <eggert@twinsun.com>
44373
44374         * lib/strtoimax.c (HAVE_LONG_LONG):
44375         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
44376         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
44377         to work around bug in IBM C compiler.
44378
44379 2001-09-17  Jim Meyering  <meyering@lucent.com>
44380
44381         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
44382         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
44383         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
44384         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
44385         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
44386         whenever the right hand side need not be expanded by the shell.
44387
44388 2001-09-16  Paul Eggert  <eggert@twinsun.com>
44389
44390         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
44391         library.  It's not correct, as some older glibcs are buggy.
44392         fnmatch wasn't fixed until glibc 2.2.
44393
44394         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
44395         special shell magic here.
44396
44397 2001-09-16  Jim Meyering  <meyering@lucent.com>
44398
44399         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
44400         * m4/jm-macros.m4: Require it.
44401
44402 2001-09-16  Jim Meyering  <meyering@lucent.com>
44403
44404         * lib/mkdir.c: New file.
44405
44406 2001-09-15  Jim Meyering  <meyering@lucent.com>
44407
44408         * m4/jm-macros.m4: Check for help2man.
44409
44410 2001-09-11  Jim Meyering  <meyering@lucent.com>
44411
44412         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
44413         The body, by Paul Eggert, was moved here from configure.in.
44414         * m4/jm-macros.m4: Require UTILS_HOST_OS.
44415
44416 2001-09-04  Paul Eggert  <eggert@twinsun.com>
44417
44418         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
44419         (jm_PREREQ): Use it.
44420
44421 2001-09-04  Paul Eggert  <eggert@twinsun.com>
44422
44423         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
44424         Use ssize_t, not int, to store result of readlink.
44425         Check for ssize_t overflow as well as size_t overflow,
44426         as POSIX says the result of readlink is implementation-defined
44427         when ssize_t overflows.
44428         Remove unnecessary cast to char*.
44429         Use free+malloc instead of realloc, as the storage doesn't need
44430         to be preserved and it's clearer and can be more efficient that way.
44431         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
44432         * lib/xreadlink.h (xreadlink): Update prototype.
44433
44434 2001-09-04  Paul Eggert  <eggert@twinsun.com>
44435
44436         * lib/xgetcwd.c: Revert some of the previous change; intead,
44437         fix the HAVE_GETCWD_NULL code to behave more like the
44438         !HAVE_GETCWD_NULL code used to.
44439
44440         Include "xalloc.h".
44441         (xgetcwd): Do not return NULL when memory is exhausted; instead,
44442         invoke xalloc_die.
44443
44444 2001-09-03  Paul Eggert  <eggert@twinsun.com>
44445
44446         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
44447         sys/param.h, as pathmax.h includes them.
44448
44449 2001-09-03  Paul Eggert  <eggert@twinsun.com>
44450
44451         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
44452         (jm_PREREQ_XGETCWD): New macro.
44453
44454         * m4/getcwd.m4: New file.
44455
44456 2001-09-03  Paul Eggert  <eggert@twinsun.com>
44457
44458         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
44459         like the HAVE_GETCWD_NULL code.
44460         Include pathmax.h if not HAVE_GETCWD.
44461         Do not include xalloc.h.
44462         (INITIAL_BUFFER_SIZE): New symbol.
44463         Do not use xmalloc / xrealloc, since the caller is responsible for
44464         handling errors.  Preserve errno around `free' during failure.
44465         Do not overrun buffer when using getwd.
44466
44467 2001-09-03  Paul Eggert  <eggert@twinsun.com>
44468
44469         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
44470         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
44471         getcwd (NULL, 0).
44472
44473 2001-09-03  Paul Eggert  <eggert@twinsun.com>
44474
44475         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
44476         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
44477         spotted by Jim Meyering.
44478
44479 2001-09-03  Jim Meyering  <meyering@lucent.com>
44480
44481         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
44482         failure.
44483
44484 2001-09-02  Jim Meyering  <meyering@lucent.com>
44485
44486         * lib/error.c: Update from GNU libc.
44487
44488 2001-09-01  Jim Meyering  <meyering@lucent.com>
44489
44490         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
44491         Used by df.
44492
44493 2001-09-01  Jim Meyering  <meyering@lucent.com>
44494
44495         * lib/xreadlink.c: New file.
44496         * lib/xreadlink.h: New file.
44497         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
44498         xreadlink.h.
44499
44500         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
44501         doesn't conflict with sparc Solaris 7's definition in
44502         /usr/include/sys/int_types.h.
44503
44504         * lib/exclude.c: Use `""', not `<>' to #include non-system header
44505         files.
44506         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
44507         and strncasecmp as r-values.  Unixware didn't have declarations.
44508
44509 2001-08-31  Paul Eggert  <eggert@twinsun.com>
44510
44511         * lib/xstrtol.h: Add copyright notice.
44512         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
44513         LONGINT_INVALID_SUFFIX_CHAR.
44514
44515 2001-08-31  Paul Eggert  <eggert@twinsun.com>
44516
44517         * lib/xstrtol.c (strtoimax): New decl.
44518
44519 2001-08-31  Paul Eggert  <eggert@twinsun.com>
44520
44521         * lib/xgetcwd.c: Don't include pathmax.h.
44522         Include stdlib.h and unistd.h if available.
44523         Include xalloc.h.
44524         (xmalloc, xstrdup, free): Remove decls.
44525         (xgetcwd): Don't assume sizes fit in unsigned.
44526         Check for overflow when computing sizes.
44527         Simplify reallocation code.
44528
44529 2001-08-31  Paul Eggert  <eggert@twinsun.com>
44530
44531         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
44532         a directory's st_size can have an arbitrary value, so the old
44533         usage could waste an arbitrary amount of memory.  All uses
44534         changed.
44535         * lib/savedir.h: Update prototype.
44536
44537 2001-08-31  Paul Eggert  <eggert@twinsun.com>
44538
44539         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
44540
44541         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
44542         old strtoimax.c.
44543
44544         Also, make the following further changes to make this file's
44545         configuration more similar to that of strtol.c:
44546         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
44547         (strtoumax, uintmax_t, strtoull, strtol): Remove.
44548         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
44549         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
44550         changed to signed values.
44551
44552         And make the following changes as well:
44553         Fix copyright notice, as 1999 was missing.
44554         (verify): New macro.
44555         (strtoimax): Check sizes at compile-time, not run-time.
44556         Prefer strtol to strtoll if both work.
44557         (main): Remove; it was not that useful and was a pain to maintain.
44558
44559         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
44560
44561 2001-08-31  Jim Meyering  <meyering@lucent.com>
44562
44563         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
44564         Use an initial, malloc'd, buffer of length 128 rather than
44565         a statically allocated one of length 1024.
44566
44567 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44568
44569         Simplify code, partly by assuming autoconf 2.52 semantics.
44570
44571         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
44572
44573         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
44574         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
44575         All uses removed.
44576         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
44577         Move AC_REQUIRE to next-to-top level, to avoid confusion.
44578         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
44579         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
44580         jm_AC_HEADER_INTTYPES_H.
44581         * m4/jm-macros.m4 (jm_MACROS): Likewise.
44582
44583         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
44584
44585         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
44586         Quote first arg of AC_DEFUN.
44587         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
44588         since they are needed to parse the include file even if we need
44589         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
44590         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
44591         but with opposite signedness.
44592
44593 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44594
44595         Merge 'exclude' changes from tar 1.13.22.
44596         This fixes one or two unlikely storage allocation overflow bugs,
44597         but doesn't change user-visible behavior otherwise.
44598
44599 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44600
44601         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
44602         (jm_PREREQ_EXCLUDE): New macro.
44603
44604 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44605
44606         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
44607         tm to be declared.
44608
44609 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44610
44611         * lib/hash.c: Remove '2001' from copyright notice.
44612
44613 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44614
44615         * lib/full-write.h: New file.
44616         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
44617         * lib/full-write.c: Correct credits, as cccp.c no longer
44618         exists and anyway it was so heavily changed from the old cccp
44619         code as to be unrecognizable.  Include full-write.h.
44620         (full_write) Return size_t, with short writes meaning failure.
44621         All callers changed.  This fixes a bug with large buffers
44622         on 64-bit hosts.
44623         * lib/utime.c: Include full-write.h.
44624
44625 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44626
44627         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
44628         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
44629         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
44630         Include if available.
44631         (<xalloc.h>): Include
44632         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
44633         (verify): New macro.  Use it to verify that EXCLUDE macros do not
44634         collide with FNM macros.
44635         (struct patopts): New struct.
44636         (struct exclude): Use it, as exclude patterns now come with options.
44637         (new_exclude): Support above changes.
44638         (new_exclude, add_exclude_file):
44639         Initial size must now be a power of two to simplify overflow checking.
44640         (free_exclude, fnmatch_no_wildcards): New function.
44641         (excluded_filename): No longer requires options arg, as the options
44642         are determined by add_exclude.  Now returns bool, not int.
44643         (excluded_filename, add_exclude):
44644         Add support for the fancy new exclusion options.
44645         (add_exclude, add_exclude_file): Now takes int options arg.
44646         Check for arithmetic overflow when computing sizes.
44647         (add_exclude_file): xrealloc might modify errno, so don't
44648         realloc until after errno might be used.
44649
44650         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
44651         New macros.
44652         (free_exclude): New decl.
44653         (add_exclude, add_exclude_file): Now takes int options arg.
44654         (excluded_filename): No longer requires options arg, as the options
44655         are determined by add_exclude.  Now returns bool, not int.
44656
44657 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44658
44659         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
44660
44661 2001-08-27  Jim Meyering  <meyering@lucent.com>
44662
44663         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
44664
44665         * lib/version-etc.c (N_): Remove definition.
44666         Revert most of last change.
44667         Instead, simply don't mark the `Copyright...' string for translation.
44668         Based on advice from Paul Eggert.
44669
44670         * lib/strtoxmax.c: Tweak comment.
44671
44672 2001-08-26  Jim Meyering  <meyering@lucent.com>
44673
44674         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
44675
44676         * m4/xstrtoimax.m4: New file.
44677         * m4/xstrtoumax.m4: Add comments explaining why we
44678         AC_REPLACE_FUNCS(strtol).
44679
44680 2001-08-26  Jim Meyering  <meyering@lucent.com>
44681
44682         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
44683         of copyright with `%s' so translators don't get an untranslated
44684         message in 2002.
44685         (COPYRIGHT_YEAR): Define.
44686         (version_etc): Use fprintf rather than fputs.
44687         Suggestion from Ulrich Drepper.
44688
44689         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
44690
44691         * lib/strtoll.c: New file, from GNU libc.
44692         * lib/xstrtoimax.c: New file.
44693
44694         * lib/xstrtol.h: Add xstrtoimax.
44695         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
44696         * lib/strtoimax.c: New file.  Likewise, but first define
44697         STRTOUXMAX_SIGNED.
44698
44699         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
44700         ...
44701         * lib/strtoxmax.c: ... then renamed to this.
44702
44703 2001-08-18  Paul Eggert  <eggert@twinsun.com>
44704
44705         * m4/inttypes.m4: Add AC_PREREQ(2.13).
44706         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
44707         (jm_AC_TYPE_INTMAX_T): New macro.
44708         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
44709
44710         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
44711
44712         * m4/longlong.m4: Renamed from ulonglong.m4.
44713         * m4/inttypes.m4: Renamed from inttypes_h.m4.
44714         * m4/uintmax_t.m4: Removed.
44715
44716 2001-08-13  Paul Eggert  <eggert@twinsun.com>
44717
44718         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
44719         Port to Solaris 8, where 'sed' requires a space after the 'r'
44720         command, and where sh dislikes "$/".  Clean up the spacing a bit.
44721         Redirect output to $tmp just once.
44722
44723 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
44724
44725         * lib/addext.c (<errno.h>): Include.
44726         (errno): Declare if not defined.
44727         (addext): Work correctly when pathconf returns -1 and leaves
44728         errno alone because there is no limit.  Also, work even if
44729         pathconf returns a value greater than SIZE_MAX.
44730
44731 2001-08-12  Jim Meyering  <meyering@lucent.com>
44732
44733         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
44734         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
44735         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
44736         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
44737         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
44738         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
44739         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
44740         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
44741         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
44742         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
44743         utime.m4, utimes.m4, xstrtoumax.m4:
44744         Quote the first argument in each use of AC_DEFUN.
44745
44746 2001-08-12  Jim Meyering  <meyering@lucent.com>
44747
44748         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
44749         Simply `return getcwd (NULL, 0);'.
44750         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
44751         Use 1300 as initial value for length, not PATH_MAX.
44752
44753         * lib/pathmax.h: Clean up cpp syntax.
44754
44755 2001-08-12  Jim Meyering  <meyering@lucent.com>
44756
44757         * lib/gettimeofday.c: New file.
44758         * lib/gtod.h: New file.
44759         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
44760
44761 2001-08-05  Jim Meyering  <meyering@lucent.com>
44762
44763         * m4/jm-macros.m4: Require autoconf-2.52.
44764
44765 2001-08-04  Jim Meyering  <meyering@lucent.com>
44766
44767         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
44768         stmt, to get in sync with glibc.
44769
44770 2001-08-03  Paul Eggert  <eggert@twinsun.com>
44771
44772         The following changes are from gettext 0.10.39 as maintained by
44773         Bruno Haible.
44774
44775         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
44776         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
44777         with inverted sense.  All uses changed.
44778
44779         * lib/mbswidth.c: Don't include <limits.h>.
44780         Include <stdlib.h> and <string.h> unconditionally.
44781         (iswcntrl, mbsinit, ISCNTRL): New macros.
44782         (mbsnwidth): Use K&R style function declarations.
44783         Don't bother checking for MB_LEN_MAX == 1, since the compiler
44784         can optimize it when MB_CUR_MAX == 1.
44785         The width of control characters is zero, not 1.
44786
44787 2001-08-03  Paul Eggert  <eggert@twinsun.com>
44788
44789         The following changes are from gettext 0.10.39 as maintained by
44790         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
44791
44792         * m4/codeset.m4: Upgrade to serial AM1.
44793         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
44794         all uses changed.  Quote first arg of AC_DEFUN.
44795         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
44796
44797         * m4/iconv.m4: Upgrade to serial AM2.
44798         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
44799         Add --with-libconv-prefix.
44800         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
44801         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
44802         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
44803         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
44804         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
44805
44806         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
44807         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
44808         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
44809         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
44810         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
44811         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
44812         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
44813         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
44814         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
44815
44816         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
44817         string.h any more.
44818
44819         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
44820         not the default value.
44821
44822         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
44823         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
44824         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
44825         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
44826         Also check for iswcntrl, used for wcwidth fallback.
44827         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
44828         to Autoconf 2.13.
44829
44830 2001-08-03  Jim Meyering  <meyering@lucent.com>
44831
44832         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
44833         as it was in the original.  Reported by Paul Eggert.
44834
44835 2001-07-16  Jim Meyering  <meyering@lucent.com>
44836
44837         * m4/gettimeofday.m4: New file.
44838         Prompted by a report from Bernhard Baehr.
44839
44840 2001-07-15  Jim Meyering  <meyering@lucent.com>
44841
44842         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
44843         stuff. Now it's in ../Makefile.cfg.
44844
44845 2001-07-15  Jim Meyering  <meyering@lucent.com>
44846
44847         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
44848         (BUILT_SOURCES): Add unlocked-io.h.
44849         (io_functions): Define.
44850         (unlocked-io.h): New rule.
44851         (DISTCLEANFILES): Add unlocked-io.h.
44852         (all-local): Depend on unlocked-io.h, to ensure it is created.
44853
44854         * lib/unlocked-io.hin: New file
44855
44856         * lib/regex.c: Update from glibc.
44857
44858 2001-07-05  Jim Meyering  <meyering@lucent.com>
44859
44860         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
44861         recommendation.
44862         (libfetish_a_SOURCES): Put all .h files here instead.
44863         Remove a thus-exposed (better checks in automake) duplicate and
44864         two unnecessary .h files.
44865
44866 2001-07-04  Jim Meyering  <meyering@lucent.com>
44867
44868         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
44869         that generates jm-glibc-io.m4 so that it doesn't trigger any make
44870         distcheck failure.
44871
44872 2001-07-02  Jim Meyering  <meyering@lucent.com>
44873
44874         The following changes were prompted by suggestions from Bruno Haible.
44875
44876         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
44877         is now generated.
44878         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
44879         definition of EXTRA_DIST.
44880         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
44881         ensure that the generated file is created/updated whenever the list
44882         of $(unlocked_functions) is changed.
44883         (jm-glibc-io.m4): New rule.
44884         (unlocked-io.h): New rule -- currently unused.
44885
44886 2001-06-24  Jim Meyering  <meyering@lucent.com>
44887
44888         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
44889         unmatched right bracket, rather than kludging it with an extra,
44890         falsely-matching quote in a comment.  Patch by Akim Demaille.
44891
44892 2001-06-11  Jim Meyering  <meyering@lucent.com>
44893
44894         * lib/regex.c: Update from GNU libc.
44895
44896 2001-05-27  Jim Meyering  <meyering@lucent.com>
44897
44898         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
44899         Check for ut_type in struct utmp.
44900
44901 2001-05-27  Jim Meyering  <meyering@lucent.com>
44902
44903         * lib/readutmp.h (UT_TYPE): Define.
44904
44905 2001-05-24  Jim Meyering  <meyering@lucent.com>
44906
44907         * lib/argmatch.c: Include "quote.h".
44908         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
44909         quote function.  Reported by Göran Uddeborg.
44910
44911 2001-05-22  Jim Meyering  <meyering@lucent.com>
44912
44913         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
44914         now that we use the package-supplied version unconditionally.
44915         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
44916
44917 2001-05-21  Jim Meyering  <meyering@lucent.com>
44918
44919         * m4/regex.m4: Change a couple backticks to single quotes to avoid
44920         shell syntax errors.
44921
44922 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
44923
44924         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
44925
44926 2001-05-20  Paul Eggert  <eggert@twinsun.com>
44927
44928         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
44929         Don't bother to check library strftime, since
44930         we'll be using our own my_strftime function anyway.
44931         Define my_strftime instead of strftime.
44932
44933 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
44934
44935         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
44936         which is not yet declared.
44937
44938 2001-05-15  Jim Meyering  <meyering@lucent.com>
44939
44940         * m4/regex.m4: Use proper quoting so brackets appear in the test
44941         program.
44942         Reported by, and with help from, Bruno Haible.
44943
44944 2001-05-13  Jim Meyering  <meyering@lucent.com>
44945
44946         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
44947         undefined.
44948
44949 2001-05-11  Paul Eggert  <eggert@twinsun.com>
44950
44951         dirname code cleanup.  base_name now behaves more compatibly
44952         with POSIX basename when given file names that have trailing
44953         slashes, and similarly for dir_name.  Add new primitives
44954         base_len and dir_len.  Put the directory-name-related decls
44955         into dirname.h.
44956
44957         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
44958         * lib/backupfile.c (base_name): Likewise.
44959         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
44960         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
44961         * lib/makepath.c (strip_trailing_slashes): Likewise.
44962         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
44963         ISSLASH): Likewise.
44964         * lib/rename.c (strip_trailing_slashes): Likewise.
44965         * lib/same.c (base_name): Likewise.
44966         * lib/stripslash.c (ISSLASH): Likewise.
44967
44968         * lib/addext.c: Include <dirname.h> after size_t is defined.
44969         * lib/backupfile.c: Likewise.
44970
44971         * lib/addext.c (addext): Use base_len to trim redundant
44972         trailing slashes instead of doing it ourselves.
44973         But do not trim the last slash if it is not redundant.
44974
44975         * lib/backupfile.c (find_backup_file_name,
44976         max_backup_version): Use base_len instead of rolling it ourselves.
44977         Handle the case of "" and (on DOS) "C:" correctly.
44978
44979         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
44980         needed. Include <string.h>, <dirname.h>.
44981         (base_name): Allow file names ending in slashes, other than names
44982         that are all slashes.  In this case, return the basename followed
44983         by the slashes.  This is more general, and can be used in places
44984         where the original base_name purposely had an assertion failure.
44985         (base_len): New function.
44986
44987         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
44988         Do not include <assert.h>; no longer needed.
44989         Include xalloc.h.
44990         (memrchr): Remove decl.
44991         (dir_name_r): Remove.
44992         (dir_len): Renamed from dirlen.  All callers changed.
44993         Rewrite in terms of base_name, for simplicity and consistency.
44994         (dir_name): Never return NULL.  All callers changed.
44995         Do not include <stdlib.h> in test program; no longer needed.
44996         return 0; is fine for test program.
44997
44998         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
44999         New macros.
45000         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
45001
45002         * lib/path-concat.c (path_concat): Use base_len to compute
45003         base length, not strlen; this means we cannot rely on memcpy
45004         to null-terminate.
45005
45006         * lib/same.c (STREQ): Remove.
45007         (same_name): Handle the case where the basename ends in trailing '/'.
45008
45009         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
45010         a slash was stripped.  Do not strip the last slash after a
45011         file system prefix.
45012
45013 2001-05-11  Paul Eggert  <eggert@twinsun.com>
45014
45015         * lib/Makefile.am (libfetish_a_SOURCES):
45016         Add strftime.c, since we now compile it on all hosts.
45017
45018         * lib/strftime.c (my_strftime):
45019         Define to nstrftime if emacs, but only if my_strftime is not defined.
45020         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
45021         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
45022         Add one more extra argument: a nanoseconds value.
45023         All uses changed.
45024         (ns): New macro.
45025         (my_strftime function): Add %N format.
45026         (emacs_strftimeu): Renamed from emacs_strftime,
45027         with extra ut argument.
45028
45029 2001-05-09  Paul Eggert  <eggert@twinsun.com>
45030
45031         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
45032
45033 2001-04-21  Jim Meyering  <meyering@lucent.com>
45034
45035         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
45036         doesn't interfere.
45037
45038 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
45039
45040         * m4/ftruncate.m4: Check for chsize.
45041         Link with ftruncate.o unconditionally if ftruncate is missing.
45042         This was required when cross-compiling to i586-mingw32msvc.
45043
45044 2001-04-08  Jim Meyering  <meyering@lucent.com>
45045
45046         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
45047         recomputed; that's necessary when the offset spans a DST transition.
45048         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
45049
45050 2001-04-02  Jim Meyering  <meyering@lucent.com>
45051
45052         * lib/regex.h, regex.c: Update from GNU libc.
45053
45054 2001-03-24  Jim Meyering  <meyering@lucent.com>
45055
45056         * m4/jm-macros.m4: Require autoconf-2.49d.
45057
45058 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
45059
45060         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
45061
45062 2001-03-19  Paul Eggert  <eggert@twinsun.com>
45063
45064         * lib/version-etc.c (version_etc_copyright): Update to 2001.
45065
45066 2001-03-17  Jim Meyering  <meyering@lucent.com>
45067
45068         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
45069         now that the version in autoconf is equivalent.
45070         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
45071
45072         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
45073         Suggestion from Akim Demaille.
45074
45075         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
45076         (jm_PREREQ_TEMPNAME): New function.
45077
45078 2001-03-16  Paul Eggert  <eggert@twinsun.com>
45079
45080         * lib/tempname.c (uint64_t): Define to uintmax_t if
45081         not defined, and if UINT64_MAX is not defined.
45082         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
45083         Reported by John David Anglin.
45084
45085 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
45086
45087         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
45088         resolve alias if codeset is empty.
45089         * lib/config.charset (BeOS): Use wildcard syntax.
45090
45091 2001-03-13  Jim Meyering  <meyering@lucent.com>
45092
45093         * lib/path-concat.c (path_concat)
45094         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
45095         concatenating e.g., `C:' and `foo'.
45096         From Bruno Haible.
45097
45098 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
45099
45100         * lib/localcharset.c (locale_charset): Don't use
45101         setlocale(LC_CTYPE,NULL). Don't return NULL.
45102         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
45103
45104 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
45105
45106         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
45107         support for DOS/DJGPP.
45108
45109 2001-03-01  Paul Eggert  <eggert@twinsun.com>
45110
45111         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
45112         lacks mkstemp.  Compile our own tempname.c if we compile our own
45113         mkstemp.c, as mkstemp relies on tempname.
45114
45115 2001-03-01  Jim Meyering  <meyering@lucent.com>
45116
45117         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
45118         AH_VERBATIM really does output its argument verbatim.
45119
45120 2001-02-28  Paul Eggert  <eggert@twinsun.com>
45121
45122         * lib/Makefile.am (libfetish_a_SOURCES):
45123         Add dup-safer.c, fopen-safer.c.
45124         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
45125
45126         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
45127         * lib/unistd-safer.h: New files.
45128
45129 2001-02-25  Paul Eggert  <eggert@twinsun.com>
45130
45131         The mkstemp replacement is taken from glibc 2.2.2, with some
45132         portability fixes for use outside glibc, as follows:
45133
45134         * lib/tempname.c (struct_stat64): New macro.
45135         (direxists, __gen_tempname): Use it.
45136         This avoids a portability problem with Solaris 8.
45137
45138         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
45139         (<stddef.h>, <stdint.h>, <string.h>):
45140         Include only if STDC_HEADERS || _LIBC.
45141         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
45142         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
45143         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
45144         (__set_errno): Define this macro if <errno.h> doesn't.
45145         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
45146         Define these macros if <stdio.h> doesn't.
45147         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
45148         Define these macros if <sys/stat.h>
45149         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
45150         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
45151         __xstat64): Define if not _LIBC.
45152         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
45153         (__gen_tempname): Invoke gettimeofday only if
45154         HAVE_GETTIMEOFDAY || _LIBC;
45155         otherwise, fall back on plain "time".
45156         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
45157
45158         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
45159
45160         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
45161
45162 2001-02-18  Paul Eggert  <eggert@twinsun.com>
45163
45164         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
45165
45166 2001-02-17  Paul Eggert  <eggert@twinsun.com>
45167
45168         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
45169         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
45170         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
45171         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
45172
45173 2001-02-17  Paul Eggert  <eggert@twinsun.com>
45174
45175         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
45176         Remove workaround macros for hosts that have mbrtowc but not
45177         mbstate_t, as we now insist on proper declarations for both
45178         before using mbrtowc.
45179
45180 2001-02-17  Jim Meyering  <meyering@lucent.com>
45181
45182         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
45183         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
45184         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
45185         UnixWare 7.1.1.
45186
45187         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
45188         rather than AC_CACHE_VAL.
45189
45190 2001-02-17  Jim Meyering  <meyering@lucent.com>
45191
45192         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
45193         around included file name.
45194
45195         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
45196
45197         * lib/strftime.c: Update from GNU libc (the only changes were to
45198         comments).
45199
45200 2001-02-17  Jim Meyering  <meyering@lucent.com>
45201
45202         * lib/regex.c: Update from libc.
45203
45204 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
45205
45206         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
45207         clash.
45208
45209 2001-02-16  Paul Eggert  <eggert@twinsun.com>
45210
45211         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
45212         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
45213         Reported by Mark Hounschell via Paul Eggert.
45214
45215 2001-02-07  Jim Meyering  <meyering@lucent.com>
45216
45217         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
45218
45219 2001-02-05  Jim Meyering  <meyering@lucent.com>
45220
45221         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
45222         it includes the patch required for `large file' support with at least
45223         HP-UX's 10.20 /bin/cc.
45224
45225 2001-02-03  Jim Meyering  <meyering@lucent.com>
45226
45227         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
45228         AS_IF, now that it works once again (mysteriously).
45229         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
45230
45231 2001-01-30  Jim Meyering  <meyering@lucent.com>
45232
45233         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
45234         * m4/chown.m4: Rename conftestchown to conftest.chown.
45235         * m4/rename.m4: s/conftestdir/conftest.d1/ and
45236         s/conftestdir2/conftest.d2/.
45237         * m4/utimes.m4: s/conftestdata/conftest.data/
45238         Inspired by Pavel Roskin's change in autoconf.
45239
45240 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
45241
45242         * lib/config.charset: Update for FreeBSD 4.2.
45243
45244 2001-01-27  Jim Meyering  <meyering@lucent.com>
45245
45246         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
45247         a use of AS_IF.
45248         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
45249
45250 2001-01-26  Jim Meyering  <meyering@lucent.com>
45251
45252         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
45253         quotearg.c includes it.
45254
45255 2001-01-26  Jim Meyering  <meyering@lucent.com>
45256
45257         * lib/quotearg.c: Include stddef.h.
45258         * lib/quote.c: Include stddef.h.
45259         Reported by Axel Kittenberger.
45260
45261         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
45262         line in double quotes so that it evokes a better diagnostic.
45263         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
45264         Reported by Axel Kittenberger.
45265
45266 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
45267
45268         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
45269         as if it was a `charset'.
45270
45271 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
45272
45273         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
45274         has const.
45275
45276 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
45277
45278         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
45279         to avoid a warning.  Add back 'const' to inptr.
45280
45281 2001-01-20  Jim Meyering  <meyering@lucent.com>
45282
45283         Be sure that headers are checked before used in code compiled
45284         for the type checks.
45285         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
45286         In place of that, invoke jm_CHECK_ALL_TYPES.
45287         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
45288         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
45289         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
45290         The check for ssize_t was mistakenly run before the test for unistd.h.
45291
45292         The configure-time check for stdbool.h was missing.
45293         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
45294         (jm_PREREQ_HASH): New function.
45295
45296 2001-01-17  Jim Meyering  <meyering@lucent.com>
45297
45298         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
45299         for autoconf-2.49c.
45300         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
45301
45302 2001-01-16  Jim Meyering  <meyering@lucent.com>
45303
45304         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
45305         From Bruno Haible.
45306
45307 2001-01-14  Jim Meyering  <meyering@lucent.com>
45308
45309         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
45310         foo and bar.  Create conftestdir/ in the script, not in the C code.
45311         Remove directories in the script, not in the C code.
45312         Remove conftestdir{,2} before trying to create the directory.
45313         Make the entire configure script fail if the mkdir fails.
45314
45315 2001-01-14  Jim Meyering  <meyering@lucent.com>
45316
45317         * lib/rename.c: New file.  From Volker Borchert.
45318         Include stdlib.h, string.h or strings.h, and xalloc.h.
45319         Use strip_trailing_slashes rather than open-coding it.
45320
45321 2001-01-03  Paul Eggert  <eggert@twinsun.com>
45322
45323         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
45324
45325 2001-01-03  Jim Meyering  <meyering@lucent.com>
45326
45327         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
45328         of local `inptr' to avoid warning with some system declarations of
45329         iconv.
45330
45331 2001-01-02  Volker Borchert  <bt@teknon.de>
45332
45333         * m4/rename.m4: New file.
45334         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
45335
45336 2001-01-01  Jim Meyering  <meyering@lucent.com>
45337
45338         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
45339         even on systems with utmpx.h.  It's necessary for the declaration of
45340         utmp's ut_user member.  Reported by Andreas Jaeger.
45341
45342         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
45343         available. They are required for the declarations of getgrgid and
45344         getpwuid resp.
45345         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
45346         Reported by Andreas Jaeger.
45347
45348 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
45349
45350         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
45351         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
45352         so `make install' also works in VPATH builds.
45353
45354 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
45355
45356         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
45357         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
45358         can be used in subdirectories.
45359
45360 2000-12-29  Paul Eggert  <eggert@twinsun.com>
45361
45362         * lib/modechange.c: Do not assume that mode_t uses the
45363         traditional octal encoding.  E.g. "chmod 1 FOO" should set
45364         the other-execute bit of FOO even if S_IXOTH != 1.
45365
45366         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
45367         WOTH, XOTH, ALLM): New macros.
45368         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
45369          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
45370         Use them.
45371         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
45372         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
45373         (mode_compile):
45374         No need to use uintmax_t; unsigned long is long enough.
45375         Don't bother to get suffix since we don't use it.
45376
45377 2000-12-26  Jim Meyering  <meyering@lucent.com>
45378
45379         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
45380         better with autoheader.
45381
45382 2000-12-24  Jim Meyering  <meyering@lucent.com>
45383
45384         * lib/hash.c (is_prime): Return explicit boolean values.
45385         (hash_get_first): Return NULL to appease Irix5.6's 89.
45386         Reported by Nelson Beebe.
45387
45388 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
45389
45390         * lib/localcharset.c (locale_charset): Add support for Win32.
45391
45392 2000-12-18  Paul Eggert  <eggert@twinsun.com>
45393
45394         * lib/physmem.h, lib/physmem.c: New files.
45395
45396         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
45397         (noinst_HEADERS): Add physmem.h.
45398
45399         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
45400         't' for compatibility with Solaris 8 sort.
45401
45402 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
45403
45404         * lib/config.charset: Add support for BeOS.
45405
45406 2000-12-17  Jim Meyering  <meyering@lucent.com>
45407
45408         * m4/dos.m4 (jm_AC_DOS): New file and macro.
45409         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
45410
45411 2000-12-16  Jim Meyering  <meyering@lucent.com>
45412
45413         This bug had a serious impact on chown: `chown N:M FILE' (for integer
45414         N and M) would have treated it like `chown N:N FILE'.
45415
45416         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
45417
45418 2000-12-16  Jim Meyering  <meyering@lucent.com>
45419
45420         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
45421         SHELLS_FILE to a file name that's useful on djgpp systems.
45422         Include stdlib.h.
45423         (ADDITIONAL_DEFAULT_SHELLS): Define.
45424         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
45425         Based mostly on a patch from Prashant TR.
45426
45427 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
45428
45429         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
45430         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
45431         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
45432
45433 2000-12-08  Andreas Schwab  <schwab@suse.de>
45434
45435         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
45436         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
45437
45438 2000-12-07  Jim Meyering  <meyering@lucent.com>
45439
45440         * lib/stripslash.c (ISSLASH): Define.
45441         (strip_trailing_slashes): Use ISSLASH rather than comparing against
45442         `/'.
45443         From Prashant TR.
45444
45445         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
45446         (dir_name_r): Declare this function as static.
45447         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
45448         manifest itself on a name containing a mix of slashes and
45449         backslashes.
45450         Make this function work with names starting with a DOS-style
45451         drive letter and colon prefix.
45452         (dir_name): Append `.' if necessary.
45453         Based mostly on patches from Prashant TR and Eli Zaretskii.
45454
45455         * lib/dirname.h (dir_name_r): Remove prototype.
45456
45457 2000-12-06  Paul Eggert  <eggert@twinsun.com>
45458
45459         * m4/off_t-format.m4: Remove this file.
45460         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
45461
45462 2000-12-06  Jim Meyering  <meyering@lucent.com>
45463
45464         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
45465         replacement strtoull, we may well need the replacement strtoul, too.
45466         Check for declarations of strtoul and strtoull.
45467         Check for strtol.  Mainly as a cue to cause automake to include
45468         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
45469         Check for limits.h -- strtol.c needs it.
45470
45471 2000-12-05  Jim Meyering  <meyering@lucent.com>
45472
45473         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
45474
45475 2000-12-04  Jim Meyering  <meyering@lucent.com>
45476
45477         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
45478         Also include memory.h, stdlib.h, unistd.h if appropriate.
45479         Reported by Andreas Jaeger (conflicting declaration of malloc).
45480
45481 2000-12-02  Jim Meyering  <meyering@lucent.com>
45482
45483         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
45484         * m4/jm-macros.m4 (jm_MACROS): require it.
45485
45486 2000-12-02  Jim Meyering  <meyering@lucent.com>
45487
45488         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
45489
45490 2000-12-01  Paul Eggert  <eggert@twinsun.com>
45491
45492         * lib/memrchr.c: Include <config.h> before any system include file.
45493
45494 2000-11-30  Jim Meyering  <meyering@lucent.com>
45495
45496         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
45497
45498 2000-11-30  Jim Meyering  <meyering@lucent.com>
45499
45500         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
45501
45502 2000-11-29  Paul Eggert  <eggert@twinsun.com>
45503
45504         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
45505
45506 2000-11-26  Jim Meyering  <meyering@lucent.com>
45507
45508         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
45509
45510 2000-11-22  Paul Eggert  <eggert@twinsun.com>
45511
45512         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
45513         size of (size_t) -1; it's not portable.
45514
45515 2000-11-17  Jim Meyering  <meyering@lucent.com>
45516
45517         * lib/strstr.c: Update from GNU libc.
45518
45519 2000-11-17  Akim Demaille  <akim@epita.fr>
45520
45521         * lib/obstack.h: Formatting changes.
45522         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
45523         prevent type checking.
45524         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
45525         cast the value to (void *): assigning a `foo *' to a `void *'
45526         variable is valid.
45527         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
45528
45529 2000-11-16  Jim Meyering  <meyering@lucent.com>
45530
45531         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
45532
45533 2000-11-11  Jim Meyering  <meyering@lucent.com>
45534
45535         * lib/error.c: Add a couple #includes, merging from GNU libc version.
45536
45537 2000-11-10  Jim Meyering  <meyering@lucent.com>
45538
45539         * lib/obstack.h: Update from GNU libc.
45540         * lib/obstack.c: Likewise.
45541
45542 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
45543
45544         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
45545
45546 2000-11-06  Paul Eggert  <eggert@twinsun.com>
45547
45548         * lib/getusershell.c (setusershell): Use rewind rather than
45549         fseek/fseeko, to avoid configuration hassles with fseeko.
45550         Don't bother opening SHELLS_FILE if shellstream is NULL;
45551         it's not necessary.
45552
45553 2000-11-05  Jim Meyering  <meyering@lucent.com>
45554
45555         * lib/makepath.h (make_dir): Declare.
45556         * lib/makepath.c (make_dir): Remove `static' attribute.
45557         Tweak a comment.
45558
45559 2000-11-04  Jim Meyering  <meyering@lucent.com>
45560
45561         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
45562
45563 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
45564
45565         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
45566         last one in a bucket, advance to the next bucket.
45567
45568 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
45569
45570         * lib/fnmatch.c: Do not comment out all the code if we are using
45571         the GNU C library, because in some cases we are replacing buggy
45572         code in the GNU C library itself.
45573
45574 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
45575
45576         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
45577         (regex_compile): Catch bogus \(\1\).
45578
45579 2000-10-30  Paul Eggert  <eggert@twinsun.com>
45580
45581         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
45582         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
45583         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
45584
45585 2000-10-30  Paul Eggert  <eggert@twinsun.com>
45586
45587         * lib/error.h, getline.h, modechange.h:
45588         Remove "2000" from Copyright line, as the file hasn't been
45589         changed this year other than in the copyright notice.
45590
45591         * lib/xalloc.h: Add "2000" to Copyright line, as this file
45592         was changed this year.
45593
45594 2000-10-29  Jim Meyering  <meyering@lucent.com>
45595
45596         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
45597         renaming.
45598         * m4/ls-mntd-fs.m4: Likewise
45599
45600 2000-10-29  Jim Meyering  <meyering@lucent.com>
45601
45602         * lib/xstat.in: Fix grammar in comment.
45603
45604 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
45605
45606         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
45607         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
45608         doesn't define __restrict_arr.
45609
45610 2000-10-28  Jim Meyering  <meyering@lucent.com>
45611
45612         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
45613         (jm_PREREQ_MEMCHR): New function.
45614
45615 2000-10-28  Jim Meyering  <meyering@lucent.com>
45616
45617         * lib/memchr.c: Update from libc.
45618         Adjust for portability:
45619         [HAVE_STDLIB_H]: Include stdlib.h.
45620         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
45621         Undef __memchr, too.
45622         [!weak_alias]: Define __memchr to memchr.
45623
45624         * lib/regex.c: Update from libc.
45625         * lib/regex.h: Likewise.
45626         * lib/getopt1.c: Likewise.
45627         * lib/memcmp.c: Likewise.
45628
45629         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
45630         Avoid using fseek, when possible -- it's broken by design.
45631         Patch by Ulrich Drepper.
45632
45633 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
45634
45635         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
45636         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
45637         Giving in to popular pressure to shut up the compiler with casts.
45638
45639 2000-10-26  Jim Meyering  <meyering@lucent.com>
45640
45641         * lib/strftime.c: Update from libc.
45642
45643 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
45644
45645         * regex.c: More `unsigned char' -> `re_char' changes.
45646         Also change several `int' into `re_wchar_t'.
45647         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
45648         (PUSH_FAILURE_POINTER): Don't cast any more.
45649         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
45650         We want GCC to complain, since this piece of code makes
45651         re_match non-reentrant, which *should* be fixed.
45652         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
45653         (EXTEND_BUFFER): Use RETALLOC.
45654         (SET_LIST_BIT): Don't cast.
45655         (re_wchar_t): New type.
45656         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
45657         that those two functions will always properly return.
45658         (IMMEDIATE_QUIT_CHECK): Cast to void.
45659         (analyse_first): Use recursion rather than an explicit stack.
45660         (re_compile_fastmap): Can't fail anymore.
45661         (re_search_2): Don't check re_compile_fastmap for failure.
45662         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
45663         Now also sets the new value (passed in a new argument).
45664         (re_match_2_internal): Use it.
45665         Also, use a new var `reg' of type size_t when looping through regs
45666         rather than reuse the inappropriate `mcnt'.
45667
45668 2000-10-25  Jim Meyering  <meyering@lucent.com>
45669
45670         * lib/obstack.c: Update from libc.
45671
45672 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
45673
45674         * regex.c (regex_compile): Change the way of handling a range from
45675         a char less than 256 to a char not less than 256.
45676
45677 2000-10-24  Andrew Innes  <andrewi@gnu.org>
45678
45679         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
45680         NT-Emacs only.
45681         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
45682         so that re_search functions only quit when callers expect them to.
45683
45684 2000-10-23  Jim Meyering  <meyering@lucent.com>
45685
45686         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
45687         wrong.  That set_locale call must not have any side effects.
45688         From Paul Eggert.
45689
45690 2000-10-22  Jim Meyering  <meyering@lucent.com>
45691
45692         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
45693         [CYCLIC]: Remove now-unused definition.
45694
45695         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
45696         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
45697         Suggestion from Ulrich Drepper.
45698
45699 2000-10-21  Jim Meyering  <meyering@lucent.com>
45700
45701         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
45702         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
45703         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
45704
45705 2000-10-21  Jim Meyering  <meyering@lucent.com>
45706
45707         * lib/dirname.c (memrchr): Declare if necessary.
45708         (dir_name): Remove the restriction that there be no
45709         trailing slashes.  Now, this code skips past them, effectively
45710         ignoring them.
45711         [TEST_DIRNAME] (main): New unit tests.
45712
45713         * lib/memrchr.c: New file from GNU libc.
45714         Undef __memrchr, too.
45715         [!weak_alias]: Define __memrchr to memrchr.
45716         Guard weak_alias use with `#ifdef weak_alias'.
45717
45718 2000-10-21  Jim Meyering  <meyering@lucent.com>
45719
45720         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
45721         (dir_name): Use dir_name_r.
45722         * lib/dirname.h (dir_name_r): Declare it.
45723
45724 2000-10-17  Jim Meyering  <meyering@lucent.com>
45725
45726         * lib/quote.h (PARAMS): Define and use.
45727         Reported by Akim Demaille.
45728
45729         * lib/getopt.c: Update from libc.
45730
45731 2000-10-16  Jim Meyering  <meyering@lucent.com>
45732
45733         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
45734         setlocale.
45735         From Jan Fedak.
45736
45737 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
45738
45739         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
45740
45741 2000-09-25  Jim Meyering  <meyering@lucent.com>
45742
45743         * lib/md5.h (rol): Define (from GnuPG).
45744
45745         * lib/sha.c: Give credit (GnuPG) where due.
45746         (M): Use rol rather than open-coding it.
45747         Add a FIXME comment.
45748
45749 2000-09-21  Jim Meyering  <meyering@lucent.com>
45750
45751         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
45752         Reported by Michael Stone.
45753
45754 2000-09-20  Jim Meyering  <meyering@lucent.com>
45755
45756         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
45757         (noinst_HEADERS): Add sha.h.
45758         Based on code from Scott G. Miller and from GnuPG.
45759
45760 2000-09-18  Jim Meyering  <meyering@lucent.com>
45761
45762         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
45763         LIBS. Otherwise, everyone ends up linking with -lelf for some
45764         configurations.
45765         Reported by Mike Stone.
45766
45767 2000-09-15  Jim Meyering  <meyering@lucent.com>
45768
45769         * lib/regex.c: Update from libc.
45770
45771 2000-09-10  Jim Meyering  <meyering@lucent.com>
45772
45773         * lib/getopt.c (_getopt_internal): Update from glibc.
45774
45775 2000-09-09  Jim Meyering  <meyering@lucent.com>
45776
45777         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
45778         think it should be used as a general replacement for isascii.
45779         * lib/fnmatch.c: Likewise.
45780         * lib/mbswidth.c: Likewise
45781         * lib/regex.c: Likewise.
45782
45783         Don't use atoi.
45784         * lib/userspec.c: Include sys/param.h and limits.h.
45785         Include xstrtol.h.
45786         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
45787         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
45788         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
45789         UID, GID.  Check range.
45790
45791 2000-09-06  Jim Meyering  <meyering@lucent.com>
45792
45793         * lib/getopt.c (_getopt_internal): Update from glibc.
45794
45795 2000-08-30  Jim Meyering  <meyering@lucent.com>
45796
45797         * lib/strftime.c: Merge in changes from GNU libc.
45798
45799 2000-08-26  Jim Meyering  <meyering@lucent.com>
45800
45801         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
45802         * m4/fpending.m4: New file.
45803
45804 2000-08-26  Jim Meyering  <meyering@lucent.com>
45805
45806         * lib/closeout.c: Include "__fpending.h".
45807         (close_stdout_status): Return right away if there's nothing to flush.
45808
45809         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
45810         * lib/__fpending.c: New file.
45811         * lib/__fpending.h: New file.
45812
45813 2000-08-20  Jim Meyering  <meyering@lucent.com>
45814
45815         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
45816         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
45817         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
45818
45819 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
45820
45821         Improve fileutils installation on systems where running
45822         programs (like install) can't be unlinked.
45823         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
45824         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
45825
45826 2000-08-07  Paul Eggert  <eggert@twinsun.com>
45827
45828         Standardize on "memory exhausted" instead of "Memory exhausted"
45829         or "virtual memory exhausted".
45830         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
45831         "virtual memory exhausted".
45832         * lib/same.c (same_name): Invoke xalloc_die instead of printing
45833         our own message.
45834         * lib/userspec.c (parse_user_spec): Likewise.
45835         * lib/bumpalloc.h: comment fix
45836         * lib/same.c, userspec.c: Include xalloc.h.
45837
45838         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
45839         not char *const and pointing to a constant array.
45840         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
45841         (xrealloc): Comment fix.
45842
45843         * lib/userspec.c (parse_user_spec):
45844         Don't translate a message until just before returning,
45845         to avoid unnecessary translation.
45846
45847 2000-08-07  Jim Meyering  <meyering@lucent.com>
45848
45849         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
45850         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
45851         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
45852         getgroups.c, gethostname.c, getopt.h, group-member.c,
45853         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
45854         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
45855         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
45856         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
45857         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
45858         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
45859         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
45860         yesno.c: Back out Copyright date changes for each file with no change
45861         this year.  This eases coordination with other programs using the same
45862         source code modules.  From Paul Eggert.
45863
45864 2000-08-06  Paul Eggert  <eggert@twinsun.com>
45865
45866         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
45867         not char, for compatibility with glibc 2.1.3 strftime.c.
45868
45869 2000-08-03  Greg McGary  <greg@mcgary.org>
45870
45871         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
45872         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
45873         (EXTEND_BUFFER): Use them.
45874
45875 2000-08-01  Jim Meyering  <meyering@lucent.com>
45876
45877         * lib/dirname.c (ISSLASH): Define.
45878         (BACKSLASH_IS_PATH_SEPARATOR): Define.
45879         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
45880         both `\' and `/' may be use as path separators.
45881         Based on a patch from Prashant TR.
45882
45883 2000-07-31  Paul Eggert  <eggert@twinsun.com>
45884
45885         * lib/quotearg.c (quotearg_n_options): Don't make the initial
45886         slot vector a constant, since it might get modified.
45887
45888 2000-07-31  Jim Meyering  <meyering@lucent.com>
45889
45890         * lib/xmalloc.c: Use `virtual memory exhausted', not
45891         `Memory exhausted'.
45892         * lib/obstack.c (print_and_abort): Likewise.
45893
45894 2000-07-30  Paul Eggert  <eggert@twinsun.com>
45895
45896         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
45897         buffer, so that the caller can always quote one small
45898         component of a "memory exhausted" message in slot 0.
45899         From a suggestion by Jim Meyering.
45900
45901 2000-07-30  Jim Meyering  <meyering@lucent.com>
45902
45903         * lib/makepath.c (make_path): Quote the other instance, too.
45904
45905         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
45906         (STATIC_BUF_SIZE): Define.
45907         (quotearg_n_options): Use only statically allocated storage when
45908         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
45909         than STATIC_BUF_SIZE.
45910
45911 2000-07-29  Jim Meyering  <meyering@lucent.com>
45912
45913         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
45914         * lib/dirname.c (dir_name): Likewise.
45915
45916         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
45917         `/'.
45918
45919         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
45920         (dir_name): Assert that there are no trailing slashes.
45921
45922 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
45923
45924         * lib/mbswidth.h (mbswidth): Add a flags argument.
45925         (mbswidth): New declaration.
45926         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
45927         * lib/mbswidth.c (mbswidth): Add a flags argument.
45928         (mbsnwidth): New function.
45929
45930 2000-07-24  Jim Meyering  <meyering@lucent.com>
45931
45932         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
45933
45934 2000-07-23  Paul Eggert  <eggert@twinsun.com>
45935
45936         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
45937
45938 2000-07-23  Paul Eggert  <eggert@twinsun.com>
45939
45940         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
45941         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
45942         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
45943         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
45944         invoke multibyte primitives.
45945
45946 2000-07-23  Paul Eggert  <eggert@twinsun.com>
45947
45948         * lib/quotearg.c:
45949         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
45950         so that mbstate_t is always defined.
45951
45952         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
45953         be 1 in at least one GCC installation, and this configuration
45954         error is likely to be common.  Ignoring MB_LEN_MAX hurts
45955         performance on hosts that have mbrtowc but have only unibyte
45956         locales, but I assume these hosts are rare.
45957
45958 2000-07-23  Paul Eggert  <eggert@twinsun.com>
45959
45960         * lib/mbswidth.c (_XOPEN_SOURCE):
45961         Don't define; this causes problems on Solaris 7.
45962         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
45963
45964 2000-07-23  Jim Meyering  <meyering@lucent.com>
45965
45966         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
45967         too: getgrgid, getpwuid, getuid.
45968
45969 2000-07-23  Jim Meyering  <meyering@lucent.com>
45970
45971         * lib/basename.c (base_name): Add an assertion.
45972
45973 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
45974
45975         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
45976         shadow its mbsinit function.
45977
45978 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
45979
45980         * lib/mbswidth.h: New file.
45981         * lib/mbswidth.c: New file.
45982         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
45983         (noinst_HEADERS): Add mbswidth.h.
45984
45985 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
45986
45987         * lib/config.charset: Add support for FreeBSD. Improve support for
45988         HP-UX and IRIX 6.
45989
45990 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
45991
45992         * m4/mbswidth.m4: New file.
45993         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
45994
45995 2000-07-15  Jim Meyering  <meyering@lucent.com>
45996
45997         * lib/makepath.c: Include quote.h.
45998         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
45999         corresponding argument in a `quote (...)' call.
46000         Give better diagnostics.
46001
46002         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
46003         (noinst_HEADERS): Add quote.h.
46004
46005         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
46006         from tar's src/misc.c.
46007         * lib/quote.h: New file.  Prototypes for same.
46008
46009 2000-07-14  Paul Eggert  <eggert@twinsun.com>
46010
46011         From a suggestion by Bruno Haible.
46012         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
46013         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
46014         to decide whether to define the BeOS workaround macro;
46015         this adjusts to the change to AC_MBSTATE_T.
46016
46017 2000-07-14  Jim Meyering  <meyering@lucent.com>
46018
46019         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
46020         jm_AC_TYPE_UINTMAX_T.
46021
46022 2000-07-13  Paul Eggert  <eggert@twinsun.com>
46023
46024         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
46025
46026         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
46027         quotearg_buffer_restyled): Add support for
46028         clocale_quoting_style.  Undo previous change to
46029         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
46030         and "{RIGHT QUOTATION MARK}" msgids.
46031
46032 2000-07-10  Paul Eggert  <eggert@twinsun.com>
46033
46034         From a suggestion by Bruno Haible.
46035         * m4/mbstate_t.m4 (AC_MBSTATE_T):
46036         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
46037         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
46038         and mbstate_t, to a single-part test that simply defines mbstate_t.
46039         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
46040         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
46041
46042 2000-07-10  Jim Meyering  <meyering@lucent.com>
46043
46044         * m4/strerror_r.m4: Mirror the correction made in autoconf.
46045
46046         * m4/gnu-source.m4: Output to confdefs.h directly.
46047         Suggestion from Akim Demaille.
46048
46049 2000-07-09  Paul Eggert  <eggert@twinsun.com>
46050
46051         The old behavior of quoting `like this' doesn't look good with
46052         newer, ISO-style fonts.  See:
46053         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
46054
46055         Instead, quote "like this" by default.  Let the translator
46056         tailor the locale-specific quoting behavior by providing
46057         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
46058
46059         * lib/quotearg.c (N_): New macro.
46060         (gettext_default): New function.
46061         (quotearg_buffer_restyled): Use
46062         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
46063         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
46064
46065 2000-07-09  Jim Meyering  <meyering@lucent.com>
46066
46067         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
46068         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
46069
46070         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
46071         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
46072
46073 2000-07-09  Jim Meyering  <meyering@lucent.com>
46074
46075         * lib/Most files: Update copyright dates to include 2000.
46076
46077 2000-07-08  Jim Meyering  <meyering@lucent.com>
46078
46079         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
46080         if not defined.
46081         (xgethostname): Remove now-unnecessary #ifdef.
46082         Move declaration of `err' into loop where it's used.
46083
46084 2000-07-05  Paul Eggert  <eggert@twinsun.com>
46085         and Bruno Haible  <haible@clisp.cons.org>
46086
46087         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
46088         only if the test for an object-type mbstate_t fails.  This
46089         prevents us from mistakenly reporting that mbstate_t is a
46090         system object type after we "#define mbstate_t int" to work
46091         around its lack.
46092
46093 2000-07-05  Paul Eggert  <eggert@twinsun.com>
46094         and Bruno Haible  <haible@clisp.cons.org>
46095
46096         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
46097
46098 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
46099
46100         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
46101         to strerror_r.
46102         Include <ctype.h> for use of isalpha.
46103
46104 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
46105
46106         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
46107         by allocating a larger buffer. Test the gethostname return value for
46108         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
46109         returns an error and ENAMETOOLONG isn't defined.
46110
46111 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
46112
46113         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
46114         dimension.
46115
46116 2000-07-04  Jim Meyering  <meyering@lucent.com>
46117
46118         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
46119         of the deprecated AC_CHECKING.
46120
46121 2000-07-04  Jim Meyering  <meyering@lucent.com>
46122
46123         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
46124         Reported by Bruno Haible.
46125
46126 2000-07-04  Jim Meyering  <meyering@lucent.com>
46127
46128         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
46129         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
46130         lacks mbrtowc.
46131
46132 2000-07-03  Paul Eggert  <eggert@twinsun.com>
46133
46134         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
46135         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
46136
46137 2000-07-03  Paul Eggert  <eggert@twinsun.com>
46138         and Bruno Haible  <haible@clisp.cons.org>
46139
46140         * lib/quotearg.c (mbrtowc):
46141         Assign to *pwc, and return 1 only if result is nonzero.
46142         (iswprint): Use ISPRINT when substituting our own mbrtowc.
46143
46144 2000-07-03  Jim Meyering  <meyering@lucent.com>
46145
46146         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
46147
46148 2000-07-03  Jim Meyering  <meyering@lucent.com>
46149
46150         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
46151         This is necessary to get a definition of e.g., UTMP_FILE on
46152         HP-UX 10.20.
46153         From Bob Proulx.
46154
46155 2000-07-02  Jim Meyering  <meyering@lucent.com>
46156
46157         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
46158
46159         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
46160         AC_LIBOBJ(function_name).
46161         * m4/chown.m4: Likewise.
46162         * m4/fnmatch.m4: Likewise.
46163         * m4/ftruncate.m4: Likewise.
46164         * m4/getgroups.m4: Likewise.
46165         * m4/getline.m4: Likewise.
46166         * m4/group-member.m4: Likewise.
46167         * m4/jm-macros.m4: Likewise.
46168         * m4/lstat.m4: Likewise.
46169         * m4/malloc.m4: Likewise.
46170         * m4/memcmp.m4: Likewise.
46171         * m4/nanosleep.m4: Likewise.
46172         * m4/putenv.m4: Likewise.
46173         * m4/realloc.m4: Likewise.
46174         * m4/regex.m4: Likewise.
46175         * m4/stat.m4: Likewise.
46176         * m4/strftime.m4: Likewise.
46177
46178 2000-07-02  Jim Meyering  <meyering@lucent.com>
46179
46180         * lib/quotearg.c (mbstate_t): Don't define here.
46181
46182 2000-07-02  Jim Meyering  <meyering@lucent.com>
46183
46184         * lib/nanosleep.c (SIGCONT): Define if not already defined.
46185
46186 2000-07-01  Jim Meyering  <meyering@lucent.com>
46187
46188         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
46189
46190 2000-07-01  Jim Meyering  <meyering@lucent.com>
46191
46192         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
46193         problem.
46194
46195 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
46196
46197         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
46198         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
46199
46200 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
46201
46202         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
46203         per change in ../m4/ls-mntd-fs.m4.
46204         (read_filesystem_list): Ignore symbolic links.
46205
46206 2000-06-29  Jim Meyering  <meyering@lucent.com>
46207
46208         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
46209         for declaration of strcmp.
46210
46211         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
46212
46213         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
46214         Avoid warning by casting result to `char *' to remove `const'.
46215
46216 2000-06-28  Jim Meyering  <meyering@lucent.com>
46217
46218         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
46219         included by quotearg.c, for which we perform this test.  From
46220         Bruno Haible.
46221
46222 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
46223
46224         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
46225         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
46226         <utmpx.h> exists, put readutmp.o into LIBOBJS.
46227
46228 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
46229
46230         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
46231
46232 2000-06-26  Paul Eggert  <eggert@twinsun.com>
46233
46234         savedir now sets errno on failure and invokes xmalloc to get memory.
46235         Fix a couple of other minor bugs while we're at it.
46236
46237         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
46238         (NAMLEN): Remove macro.
46239         (malloc, realloc): Remove decls.
46240         (stpcpy): Likewise.
46241         ("xalloc.h"): Include.
46242         (NAME_SIZE_DEFAULT): New macro.
46243         (savedir): Use xmalloc / xrealloc to allocate memory.
46244         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
46245         Skip "" directory entries.
46246         Use strlen to calculate directory entry length, since the old method
46247         is rarely used these days and isn't worth supporting.
46248         Don't use a pointer after freeing it.
46249         Check for integer overflow when calculating allocation size.
46250         Use memcpy to copy entries, instead of stpcpy.
46251         Set errno properly when returning NULL.
46252         Check for readdir error.
46253
46254 2000-06-26  Jim Meyering  <meyering@lucent.com>
46255
46256         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
46257
46258 2000-06-25  Jim Meyering  <meyering@lucent.com>
46259
46260         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
46261         Linux header bug when _XOPEN_SOURCE is defined to 500.
46262
46263 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
46264
46265         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
46266         deficiency.
46267
46268 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
46269
46270         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
46271         Include xalloc.h.
46272         Don't include <stdlib.h>.  Don't declare malloc, realloc.
46273
46274 2000-06-24  Jim Meyering  <meyering@lucent.com>
46275
46276         * m4/strerror_r.m4: Revive this file -- to try out an experimental
46277         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
46278         for which strerror does return char*, but which lacks a conveniently
46279         accessible declaration of the function.  If the compile-test says
46280         strerror_r doesn't work, then resort to a `run'-test that works on
46281         BeOS and segfaults on DEC Unix.
46282
46283 2000-06-24  Jim Meyering  <meyering@lucent.com>
46284
46285         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
46286
46287 2000-06-23  Paul Eggert  <eggert@twinsun.com>
46288
46289         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
46290         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
46291
46292 2000-06-23  Paul Eggert  <eggert@twinsun.com>
46293
46294         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
46295         (mbrtowc, mbstate_t): Define substitutes if
46296         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
46297         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
46298         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
46299
46300 2000-06-23  Jim Meyering  <meyering@lucent.com>
46301
46302         * m4/afs.m4: Add missing AC_MSG_RESULT.
46303         Reported by Bruno Haible.
46304
46305         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
46306         Suggestion from Bruno Haible.
46307
46308 2000-06-23  Jim Meyering  <meyering@lucent.com>
46309
46310         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
46311
46312 2000-06-21  Jim Meyering  <meyering@lucent.com>
46313
46314         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
46315
46316 2000-06-21  Jim Meyering  <meyering@lucent.com>
46317
46318         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
46319         (noinst_HEADERS): Add getstr.h.
46320
46321         * lib/getline.c (getstr): Move into a separate file.
46322         * lib/getstr.c (getstr): New file, extracted from getline.c, with
46323         the following changes: new parameter, delim2; both delim[12]
46324         parameters have type `int', not `char'.  The latter would lose
46325         with 8-bit delimiters.
46326         * lib/getstr.h: New file.
46327
46328 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
46329
46330         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
46331         than 1024, return a memory chunk of least possible size, instead
46332         of size PATH_MAX + 2. In the loop, increment the size proportionally.
46333         Use free/xmalloc instead of xrealloc to avoid copying for very long
46334         paths.
46335
46336 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
46337
46338         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
46339         the empty string.
46340
46341 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
46342
46343         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
46344         address, not strdup.  Include <stdlib.h> and don't declare free().
46345
46346 2000-06-19  Jim Meyering  <meyering@lucent.com>
46347
46348         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
46349
46350 2000-06-18  Jim Meyering  <meyering@lucent.com>
46351
46352         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
46353
46354         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
46355         `checking whether...' message to be consistent with that of the
46356         lstat test.
46357
46358 2000-06-18  Jim Meyering  <meyering@lucent.com>
46359
46360         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
46361         Besides, these days every porting target provides a mkdir function.
46362
46363         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
46364         needed. (this snippet comes from src/system.h).
46365
46366 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
46367
46368         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
46369
46370 2000-06-15  Paul Eggert  <eggert@twinsun.com>
46371
46372         * lib/human.c (adjust_value): New function.
46373         (human_readable_inexact): Apply rounding style even when
46374         printing approximate values.
46375
46376 2000-06-14  Paul Eggert  <eggert@twinsun.com>
46377
46378         * lib/human.c (human_readable_inexact): Allow an input block
46379         size that is not a multiple of the output block size, and vice versa.
46380         Reported by Piergiorgio Sartor.
46381
46382 2000-06-14  Paul Eggert  <eggert@twinsun.com>
46383
46384         * lib/getdate.y (get_date): Apply relative times after time
46385         zone indicator, not before.  Reported by Todd A. Jacobs.
46386
46387 2000-06-13  Jim Meyering  <meyering@lucent.com>
46388
46389         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
46390
46391         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
46392
46393 2000-06-12  Paul Eggert  <eggert@twinsun.com>
46394
46395         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
46396
46397 2000-06-12  Jim Meyering  <meyering@lucent.com>
46398
46399         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
46400         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
46401         optional argument.
46402         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
46403         the optional argument, `lib'.
46404
46405 2000-06-08  Jim Meyering  <meyering@lucent.com>
46406
46407         * m4/largefile.m4: Remove file (now that it's part of autoconf).
46408
46409 2000-06-04  Paul Eggert  <eggert@twinsun.com>
46410
46411         Rewrite largefile configuration so that we don't need to run
46412         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
46413         AC_CANONICAL_HOST in configure.in -- jmm]
46414
46415         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
46416         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
46417         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
46418         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
46419         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
46420         All uses changed.
46421         Instead of inspecting the output of getconf, try to compile the
46422         test program without and with the macro definition.
46423         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
46424         for getconf.  Instead, check for the needed flags by compiling
46425         test programs.
46426
46427 2000-06-04  Paul Eggert  <eggert@twinsun.com>
46428
46429         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
46430
46431 2000-06-04  Jim Meyering  <meyering@lucent.com>
46432
46433         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
46434         SunOS 4.1.4 for which gid_t is an unsigned type.
46435
46436 2000-06-03  Jim Meyering  <meyering@lucent.com>
46437
46438         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
46439         now that autoconf requires that.
46440
46441         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
46442         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
46443         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
46444
46445 2000-06-03  Jim Meyering  <meyering@lucent.com>
46446
46447         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
46448
46449 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
46450
46451         * m4/glibc21.m4: New file.
46452         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
46453
46454 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
46455
46456         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
46457         newer, don't install charset.alias.
46458         * lib/config.charset: Change the Linux/glibc rules so they become empty
46459         on glibc-2.1 or newer.
46460
46461 2000-06-02  Jim Meyering  <meyering@lucent.com>
46462
46463         * lib/mountlist.c: Back out last change.  Instead, do this...
46464         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
46465         me_dummy member using the same `ignore'-testing code.
46466         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
46467         fs_type strings.
46468         From Mark D. Roth.
46469
46470 2000-05-29  Jim Meyering  <meyering@lucent.com>
46471
46472         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
46473         mounts with the `ignore' attribute.  Based on a patch from
46474         Mark D. Roth.
46475
46476 2000-05-28  Jim Meyering  <meyering@lucent.com>
46477
46478         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
46479         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
46480         * m4/stat.m4: Likewise.
46481         * m4/lstat.m4: Likewise.
46482         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
46483
46484         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
46485         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
46486
46487 2000-05-26  Jim Meyering  <meyering@lucent.com>
46488
46489         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
46490
46491 2000-05-24  Jim Meyering  <meyering@lucent.com>
46492
46493         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
46494         autoconf requires that.
46495         * m4/lib-check.m4: Likewise.
46496         * m4/jm-macros.m4: Likewise.
46497         * m4/strftime.m4: Likewise.
46498
46499         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
46500         AC_CHECK_DECLS, now that autoconf requires that.
46501
46502 2000-05-22  Jim Meyering  <meyering@lucent.com>
46503
46504         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
46505         * m4/lstat.m4: Likewise.
46506
46507 2000-05-22  Jim Meyering  <meyering@lucent.com>
46508
46509         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
46510
46511 2000-05-20  Jim Meyering  <meyering@lucent.com>
46512
46513         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
46514         (jm_PREREQ): Use it.
46515
46516 2000-05-18  Jim Meyering  <meyering@lucent.com>
46517
46518         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
46519         back, too, since it may have been modified by allocate_entry.
46520         (hash_delete): Rewrite to use neither the assignment operator
46521         nor the comma operator in an if-expression.
46522
46523 2000-05-15  Paul Eggert  <eggert@twinsun.com>
46524
46525         * lib/closeout.c:
46526         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
46527         Remove; no longer needed.
46528         "quotearg.h": Add include.
46529         (file_name): Do not bother to explicitly initialize to NULL; it's less
46530         efficient on some hosts.
46531         (close_stdout_status): Remove test as to whether stdout was already
46532         closed; it breaks for the case "echo x | sort >&-".
46533         Quote file name colons.
46534         Do not assume that _("write error") lacks format strings.
46535
46536 2000-05-15  Jim Meyering  <meyering@lucent.com>
46537
46538         * lib/version-etc.c (version_etc_copyright): Update the copyright
46539         string used in all --version output.
46540
46541 2000-05-14  Jim Meyering  <meyering@lucent.com>
46542
46543         * lib/closeout.c (close_stdout_set_file_name): New function.
46544         (close_stdout_status): Use new file-scoped global.
46545         Return right away if fstat says the stdout file descriptor is invalid.
46546         * lib/closeout.h (close_stdout_set_file_name): Declare.
46547
46548 2000-05-10  Jim Meyering  <meyering@lucent.com>
46549
46550         * lib/closeout.c [default_exit_status]: New file-scoped variable.
46551         (close_stdout_set_status): New function.
46552         * lib/closeout.h (close_stdout_set_status): Declare.
46553
46554 2000-05-09  Jim Meyering  <meyering@lucent.com>
46555
46556         * m4/gettext.m4: Rename this...
46557         * m4/libintl.m4: ...to this.
46558
46559 2000-05-08  Jim Meyering  <meyering@lucent.com>
46560
46561         * lib/long-options.c: Don't include closeout.h.
46562         (parse_long_options): Don't call close_stdout for --version.
46563
46564 2000-05-06  Paul Eggert  <eggert@twinsun.com>
46565
46566         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
46567         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
46568         2.1.3 bug.  This avoids a clash when files like regex.c define
46569         _GNU_SOURCE.
46570
46571 2000-05-06  Jim Meyering  <meyering@lucent.com>
46572
46573         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
46574         (AC_REPLACE_FUNCS): Add strnlen.
46575
46576         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
46577         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
46578
46579         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
46580         AC_SEARCH_LIBS call for nanosleep.
46581         (LIB_NANOSLEEP): Set and AC_SUBST.
46582
46583 2000-05-06  Jim Meyering  <meyering@lucent.com>
46584
46585         * lib/strnlen.c: Undefine __strnlen and strnlen.
46586         [!weak_alias]: Define __strnlen to strnlen.
46587
46588         * lib/atexit.c: New file, from libiberty.
46589
46590 2000-05-06  Jim Meyering  <meyering@lucent.com>
46591
46592         * lib/closeout.c (close_stdout_status): Also check for errors on the
46593         stderr stream.
46594
46595 2000-05-05  Jim Meyering  <meyering@lucent.com>
46596
46597         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
46598         AC_SEARCH_LIBS call for clock_gettime.
46599         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
46600
46601         * m4/search-libs.m4: Update from autoconf.
46602
46603         su doesn't work on Solaris 2.6.
46604         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
46605         <shadow.h>.  Reported by Dragos Harabor.
46606
46607 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
46608
46609         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
46610         memcpy instead of xmalloc, xrealloc, path_concat.
46611         (locale_charset): Treat empty environment variables as absent.
46612         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
46613
46614 2000-05-04  Jim Meyering  <meyering@lucent.com>
46615
46616         * lib/getopt.c: Update from glibc.
46617         * lib/obstack.c: Likewise.
46618         * lib/obstack.h: Likewise.
46619         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
46620         file
46621
46622         * lib/regex.h: Likewise.
46623         * lib/strndup.c: Likewise.
46624         * lib/strnlen.c: New file, from glibc.
46625
46626 2000-05-03  Jim Meyering  <meyering@lucent.com>
46627
46628         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
46629
46630 2000-05-02  Paul Eggert  <eggert@twinsun.com>
46631
46632         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
46633         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
46634         compile-time test, rather than inspecting host and OS, to
46635         decide whether to define _LARGEFILE_SOURCE.
46636
46637 2000-05-01  Jim Meyering  <meyering@lucent.com>
46638
46639         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
46640
46641         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
46642         Based on a patch from Bruno Haible.
46643
46644 2000-05-01  Jim Meyering  <meyering@lucent.com>
46645
46646         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
46647
46648 2000-04-29  Jim Meyering  <meyering@lucent.com>
46649
46650         * lib/path-concat.c: Declare strdup only if it's not defined.
46651         * lib/canon-host.c: Likewise.
46652
46653 2000-04-28  Jim Meyering  <meyering@lucent.com>
46654
46655         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
46656         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
46657         is included first, then limits.h is included by locale.h by libintl.h.
46658         From John David Anglin.
46659
46660 2000-04-25  Jim Meyering  <meyering@lucent.com>
46661
46662         * lib/makepath.c (S_IRWXUGO): Define.
46663         (make_path): Always perform explicit chmod if MODE specifies any
46664         of the `special' permission bits.  Prompted by a bug report against
46665         install from Mate Wierdl and Joost van Baal.
46666
46667 2000-04-18  Jim Meyering  <meyering@lucent.com>
46668
46669         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
46670         (jm_PREREQ): Use it.
46671
46672 2000-04-18  Jim Meyering  <meyering@lucent.com>
46673
46674         * lib/README: New file.
46675
46676         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
46677         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
46678
46679 2000-04-17  Jim Meyering  <meyering@lucent.com>
46680
46681         Get it right :-)
46682         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
46683         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
46684         Suggestion from Akim Demaille.
46685
46686 2000-04-17  Jim Meyering  <meyering@lucent.com>
46687
46688         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
46689         the definition of it to rpl_strftime also defined-away the system's
46690         declaration.
46691
46692 2000-04-15  Jim Meyering  <meyering@lucent.com>
46693
46694         Use `C' to denote so-called `contiguous' files, the same way
46695         that tar does.
46696         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
46697         (ftypelet): Use S_ISCTG.
46698         From Michael Deutschmann.
46699
46700 2000-04-14  Jim Meyering  <meyering@lucent.com>
46701
46702         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
46703         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
46704         clobbered.
46705
46706 2000-04-14  Jim Meyering  <meyering@lucent.com>
46707
46708         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
46709
46710 2000-04-13  Jim Meyering  <meyering@lucent.com>
46711
46712         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
46713         AH_VERBATIM to insert required #ifndef into config.h.in.
46714         Suggestion from Akim Demaille.
46715
46716 2000-04-12  Jim Meyering  <meyering@lucent.com>
46717
46718         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
46719         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
46720         Christian Krackowizer.
46721
46722         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
46723         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
46724         (AC_SYS_LARGEFILE): Require.
46725         (AM_C_PROTOTYPES): Require.
46726
46727 2000-04-08  Jim Meyering  <meyering@lucent.com>
46728
46729         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
46730         names don't conflict.  Reported by Eli Zaretskii.
46731
46732 2000-04-07  Jim Meyering  <meyering@lucent.com>
46733
46734         * lib/putenv.c: Move inclusion of errno.h so it follows that of
46735         sys/types.h, to work around system header problems on AIX 3.2.5.
46736         From Bruno Haible.
46737
46738 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
46739
46740         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
46741         bug.  Deal with the different error behavior of Irix iconv.
46742
46743 2000-04-05  Paul Eggert  <eggert@twinsun.com>
46744
46745         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
46746         IRIX if the installer said otherwise.
46747
46748 2000-04-05  Jim Meyering  <meyering@lucent.com>
46749
46750         Portability tweaks required for ultrix4.3.
46751         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
46752         (jm_CHECK_DECLS): Add getutent to the list of functions.
46753         (_jm_DECL_HEADERS): Add utmpx.h.
46754         From John David Anglin.
46755
46756         * m4/strftime.m4: Back out the 2000-04-02 change.
46757         Instead of that change, simply undefine putenv in the test program.
46758
46759 2000-04-05  Jim Meyering  <meyering@lucent.com>
46760
46761         Portability tweaks required for ultrix4.3.
46762         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
46763         getutent.
46764         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
46765         * lib/canon-host.c: Declare strdup.
46766         * lib/path-concat.c: Likewise.
46767         From John David Anglin.
46768
46769 2000-04-04  Jim Meyering  <meyering@lucent.com>
46770
46771         Be more DOS 8.3-friendly.
46772         * lib/ref-add.sin: Renamed from ref-add.sed.in.
46773         * lib/ref-del.sin: Renamed from ref-del.sed.in.
46774         * lib/Makefile.am: Reflect renaming.
46775         Reported by Eli Zaretskii.
46776
46777         Use a temporary file name that won't clash with `charset.alias'
46778         in the DOS 8.3 name space.
46779         * lib/Makefile.am (charset_tmp): Define.
46780         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
46781         (uninstall-local): Likewise.
46782         Reported by Eli Zaretskii.
46783
46784 2000-04-03  Jim Meyering  <meyering@lucent.com>
46785
46786         * m4/gettext.m4: Fix typo in comment.
46787
46788         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
46789         textutils/configure.in).  Suggestion from Paul Eggert.
46790         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
46791
46792 2000-04-02  Paul Eggert  <eggert@twinsun.com>
46793
46794         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
46795         variable in the shell rather than using putenv, which isn't
46796         portable.  This avoids the configure-time inter-test dependency
46797         on the potentially-renamed putenv function.
46798
46799 2000-03-30  Paul Eggert  <eggert@twinsun.com>
46800
46801         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
46802         before checking struct stat.st_blksize, so that
46803         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
46804
46805 2000-03-29  Paul Eggert  <eggert@twinsun.com>
46806
46807         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
46808         since strftime.c uses HAVE_STRFTIME to decide whether to use
46809         the underlying strftime.
46810
46811 2000-03-29  Paul Eggert  <eggert@twinsun.com>
46812
46813         * lib/time/strftime.c (my_strftime): Make sure we call the system
46814         strftime, not ourselves, when invoking the underlying strftime.
46815
46816 2000-03-24  Jim Meyering  <meyering@lucent.com>
46817
46818         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
46819         (charset_alias): Define.
46820         (install-exec-local): Factor out common code.
46821         (uninstall-local): Split lines longer than 80.
46822         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
46823         (SUFFIXES): Define.
46824         (.sed.in.sed): New rule.  Don't redirect directly to $@.
46825         (CLEANFILES): Add ref-add.sed and ref-del.sed.
46826
46827 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
46828
46829         * lib/config.charset: Output a line containing "Packages using this
46830         file".
46831         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
46832         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
46833         ref-del.sed): New rules.
46834
46835 2000-03-17  Jim Meyering  <meyering@lucent.com>
46836
46837         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
46838         Otherwise, include <strings.h>
46839
46840 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
46841
46842         * lib/unicodeio.c (utf8_wctomb): New function.
46843         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
46844         format instead of in UCS-4 with platform dependent endianness.
46845
46846 2000-03-10  Jim Meyering  <meyering@lucent.com>
46847
46848         * m4/lib-check.m4: Look for getspnam in -lgen, too.
46849         From Marco Franzen.
46850
46851 2000-03-07  Paul Eggert  <eggert@twinsun.com>
46852
46853         * lib/savedir.c (savedir): Work even if directory size is
46854         negative; this can happen with some screwy NFS configurations.
46855
46856 2000-03-06  Jim Meyering  <meyering@lucent.com>
46857
46858         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
46859         if it's NULL (because we ran out of memory).  From Bruno Haible.
46860
46861 2000-03-05  Jim Meyering  <meyering@lucent.com>
46862
46863         * lib/localcharset.c ("path-concat.h"): Include.
46864         (get_charset_aliases): Use path_concat instead of ANSI string
46865         concatenation.
46866
46867         * lib/unicodeio.h (PARAMS): Define.
46868         Use it to guard prototype.
46869
46870 2000-03-04  Jim Meyering  <meyering@lucent.com>
46871
46872         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
46873         for lib/localcharset.c.
46874
46875 2000-03-04  Jim Meyering  <meyering@lucent.com>
46876
46877         * lib/Makefile.am (install-exec-local): Create $(libdir) before
46878         installing into it.
46879         (uninstall-local): Uncomment this rule so `make distcheck' works
46880         once again.
46881
46882         * lib/unicodeio.c (<errno.h>): Include it.
46883         (errno): Declare if not defined.
46884
46885         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
46886
46887         * lib/config.charset: New version, incorporating remarks from a linux
46888         i18n mailing list.  From Bruno Haible.
46889
46890 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
46891
46892         * m4/codeset.m4: New file.
46893         * m4/iconv.m4: New file.
46894         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
46895
46896 2000-03-03  Jim Meyering  <meyering@lucent.com>
46897
46898         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
46899
46900 2000-03-02  Jim Meyering  <meyering@lucent.com>
46901
46902         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
46903         the messages come out on separate lines.
46904
46905         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
46906         rather than jm_CHECK_DECLARATIONS.
46907         * m4/decl.m4: Remove now-unused file.
46908
46909         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
46910         geteuid.
46911
46912 2000-03-02  Jim Meyering  <meyering@lucent.com>
46913
46914         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
46915
46916 2000-03-01  Jim Meyering  <meyering@lucent.com>
46917
46918         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
46919         * lib/unicodeio.c: Likewise.
46920
46921 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
46922
46923         * lib/config.charset: New file.
46924         * lib/localcharset.c: New file.
46925         * lib/unicodeio.h, lib/unicodeio.c: New files.
46926         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
46927         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
46928         (noinst_HEADERS): Add unicodeio.h.
46929         (all-local, install-exec-local, charset.alias): New targets.
46930
46931 2000-02-28  Paul Eggert  <eggert@twinsun.com>
46932
46933         * lib/quotearg.c (ALERT_CHAR): New macro.
46934         (quotearg_buffer_restyled): Use it.
46935
46936 2000-02-27  Jim Meyering  <meyering@lucent.com>
46937
46938         * m4/check-decl.m4: Add getenv to the list.
46939
46940 2000-02-27  Jim Meyering  <meyering@lucent.com>
46941
46942         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
46943         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
46944
46945         * lib/backupfile.c: Guard inclusion of stdlib.h with
46946         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
46947         Declare malloc if needed.
46948
46949         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
46950         `#ifndef HAVE_DECL..'
46951         now that autoconf always defines the HAVE_DECL_ symbols.
46952         * lib/human.c: Likewise.
46953         * lib/same.c: Likewise.
46954         * lib/strtoumax.c: Likewise.
46955
46956         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
46957         declaration check was not run.
46958         * lib/hash.c: Likewise.
46959         * lib/human.c: Likewise.
46960         * lib/same.c: Likewise.
46961         * lib/strtoumax.c: Likewise.
46962
46963         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
46964         `.', then first look up the entire `.'-containing string as a login
46965         name.
46966
46967 2000-02-23  Jim Meyering  <meyering@lucent.com>
46968
46969         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
46970         in place of my hack.
46971
46972 2000-02-18  Paul Eggert  <eggert@twinsun.com>
46973
46974         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
46975         (textint): New typedef.
46976         (parser_control): Member year changed from int to textint.
46977         All uses changed.
46978         (YYSTYPE): Removed; replaced by %union with int and textint members.
46979         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
46980         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
46981         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
46982         (tSNUMBER, tUNUMBER): Now of type <textintval>.
46983         (date, number, to_year): Use width of number in digits, not its value,
46984         to determine whether it's a 2-digit year, or a 2-digit time.
46985         (yylex): Store number of digits of numeric tokens.
46986         Reported by John Kendall.
46987
46988         (parser_control): Changed from struct parser_control to typedef (for
46989         consistency).  All uses changed.
46990
46991         (tID): Removed; not used.
46992         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
46993
46994 2000-02-14  Paul Eggert  <eggert@twinsun.com>
46995
46996         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
46997         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
46998
46999 2000-02-12  Jim Meyering  <meyering@lucent.com>
47000
47001         * lib/userspec.c (ISDIGIT): Define it.
47002         (isdigit): Remove definition.
47003         (is_number): Use ISDIGIT, not isdigit.
47004         <libintl.h>: Include.
47005         (_ and N_): Define.
47006         (parse_user_spec): Mark translatable strings.
47007
47008 2000-02-10  Jim Meyering  <meyering@lucent.com>
47009
47010         With these changes, nanosleep.[ch] are finally enough like the other
47011         lib/* replacement files to compile on a few more losing systems.
47012
47013         * lib/nanosleep.h: Don't include config.h.
47014         Remove prototype from declaration of nanosleep.
47015         (PARAMS): Remove now-unneeded definition.
47016         * lib/nanosleep.c: #undef nanosleep.
47017         (rpl_nanosleep): Rename from nanosleep.
47018
47019 2000-02-10  Jim Meyering  <meyering@lucent.com>
47020
47021         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
47022         gnu_nanosleep to rpl_nanosleep.
47023
47024 2000-02-09  Jim Meyering  <meyering@lucent.com>
47025
47026         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
47027         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
47028
47029 2000-02-08  Akim Demaille  <akim@epita.fr>
47030
47031         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
47032         `[' and `]' and remove uses of `changequote'.
47033         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
47034         (AC_SYS_LARGEFILE): Likewise.
47035         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
47036         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
47037         of changequote.
47038         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
47039         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
47040         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
47041         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
47042
47043 2000-02-05  Jim Meyering  <meyering@lucent.com>
47044
47045         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
47046         Remove explicit use of AC_HEADER_TIME.  It is required by
47047         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
47048         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
47049         in autoconf whereby the expansion of the latter ended up preceding
47050         the expansion of its prerequisite, AC_HEADER_TIME.
47051         Reported by Volker Borchert.
47052
47053 2000-02-03  Jim Meyering  <meyering@lucent.com>
47054
47055         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
47056
47057 2000-02-03  Jim Meyering  <meyering@lucent.com>
47058
47059         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
47060         rather than with `#if HAVE_UTMPNAME'.
47061
47062 2000-02-02  Jim Meyering  <meyering@lucent.com>
47063
47064         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
47065         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
47066         Reported by Eli Zaretskii.
47067
47068 2000-02-01  Jim Meyering  <meyering@lucent.com>
47069
47070         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
47071
47072 2000-01-31  Jim Meyering  <meyering@lucent.com>
47073
47074         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
47075         functions.  Add the time.h and sys/time.h headers along with the
47076         AC_REQUIRE'ment of AC_HEADER_TIME.
47077
47078 2000-01-31  Jim Meyering  <meyering@lucent.com>
47079
47080         * lib/nanosleep.h (nanosleep): Guard declaration with
47081         `#if ! HAVE_DECL_NANOSLEEP'.
47082         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
47083         the declaration in that vendor's sys/timers.h.
47084         Reported by Christian Krackowizer.
47085
47086         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
47087         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
47088         (ISPRINT): Likewise.
47089         Reported by Tom Tromey.
47090
47091 2000-01-30  Jim Meyering  <meyering@lucent.com>
47092
47093         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
47094
47095         * m4/prereq.m4 (utmp_includes): Define.
47096         Check for ut_user and ut_name members in both struct utmpx
47097         and struct utmp.
47098
47099 2000-01-30  Jim Meyering  <meyering@lucent.com>
47100
47101         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
47102         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
47103         header files where only utmpx.ut_user is declared.
47104
47105         * lib/readutmp.h (UT_USER): Define.
47106
47107 2000-01-29  Jim Meyering  <meyering@lucent.com>
47108
47109         * m4/lib-check.m4: New file containing library-related checks from
47110         fileutils and sh-utils (textutils had none).
47111
47112 2000-01-28  Jim Meyering  <meyering@lucent.com>
47113
47114         * m4/perl.m4: Change format of warning message to look more like that
47115         from the missing script.  Suggestion from François Pinard.
47116
47117 2000-01-25  Jim Meyering  <meyering@lucent.com>
47118
47119         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
47120         well as time.h in the compile check.
47121         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
47122         Fix typo in cross-compiling case: s/yes/no/.
47123
47124 2000-01-23  Jim Meyering  <meyering@lucent.com>
47125
47126         * m4/jm-macros.m4: Move df-related tests here from
47127         fileutils/configure.in
47128
47129         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
47130         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
47131
47132         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
47133         s/space/ac_fsusage_space/.
47134         (jm_FILE_SYSTEM_USAGE): Take two parameters.
47135
47136         * m4/ftruncate.m4: New file (derived from part of
47137         fileutils/configure.in).
47138         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
47139         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
47140
47141         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
47142         AC_SUBST these here, rather than just in sh-util/configure.in, so
47143         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
47144         all the same.
47145         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
47146         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
47147         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
47148         (AC_SUBST(POW_LIBM)): Likewise.
47149         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
47150
47151 2000-01-23  Jim Meyering  <meyering@lucent.com>
47152
47153         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
47154         obstack.c.
47155
47156 2000-01-22  Jim Meyering  <meyering@lucent.com>
47157
47158         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
47159
47160         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
47161
47162         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
47163         configure.in
47164         (AC_CHECK_HEADERS): Likewise for sh-utils.
47165         (AC_CHECK_HEADERS): Likewise for textutils.
47166         Merge the three lists of headers.
47167
47168         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
47169         from fileutils' configure.in.
47170
47171         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
47172         code. Moved tests into their own function (_jm_DECL_HEADERS) in
47173         check-decl.m4.
47174
47175         * m4/check-decl.m4: Use #if rather than #ifdef.
47176         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
47177         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
47178         (_jm_DECL_HEADERS): Define new function.
47179         (jm_CHECK_DECLARATIONS): Require it.
47180
47181 2000-01-22  Jim Meyering  <meyering@lucent.com>
47182
47183         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
47184         [! HAVE_DECL_STRTOULL]: Declare strtoull.
47185         Required for some AIX systems.  Reported by Christian Krackowizer.
47186         [TESTING] (main): New function.
47187
47188         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
47189         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
47190         letters.
47191
47192         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
47193         iswprint.
47194
47195         * lib/strverscmp.c (ISDIGIT): Define.
47196         (strverscmp): Use ISDIGIT, not isdigit.
47197
47198 2000-01-19  Jim Meyering  <meyering@lucent.com>
47199
47200         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
47201         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
47202         defines `struct timespec' in <sys/time.h>
47203
47204         * m4/c-bs-a.m4: Remove uses of changequote altogether.
47205         Thanks to Akim for explaining.
47206
47207 2000-01-17  Paul Eggert  <eggert@twinsun.com>
47208
47209         * lib/nanosleep.c (nanosleep):
47210         Don't use SA_INTERRUPT to decide whether to call sigaction, as
47211         POSIX.1 doesn't require SA_INTERRUPT and some systems
47212         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
47213         it's been part of POSIX.1 since day 1 (in 1988).
47214
47215 2000-01-17  Jim Meyering  <meyering@lucent.com>
47216
47217         * lib/interlock: Remove unused file.  Reported by François Pinard.
47218
47219 2000-01-16  Paul Eggert  <eggert@twinsun.com>
47220
47221         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
47222         alert, backslash, formfeed, and vertical tab unnecessarily in
47223         shell quoting style.
47224
47225 2000-01-16  Jim Meyering  <meyering@lucent.com>
47226
47227         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
47228         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
47229         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
47230         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
47231
47232 2000-01-16  Jim Meyering  <meyering@lucent.com>
47233
47234         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
47235         because the latter didn't work.
47236
47237 2000-01-15  Jim Meyering  <meyering@lucent.com>
47238
47239         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
47240         (AC_REPLACE_FUNCS): Add memcpy and memset.
47241         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
47242         Add strpbrk.
47243         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
47244
47245 2000-01-12  Jim Meyering  <meyering@lucent.com>
47246
47247         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
47248         (jm_PREREQ): Use it.
47249         (jm_PREREQ_READUTMP): New macro.
47250         (jm_PREREQ): Use it.
47251
47252 2000-01-11  Paul Eggert  <eggert@twinsun.com>
47253
47254         Quote multibyte characters correctly.
47255         * m4/c-bs-a.m4: New file.
47256         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
47257         (jm_PREREQ): Use it.
47258
47259 2000-01-11  Paul Eggert  <eggert@twinsun.com>
47260
47261         * m4/uintmax_t.m4: Port to autoconf 2.13.
47262
47263 2000-01-08  Jim Meyering  <meyering@ascend.com>
47264
47265         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
47266         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
47267
47268 2000-01-04  Jim Meyering  <meyering@ascend.com>
47269
47270         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
47271         jm_STRUCT_DIRENT_D_TYPE.
47272         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
47273         jm_STRUCT_DIRENT_D_INO.
47274         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
47275         jm_STRUCT_UTIMBUF.
47276         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
47277         renamings.
47278         * m4/utime.m4: Likewise.
47279
47280         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
47281         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
47282
47283 2000-01-03  Paul Eggert  <eggert@twinsun.com>
47284
47285         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
47286         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
47287
47288 2000-01-02  Jim Meyering  <meyering@ascend.com>
47289
47290         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
47291         remember if this is necessary.
47292
47293 1999-12-26  Jim Meyering  <meyering@ascend.com>
47294
47295         * m4/jm-macros.m4: Use it here.
47296         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
47297
47298 1999-12-23  Jim Meyering  <meyering@ascend.com>
47299
47300         * m4/jm-macros.m4: Check for clock_gettime (moved from
47301         fileutils/configure.in)
47302         Check for gettimeofday.
47303
47304 1999-12-20  Jim Meyering  <meyering@ascend.com>
47305
47306         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
47307         autoconf-2.14a-1999-12-20.
47308
47309 1999-12-19  Jim Meyering  <meyering@ascend.com>
47310
47311         * m4/lstat-slash.m4: New file.
47312         * m4/jm-macros.m4: Use the new macro:
47313         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
47314
47315 1999-12-07  Jim Meyering  <meyering@ascend.com>
47316
47317         * m4/perl.m4: Require that File::Compare be available, too.
47318         Too many systems seem to lack it.
47319
47320         * m4/strftime.m4: Add checks for most of the cpp macros tested in
47321         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
47322
47323 1999-11-18  Paul Eggert  <eggert@twinsun.com>
47324
47325         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
47326         problem with the QNX 4.25 shell, which doesn't propagate exit
47327         status of failed commands inside shell assignments.
47328
47329 1999-11-17  Jim Meyering  <meyering@ascend.com>
47330
47331         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
47332
47333 1999-11-07  Jim Meyering  <meyering@ascend.com>
47334
47335         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
47336
47337 1999-11-06  Jim Meyering  <meyering@ascend.com>
47338
47339         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
47340         * m4/jm-macros.m4 (jm_MACROS): Use it here.
47341
47342 1999-11-05  Jim Meyering  <meyering@ascend.com>
47343
47344         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
47345         configure.in of textutils, fileutils, and sh-utils into this one
47346         (shared between those packages) file.
47347         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
47348         AC_STRUCT_ST_BLKSIZE.
47349
47350 1999-11-03  Jim Meyering  <meyering@ascend.com>
47351
47352         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
47353         of AC_CHECK_TYPE checks includes unistd.h.
47354         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
47355         Suggestion from Akim Demaille.
47356
47357 1999-10-30  Jim Meyering  <meyering@ascend.com>
47358
47359         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
47360         m4-quoted string.
47361         * m4/ls-mntd-fs.m4: Likewise.
47362         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
47363         * m4/jm-winsz1.m4: Likewise.
47364
47365         * m4/const.m4: Remove file, since the fix made it into the experimental
47366         version of autoconf.
47367         * m4/mktime.m4: Likewise.
47368
47369         * m4/check-type.m4: Remove file, now that the latest version of
47370         AC_CHECK_TYPE takes a third arg to specify additional #includes.
47371
47372         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
47373         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
47374         AC_CHECK_TYPE.
47375
47376 1999-10-04  Jim Meyering  <meyering@ascend.com>
47377
47378         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
47379
47380 1999-09-22  Paul Eggert  <eggert@twinsun.com>
47381
47382         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
47383         2.95.1 bug with HP-UX 10.20.
47384
47385 1999-09-17  Jim Meyering  <meyering@ascend.com>
47386
47387         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
47388         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
47389         due to missing strdup (against sh-utils-2.0).
47390
47391 1999-08-29  Jim Meyering  <meyering@ascend.com>
47392
47393         * m4/jm-macros.m4: Require jm_BISON.
47394         * m4/bison.m4: New file.
47395
47396 1999-08-17  Paul Eggert  <eggert@twinsun.com>
47397
47398         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
47399         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
47400
47401 1999-08-05  Jim Meyering  <meyering@ascend.com>
47402
47403         * m4/getline.m4: Rename test file from conftestdata to conftest.data
47404         to avoid conflicts with `conftest' on 8+3 filesystems.
47405         Suggestion from Eli Zaretskii.
47406
47407 1999-08-04  Jim Meyering  <meyering@ascend.com>
47408
47409         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
47410         fileutils and sh-utils (textutils's getline test was inadequate).
47411         (AM_FUNC_GETLINE): Run this test.
47412         (AC_CHECK_FUNCS): Check for getdelim.
47413         Reported by Bob Proulx.
47414
47415 1999-08-02  Jim Meyering  <meyering@ascend.com>
47416
47417         * m4/jm-macros.m4: Add a comment.
47418
47419 1999-08-01  Paul Eggert  <eggert@twinsun.com>
47420
47421         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
47422         <inttypes.h> defines strtoumax as a macro (and not as a
47423         function).
47424
47425 1999-08-01  Paul Eggert  <eggert@twinsun.com>
47426
47427         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
47428         that we can shift, multiply and divide unsigned long long
47429         values; Ultrix cc can't do it.
47430
47431 1999-08-01  Paul Eggert  <eggert@twinsun.com>
47432
47433         * m4/mktime.m4: New file, which is a preview of what should appear
47434         in the next public autoconf release.
47435
47436 1999-08-01  Paul Eggert  <eggert@twinsun.com>
47437
47438         * m4/lfs.m4: Remove this file.
47439         * m4/largefile.m4: New file.  It contains the old contents of
47440         lfs.m4, except that all names with prefix AC_LFS have been
47441         changed to use the prefix AC_SYS_LARGEFILE instead, to be
47442         compatible with future autoconf versions.  Also, some minor m4
47443         quoting problems have been fixed.
47444
47445 1999-08-01  Paul Eggert  <eggert@twinsun.com>
47446
47447         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
47448         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
47449         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
47450         and simplify the shell code.
47451
47452 1999-08-01  Jim Meyering  <meyering@ascend.com>
47453
47454         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
47455         m4.
47456
47457 1999-07-20  Jim Meyering  <meyering@ascend.com>
47458
47459         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
47460
47461 1999-07-15  Jim Meyering  <meyering@ascend.com>
47462
47463         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
47464
47465 1999-05-22  Jim Meyering  <meyering@ascend.com>
47466
47467         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
47468
47469 1999-05-20  Jim Meyering  <meyering@ascend.com>
47470
47471         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
47472         Add a colon after each `then' in case $4 is empty.
47473
47474 1999-05-16  Jim Meyering  <meyering@ascend.com>
47475
47476         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
47477
47478 1999-05-10  Jim Meyering  <meyering@ascend.com>
47479
47480         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
47481
47482         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
47483         AC_FUNC_MKTIME.
47484
47485 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
47486
47487         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
47488
47489 1999-05-04  Paul Eggert  <eggert@twinsun.com>
47490
47491         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
47492         not CPPFLAGS, so that linking works correctly in IRIX.
47493
47494 1999-04-30  Paul Eggert  <eggert@twinsun.com>
47495
47496         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
47497
47498 1999-04-20  Paul Eggert  <eggert@twinsun.com>
47499
47500         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
47501         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
47502         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
47503         jm_AC_TYPE_UNSIGNED_LONG_LONG.
47504         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
47505
47506         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
47507
47508 1999-04-20  Jim Meyering  <meyering@ascend.com>
47509
47510         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
47511         AC_REPLACE xstroull if necessary.  From Paul Eggert.
47512         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
47513
47514 1999-04-18  Jim Meyering  <meyering@ascend.com>
47515
47516         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
47517         * m4/jm-macros.m4: Use it.
47518
47519 1999-04-06  Jim Meyering  <meyering@ascend.com>
47520
47521         * m4/strftime.m4: Remove test for %f.
47522
47523 1999-03-29  Jim Meyering  <meyering@ascend.com>
47524
47525         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
47526         superset of the AC_TYPE_* checks in the textutils, fileutils,
47527         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
47528         AC_TYPE_PID_T.
47529
47530 1999-03-28  Jim Meyering  <meyering@ascend.com>
47531
47532         * m4/jm-macros.m4: Define GNU_PACKAGE here.
47533         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
47534         replaced e.g., in the *.sh files of the sh-utils.
47535
47536 1999-03-20  Jim Meyering  <meyering@ascend.com>
47537
47538         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
47539         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
47540         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
47541
47542 1999-03-19  Jim Meyering  <meyering@ascend.com>
47543
47544         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
47545
47546 1999-03-12  Jim Meyering  <meyering@ascend.com>
47547
47548         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
47549
47550 1999-03-07  Jim Meyering  <meyering@ascend.com>
47551
47552         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
47553         declared.
47554
47555 1999-02-17  Jim Meyering  <meyering@ascend.com>
47556
47557         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
47558         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
47559
47560 1999-02-07  Jim Meyering  <meyering@ascend.com>
47561
47562         * m4/group-member.m4: New file -- extracted from sh-utils'
47563         configure.in.
47564
47565         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
47566         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
47567
47568 1999-02-06  Jim Meyering  <meyering@ascend.com>
47569
47570         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
47571         * m4/fnmatch.m4: Likewise.
47572         * m4/getgroups.m4: Likewise.
47573         * m4/lstat.m4: Likewise.
47574         * m4/malloc.m4: Likewise.
47575         * m4/putenv.m4: Likewise.
47576         * m4/realloc.m4: Likewise.
47577         * m4/regex.m4: Likewise.
47578         * m4/stat.m4: Likewise.
47579         * m4/strftime.m4: Likewise.
47580         Suggestion from Alain Magloire.
47581
47582         * m4/chown.m4: Use `.$ac_objext', not `.o'.
47583         * m4/fnmatch.m4: Likewise.
47584         * m4/getgroups.m4: Likewise.
47585         * m4/getline.m4: Likewise.
47586         * m4/lstat.m4: Likewise.
47587         * m4/malloc.m4: Likewise.
47588         * m4/memcmp.m4: Likewise.
47589         * m4/putenv.m4: Likewise.
47590         * m4/realloc.m4: Likewise.
47591         * m4/regex.m4: Likewise.
47592         * m4/stat.m4: Likewise.
47593         * m4/strftime.m4: Likewise.
47594         Suggestion from Alain Magloire.
47595
47596         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
47597         an argument.
47598
47599         * m4/regex.m4: Add a run-time Test for proper operation of
47600         re_compile_pattern.
47601
47602 1999-01-31  Jim Meyering  <meyering@ascend.com>
47603
47604         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
47605
47606 1999-01-30  Jim Meyering  <meyering@ascend.com>
47607
47608         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
47609
47610         * m4/jm-mktime.m4: Make this a wrapper around the official
47611         AM_FUNC_MKTIME rather than my private copy, now that the official one
47612         is up to date.
47613         * m4/mktime.m4: Remove file.
47614
47615         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
47616         * m4/uptime.m4: Likewise.
47617         * m4/uintmax_t.m4: Likewise.
47618
47619 1999-01-28  Jim Meyering  <meyering@ascend.com>
47620
47621         * m4/jm-macros.m4: Use jm_AFS.
47622         * m4/afs.m4: New file (from fileutils' configure.in).
47623
47624         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
47625         * m4/chown.m4: Likewise.
47626         * m4/d-ino.m4: Likewise.
47627         * m4/d-type.m4: Likewise.
47628         * m4/fnmatch.m4: Likewise.
47629         * m4/getgroups.m4: Likewise.
47630         * m4/gettext.m4: Likewise.
47631         * m4/jm-mktime.m4: Likewise.
47632         * m4/jm-winsz2.m4: Likewise.
47633         * m4/lcmessage.m4: Likewise.
47634         * m4/ls-mntd-fs.m4: Likewise.
47635         * m4/malloc.m4: Likewise.
47636         * m4/memcmp.m4: Likewise.
47637         * m4/putenv.m4: Likewise.
47638         * m4/realloc.m4: Likewise.
47639         * m4/st_mtim.m4: Likewise.
47640         * m4/strftime.m4: Likewise.
47641
47642 1999-01-16  Jim Meyering  <meyering@ascend.com>
47643
47644         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
47645         (ARGMATCH_DIE_DECL): Define.
47646
47647 1999-01-12  Jim Meyering  <meyering@ascend.com>
47648
47649         * m4/Makefile.am.in: Rewrite to avoid using fmt.
47650         Reported by Lars Hecking.
47651
47652 1999-01-10  Jim Meyering  <meyering@ascend.com>
47653
47654         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
47655         gross kludge.
47656         * m4/inttypes_h.m4: Likewise.
47657         * m4/lstat.m4: Likewise.
47658         * m4/malloc.m4: Likewise.
47659         * m4/readdir.m4: Likewise.
47660         * m4/realloc.m4: Likewise.
47661         * m4/st_dm_mode.m4: Likewise.
47662         * m4/stat.m4: Likewise.
47663         * m4/utimbuf.m4: Likewise.
47664         * m4/utimes.m4: Likewise.
47665
47666         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
47667         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
47668         comments in config.h.in are meaningful.
47669
47670         * m4/jm-macros.m4: Require autoconf-2.13 here.
47671
47672         * m4/regex.m4: By default, don't use the included regex.c on systems
47673         with glibc 2.  Suggestion from Uli Drepper.
47674
47675 1999-01-02  Jim Meyering  <meyering@ascend.com>
47676
47677         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
47678
47679 1998-12-18  Jim Meyering  <meyering@ascend.com>
47680
47681         * m4/Makefile.am.in (Makefile.am): Simplify rule.
47682         Based on a suggestion from Lars Hecking.
47683
47684 1998-11-16  Paul Eggert  <eggert@twinsun.com>
47685
47686         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
47687
47688 1998-11-16  Jim Meyering  <meyering@ascend.com>
47689
47690         * m4/lfs.m4: Double-quote the `uname...` expression.
47691
47692 1998-11-14  Jim Meyering  <meyering@ascend.com>
47693
47694         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
47695         * m4/stat.m4: Likewise.
47696
47697 1998-11-03  Jim Meyering  <meyering@ascend.com>
47698
47699         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
47700         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
47701
47702 1998-10-18  Jim Meyering  <meyering@ascend.com>
47703
47704         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
47705
47706 1998-10-17  Jim Meyering  <meyering@ascend.com>
47707
47708         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
47709         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
47710         calls for those previously hard-coded headers.  Instead, take a new
47711         parameter.
47712         (jm_CHECK_DECLARATIONS): Reflect interface change.
47713         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
47714         (jm_CHECK_DECL_LOCALTIME_R): New macro.
47715
47716         * m4/mktime.m4: Test for spring-forward gap before long-running test.
47717
47718 1998-10-14  Jim Meyering  <meyering@ascend.com>
47719
47720         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
47721         instead of "TZ=America/Vancouver".  From Paul Eggert.
47722
47723 1998-10-11  Jim Meyering  <meyering@ascend.com>
47724
47725         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
47726         This adds a test for a recently added compatibility fix for mktime.c.
47727         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
47728
47729 1998-09-27  Jim Meyering  <meyering@ascend.com>
47730
47731         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
47732
47733         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
47734         ../configure.in, including a change from Gordon Matzigkeit to allow
47735         cross-compiling for the Hurd.
47736
47737         * m4/glibc.m4: New file/macro to test for the GNU C Library
47738         versions 1 and 2.  From Gordon Matzigkeit.
47739         Indent.
47740
47741 1998-09-21  Jim Meyering  <meyering@ascend.com>
47742
47743         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
47744
47745 1998-08-18  Paul Eggert  <eggert@twinsun.com>
47746
47747         Port nanosecond-resolution times to UnixWare 2.1.2 and
47748         pedantic Solaris 2.6.
47749
47750         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
47751         AC_STRUCT_ST_MTIM.
47752         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
47753         Generate name of ns member, instead of just 1 or undef.
47754         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
47755
47756 1998-08-15  Jim Meyering  <meyering@ascend.com>
47757
47758         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
47759         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
47760         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
47761         instead of jm_TYPE_SSIZE_T.
47762
47763 1998-08-12  Jim Meyering  <meyering@ascend.com>
47764
47765         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
47766
47767 1998-08-02  Jim Meyering  <meyering@ascend.com>
47768
47769         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
47770         in acconfig.h manually.
47771
47772 1998-07-31  Paul Eggert  <eggert@twinsun.com>
47773
47774         * m4/st_mtim.m4: New file.
47775
47776 1998-07-28  Jim Meyering  <meyering@ascend.com>
47777
47778         * m4/utimes.m4: Undef stat.
47779
47780 1998-07-25  Jim Meyering  <meyering@ascend.com>
47781
47782         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
47783         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
47784
47785 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
47786
47787         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
47788         uid and gid actually remain unchanged.
47789
47790 1998-07-07  Jim Meyering  <meyering@ascend.com>
47791
47792         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
47793
47794 1998-07-04  Jim Meyering  <meyering@ascend.com>
47795
47796         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
47797         to prove that this macro can be used in packages without regex.c.
47798
47799 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
47800
47801         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
47802         is to be used.
47803
47804 1998-07-03  Jim Meyering  <meyering@ascend.com>
47805
47806         * m4/gettext.m4: Add -lintl if it's found to be necessary.
47807
47808         * m4/gettext.m4: New file -- from gettext-0.10.35.
47809         * m4/lcmessage.m4: Likewise.
47810         * m4/progtest.m4: Likewise.
47811
47812         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
47813         * m4/jm-macros.m4: Require the new macro.
47814
47815 1998-06-29  Jim Meyering  <meyering@ascend.com>
47816
47817         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
47818         for the definition of NGROUPS (used in a system header included
47819         by sys/mount.h).
47820
47821 1998-06-28  Jim Meyering  <meyering@ascend.com>
47822
47823         * m4/ls-mntd-fs.m4: New file.
47824         * m4/fstypename.m4: New file.
47825
47826         * m4/jm-macros.m4: Require the new macro.
47827         * m4/jm-glibc-io.m4: New file.
47828
47829 1998-05-19  Jim Meyering  <meyering@ascend.com>
47830
47831         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
47832         * m4/lchown.m4: New file.
47833
47834         * m4/Makefile.am.in: New file.
47835         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
47836
47837 1998-05-14  Jim Meyering  <meyering@ascend.com>
47838
47839         * m4/Makefile.am (EXTRA_DIST): Add them.
47840         * m4/jm-macros.m4: New file.
47841         * m4/utimbuf.m4: New file.
47842
47843 1998-05-12  Jim Meyering  <meyering@ascend.com>
47844
47845         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
47846
47847 1998-05-11  Jim Meyering  <meyering@ascend.com>
47848
47849         * m4/isc-posix.m4: New file.
47850
47851 1998-05-10  Jim Meyering  <meyering@ascend.com>
47852
47853         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
47854
47855 1998-05-09  Jim Meyering  <meyering@ascend.com>
47856
47857         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
47858         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
47859         with automake.
47860
47861         * m4/ssize_t.m4: New file.
47862         * m4/mktime.m4: Remove file -- the new automake has this now.
47863
47864 1998-04-26  Jim Meyering  <meyering@ascend.com>
47865
47866         * m4/assert.m4: New file.
47867         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
47868
47869 1998-04-05  Jim Meyering  <meyering@ascend.com>
47870
47871         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
47872         (jm_PREREQ): Use it here.
47873
47874 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
47875
47876         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
47877         in acconfig.h.
47878
47879 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
47880
47881         * m4/prereq.m4: New file.
47882         * m4/error.m4: New file.
47883         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
47884
47885 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
47886
47887         * m4/getline.m4: Don't set am_cv_func_working_getline before the
47888         cache-check for the same variable -- that defeated the purpose of
47889         the test; the test program was never run.  This was a problem only
47890         on systems with losing getline functions -- HP-UX 10.20 is one.
47891         Reported by Bjorn Helgaas.
47892
47893 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
47894
47895         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
47896
47897 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
47898
47899         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
47900
47901         * m4/const.m4: New file.  Use an initializer in this declaration
47902         typedef int charset[2]; const charset x;
47903         Reported by Bob Glickstein.
47904
47905 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
47906
47907         * m4/chown.m4: Fix reversed types on -1 args to chown.
47908         From Kaveh Ghazi.
47909
47910 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
47911
47912         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
47913         Add lseek and memchr.
47914
47915         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
47916         T.E.Dickey <dickey@clark.net> said that some older preprocessors
47917         have a 20-character limit on names.
47918
47919 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
47920
47921         * m4/inttypes_h.m4: New file.
47922         * m4/uintmax_t.m4: New file.
47923         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
47924
47925
47926         -----
47927
47928         Local Variables:
47929         coding: utf-8
47930         End:
47931
47932         Copyright (C) 1997-2009 Free Software Foundation, Inc.
47933
47934         Copying and distribution of this file, with or without
47935         modification, are permitted provided the copyright notice
47936         and this notice are preserved.